Introdução
Bem-vindo à API da Webdox! Na Webdox fornecemos uma API RESTful simples e robusta que permite que qualquer serviço integre nossos serviços.
Através da API da Webdox, você pode administrar facilmente documentos, workflows e assinaturas eletrônicas dentro da sua conta Webdox.
Temos links de idiomas em Shell! Você pode ver exemplos de código à direita.
VERSÕES DA API
Todas as chamadas à API são versionadas, e a API atual da Webdox é v2.0. Nunca introduziremos mudanças que possam causar erros em nenhuma versão, mas podemos adicionar novas funções e melhorias de tempos em tempos.
Para começar a usar a API, primeiro você deve solicitar uma conta em www.webdoxclm.com
LIMITE DE REQUISIÇÕES
A API da Webdox tem um limite de 60 solicitações por minuto, 3.600 solicitações por hora e 21.600 solicitações por 6 horas. Aproximadamente 86.400 solicitações por dia.
Autorização
Fluxo de Autorização OAuth2
Credenciais por Senha
curl --location --request POST 'https://api.webdoxclm.com/api/v2/oauth/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode '[email protected]' \
--data-urlencode 'grant_type=password' \
--data-urlencode 'password=********'
O comando acima devolve JSON estruturado assim:
{
"access_token": "0662c5785ac175d804dc38b181d33824da4225730aa76664910cbe49a6ecce5f",
"token_type": "Bearer",
"expires_in": 7200,
"refresh_token": "7e0250b86bee383eff63b6e433d6623faa50d4ae06a68d4d5928a1e03104b865",
"created_at": 1614948612
}
Um novo token de acesso é obtido com as credenciais básicas de autenticação. O valor padrão de expiração do token é de 120 minutos (2 horas).
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/oauth/token
Exemplo de corpo
{
"grant_type":"password",
"username":"[email protected]",
"password":"*************"
}

Cabeçalho HTTP
Authorization: Bearer <Token>
Renovar Token
curl --location --request POST 'https://api.webdoxclm.com/api/v2/oauth/token' \
--header 'Content-Type: application/json' \
--form 'token="17de2f1460c5bbba5524831e285a26ed65e710cbde77344e7a7711a317d86191"'
O comando acima devolve JSON estruturado assim:
{}
Utiliza o token de renovação para solicitar um novo token sem utilizar as credenciais do usuário.
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/oauth/token
Exemplo de corpo
{
"grant_type":"refresh_token",
"refresh_token":"17de2f1460c5bbba5524831e285a26ed65e710cbde77344e7a7711a317d86191",
}

Cabeçalho HTTP
Authorization: Bearer <Token>
Lembre-se de trocar o token de acesso no cabeçalho para manter a usabilidade dos endpoints.
Revogação de Token
curl --location --request POST 'https://api.webdoxclm.com/api/v2/oauth/revoke' \
--header 'Content-Type: application/json' \
--form 'token="17de2f1460c5bbba5524831e285a26ed65e710cbde77344e7a7711a317d86191"'
O comando acima devolve JSON estruturado assim:
{}
Desabilita completamente o token para seu consumo na API e solicitação de renovação.
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/oauth/revoke
Exemplo de corpo
{
"token":"17de2f1460c5bbba5524831e285a26ed65e710cbde77344e7a7711a317d86191",
}

Depois de completar esta ação não poderá renovar o token.
Workflow
Os workflows são uma funcionalidade destaque na Webdox, que permite administrar facilmente os procedimentos a seguir para uma solicitação ou fluxo de assinatura de documentos dentro da sua organização.
Lista de workflows
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows'
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
O comando acima devolve JSON estruturado assim:
[
{
"id": 27,
"name": "WF 1",
"status": "started",
"current_step": [
{
"id_number": 2,
"id_parallel_number": 0,
"name": "Paso 2 nuevo",
"step_type": null,
"assigned_to": [
{
"id": "e1c6f251-5efc-410f-924f-8cbba1ff7f15",
"name": "Jane Doe"
}
],
"created_at": "2021-03-02T19:14:35.423-03:00",
"limit_date": "2021-03-04T19:17:53.192-03:00"
}
]
},
{
"id": 5,
"name": "Workflow 2",
"status": "started",
"current_step": [
{
"id_number": 2,
"id_parallel_number": 0,
"name": "paso2",
"step_type": null,
"assigned_to": [
{
"id": "e1c6f251-5efc-410f-924f-8cbba1ff7f15",
"name": "Jane Doe"
}
],
"created_at": "2021-01-27T15:28:50.092-03:00",
"limit_date": "2021-01-28T15:29:04.426-03:00"
}
]
}
]
Este endpoint recupera todos os processos que o usuário pode ver por filtros
GET https://api.webdoxclm.com/api/v2/decision_workflows
Para obter os valores created_at e limit_date deve-se usar o endpoint:
GET https://api.webdoxclm.com/api/v2/decision_workflows/index_with_limit
Parâmetros de consulta
GET https://api.webdoxclm.com/api/v2/decision_workflows?page=1&filters[decision_name]=test
| Valor | Descrição | Tipo |
|---|---|---|
| page | Pagina a ver | Numérico |
| per_page | Quantidade de elementos por página | Numérico |
| search | Filtro para buscar por um termo | Texto |
| filters[xx] | Filtros a aplicar | Texto |
Os filtros podem tomar os seguintes valores:
| Valor | Descrição | Tipo |
|---|---|---|
| decision_name | Filtrar por o Nome do Workflow (Deve ser exato) | Texto |
| decision_workflow_template_id | Filtrar por ID da Plantilha de WF | Numérico |
| status | Filtro por Estado do Workflow | Texto |
| correlative | Filtrar por Correlativo | Numérico |
| request_form_name | Filtrar por Nome de Formulário de Solicitação | Texto |
| requester_id | Filtrar por Solicitante | Numérico |
| assigned_id | Filtar por Atribuído em Solicitação | Numérico |
| initializer_id | Filtrar Inicado por | Numérico |
| request_document_attribute_id | Filtar por ID de um Atributo de Solicitação | Numérico |
| request_document_attribute_value | Filtrar por valor do Atributo de Solicitação | Texto |
Criar um workflow
curl --location --request POST 'https://api.webdoxclm.com/api/v2/decision_workflows' \
--header 'Authorization: Bearer 8f52e71903869cc8cf620831859074f43c91a1d3384fd348f1e3cf4864e46f64' \
--header 'Content-Type: application/json' \
--header 'Cookie: csrftoken=uxWx5huTKxYHq9gbcgXeDoLisd9lF1mqzyvzX7Ex62s99q7OE5ByyLTbbD3E4ld7' \
--data-raw '{
"decision_name": "Workflow creation test",
"decision_workflow_template_id": "9e0b12b0-e0ed-4493-8182-d00c0c9a9667"
}'
O comando acima devolve JSON estruturado assim:
{
"id": 98,
"name": "Workflow creation test",
"template_id": "9e0b12b0-e0ed-4493-8182-d00c0c9a9667"
}
Este endpoint cria um workflow a partir do modelo
Formatos suportados
[JSON]
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/decision_workflows
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| decision_name | ✔ | Deve ser uma cadeia | Nome do novo workflow |
| decision_workflow_template_id | ✔ | Deve ser um número inteiro | ID de modelo para usar na criação de um novo workflow |
Exemplo de corpo
{
"decision_name": "Test 1",
"decision_workflow_template_id": "08559ee4-62df-42e0-b95d-c2f75984db7f",
}
Informação de um Workflow
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows/1' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
O comando acima devolve JSON estruturado assim:
{
"id": 78,
"name": "Workflow name",
"decision_name": "test workflow",
"status": "started",
"current_step_type": null,
"current_step": {
"id_number": 1,
"id_parallel": 0,
"name": "1",
"id_workflow": 78,
"assigned_to": [
{
"id": "59db41d9-bcf4-4e7c-9330-830d1ca95c52",
"name": "John Doe"
}
],
"step_type": null,
"created_at": "2021-01-27T15:28:50.092-03:00",
"limit_date": "2021-01-28T15:29:04.426-03:00"
},
"steps": [
{
"id_number": 1,
"id_parallel": 0,
"name": "1",
"step_type": null,
"created_at": "2021-01-27T15:28:50.092-03:00",
"limit_date": "2021-01-28T15:29:04.426-03:00"
},
{
"id_number": 2,
"id_parallel": 0,
"name": "2",
"step_type": null,
"created_at": "2021-01-27T15:28:50.092-03:00",
"limit_date": null
},
{
"id_number": 3,
"id_parallel": 0,
"name": "3",
"step_type": null,
"created_at": "2021-01-27T15:28:50.092-03:00",
"limit_date": null
}
],
"documents": [
{
"id": "721111e8ba7847589648e0d2e4efe058",
"name": "My-Documnet.pdf",
"type": "document",
"in_repository": true,
"signable": true,
"signed": false,
"created_at": "2023-05-15T15:53:35.768-04:00"
}
]
}
Este endpoint devolve a informação de um processo dado.
Formatos suportados
[JSON]
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/decision_workflows/:id
Listar etapas
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/steps' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
O comando acima devolve JSON estruturado assim:
[
{
"id_number": 1,
"id_parallel": 0,
"name": "Electronic Signature",
"id_workflow": 94,
"assigned_to": [
{
"id": "7faf7ca5-46a7-4ad2-a283-cecb5dd78566",
"name": "John Doe"
}
],
"step_attributes": [],
"step_type": "signature",
"is_signature_step": true,
"created_at": "2021-01-27T15:28:50.092-03:00",
"limit_date": null
},
{
"id_number": 2,
"id_parallel": 0,
"name": "Cassification",
"id_workflow": 94,
"assigned_to": [],
"step_attributes": [],
"step_type": null,
"created_at": "2021-01-27T15:28:50.092-03:00",
"limit_date": null
},
...
]
Este endpoint permite listar as etapas de um workflow
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/steps
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id do workflow |
Obter etapa
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/steps/<STEP_ID>' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
O comando acima devolve JSON estruturado assim:
{
"id_number": 1,
"id_parallel": 0,
"name": "paso firma",
"id_workflow": 94,
"assigned_to": [
{
"id": "7faf7ca5-46a7-4ad2-a283-cecb5dd78566",
"name": "Test Satrang Anveshtest"
}
],
"step_attributes": [],
"step_type": "signature"
}
Este endpoint permite obter o detalhe de uma etapa de workflow
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/steps/<STEP_ID>?parallel_number=<P_N>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id do workflow |
| STEP_ID | Número da etapa |
| P_N | O número da etapa paralela |
Cancelar um workflow
curl --location --request POST 'https://api.webdoxclm.com/api/v2/decision_workflows/1/cancel' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99' \
--header 'Content-Type: application/json' \
--data-raw '{
"cancellation_reasons": "other reason"
}'
O comando acima devolve JSON estruturado assim:
{
"success": true
}
Este endpoint cancela um workflow, junto com um motivo de cancelamento
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/decision_workflows/:id/cancel
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| cancellation_reasons | ✔ | Deve ser uma cadeia de texto | Razão de cancelamento |
Exemplo de corpo
{
"cancellation_reasons": "reason"
}
Atribuir um usuário
Este endpoint atribui um usuário dado a uma etapa do processo
Formatos suportados
[JSON]
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/decision_workflows/:id/assign_step_users' \
--header 'Authorization: Bearer b74a2aeab29c311b95e99307bfa833f9b2171a098207bb648808529ef3c8756b' \
--header 'Content-Type: application/json' \
--data-raw '{
"step_id": 1,
"assigned_ids": ["e1c6f251-5efc-410f-924f-8cbba1ff7f15",
"59db41d9-bcf4-4e7c-9330-830d1ca95c52"]
}'
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/decision_workflows/:id/assign_step_users
O comando acima devolve JSON estruturado assim:
{
"step": {
"id_number": 1,
"id_parallel": 0,
"name": "1",
"id_workflow": 79,
"assigned_to": [
{
"id": "59db41d9-bcf4-4e7c-9330-830d1ca95c52",
"name": "John Doe"
},
{
"id": "e1c6f251-5efc-410f-924f-8cbba1ff7f15",
"name": "Jane Doe"
}
],
"step_type": null
}
}
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| step_id | O ID da etapa |
| assigned_ids | Os Ids de usuários atribuídos |
Usuários e grupos que posso atribuir
Este endpoint retorna todos os usuários e grupos que posso atribuir em uma etapa dada
Formatos suportados
[JSON]
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/decision_workflows/:id/users_can_assign
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows/1/users_can_assign.json?number=2¶llel_number=0' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
O comando acima devolve JSON estruturado assim:
{
"users": [
{
"id": 1,
"first_name": "Jhon",
"last_name": "Smith",
"email": "[email protected]"
},
{
"id": 2,
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]"
}
],
"jobs": [
{
"id": 1,
"name": "Ejecutivo"
},
{
"id": 2,
"name": "Subgerente"
}
]
}
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| number | Número da Etapa |
| parallel_number | Número Paralelo da Etapa |
Se não forem enviados os parâmetros, obtém-se as informações da etapa atual
Obter url de assinatura
Este endpoint permite obter a url de assinatura em uma etapa de assinatura dada para o usuário logado.
Formatos suportados
[JSON]
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/decision_workflows/:id/sign_url
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows/42/sign_url?number=2¶llel_number=0' \
--header 'Authorization: Bearer <TOKEN>'
O comando acima devolve JSON estruturado assim:
{
"url": "https://signature.webdoxclm.com/s/ebf65056-5c09-4c50-9cea-93db8753ce7f"
}
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| number | Número da Etapa |
| parallel_number | Número Paralelo da Etapa |
Se não forem enviados os parâmetros, obtém-se as informações da etapa atual
Validar uma Etapa
Este endpoint valida uma etapa de um processo
Formatos suportados
[JSON]
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/decision_workflows/11/validate?number=1¶llel_number=0' \
--header 'Authorization: Bearer 30fc661152f2090f1abcfb54ef8393d3639b37efdb5d577ba3df7eb6b9573a2f' \
--data-raw '{
"comment": "Validado"
}'
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/decision_workflows/<ID_DW>/validate?number=<N>¶llel_number=<P_N>
O comando acima devolve JSON estruturado assim:
{
"success": true,
"step": {
"id_number": 1,
"id_parallel": 0,
"id_workflow": 11,
"assigned_to": [
{
"id": "040b0e08-deb7-41af-9af8-b4dc24830e68",
"name": "User Test"
}
],
"step_type": null
}
}
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID_DW | O ID do processo |
| N | O número da etapa |
| P_N | O número da etapa paralela |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| comment | ✔ | Cadeia opcional | Comentário do usuário validado |
Retornar etapa anterior
Este endpoint permite retornar o workflow à etapa anterior.
Formatos suportados
[JSON]
curl --location --request POST 'https://api.webdoxclm.com/api/v2/decision_workflows/11/return_step?number=2' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/decision_workflows/<ID_DW>/return_step?number=<N>¶llel_number=<P_N>
O comando acima devolve JSON estruturado assim:
{
"success": true,
"status": 200
}
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID_DW | O ID do processo |
| N | O número da etapa |
| P_N | O número da etapa paralela |
Adicionar documento a etapa de redação
curl --location --request POST 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/documents?number=<STEP_NUMBER>' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--form 'origin="pc"' \
--form 'attachment=@"/Users/webdox-dev12/Documents/important_document.pdf"'
O comando acima devolve JSON estruturado assim:
{
"document": {
"id": 44,
"name": "important_document.pdf",
"type": "document"
}
}
Formatos suportados
[JSON]
Este endpoint permite adicionar documentos a etapas de redação.
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/documents?number=<STEP_NUMBER>¶llel_number=<PARALLEL_NUMBER>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| WF_ID | O ID do processo |
| STEP_NUMBER | O número da etapa |
| PARALLEL_NUMBER | O número da etapa paralela |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| origin | ✔ | Deve ser uma cadeia de texto | Origem do documento a subir (template, pc) |
| word_template_id | Opcional número inteiro (deve ser usado se origin é template) | Corresponde ao ID da plantilla word | |
| attachment | Opcional ID (deve ser usado se origin é pc) | Corresponde ao documento que se quer carregar | |
| versioned_document | Opcional booleano (deve ser usado se origin é pc) | Deve ser enviado para carregar documentos pdf |
Exemplo de corpo
{
"origin": "template",
"word_template_id": 1
}
Listar documentos da etapa
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_ID>/documents' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
O comando acima devolve JSON estruturado assim:
[
{
"id": "93ac84fea5be4e2a8455bff497654f46",
"name": "annex_services.docx",
"created_at": "2021-04-23T13:30:17.431-05:00",
"updated_at": "2021-04-23T13:30:24.623-05:00",
"modified_at": "2021-04-23T13:30:17.471-05:00",
"attachment_file_size": 20513,
"created_by": "fdsf234fsdf345gsf59a170b0dc536c",
"creator_name": "Jane Doe",
"extension": null,
"file_ext": "docx",
"last_office_document_version_user": "--",
"office_document_version_number": [],
"download_url": "document url"
},
{
"id": "981f194d0fc14c2a98decead4756823c",
"name": "original_contract.pdf",
"created_at": "2021-04-26T12:19:01.823-05:00",
"updated_at": "2021-04-26T12:19:06.726-05:00",
"modified_at": "2021-04-26T12:19:04.785-05:00",
"attachment_file_size": 74725,
"created_by": "95edb20421294b60bb59a170b0dc536c",
"creator_name": "John Doe",
"extension": null,
"file_ext": "pdf",
"last_office_document_version_user": "--",
"office_document_version_number": [],
"last_office_document_version_url": "last version url"
"download_url": "main document url"
},
...
]
Permite mostrar os documentos subidos à etapa do workflow
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_ID>/documents
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id do workflow |
| STEP_ID | Número da etapa |
Atualizar campos do formulário
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/steps/<STEP_ID>/attributes' \
--header 'Authorization: Bearer bf18538228e7ca15ce4224c8de8241f825dd2cd5a5495abdbb698684bf86ec39' \
--header 'Content-Type: application/json' \
--data-raw '{
"parallel_number": 0,
"step_attributes":{
"f0cf1399-55bb-47e9-a6ab-459df2f2f628": "Contract 1",
"b4869bdf-ede3-4057-845a-5ab3558289d2": "Annex",
"5a75371d-775f-4c9e-8704-13d5ec53d0eb": "555123123",
"1e1aab9c-4e0b-47e9-a45f-7306b9e4b14f": "true",
"c1ed8ce0-9c4e-4ba5-8b6f-a50bcb744f55": "Santiago",
"643fc63f-c34b-4ea5-a243-6a5173a97ed0": "2021-05-26"
}
}'
O comando acima devolve JSON estruturado assim:
[
{
"id": "f0cf1399-55bb-47e9-a6ab-459df2f2f628",
"attribute_options": [],
"value": "Contract 1",
"name": "nombre",
"position": 0,
"required": false,
"type": "string"
},
{
"id": "b4869bdf-ede3-4057-845a-5ab3558289d2",
"attribute_options": [
{
"id": "de64fced-622a-4043-b835-19025236c0bf",
"value": "asignacion"
},
{
"id": "aa8c26f4-558c-4376-9e7e-01c541862c51",
"value": "creacion"
}
],
"value": "asignacion",
"name": "tipo",
"position": 1,
"required": true,
"type": "list"
},
{
"id": "5a75371d-775f-4c9e-8704-13d5ec53d0eb",
"attribute_options": [],
"value": "555123123",
"name": "telefono",
"position": 3,
"required": false,
"type": "numeric"
},
{
"id": "1e1aab9c-4e0b-47e9-a45f-7306b9e4b14f",
"attribute_options": [],
"value": "true",
"name": "acepta",
"position": 4,
"required": false,
"type": "boolean"
},
{
"id": "c1ed8ce0-9c4e-4ba5-8b6f-a50bcb744f55",
"attribute_options": [
{
"id": "15",
"value": "Arica y Parinacota",
"communes": [
{
"id": "15101",
"value": "Arica"
},
{
"id": "15102",
"value": "Camarones"
},
{
"id": "15202",
"value": "General Lagos"
},
{
"id": "15201",
"value": "Putre"
}
]
},
...
],
"value": "Santiago",
"name": "comuna",
"position": 5,
"required": false,
"type": "chilean_commune"
},
{
"id": "643fc63f-c34b-4ea5-a243-6a5173a97ed0",
"attribute_options": [],
"value": "2021-05-26",
"name": "fecha proceso",
"position": 2,
"required": true,
"type": "date"
}
Este endpoint permite mudar o valor dos campos do formulário da etapa
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/steps/<STEP_ID>/attributes
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id do workflow |
| STEP_ID | Número da etapa |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| parallel_number | Deve ser número inteiro | Número paralelo da etapa | |
| step_attributes | ✔ | Array de Hash | Contém os atributos a atualizar emparelhado por id do campo e seu valor |
Baixar documentos
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/documents' \
--header 'Authorization: Bearer 0a85e789058d46209f150b2e697f87d7aa94e88d031aebe8d780e50c2b6ea54c' \
O comando acima devolve JSON estruturado assim:
[
{
"f0cf1399-55bb-47e9-a6ab-459df2f2f628": "document_url"
},
{
"5a75371d-775f-4c9e-8704-13d5ec53d0eb": "document_url"
},
{
"643fc63f-c34b-4ea5-a243-6a5173a97ed0": "document_url"
}
]
Este endpoint permite obter os links dos documentos do workflow para seu download
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/documents
Atribuir documento a assinatura
curl --location --request POST 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/set_signable_document' \
--header 'Authorization: Bearer 3bd551464fcb353322e3fca4f9004f3ed3984e4d3d46dffc787b40dc00ad275f' \
--header 'Content-Type: application/json' \
--data-raw '{
"document_id": "6c4ddb4be5c34467b5c0bf0ca9bba3fc",
"number": "1"
}'
O comando acima devolve JSON estruturado assim:
success
Este endpoint permite atribuir os documentos que serão assinados
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/set_signable_document
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| WF_ID | Id do workflow |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| document_id | ✔ | ID | Id do documento a atribuir |
| number | ✔ | Inteiro | Número da etapa de assinatura |
Update Sequential Signature
Allows configuring whether electronic signatures for a step should be executed sequentially (one after another) or in parallel (all at the same time). Can only be modified before the signature envelope is sent.
Formatos suportados
[JSON]
curl --location --request PATCH 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/update_sequential_signature' \
--header 'Authorization: Bearer 3bd551464fcb353322e3fca4f9004f3ed3984e4d3d46dffc787b40dc00ad275f' \
--header 'Content-Type: application/json' \
--data-raw '{
"number": 1,
"parallel_number": 0,
"sequential_signature": true
}'
Requisição HTTP
PATCH https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/update_sequential_signature
O comando acima devolve JSON estruturado assim:
{
"success": true,
"sequential_signature": true
}
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| WF_ID | Decision workflow ID |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| number | ✔ | Integer, step number | Step number to modify |
| parallel_number | Optional integer | Step parallel number. Use 0 for normal steps, higher numbers for parallel steps | |
| sequential_signature | ✔ | Boolean, true or false | true for sequential signature, false for parallel signature |
Exemplo de corpo
{
"number": 1,
"parallel_number": 0,
"sequential_signature": true
}
Important Notes
• Only works on steps that require electronic signature (require_signature: true)
• Cannot be modified after the signature envelope has been sent
• Sequential signature: signers must sign in order
• Parallel signature: all signers can sign simultaneously
Allow positioned signature
Allows configuring the positioning of electronic signatures per signer in one or more documents within a specific step. It can only be modified before the signature envelope is sent.
Formatos suportados
[JSON]
curl --location --request PATCH 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/update_signature_positioned' \
--header 'Authorization: Bearer 3bd551464fcb353322e3fca4f9004f3ed3984e4d3d46dffc787b40dc00ad275f' \
--header 'Content-Type: application/json' \
--data-raw '{
"number": 1,
"parallel_number": 0,
"signature_positioned": true
}'
Requisição HTTP
PATCH https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/update_signature_positioned
O comando acima devolve JSON estruturado assim:
{
"success": true,
"signature_positioned": true
}
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| WF_ID | Decision workflow ID |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| number | ✔ | Integer, step number | Step number to modify |
| parallel_number | Integer, if not specified defaults to 0 | Parallel step number (optional, defaults to 0 if not specified) | |
| signature_positioned | ✔ | Boolean, true or false | true for positioned signature, false for non-positioned signature |
Exemplo de corpo
{
"signature_positioned": true
}
Important notes
It cannot be modified after the signature envelope has been signed.
Apagar documento
curl --location --request DELETE 'https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/documents/<DOC_ID>' \
--header 'Authorization: Bearer 3bd551464fcb353322e3fca4f9004f3ed3984e4d3d46dffc787b40dc00ad275f' \
O comando acima devolve JSON estruturado assim:
Documento eliminado(a)
Este endpoint permite apagar um documento do processo. Serve também para apagar documentos da etapa
Requisição HTTP
DELETE https://api.webdoxclm.com/api/v2/decision_workflows/<ID>/documents/<DOC_ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id do workflow |
| DOC_ID | Id do documento |
Plantillas de Workflows
Estas plantillas se utilizan para crear nuevos workflow.
Obter todos os modelos de workflow
curl --location --request GET 'https://api.webdoxclm.com/api/v2/templates' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
O comando acima devolve JSON estruturado assim:
[
{
"id": "b9edf969-a6c6-43cc-a4c0-70f52f4ba24d",
"name": "Wf decisiones"
},
{
"id": "dc1d668c-c182-487b-8adc-91ba0159d66a",
"name": "new name 2"
},
{
"id": "02376bd8-2048-4976-9211-cd6d78b6adb6",
"name": "test run"
}
]
Este endpoint recupera todos os modelos de Workflow.
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/templates
Editar Modelo de Workflow
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/templates/a5cb38c8-8a9f-4190-9e3b-c7c9fb596b66' \
--header 'Authorization: Bearer c472ca4f32df9ea4645ebc8334f7e328ab841d34c4db2330bf6d90a1abc1cf77' \
--header 'Content-Type: application/json' \
--data-raw '{
"decision_workflow_template":{
"name":"hello world"
}
}'
O comando acima devolve JSON estruturado assim:
Permite editar o modelo de workflow selecionado
{
"id": "a5cb38c8-8a9f-4190-9e3b-c7c9fb596b66",
"name": "hello world",
"draft": false
}
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/templates/:ID
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | ✔ | Deve ser texto | Nome do modelo |
Exemplo de corpo
{
"decision_workflow_template":{
"name":"hello world"
}
}
Obter o modelo selecionado.
curl --location --request GET 'https://api.webdoxclm.com/api/v2/templates/a5cb38c8-8a9f-4190-9e3b-c7c9fb596b66' \
--header 'Authorization: Bearer 20a27f01382eb430c9a0993d08b2abe9ba80b1c65eface47c31c614838ed3ed1'
O comando acima devolve JSON estruturado assim:
{
"id": "a5cb38c8-8a9f-4190-9e3b-c7c9fb596b66",
"name": "Workflow enero 29 2021, 3:48:58 p1231m",
"draft": false
}
Este endpoint permite obter os dados do modelo de workflow.
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/templates/:ID
Criar um modelo de workflow
curl --location --request POST 'https://api.webdoxclm.com/api/v2/templates' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99' \
--header 'Content-Type: application/json' \
--data-raw '{
"decision_workflow_template": {
"name": "test"
}
}'
O comando acima devolve JSON estruturado assim:
{
"id": "08559ee4-62df-42e0-b95d-c2f75984db7f",
"name": "Plantilla generica",
"draft": false
}
Este endpoint permite criar um Modelo de Workflow com um nome dado
Formatos suportados
[JSON]
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/templates
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | ✔ | Deve ser uma cadeia e única | Nome |
Listar passos de workflows
curl --location --request GET 'https://api.webdoxclm.com/api/v2/templates/483b86f9-f1ce-438a-9a9a-b0619e06ba0b/steps' \
--header 'Authorization: Bearer c38b2bebf4aa0e76d3729080fd77e8a48d982a6c346a1bdd90522c3ad3ecbcc2' \
--header 'Cookie: csrftoken=uxWx5huTKxYHq9gbcgXeDoLisd9lF1mqzyvzX7Ex62s99q7OE5ByyLTbbD3E4ld7'
O comando acima devolve JSON estruturado assim:
[
{
"name": "Step 1",
"number": 1,
"parallel_number": 0,
"kind": "form",
"limit_time_number": 2,
"limit_time_units": "days",
"text_description": "Step 1 creation",
"user_ids": [],
"job_ids": [],
"signers": null,
"conditions": [],
"triggers": [],
"attributes": []
},
{
"name": "Step 2",
"number": 2,
"parallel_number": 0,
"kind": "signature",
"limit_time_number": 2,
"limit_time_units": "days",
"text_description": "Step 2 creation",
"user_ids": [],
"job_ids": [],
"signers": null,
"conditions": [],
"triggers": [],
"attributes": []
},
...
]
Permite listar os passos de uma plantilla de workflow
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/templates/<TEMPLATE_ID>/steps
Obter detalhe de passo de plantilla
curl --location --request GET 'https://api.webdoxclm.com/api/v2/templates/483b86f9-f1ce-438a-9a9a-b0619e06ba0b/steps/2' \
--header 'Authorization: Bearer c38b2bebf4aa0e76d3729080fd77e8a48d982a6c346a1bdd90522c3ad3ecbcc2' \
--header 'Cookie: csrftoken=uxWx5huTKxYHq9gbcgXeDoLisd9lF1mqzyvzX7Ex62s99q7OE5ByyLTbbD3E4ld7' \
--form 'decision_workflow_template_step[parallel_number]="0"'
O comando acima devolve JSON estruturado assim:
{
"name": "Step 2",
"number": 2,
"parallel_number": 0,
"kind": "form",
"limit_time_number": 2,
"limit_time_units": "days",
"text_description": "Step 2 creation",
"user_ids": [],
"job_ids": [],
"signers": null,
"conditions": [],
"triggers": [],
"attributes": []
}
Permite obter o detalhe de um passo de plantilla
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/templates/<TEMPLATE_ID>/steps/<STEP_NUMBER>
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| decision_workflow_template_step | ✔ | Deve ser um hash | Especifica se é um passo paralelo ou principal |
| parallel_number | ✔ | Deve ser um inteiro | Indica o numero do passo paralelo |
Criar passos de plantilla de workflow
curl --location --request POST 'https://api.webdoxclm.com/api/v2/templates/<DWT_ID>/steps' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"'
--data-raw '{
"decision_workflow_template_step": {
"name": "Paso 8",
"text_description": "Descripcion paso 8",
"number": 8,
"parallel_number": 0,
"limit_time_units": "days",
"limit_time_number": 2,
"kind": "validation",
"triggers": [
{
"type": "approval_apply",
"target_action": {}
}
],
"form":[
{
"name":"Tipo texto 1",
"type":"string",
"required":false
},
{
"name":"opcion1",
"type":"list",
"required":false,
"options":[
{"value":"nombre campo 1"},
{"value":"nombre campo 2"}
]
},
{
"name":"numero 1",
"type":"numeric",
"required":false,
},
{
"name":"fecha",
"type":"date",
"required":false,
}
]
}
}'
O comando acima devolve JSON estruturado assim:
{
"name": "Paso 9",
"number": 9,
"parallel_number": 0,
"kind": "validation",
"text_description": "Descripcion paso 9",
"user_ids": [],
"job_ids": [],
"signers": null,
"conditions": [],
"triggers": [
{
"type": "approval_apply",
"target_action": {}
}
],
"attributes": [
{
"id": "dfa3e4dd-7389-44f7-b54a-a9eb24d80e5e",
"name": "Tipo texto 1",
"type": "string",
"required": false,
"position": 0,
"options": []
},
{
"id": "e7693da7-bb2b-4b6d-93e2-8ef528a085b0",
"name": "opcion1",
"type": "list",
"required": false,
"position": 1,
"options": [
{
"id": 12,
"value": "nombre campo 1",
"tag": null,
"customer_id": 1
},
{
"id": 13,
"value": "nombre campo 2",
"tag": null,
"customer_id": 1
}
]
},
{
"id": "644ecb7a-6e09-4b3d-980e-8e1ce997e8d7",
"name": "numero 1",
"type": "numeric",
"required": false,
"position": 2,
"options": []
},
{
"id": "4481f206-d14f-4f9f-b580-48b3dd1a3c96",
"name": "fecha",
"type": "date",
"required": false,
"position": 3,
"options": []
}
]
}
Permite criar passos em plantillas de workflows
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/templates/<DWT_ID>/steps
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| DWT_ID | Id da plantilla de workflow |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| decision_workflow_template_step | ✔ | Deve ser um hash | Nome do passo |
| name | ✔ | Deve ser uma cadeia de texto | Número de passo |
| number | ✔ | Deve ser um número inteiro | Número de passo paralelo |
| parallel_number | ✔ | Deve ser um número inteiro | Valor de tempo limite de passo |
| limit_time_number | ✔ | Deve ser um número inteiro | Unidade de tempo |
| limit_time_units | ✔ | Deve ser uma cadeia de texto | Tipo de unidade |
| kind | Deve ser uma cadeia de texto | Tipo de passo | |
| text_description | ✔ | Deve ser uma cadeia de texto | Descrição do passo |
| user_ids | Deve ser um array de números inteiros | Usuários atribuídos ao passo | |
| job_ids | ✔ | Deve ser um array de números inteiros | Grupos atribuídos ao passo |
| conditions | Deve ser um array de hashes | Decisões do passo | |
| left_value | ✔ | Deve ser uma cadeia de texto | Campo do formulário |
| right_value | ✔ | Deve ser uma cadeia de texto | Valor do campo que gatilha a ação |
| true_step_number | ✔ | Deve ser um número inteiro | Passo ao qual se dirigirá o workflow de cumprirse a condição |
| form | Deve ser um array de hashes | Formulário do passo | |
| name | ✔ | Deve ser uma cadeia de texto | Nome do campo |
| type | ✔ | Deve ser uma cadeia de texto | Tipo de campo |
| required | ✔ | deve ser true ou false | Obrigações do campo |
| options | ✔ | Deve ser um array de hashes | Opções para campo tipo 'list' |
| value | ✔ | Pode ser texto ou número | Valor da opção |
| triggers | Deve ser um array de hashes | Ações | |
| trigger_action | ✔ | Deve ser um array de hashes | Tipo de ação |
| message | ✔ | Deve ser uma cadeia de texto | Mensagem para ação de tipo 'send_mail' |
| reciever | ✔ | Deve ser uma cadeia de texto | Destinatário da mensagem |
| subject | ✔ | Deve ser uma cadeia de texto | Assunto da mensagem |
Atualizar passo de plantilla de workflow
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/templates/<DWT_ID>/steps/<STEP_NUMBER>' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"'
--data-raw '{
"decision_workflow_template_step": {
"name": "Paso 6",
"number": 6,
"parallel_number": 0,
"kind": "signature",
"text_description": "Descripcion paso 6 actualizada por api",
"user_ids": [],
"job_ids": [
2
],
"signers": null,
"conditions": [],
"triggers": [],
"attributes": [
{
"id": "2d9bb273-bda0-4fac-9262-45a31c02bbc2",
"name": "Nombre 6",
"type": "date",
"required": true,
"position": 0,
"options": []
}
]
}
}
'
O comando acima devolve JSON estruturado assim:
{
"decision_workflow_template_step": {
"name": "Paso 6",
"number": 6,
"parallel_number": 0,
"kind": "signature",
"text_description": "Descripcion paso 6 actualizada por api",
"user_ids": [],
"job_ids": [
2
],
"signers": null,
"conditions": [
{
left_value: " ",
right_value: " ",
role: "dynamic_attribute",
true_step_number: 1,
type: "=="
}
],
"triggers": [],
"attributes": [
{
"id": "2d9bb273-bda0-4fac-9262-45a31c02bbc2",
"name": "Nombre 6",
"type": "date",
"required": true,
"position": 0,
"options": []
}
]
}
}
Permite mudar passos de uma plantilla de workflows
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/decision_workflow_template_steps/<DWT_ID>/steps/<STEP_NUMBER>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| DWT_ID | Id da plantilla de workflow |
| STEP_NUMBER | Step number |
<h3 id='parametros-do-corpo'>Parâmetros do corpo</h3>
<table><thead>
<tr>
<th>Parâmetro</th>
<th>Obrigatório</th>
<th>Validação</th>
<th>Descrição</th>
</tr>
</thead><tbody>
<tr>
<td>decision_workflow_template_step</td>
<td>✔</td>
<td>Deve ser um hash</td>
<td>Nome do passo</td>
</tr>
<tr>
<td>name</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Número de passo</td>
</tr>
<tr>
<td>number</td>
<td>✔</td>
<td>Deve ser um número inteiro</td>
<td>Número de passo paralelo</td>
</tr>
<tr>
<td>parallel_number</td>
<td>✔</td>
<td>Deve ser um número inteiro</td>
<td>Valor de tempo limite de passo</td>
</tr>
<tr>
<td>limit_time_number</td>
<td>✔</td>
<td>Deve ser um número inteiro</td>
<td>Unidade de tempo</td>
</tr>
<tr>
<td>limit_time_units</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Tipo de unidade</td>
</tr>
<tr>
<td>kind</td>
<td></td>
<td>Deve ser uma cadeia de texto</td>
<td>Tipo de passo</td>
</tr>
<tr>
<td>text_description</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Descrição do passo</td>
</tr>
<tr>
<td>user_ids</td>
<td></td>
<td>Deve ser um array de números inteiros</td>
<td>Usuários atribuídos ao passo</td>
</tr>
<tr>
<td>job_ids</td>
<td>✔</td>
<td>Deve ser um array de números inteiros</td>
<td>Grupos atribuídos ao passo</td>
</tr>
<tr>
<td>conditions</td>
<td></td>
<td>Deve ser um array de hashes</td>
<td>Decisões do passo</td>
</tr>
<tr>
<td>left_value</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Campo do formulário</td>
</tr>
<tr>
<td>right_value</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Valor do campo que gatilha a ação</td>
</tr>
<tr>
<td>true_step_number</td>
<td>✔</td>
<td>Deve ser um número inteiro</td>
<td>Passo ao qual se dirigirá o workflow de cumprirse a condição</td>
</tr>
<tr>
<td>form</td>
<td></td>
<td>Deve ser um array de hashes</td>
<td>Formulário do passo</td>
</tr>
<tr>
<td>name</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Nome do campo</td>
</tr>
<tr>
<td>type</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Tipo de campo</td>
</tr>
<tr>
<td>required</td>
<td>✔</td>
<td>deve ser true ou false</td>
<td>Obrigações do campo</td>
</tr>
<tr>
<td>options</td>
<td>✔</td>
<td>Deve ser um array de hashes</td>
<td>Opções para campo tipo 'list'</td>
</tr>
<tr>
<td>value</td>
<td>✔</td>
<td>Pode ser texto ou número</td>
<td>Valor da opção</td>
</tr>
<tr>
<td>triggers</td>
<td></td>
<td>Deve ser um array de hashes</td>
<td>Ações</td>
</tr>
<tr>
<td>trigger_action</td>
<td>✔</td>
<td>Deve ser um array de hashes</td>
<td>Tipo de ação</td>
</tr>
<tr>
<td>message</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Mensagem para ação de tipo 'send_mail'</td>
</tr>
<tr>
<td>reciever</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Destinatário da mensagem</td>
</tr>
<tr>
<td>subject</td>
<td>✔</td>
<td>Deve ser uma cadeia de texto</td>
<td>Assunto da mensagem</td>
</tr>
</tbody></table>
Valores possíveis para campo kind
| Valor | Descrição |
|---|---|
| redaction | redação |
| validation | validação |
| signature | assinatura |
| form | formulário |
Valores possíveis para campo type
| Valor | Descrição |
|---|---|
| numeric | numérico |
| string | texto |
| date | data |
| list | lista |
| boolean | verdadeiro ou falso |
| rut | rut |
| text | parágrafo |
| chilean_region | região chilena |
| chilean_commune | comuna chilena |
Valores possíveis para campo trigger_action
| Valor | Descrição |
|---|---|
| send_email | enviar correio |
| approval_apply | aplicar visto bom |
Signatários
Estes endpoints se utilizam para gerir signatários aos documentos.
Obter listado de signatários
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers?parallel_number=<PARALLEL_STEP_NUMBER>' \
--header 'Authorization: Bearer [ACCESS_TOKEN]"'
O comando acima devolve JSON estruturado assim:
[
{
"id": "c1c86feb-f806-4897-b8e5-5360b00f5302",
"step_number": 1,
"step_parallel_number": 0,
"kind": "external",
"status": "pending",
"user_id": null,
"country_code": "CHL",
"name": "Sample User",
"email": "[email protected]",
"national_identification_number": "20000000-1",
"national_identification_kind_id": "94bfbabc-9971-4cc8-bb6b-80c62aa2887d",
"signature_id": null,
"envelope_id": 8,
"signed_at": null,
"signed_difference": null,
"phone_number": null,
"has_valid_positioned_signatures": false,
"cc_email": null,
"use_notification_method_whatsapp": false
}
]
Obtém os signatários de uma etapa de assinatura de workflow
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers?parallel_number=<PARALLEL_STEP_NUMBER>
Criar signatário
curl --location --request POST 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers?parallel_number=<PARALLEL_STEP_NUMBER>' \
--header 'Authorization: Bearer [ACCESS_TOKEN]"'
--data-raw '{
"signer": {
"kind": "external",
"user_id": null,
"country_code": "CHL",
"name": "Sample name",
"email": "[email protected]",
"national_identification_number": "20000000-1"
"national_identification_kind_id": "94bfbabc-9971-4cc8-bb6b-80c62aa2887d",
"cc_email": "[email protected]",
"use_notification_method_whatsapp": true,
"positioned_signatures_attributes": [
{
"document_id": "5f4e2b8e-8c3d-4f5a-9c2d-1e2b3c4d5e6f",
"signatures": [
{
"page": 1,
"pos": {
"X": 100,
"Y": 100
}
}
]
},
{
"document_id": "6a7b8c9d-0e1f-2a3b-4c5d-6e7f8g9h0i1j",
"signatures": [
{
"page": 2,
"pos": {
"X": 150,
"Y": 200
}
}
]
}
]
}
}'
curl --location 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers?parallel_number=<PARALLEL_STEP_NUMBER>' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer [ACCESS_TOKEN]' \
--data '{
"signer": {
"kind": "internal",
"user_id": "c6971fd6-f571-47aa-b53a-9cb84bb37500",
"use_notification_method_whatsapp": true
}
}'
O comando acima devolve JSON estruturado assim:
[
{
"id": "c1c86feb-f806-4897-b8e5-5360b00f5302",
"step_number": 1,
"step_parallel_number": 0,
"kind": "external",
"status": "pending",
"user_id": null,
"country_code": "CHL",
"name": "Sample name",
"email": "[email protected]",
"national_identification_number": "20000000-1",
"national_identification_kind_id": "94bfbabc-9971-4cc8-bb6b-80c62aa2887d",
"signature_id": null,
"envelope_id": 8,
"signed_at": null,
"signed_difference": null,
"phone_number": null,
"has_valid_positioned_signatures": false,
"cc_email": null,
"use_notification_method_whatsapp": true,
"positioned_signatures": [
{
"id": "d2f4e5b6-c7d8-9e0f-1a2b-3c4d5e6f7g8h",
"document_id": "5f4e2b8e-8c3d-4f5a-9c2d-1e2b3c4d5e6f",
"signatures": [
{
"page": 1,
"pos": {
"X": 100,
"Y": 100
}
}
]
},
{
"id": "e3f5g6h7-i8j9-0a1b-2c3d-4e5f6g7h8i9j",
"document_id": "6a7b8c9d-0e1f-2a3b-4c5d-6e7f8g9h0i1j",
"signatures": [
{
"page": 2,
"pos": {
"X": 150,
"Y": 200
}
}
]
}
]
}
]
Neste endpoint podem ser criados signatários na etapa
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers?parallel_number=<PARALLEL_STEP_NUMBER>
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| kind | ✔ | Deve ser um texto | Tipo de signatário |
| user_id | ✔ | Deve ser um texto | Id do usuário interno |
| country_code | ✔ | Deve ser um texto | Código ISO do país |
| name | ✔ | Deve ser um texto | Nome do signatário |
| ✔ | Deve ser um texto | Email do signatário | |
| national_identification_number | ✔ | Deve ser um texto | Número de identificação nacional do signatário |
| national_identification_kind_id | ✔ | Deve ser um UUID | Id do tipo de documento do país do signatário. Somente é requerido quando o país conta com vários tipos de documento de identidade. A Id pode ser obtida através do endpoint de Tipos de Documento do País. |
| cc_email | Deve ser um texto | CC ou Cópia de carvão | |
| use_notification_method_whatsapp | Deve ser um booleano (true ou false) | Notificar ao signatário por Whatsapp (onde estiver disponível) | |
| phone_number | Deve ser um texto | Número de telefone do signatário (inclui código de país Ex. +56932104567) | |
| position | Integer, greater than 0 | Signer position for sequential signatures | |
| positioned_signatures_attributes | It must be an array of objects that contain the properties 'document_id' and 'signatures'. The 'signatures' property must itself be an array of objects with the properties 'page' and 'pos'. Additionally, the 'pos' property must be an object with the properties 'X' and 'Y'. | Signature position(s) per document |
| Valor | Descrição |
|---|---|
| internal | interno |
| external | externo |
Atualizar signatário
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers<SIGNER_ID>?parallel_number=<PARALLEL_STEP_NUMBER>' \
--header 'Authorization: Bearer [ACCESS_TOKEN]"'
--data-raw '{
"signer": {
"kind": "external",
"user_id": null,
"country_code": "CHL",
"name": "Sample name",
"email": "[email protected]",
"national_identification_number": "20000000-1",
"cc_email": "[email protected]",
"use_notification_method_whatsapp": false
}
}'
O comando acima devolve JSON estruturado assim:
[
{
"id": "c1c86feb-f806-4897-b8e5-5360b00f5302",
"step_number": 1,
"step_parallel_number": 0,
"kind": "external",
"status": "pending",
"user_id": null,
"country_code": "CHL",
"name": "Sample name",
"email": "[email protected]",
"national_identification_number": "20000000-1",
"signature_id": null,
"envelope_id": 8,
"signed_at": null,
"signed_difference": null,
"phone_number": null,
"has_valid_positioned_signatures": false,
"cc_email": null,
"use_notification_method_whatsapp": false
}
]
Endpoint para atualizar dados de um signatário
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers/<SIGNER_ID>?parallel_number=<PARALLEL_STEP_NUMBER>
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| kind | ✔ | Deve ser um texto | Tipo de signatário |
| user_id | Deve ser um texto | Id do usuário interno | |
| country_code | ✔ | Deve ser um texto | Código ISO do país |
| name | ✔ | Deve ser um texto | Nome do signatário |
| ✔ | Deve ser um texto | Email do signatário | |
| national_identification_number | Deve ser um texto | Número de identificação nacional do signatário | |
| national_identification_kind_id | Deve ser um UUID | Id do tipo de documento do país do signatário. Somente é requerido quando o país conta com vários tipos de documento de identidade. A Id pode ser obtida através do endpoint de Tipos de Documento do País. | |
| cc_email | Deve ser um texto | CC ou Cópia de carvão | |
| use_notification_method_whatsapp | Deve ser um booleano (true ou false) | Notificar ao signatário por Whatsapp (onde estiver disponível) | |
| phone_number | Deve ser um texto | Número de telefone do signatário (inclui código de país Ex. +56932104567) | |
| position | Integer, greater than 0 | Signer position for sequential signatures |
Apagar signatário
curl --location --request DELETE 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers/<SIGNER_ID>?parallel_number=<PARALLEL_STEP_NUMBER>' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99"'
O comando acima devolve JSON estruturado assim:
{
"id": "c1c86feb-f806-4897-b8e5-5360b00f5302",
"step_number": 1,
"step_parallel_number": 0,
"kind": "external",
"status": "pending",
"user_id": null,
"country_code": null,
"name": "Sample user",
"email": "[email protected]",
"national_identification_number": "20000000-1",
"signature_id": null,
"envelope_id": 8,
"signed_at": null,
"signed_difference": null,
"phone_number": null,
"has_valid_positioned_signatures": false,
"cc_email": null,
"use_notification_method_whatsapp": false
}
Endpoint para eliminar um signatário da etapa
Requisição HTTP
DELETE https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers/<SIGNER_ID>?parallel_number=<PARALLEL_STEP_NUMBER>
Obter enlaces de assinatura
curl --location --request GET 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers/urls?parallel_number=<PARALLEL_STEP_NUMBER>' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"'
O comando acima devolve JSON estruturado assim:
[
{
"name": "John Doe",
"id": "59db41d9-bcf4-4e7c-9330-830d1ca95c52",
"url": "https://firma.webdox.cl/s/gres56w36gs-g43w65g-grstyuk-6476t"
},
{
"name": "Jane Doe",
"id": null,
"url": "https://firma.webdox.cl/s/34242gfgf-rj847-jt675-tyjt6-34536h5787j"
}
]
Este endpoint permite ter os enlaces de assinatura eletrônica dos signatários de um workflow
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers/urls?parallel_number=<PARALLEL_STEP_NUMBER>'
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| WF_ID | Id do workflow |
| STEP-NUMBER | Número da etapa |
| PARALLEL_STEP_NUMBER | Numero paralelo da etapa |
Reenviar os correios aos signatários pendentes
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers/resend_emails' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"'
O comando acima devolve JSON estruturado assim:
{
"success": true
}
Endpoint que envia lembretes aos correios eletrônicos de signatários pendentes
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/decision_workflows/<WF_ID>/steps/<STEP_NUMBER>/signers/resend_emails
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| WF_ID | Id do workflow |
| STEP-NUMBER | Número da etapa |
Solicitações
Na Webdox podem ser criadas solicitações para iniciar processos (Workflows)
Listar solicitações
curl --location --request GET 'https://api.webdoxclm.com/api/v2/workflow_requests?page=1&per_page=10&filters[status]=requested' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"'
O comando acima devolve JSON estruturado assim:
[
{
"id": 39,
"title": "Test 1",
"description": "First Request",
"status": "requested",
"request_form_name": "Solicitud Contrato",
"requester": {
"id": "e1c6f251-5efc-410f-924f-8cbba1ff7f15",
"first_name": "Jane",
"last_name": "Doe"
},
"assigned": {
"id": "22e159d7-81fc-4259-981a-ae784b37ecbe",
"first_name": "John",
"last_name": "Doe"
},
"created_at": "2024-07-31T14:58:33.673-04:00"
},
...
]
Obtenha o listado de solicitações da sua conta
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/workflow_requests
| Valor | Descrição | Tipo |
|---|---|---|
| page | Número da página | Numérico |
| per_page | Quantidade de elementos por página | Numérico |
| filters | Filtros a aplicar | Texto |
Os filtros podem tomar os seguintes valores:
| Valor | Descrição | Tipo |
|---|---|---|
| status | Estado da solicitação, pode ser "requested", "rejected", "taken", "finished", "canceled", "under_modification" ou "in_review" | Texto |
| created_start_date | Início da data de criação da solicitação em formato ISO 8601 | Texto |
| created_end_date | Fim da data de criação da solicitação em formato ISO 8601 | Texto |
Obter dados de solicitação
curl --location --request GET 'https://api.webdoxclm.com/api/v2/workflow_requests/<ID>' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"'
O comando acima devolve JSON estruturado assim:
{
"id": 39,
"title": "Request example",
"description": "description here",
"status": "requested",
"created_at": "2021-03-13T21:43:30.601-03:00",
"attachments": [],
"requester": {
"id": "e1c6f251-5efc-410f-924f-8cbba1ff7f15",
"first_name": "Jane",
"last_name": "Doe"
},
"assigned": {
"id": "22e159d7-81fc-4259-981a-ae784b37ecbe",
"first_name": "John",
"last_name": "Doe"
},
"request_form_attributes": [
{
"attribute_id": "d7e08f85-92e1-45e2-a6ed-d897867e5feb",
"attribute_name": "Mode",
"attribute_value": "1"
},
{
"attribute_id": "2d8cd8d3-35c7-4270-9417-aac4af23d4f3",
"attribute_name": "Amount of the contract",
"attribute_value": "1.000 USD"
},
{
"attribute_id": "c12eddd1-1303-4ddb-a050-63dee79a3236",
"attribute_name": "Starting date",
"attribute_value": "2021-03-13"
}
]
}
Permite obter os campos de uma solicitação e seus atributos
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/workflow_requests/<ID>
Criar Solicitação
curl --location --request POST 'https://api.webdoxclm.com/api/v2/workflow_requests' \
--header 'Authorization: Bearer 28fe7240a5a69cdac997b2f498aec9aacb9f8f53eeac6a79b503ce976789983c' \
--header 'Content-Type: application/json' \
--data-raw '{
"workflow_request" :
{
"title": "Request",
"description": "Description",
"request_form_id": "e4b53c61-8fba-4f85-bea9-a7c5a5b6975a"
},
"request_form_attribute": {
"c9fa5502-2778-49b6-9d45-c54787b1a95f": "Arica",
"ac06e7fa-9036-4d05-8465-0b9b81b22990": @"/Users/webdox-dev-2/Downloads/DOC-39-38763151.pdf"
},
"synchronous_doc_creation": true
}'
O comando acima devolve JSON estruturado assim:
{
"workflow_request": {
"id": 74,
"title": "Request",
"description": "Description",
"status": "requested",
"created_at": "2021-03-26T14:53:08.092-03:00",
"attachments": [],
"requester": {
"id": "59db41d9-bcf4-4e7c-9330-830d1ca95c52",
"first_name": "John",
"last_name": "Doe"
},
"assigned": null,
"request_form_attributes": [
{
"attribute_id": "c9fa5502-2778-49b6-9d45-c54787b1a95f",
"attribute_name": "Comuna",
"attribute_value": "Arica"
},
{
"attribute_id": "ac06e7fa-9036-4d05-8465-0b9b81b22990",
"attribute_name": "Archivo",
"attribute_value": null
}
]
},
"success": true
}
Permite gerar solicitações na Webdox
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/workflow_requests
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| workflow_request | ✔ | Deve ser um hash | |
| title | ✔ | Deve ser uma cadeia de texto | Nome da solicitação |
| description | ✔ | Deve ser uma cadeia de texto (255) | Texto que descreve o motivo da solicitação |
| request_form_id | ✔ | Deve ser um número inteiro | Id do formulário de solicitação |
| draft | Pode ser true ou false | Permite criar uma solicitação como rascunho (com estado 'under_modification') | |
| synchronous_doc_creation | Deve ser true ou false | Permite mudar a forma como se processam os documentos da plantilla de solicitação | |
| request_form_attribute | Deve ser um hash | Campos do formulário de solicitação | |
| request_form_attribute[ID] | Deve ser uma cadeia de texto (255) | ID é o identificador do campo da solicitação, enquanto que o texto será seu valor |
Estado de uma solicitação
curl --location --request GET 'https://api.webdoxclm.com/api/v2/workflow_requests/<ID>/get_status' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"'
O comando acima devolve JSON estruturado assim:
{
"status_index": 0,
"status": "requested"
}
Se obtém o estado de uma solicitação
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/workflow_requests/<ID>/get_status
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | A id da solicitação |
Atribuir um usuário à solicitação
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/workflow_requests/<ID>/change_taker' \
--header 'Authorization: Token token="[TOKEN]"' \
--form 'user_id= \'
O comando acima devolve JSON estruturado assim:
{
"success": true,
"assigned": {
"id": "59db41d9-bcf4-4e7c-9330-830d1ca95c52",
"first_name": "John",
"last_name": "Doe"
}
}
Permite atribuir um usuário que se encarregue de dar curso à solicitação
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/workflow_requests/<ID>/change_taker
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id da solicitação |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| user_id | ✔ | Deve ser um número inteiro | Id do usuário atribuído |
Formulários de solicitação
São plantillas que permitem gerar as solicitações de Webdox. Aqui se configuram os campos que terá a solicitação
Obter listado de formulários de solicitação
curl --location --request GET 'https://api.webdoxclm.com/api/v2/request_forms?page=1&per_page=15?filters[status]=published' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"'
O comando acima devolve JSON estruturado assim:
[
{
"id": "3ae23c04-ecf9-4448-8f7d-d253d4a95eba",
"name": "Solicitud Anexo de Contrato",
"description": "",
"rjob_ids": [
"46896f04-1217-476a-87fa-3c6fc50ae936"
],
"creator": "John Doe",
"created_at": "2021-03-17T19:24:42.455-03:00",
"last_activity": {
"timestamp_str": "2021-03-17T19:24:42.455-03:00",
"responsible": "John Doe"
},
"status": "published"
},
{
"id": "e4b53c61-8fba-4f85-bea9-a7c5a5b6975a",
"name": "Solicitud Compra de Insumos",
"description": "",
"rjob_ids": [],
"creator": "Jane Doe",
"created_at": "2021-01-22T14:13:26.528-03:00",
"last_activity": {
"timestamp_str": "2021-01-22T14:13:26.528-03:00",
"responsible": "Jane Dow"
},
"status": "published"
},
...
]
Permite obter listado de todos os formulários de solicitação
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/request_forms?page=1&per_page=15
| Valor | Descrição | Tipo |
|---|---|---|
| page | Número da página | Numérico |
| per_page | Quantidade de elementos por página | Numérico |
| filters | Filtros a aplicar | Texto |
Os filtros podem tomar os seguintes valores:
| Valor | Descrição | Tipo |
|---|---|---|
| status | Estado do formulário de solicitação, pode ser "draft" ou "published" | Texto |
| created_start_date | Início da data de criação da solicitação em formato ISO 8601 | Texto |
| created_end_date | Fim da data de criação da solicitação em formato ISO 8601 | Texto |
Obter detalhe de formulário de solicitação
curl --location --request GET 'https://api.webdoxclm.com/api/v2/request_forms/<ID>' \
--header 'Authorization: Bearer 84afea467c63de04ccbe6f8f4859aad7f4ec8a60430046f96b5af601724f9cbf' \
O comando acima devolve JSON estruturado assim:
{
"id": "3ae23c04-ecf9-4448-8f7d-d253d4a95eba",
"name": "Prueba distribuidor de carga obligatorio",
"description": "",
"job_ids": [
"15f91198-0708-41e8-9659-935cf9f85251"
],
"rjob_ids": [
"15f91198-0708-41e8-9659-935cf9f85251",
"7390fd91-f3dc-43f8-a786-033c314ad0bd",
"3ff03eb9-a5cd-4cfe-b21b-59463b1c3ad1"
],
"assignable_ids": [
"7390fd91-f3dc-43f8-a786-033c314ad0bd"
],
"require_assignation": true,
"cc_user_ids": [],
"firm_attribute_ids": [],
"attributes": [
{
"id": "60320a40-66ec-41e1-a388-0adf018d4fa5",
"name": "Nombre Empresa",
"type_cd": 1,
"type": "string",
"required": true,
"description": null,
"options": [],
"position": 0,
"token_name": ""
}
],
"enable_automatic_name": false,
"name_attribute_ids": [],
"timestamp_on_name": false,
"start_decision_workflow_trigger": false,
"sla_request_units": 7,
"creator": "John Doe",
"last_activity": {
"timestamp_str": "2021-03-26T14:28:37.537-03:00",
"responsible": "John Doe"
},
"status": "published",
"word_template_ids": [],
"has_template": false
}
Permite obter o detalhe de um formulário de solicitação
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/request_forms/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id do formulário de solicitação |
Atribuir grupo solicitante
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/request_forms/7994f6b6-bd85-4350-95c5-3fab4ae496ed/assign_requester_job' \
--header 'Authorization: Bearer 84afea467c63de04ccbe6f8f4859aad7f4ec8a60430046f96b5af601724f9cbf' \
--header 'Content-Type: application/json' \
--data-raw '{
"rjob_ids": ["46896f04-1217-476a-87fa-3c6fc50ae936", "15f91198-0708-41e8-9659-935cf9f85251"]
}'
O comando acima devolve JSON estruturado assim:
{
"id": "7994f6b6-bd85-4350-95c5-3fab4ae496ed",
"name": "prueba asignacion 4",
"description": "mismo grupo asigna y atiende, solo distribuidor debe asignar",
"job_ids": [
"46896f04-1217-476a-87fa-3c6fc50ae936"
],
"rjob_ids": [
"46896f04-1217-476a-87fa-3c6fc50ae936",
"15f91198-0708-41e8-9659-935cf9f85251"
],
"assignable_ids": [
"7390fd91-f3dc-43f8-a786-033c314ad0bd"
],
"require_assignation": true,
"cc_user_ids": [],
"firm_attribute_ids": [],
"attributes": [],
"enable_automatic_name": false,
"name_attribute_ids": [],
"timestamp_on_name": false,
"start_decision_workflow_trigger": false,
"sla_request_units": 7,
"creator": "John Doe",
"last_activity": {
"timestamp_str": "2021-03-26T14:27:49.665-03:00",
"responsible": "John Doe"
},
"status": "published",
"word_template_ids": [],
"has_template": false
}
Permite atribuir à plantilla os grupos de usuários que poderão usar o formulário para criar solicitações
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/request_forms/<ID>/assign_requester_job
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id do formulário de solicitação |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| rjob_ids | ✔ | Deve ser cadeia de caracteres | IDs dos grupos solicitantes separados por vírgula (,) |
Geração de processos massivos de Assinatura
Listar processos de assinatura massiva
Este endpoint permite obter todos os processos de assinatura massiva
curl --location --request GET 'https://api.webdoxclm.com/api/v2/batch_signatures?page=1&per_page=3'
--header 'Authorization: Bearer [TOKEN]'
O comando acima devolve JSON estruturado assim:
{
"data": [
{
"id": "ee6bc581-0263-4238-8090-9c2bf7ae32e8",
"type": "batch_signature",
"attributes": {
"name": "Prueba 1 batch api",
"status": "draft",
"started_at": null,
"created_at": "2023-11-18T13:25:59.883-03:00",
"finished_at": null,
"owner_name": "Felipe Gonzalez",
"owner_company_area": ""
},
"relationships": {
"batch_signature_approvals": {
"data": []
}
}
},
{
"id": "e40e8856-876a-4e79-8efb-f576e98da4a6",
"type": "batch_signature",
"attributes": {
"name": "Prueba 6 batch api",
"status": "draft",
"started_at": null,
"created_at": "2023-11-18T16:20:10.002-03:00",
"finished_at": null,
"owner_name": "Felipe Gonzalez",
"owner_company_area": ""
},
"relationships": {
"batch_signature_approvals": {
"data": []
}
}
},
{
"id": "0b8b507a-1d77-4ab8-8ab6-ee3eddac028b",
"type": "batch_signature",
"attributes": {
"name": "Prueba 7 batch api",
"status": "draft",
"started_at": null,
"created_at": "2023-11-18T16:26:50.186-03:00",
"finished_at": null,
"owner_name": "Felipe Gonzalez",
"owner_company_area": ""
},
"relationships": {
"batch_signature_approvals": {
"data": [
{
"id": "15",
"type": "batch_signature_approval"
}
]
}
}
}
],
"meta": {
"page": {
"page": 1,
"per_page": 20,
"total_pages": 1,
"total": 10
}
}
}
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/batch_signatures?page=1&per_page=3
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| page | Número da página |
| per_page | Quantidade de elementos por página |
Criar processo de assinatura massiva
Este endpoint permite criar um processos de assinatura massiva
Formatos suportados
[JSON]
curl --location --request POST 'https://api.webdoxclm.com/api/v2/batch_signatures' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json'
--data '{
"batch_signature": {
"name": "Prueba batch api",
"signers_count": 1,
"handwritten_enabled": false,
"word_template_ids": ["a676f9b2-57da-405f-9c68-30617c5e730f"]
}
}'
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/batch_signatures
O comando acima devolve JSON estruturado assim:
{
"data": {
"id": "0b8b507a-1d77-4ab8-8ab6-ee3eddac028b",
"type": "batch_signature",
"attributes": {
"name": "Prueba batch api",
"status": "draft",
"started_at": null,
"created_at": "2023-11-18T16:26:50.186-03:00",
"finished_at": null,
"owner_name": "Felipe Gonzalez",
"owner_company_area": ""
},
"relationships": {
"batch_signature_approvals": {
"data": [{}]
}
}
}
}
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | ✔ | Deve ser uma cadeia de texto | Nome |
| signers_count | ✔ | Deve ser um inteiro | Quantidade de signatários |
| handwritten_enabled | Booleano | Habilita assinatura desenhada | |
| word_template_ids | ✔ | Lista de ids | Id plantillas de word |
Exemplo de corpo
{
"batch_signature": {
"name": "Prueba batch api",
"signers_count": 1,
"handwritten_enabled": false,
"word_template_ids": ["a676f9b2-57da-405f-9c68-30617c5e730f"]
}
}
Obter um processo de assinatura massiva
Este endpoint permite ver o detalhe de um processo de assinatura massiva
curl --location --request GET 'https://api.webdoxclm.com/api/v2/batch_signatures/<ID>' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json'
O comando acima devolve JSON estruturado assim:
{
"data": {
"id": "0b8b507a-1d77-4ab8-8ab6-ee3eddac028b",
"type": "batch_signature",
"attributes": {
"name": "Prueba batch api",
"status": "draft",
"started_at": null,
"created_at": "2023-11-18T16:26:50.186-03:00",
"finished_at": null,
"owner_name": "Felipe Gonzalez",
"owner_company_area": ""
},
"relationships": {
"batch_signature_approvals": {
"data": [
{
"id": "15",
"type": "batch_signature_approval"
}
]
}
}
}
}
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/batch_signatures/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
Obter plantilla para adicionar signatários
Este endpoint permite obter uma plantilla em formato excel para adicionar a informação dos signatários
curl --location --request GET 'https://api.webdoxclm.com/api/v2/batch_signatures/0b8b507a-1d77-4ab8-8ab6-ee3eddac028b/get_signers_template' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/get_signers_template
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
O comando acima devolve JSON estruturado assim:
Adicionar plantilla com informação de signatários
Este endpoint permite adicionar um arquivo(binário) em formato excel com a informação dos signatários
Formatos suportados
[JSON]
curl --location --request POST 'https://api.webdoxclm.com/api/v2/batch_signatures/0b8b507a-1d77-4ab8-8ab6-ee3eddac028b/add_signers_template' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/add_signers_template
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
O comando acima devolve JSON estruturado assim:
{
"data": {
"id": "268",
"type": "attachment",
"attributes": {
"id": 268,
"metadata": {
"sheets": [
{
"total": 2
}
]
},
"attachable_type": "BatchSignature",
"created_at": "2023-11-21T15:22:46.715-03:00"
}
}
}
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| attachment | ✔ | Deve ser um arquivo de tipo excel | Arquivo |
Validar criação de cerimônias
Este endpoint permite validar se se criaram os objetos correspondentes às cerimônias para todos os signatários
curl --location --request GET 'https://api.webdoxclm.com/api/v2/batch_signatures/0b8b507a-1d77-4ab8-8ab6-ee3eddac028b/create_envelopes_status' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/create_envelopes_status
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
O comando acima devolve JSON estruturado assim:
{
"status": "successful"
}
Iniciar cerimônias de assinatura massiva
Este endpoint permite dar início ao processo de assinatura massiva
curl --location --request POST 'https://api.webdoxclm.com/api/v2/batch_signatures/0b8b507a-1d77-4ab8-8ab6-ee3eddac028b/start' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/start
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
O comando acima devolve JSON estruturado assim:
{
"data": {
"id": "0b8b507a-1d77-4ab8-8ab6-ee3eddac028b",
"type": "batch_signature",
"attributes": {
"name": "Prueba batch api",
"status": "approved",
"started_at": null,
"created_at": "2023-11-20T13:07:32.240-03:00",
"finished_at": null,
"owner_name": "Felipe Gonzalez",
"owner_company_area": ""
},
"relationships": {
"batch_signature_approvals": {
"data": [
{
"id": "14",
"type": "batch_signature_approval"
}
]
}
}
}
}
Cancelar cerimônias de assinatura massiva
Este endpoint permite todas as cerimônias de assinatura de um processo
curl --location --request POST 'https://api.webdoxclm.com/api/v2/batch_signatures/0b8b507a-1d77-4ab8-8ab6-ee3eddac028b/cancel_ceremonies' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/cancel_ceremonies
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
O comando acima devolve JSON estruturado assim:
{
"data": {
"id": "0b8b507a-1d77-4ab8-8ab6-ee3eddac028b",
"type": "batch_signature",
"attributes": {
"id": "0b8b507a-1d77-4ab8-8ab6-ee3eddac028b",
"name": "Prueba api",
"status": "completed",
"started_at": "2023-11-21T15:34:41.173-03:00",
"created_at": "2023-11-21T15:18:03.762-03:00",
"finished_at": null,
"owner_name": "User Prueba",
"owner_company_area": "",
"word_template_ids": [
"01ec9e7a-4138-4d67-81ef-514304ffd0e4"
]
},
"relationships": {
"batch_signature_approvals": {
"data": [
{
"id": "f749005c-c24c-472a-a935-69cbd6bd15a9",
"type": "batch_signature_approval"
}
]
}
}
}
}
Listado de signatários
Este endpoint permite obter uma lista dos signatários de um processo
curl --location --request GET 'https://api.webdoxclm.com/api/v2/batch_signatures/0b8b507a-1d77-4ab8-8ab6-ee3eddac028b/signers'
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/signers
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
O comando acima devolve JSON estruturado assim:
{
"data": [
{
"id": "a3f860cc-f88a-4f56-bfc8-c22725f5ac89",
"type": "signer",
"attributes": {
"status": "pending",
"name": "User",
"email": "[email protected]",
"national_identification_number": "1000000000",
"country_code": "CHL"
}
}
]
}
Eliminar todos os signatários
Este endpoint permite eliminar a lista de signatários de um processo
curl --location --request POST 'https://api.webdoxclm.com/api/v2/batch_signatures/0b8b507a-1d77-4ab8-8ab6-ee3eddac028b/signers/clear'
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/signers/clear
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
O comando acima devolve JSON estruturado assim:
{
"data": [
{
"id": "a3f860cc-f88a-4f56-bfc8-c22725f5ac89",
"type": "signer",
"attributes": {
"status": "pending",
"name": "User",
"email": "[email protected]",
"national_identification_number": "1000000000",
"country_code": "CHL"
}
}
]
}
Listar os aprovadores de um processo
Este endpoint permite ver o listado de aprovadores de um processo
curl --location --request GET 'https://api.webdoxclm.com/api/v2/batch_signatures/0b8b507a-1d77-4ab8-8ab6-ee3eddac028b/approvers'
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/approvers
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
O comando acima devolve JSON estruturado assim:
{
"data": [
{
"id": "f8d9b427-31d9-4df9-af13-c19115eac50f",
"type": "batch_signature_approval",
"attributes": {
"id": "f8d9b427-31d9-4df9-af13-c19115eac50f",
"user_id": "fc83d1a7-059f-4f02-a85b-38da6666359d",
"batch_signature_id": "0b8b507a-1d77-4ab8-8ab6-ee3eddac028b",
"status": "pending",
"reject_reason": null,
"has_unattended_signature": true
}
}
]
}
Criar aprovador de um processo
Este endpoint permite criar um aprovador a um processo e tem a opção de indicar que seja um signatário desatendido
Formatos suportados
[JSON]
curl --location --request POST 'https://api.webdoxclm.com/api/v2/batch_signatures/44e75911-f288-42a6-a55c-970e4e26f0fe/approvers' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
--data '{
"batch_approver": {
"user_id": "fc83d1a7-059f-4f02-a85b-38da6666359d",
"has_unattended_signature": true
}
}'
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/approvers
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
O comando acima devolve JSON estruturado assim:
{
"data": {
"id": "f8d9b427-31d9-4df9-af13-c19115eac50f",
"type": "batch_signature_approval",
"attributes": {
"id": "f8d9b427-31d9-4df9-af13-c19115eac50f",
"user_id": "fc83d1a7-059f-4f02-a85b-38da6666359d",
"batch_signature_id": "44e75911-f288-42a6-a55c-970e4e26f0fe",
"status": "pending",
"reject_reason": null,
"has_unattended_signature": true
}
}
}
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| user_id | ✔ | Id de usuário criado na plataforma com número de identificação | Id de usuário aprovador |
| has_unattended_signature | Booleano | Firmante desatendido |
Exemplo de corpo
{
"batch_approver": {
"user_id": "fc83d1a7-059f-4f02-a85b-38da6666359d",
"has_unattended_signature": true
}
}
Eliminar um aprovador
Este endpoint permite eliminar um aprovador de um processo
curl --location --request DELETE 'https://api.webdoxclm.com/api/v2/batch_signatures/44e75911-f288-42a6-a55c-970e4e26f0fe/approvers/f8d9b427-31d9-4df9-af13-c19115eac50f' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
Requisição HTTP
DELETE https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/approvers/<ID_APPROVER>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
| ID_APPROVER | Id do aprovador |
Aprovar um processo de assinatura massiva
Este endpoint permite aprovar um processo de assinatura massiva
curl --location --request POST 'https://api.webdoxclm.com/api/v2/batch_signatures/44e75911-f288-42a6-a55c-970e4e26f0fe/approvers/f8d9b427-31d9-4df9-af13-c19115eac50f/approve_batch' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/approvers/<ID_APPROVER>/approve_batch
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
| ID_APPROVER | Id do aprovador |
Rejeitar um processo de assinatura massiva
Este endpoint permite rejeitar um processo de assinatura massiva
curl --location --request POST 'https://api.webdoxclm.com/api/v2/batch_signatures/44e75911-f288-42a6-a55c-970e4e26f0fe/approvers/f8d9b427-31d9-4df9-af13-c19115eac50f/reject_batch' \
--header 'Authorization: Bearer 82bcc115cdec9594f9d1b47c30aab0de94daac9b26bd7333884d2e37ed0f6883' \
--header 'Content-Type: application/json'
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/batch_signatures/<ID>/approvers/<ID_APPROVER>/reject_batch
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Identificador do processo massivo |
| ID_APPROVER | Id do aprovador |
Provedores de Assinatura
Provedores de assinatura disponíveis para o cliente
Obter todos os provedores de assinatura.
curl --location --request GET 'https://api.webdoxclm.com/api/v2/signature_providers' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
O comando acima devolve JSON estruturado assim:
[
{
"id": 1,
"name": "portal"
}
]
Lista todos os provedores de assinatura ativos para o cliente
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/signature_providers
Documento
Webdox oferece uma excelente gestão de documentos, todos estes endpoints estão relacionados com a visualização e criação de estes.
Obter documentos
curl --location --request GET 'https://api.webdoxclm.com/api/v2/documents' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66'
O comando acima devolve JSON estruturado assim:
[
{
"id": "c2fa25ce9e7a46a9838cdedfd8912ad0",
"name": "verPdf.pdf",
"created_at": "2021-03-05T18:44:24.425-03:00",
"updated_at": "2021-03-05T18:44:25.457-03:00",
"document_end_date": null,
"modified_at": "2021-03-05T18:44:24.481-03:00"
}
]
Este endpoint recupera todos os documentos que o usuário pode ver por filtros
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/documents?page=1&per_page=10&filters[subject_name]=Word
Parâmetros de consulta
Os filtros podem tomar os seguintes valores:
| Valor | Descrição | Tipo |
|---|---|---|
| name | Nome documento | Texto |
| client_name | Pessoa Jurídica | Texto |
| subject_name | Tipo de documento | Texto |
| topic_name | Assunto | Texto |
| dynamic_attribute_XXX | XXX deve ser document attribute id | Texto |
| folio | Folio | Numérico |
| creator_name | Usuário que criou documento | Texto |
| created_at_before | Criado antes de [YYYY-mm-dd] | Data |
| created_at_after | Criado depois de [YYYY-mm-dd] | Data |
| signed | Status de assinatura do documento | Boolean |
Obter documento específico
curl --location --request GET 'https://api.webdoxclm.com/api/v2/documents/c2fa25ce9e7a46a9838cdedfd8912ad0' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66'
O comando acima devolve JSON estruturado assim:
{
"id": "c2fa25ce9e7a46a9838cdedfd8912ad0",
"name": "verPdf.pdf",
"folio": 2,
"created_at": "2021-03-05T18:44:24.425-03:00",
"updated_at": "2021-03-05T18:44:25.457-03:00",
"document_end_date": null,
"modified_at": "2021-03-05T18:44:25.464-03:00",
"attachment_file_name": "document_1614980664.pdf",
"attachment_file_size": 57826,
"created_by": "676c632216094123a65b9de68a672be3",
"creator_name": "Felipe Gonzalez",
"extension": null,
"file_ext": "pdf",
"container_name": "TMP",
"client_name": null,
"topic_name": null,
"subject_name": null,
"last_office_document_version_user": "--",
"office_document_version_number": [],
"expiring_status": "no_expiring",
"dynamic_attributes": [
{
"id": 1,
"name": "Nuevo document attribute",
"value": null
}
],
"collaborators": [],
"office_document_versions": [],
"last_office_document_version_number": null,
"observations": null,
"workflow_id": null
}
Este endpoint recupera um documento específico
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/documents/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | O ID do documento a recuperar |
Criar documento
curl --location --request POST 'https://api.webdoxclm.com/api/v2/documents' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"' \
--form 'document[name]="doc prueba 2"' \
--form 'document[topic_id]="1"' \
--form 'document[subject_id]="1"' \
--form 'document[creator_name]="Jane Doe"' \
--form 'document[in_repository]="true"' \
--form 'document[status]="versioning"' \
--form 'document[attachment]=@"/Users/JohnDoe/Downloads/doc prueba carga.docx"'
curl --location --request POST 'https://api.webdoxclm.com/api/v2/documents' \
--header 'Authorization: Bearer 1a63f38c81240bbe2e07de5440ad19691cfef98b0dd4e24fd6f8bf454d66ff61' \
--form 'origin="template"' \
--form 'word_template_id="b4208b73-9aff-4a54-8ade-8ec792ee7835"'
--form 'document[name]="doc prueba 2"' \
--form 'document[topic_id]="1"' \
--form 'document[subject_id]="1"' \
--form 'document[creator_name]="Jane Doe"' \
--form 'document[in_repository]="true"' \
--form 'document[status]="versioning"' \
--form 'document[attachment]=@"/Users/JohnDoe/Downloads/doc prueba carga.docx"'
O comando acima devolve JSON estruturado assim:
{
"id": "7306db3b88a546c0a510a498bd2824c1",
"name": "doc prueba 2",
"folio": 17,
"created_at": "2021-03-11T19:28:53.203-03:00",
"updated_at": "2021-03-11T19:28:53.203-03:00",
"document_end_date": null,
"modified_at": "2021-03-11T19:28:53.261-03:00",
"attachment_file_name": "document_1615501733.docx",
"attachment_file_size": 23185,
"created_by": "95edb20421294b60bb59a170b0dc536c",
"creator_name": "John Doe",
"extension": null,
"file_ext": "docx",
"container_name": "TMP",
"client_name": null,
"topic_name": "test asunto",
"subject_name": "test1",
"last_office_document_version_user": "John Doe",
"office_document_version_number": [],
"expiring_status": "no_expiring",
"dynamic_attributes": [
{
"id": "29360fee-6f86-496d-8d65-9a3cbe5a0c6b",
"name": "Nuevo document attribute",
"value": null
},
{
"id": "70004bc2-c09d-416a-822d-ef2d575713e5",
"name": "atributo 2",
"value": null
}
],
"collaborators": [],
"office_document_versions": [
{
"id": "d8aac2835aed4db28a1d7a436cd180f2",
"document_id": "7306db3b88a546c0a510a498bd2824c1",
"user_id": 1,
"created_at": "2021-03-11T19:28:55.155-03:00",
"updated_at": "2021-03-11T19:28:55.155-03:00",
"modified_at": "2021-03-11T19:28:55.191-03:00",
"version_number": 1,
"document_url": "https://preview.webdoxapis.com/webdav/9992982fa73a431d82ec82143621b19f/a5c05c36b0e34f64bbb9a85853f92d6b/d8aac2835aed4db28a1d7a436cd180f2/fe1adfc23755724a65850698af3f6f56/office_document_17_version_1.docx",
"file_ext": "docx",
"file_in_process": true,
"icon_file_class": "docx-file",
"lock": null,
"owner_id": "95edb20421294b60bb59a170b0dc536c",
"owner_name": "John Doe",
"url": "http://testserver:8080/9992982fa73a431d82ec82143621b19f/a5c05c36b0e34f64bbb9a85853f92d6b/d8aac2835aed4db28a1d7a436cd180f2/office_document_17_version_1.docx",
"ext": "docx",
"pdf_file_file_name": null,
"collaborators": [
{
"id": "59db41d9-bcf4-4e7c-9330-830d1ca95c52",
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"job_ids": [
2
],
"blocked": false,
"external_id": ""
}
],
"is_deleted": false,
"deleted_at": null,
"webdav_document_url": "https://preview.webdoxapis.com/webdav//9992982fa73a431d82ec82143621b19f/a5c05c36b0e34f64bbb9a85853f92d6b/d8aac2835aed4db28a1d7a436cd180f2/fe1adfc23755724a65850698af3f6f56/office_document_17_version_1.docx",
"lawgeex_status": null
}
],
"last_office_document_version_number": 1,
"observations": null,
"workflow_id": null
}
Este endpoint cria um documento
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/documents
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| document | ✔ | Deve ser um hash | |
| document[name] | Cadeia opcional | Nome do documento | |
| document[attachment] | Arquivo opcional | Arquivo para carregar | |
| document[client_id] | Inteiro opcional | Cliente ID do documento | |
| document[topic_id] | Inteiro opcional | ID Assunto do documento | |
| document[subject_id] | Inteiro opcional | ID Tipo de documento | |
| document[container_id] | Inteiro opcional | Contenedor ID do documento | |
| document[dynamic_attribute_XXXX] | Cadeia opcional | Atributo dinâmico para o documento | |
| document[document_date] | Opcional DateTime | Data do contrato | |
| document[document_end_date] | Opcional DateTime | Data de caducidade | |
| document[legal_name] | Cadeia opcional | Nome do contrato | |
| document[folio] | Inteiro opcional | Folio de contrato | |
| document[creator_name] | Cadeia opcional | Usuário que criou o contrato | |
| document[use_automatic_extension] | Optional Boolean | Extensão automática para contrato | |
| document[automatic_finish] | Opcional booleano | Finalizar contrato automaticamente | |
| document[status] | Opcional ['versioning', 'versioned'] | O documento poderia estar 'versioning' ou 'versioned' | |
| document[in_repository] | Booleano [true, false] | Classificar dentro do respositorio | |
| document[observations] | Cadeia opcional | Comentários a respeito do documento | |
| document[workflow_id] | Cadeia opcional | Especificar se se quer associar o documento a um workflow | |
| document[word_template_id] | Cadeia opcional | Para especificar a origem do documento (template, pc ou new) |
Exemplo de corpo
form 'document[name]="doc prueba 2"'
form 'document[topic_id]="1"'
form 'document[subject_id]="1"'
form 'document[creator_name]="Jane Doe"'
form 'document[in_repository]="true"'
form 'document[status]="versioning"'
form 'document[attachment]=@"/Users/JohnDoe/Downloads/doc prueba carga.docx"'
Atualizar documento
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/documents/11' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"' \
--form 'document[name]=updated wololo' \
--form 'document[attachment]=Path_to_file/document.docx'
O comando acima devolve JSON estruturado assim:
{
"id": "d5eff4f9587040d88077963f34a58f78",
"name": "INCORPORACIONES-EDITABLE-CONSORCIO (1).pdf",
"folio": 4,
"created_at": "2021-03-04T18:00:03.794-03:00",
"updated_at": "2021-03-09T17:24:00.437-03:00",
"document_end_date": null,
"modified_at": "2021-03-09T17:24:00.228-03:00",
"attachment_file_name": "document_1614891603.pdf",
"attachment_file_size": 553857,
"created_by": "95edb20421294b60bb59a170b0dc536c",
"creator_name": "John Doe",
"extension": null,
"file_ext": "pdf",
"container_name": "TMP",
"client_name": null,
"topic_name": null,
"subject_name": null,
"last_office_document_version_user": "--",
"office_document_version_number": [],
"expiring_status": "no_expiring",
"dynamic_attributes": [
{
"id": "29360fee-6f86-496d-8d65-9a3cbe5a0c6b",
"name": "Nuevo document attribute",
"value": "Atributo 1"
},
{
"id": "70004bc2-c09d-416a-822d-ef2d575713e5",
"name": "atributo 2",
"value": "it works!"
}
],
"collaborators": [],
"office_document_versions": [],
"last_office_document_version_number": null,
"observations": null,
"workflow_id": null
}
Este endpoint permite atualizar um documento
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/documents/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | O ID do documento |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| document | ✔ | Deve ser um hash | |
| document[name] | Cadeia opcional | Nome do documento | |
| document[attachment] | Arquivo opcional | Arquivo para carregar | |
| document[client_id] | Inteiro opcional | Cliente ID do documento | |
| document[topic_id] | Inteiro opcional | ID Assunto do documento | |
| document[subject_id] | Inteiro opcional | ID Tipo de documento | |
| document[container_id] | Inteiro opcional | Contenedor ID do documento | |
| document[dynamic_attribute_XXXX] | Cadeia opcional | Atributo dinâmico para o documento | |
| document[document_date] | Opcional DateTime | Data do contrato | |
| document[document_end_date] | Opcional DateTime | Data de caducidade | |
| document[legal_name] | Cadeia opcional | Nome do contrato | |
| document[folio] | Inteiro opcional | Folio de contrato | |
| document[creator_name] | Cadeia opcional | Usuário que criou o contrato | |
| document[use_automatic_extension] | Optional Boolean | Extensão automática para contrato | |
| document[automatic_finish] | Opcional booleano | Finalizar contrato automaticamente | |
| document[status] | Opcional ['versioning', 'versioned'] | O documento poderia estar 'versioning' ou 'versioned' | |
| document[in_repository] | Booleano [true, false] | Classificar dentro do respositorio | |
| document[observations] | Cadeia opcional | Comentários a respeito do documento | |
| document[word_template_id] | Cadeia opcional | Para especificar a origem do documento (template, pc ou new) |
Baixar
curl --location --request GET 'https://api.webdoxclm.com/api/v2/documents/c2fa25ce9e7a46a9838cdedfd8912ad0/download' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66'
O comando acima devolve JSON estruturado assim:
{
"url": "https://storage.googleapis.com/webdox-portal-dev/documents/original_pdfs/000/000/004/original/document-4-original-pdf-file-d5eff4f9587040d88077963f34a58f78.pdf?GoogleAccessId=portal-dev-storage@webdox-build-dev.iam.gserviceaccount.com&Signature=nKLxJVjvID1VmBRxFuDontylL4H4hH%2FfsdfgdfgRr0mgWcpSum%2BsB%SDFHfgshsdh%0AtpOY2TPj8wwyI%2BtYfPybm34MwQw2DiLT6Mcrvj%2BSz%2Bz9dBixcIOym4qPYcLK%0ACNVGDj0evXLqcvlSLcoqatXCzcC%2BgTs4K9yBMAX0g1tzprfUYbi82fFoanNC%0AyYowEtnWF5iSoy5KbhFcutbugMb6nweyh1biYx4fIEMfPaGSC3JetCjvuZcC%0AmiiAXIAJgCj1pVq0mBcKAByG7OThJ2wtyh53sK4%2B5DAqOxpRqSV%2FPK4vdNqC%SDFGdsfg53q$%DFSGafgDAGFData%3D%3D&Expires=1615217786"
}
Devolve o arquivo de documento especificado como arquivo ou json segundo o tipo de conteúdo
Formatos suportados
[JSON, HTML]
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/documents/<ID>/download
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | O ID do documento |
Obtenha todas as versões de documentos de Office
curl --location --request GET 'https://api.webdoxclm.com/api/v2/documents/da80eb55260a4feba0ca63c02d5f7c44/versions' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66'
O comando acima devolve JSON estruturado assim:
[
{
"id": "da80eb55260a4feba0ca63c02d5f7c44",
"document_id": "fbfaf3be2a10443cbed2747c3022cce0",
"user_id": 1,
"created_at": "2021-03-11T17:09:51.603-03:00",
"updated_at": "2021-03-11T17:10:14.696-03:00",
"modified_at": "2021-03-11T17:09:51.919-03:00",
"version_number": 1,
"document_url": "https://preview.webdoxapis.com/webdav//9992982fa73a431d82ec82143621b19f/a5c05c36b0e34f64bbb9a85853f92d6b/da80eb55260a4feba0ca63c02d5f7c44/1096c161c07ea46e80a917cc0e126df9/office_document_14_version_1.docx",
"file_ext": "docx",
"file_in_process": true,
"icon_file_class": "docx-file",
"lock": null,
"owner_id": "95edb20421294b60bb59a170b0dc536c",
"owner_name": "John Doe",
"url": "http://localhost:8080/9992982fa73a431d82ec82143621b19f/a5c05c36b0e34f64bbb9a85853f92d6b/da80eb55260a4feba0ca63c02d5f7c44/office_document_14_version_1.docx",
"ext": "docx",
"pdf_file_file_name": null,
"collaborators": [
{
"id": "59db41d9-bcf4-4e7c-9330-830d1ca95c52",
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"job_ids": [
2
],
"blocked": false,
"external_id": ""
}
],
"is_deleted": false,
"deleted_at": null,
"webdav_document_url": "https://preview.webdoxapis.com/webdav//9992982fa73a431d82ec82143621b19f/a5c05c36b0e34f64bbb9a85853f92d6b/da80eb55260a4feba0ca63c02d5f7c44/1096c161c07ea46e80a917cc0e126df9/office_document_14_version_1.docx",
"lawgeex_status": null
},
...
]
Este endpoint recupera todas as versões de documentos de Office para um documento
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/documents/<ID>/versions
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | O ID do documento |
Criar documento com tokens
curl --location 'https://api.webdoxclm.com/api/v2/documents/create_with_token' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"template_id": "<ID>",
"tokens": [{"token": "document", "value": "Prueba"}, {"token": "achieve", "value": "Prueba2"}],
"table_data": {
"position": 0,
"rows": [
{"cells": ["4", "10", "2024", "Material", "10", "10", "10", "10", "10"]},
{"cells": ["5", "20", "2024", "Material", "20", "520", "20", "20", "20"]},
{"cells": ["", "", "", "", "", "", "", "Total", "2000"]}
]
}
}'
O comando acima devolve JSON estruturado assim:
{
"id": "98e0eededd19468186da9dbf07c24e75",
"name": "plantilla 1-2021-04-09T11-05-20-04-00.docx",
"folio": 143,
"created_at": "2021-04-09T11:05:21.049-04:00",
"updated_at": "2021-04-09T11:05:22.901-04:00",
"document_end_date": null,
"modified_at": "2021-04-09T11:05:22.743-04:00",
"attachment_file_size": 9721,
"created_by": "95edb20421294b60bb59a170b0dc536c",
"creator_name": "John Doe",
"extension": null,
"file_ext": "docx",
"last_office_document_version_user": "John Doe",
"office_document_version_number": [
"98e0ee-v1"
],
"last_office_document_version_url": "last version url"
"download_url": "main document url"
}}
Permite criar documentos com valores predefinidos com tokens a partir de uma plantilla e adicionar linhas a tabelas no documento
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/documents/create_with_token
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| template_id | ✔ | Cadeia obrigatória | Id da plantilla a usar |
| tokens | ✔ | Array de hashes | Contém os tokens e os valores a atribuir |
| token | ✔ | Cadeia obrigatória | Nome do token |
| value | ✔ | Cadeia obrigatória | Valor que será atribuído ao token no documento |
| table_data | Hash opcional | Contém a informação da tabela a modificar | |
| position | ✔ | Inteiro obrigatório | Número da tabela. Inicia em 0 |
| rows | ✔ | Array de hashes | Contém as colunas da tabela |
| cells | ✔ | Array de cadeias obrigatório | Contém as linhas que serão adicionadas à tabela. Por cada texto separado por vírgula simples se adiciona um valor a uma coluna |
Relações
Permite relacionar documentos
Mostrar relações
curl --location --request GET 'https://api.webdoxclm.com/api/v2/relations' \
--header 'Authorization: Bearer c3aee39ac76970dbe72ec2a2741158a536dfd945b81109abacdd9fcee4846c2b'
O comando acima devolve JSON estruturado assim:
[
{
"id": "e612f52c-ebed-46e5-8a22-cccd63837bc8",
"name": "Test Relation",
"documents": [
{
"id": "f80f6d83143344c1b2223e5e97a4b5aa",
"name": "Very_Important_Document.pdf",
"type": "document"
},
{
"id": "3bce892b3d5b4de7b6e0b32811e82fef",
"name": "Very_Important_Annex.docx",
"type": "document"
}
]
}
]
Mostra todas as relações
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/relations
Criar relações
curl --location --request POST 'https://api.webdoxclm.com/api/v2/relations' \
--header 'Authorization: Bearer 7825ba18963eacb0192363c68864587fe28b26ffeb0a7db09ffec7f2b54cbb21' \
--header 'Content-Type: application/json' \
--data '{
"name": "Test Relation",
"document_ids": ["f80f6d83143344c1b2223e5e97a4b5aa", "3bce892b3d5b4de7b6e0b32811e82fef"]
}'
O comando acima devolve JSON estruturado assim:
{
"id": "e612f52c-ebed-46e5-8a22-cccd63837bc8",
"name": "Test Relation",
"documents": [
{
"id": "f80f6d83143344c1b2223e5e97a4b5aa",
"name": "Very_Important_Document.pdf",
"type": "document"
},
{
"id": "3bce892b3d5b4de7b6e0b32811e82fef",
"name": "Very_Important_Annex.docx",
"type": "document"
}
]
}
Permite criar novas relações entre documentos
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/relations
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | ✔ | Deve ser uma cadeia de texto | Nome da relação |
| document_ids | ✔ | Deve ser um array de ids | Lista de IDs de documentos |
Atualizar relações
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/relations/<ID>' \
--header 'Authorization: Bearer 7825ba18963eacb0192363c68864587fe28b26ffeb0a7db09ffec7f2b54cbb21' \
--header 'Content-Type: application/json' \
--data '{
"name": "Test Relation Updated",
"document_ids": ["f80f6d83143344c1b2223e5e97a4b5aa", "3bce892b3d5b4de7b6e0b32811e82fef", "81dc7999f1e04bc098b7a27765ef04c1"]
}'
O comando acima devolve JSON estruturado assim:
{
"id": "31a11a92-9698-4d25-8159-02d49a88a072",
"name": "Test Relation Updated",
"documents": [
{
"id": "f80f6d83143344c1b2223e5e97a4b5aa",
"name": "Very_Important_Document.pdf",
"type": "document"
},
{
"id": "3bce892b3d5b4de7b6e0b32811e82fef",
"name": "Very_Important_Annex.docx",
"type": "document"
},
{
"id": "81dc7999f1e04bc098b7a27765ef04c1",
"name": "UPDATED_Very_Important_Document.pdf",
"type": "document"
}
]
}
Permite atualizar uma relação
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/relations/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id. da relação |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | ✔ | Deve ser uma cadeia de texto | Nome da relação |
| document_ids | ✔ | Deve ser um array de ids | Lista de IDs de documentos |
Apagar relações
curl --location --request DELETE 'https://api.webdoxclm.com/api/v2/relations/<ID>' \
--header 'Authorization: Bearer 58ec42d67b888d6128ddbe6deecc6873fc4f878ea3882663ca40b9788e49b26b'
O comando acima devolve JSON estruturado assim:
Relación eliminado(a). / Relation eliminated.
Permite eliminar relações
Requisição HTTP
DELETE https://api.webdoxclm.com/api/v2/relations/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | Id. da relação |
Atributo do documento
Estes atributos se usam para agrupar documentos em pastas. Referência a Documento.
Obter todos os atributos do documento
curl --location --request GET 'https://api.webdoxclm.com/api/v2/document_attributes' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99'
O comando acima devolve JSON estruturado assim:
[
{
"id": "client_id",
"name": "client",
"type_cd": 3,
"type": "list",
"classifiable": true,
"static": true,
"options": [
{
"id": "acbfa2c4-2b2a-4860-a55e-933a40596a46",
"name": "client 1"
},
{
"id": "6fc2a85c-092c-4cc6-970e-c6f75c78ce31",
"name": "client 2"
}
]
},
{
"id": "topic_id",
"name": "topic",
"type_cd": 3,
"type": "list",
"classifiable": true,
"static": true,
"options": [
{
"id": "18f102b0-2d2f-4a2c-a663-b278b887bdda",
"name": "topic 1"
}
]
},
{
"id": "subject_id",
"name": "subject",
"type_cd": 3,
"type": "list",
"classifiable": true,
"static": true,
"options": [
{
"id": "14bb6d9e-f335-4cdb-939f-90859f94ee97",
"name": "subject 1"
}
]
},
{
"id": "container_id",
"name": "container",
"type_cd": 3,
"type": "list",
"classifiable": true,
"static": true,
"options": [
{
"id": "be70f3ba-5a1d-49ae-9231-6746cb455356",
"name": "TMP"
},
{
"id": "4cf4310f-e8a8-4080-b534-30730fc6567b",
"name": "2"
}
]
},
{
"id": "clause_type_id",
"name": "clause_type",
"type_cd": 3,
"type": "list",
"classifiable": true,
"static": true,
"options": [
{
"id": "60e1f767-ed27-4511-9e48-2e79fe092aeb",
"name": "1"
}
]
},
{
"id": "29360fee-6f86-496d-8d65-9a3cbe5a0c6b",
"name": "New document attribute",
"type_cd": 1,
"type": "string",
"static": false,
"ners": [],
"description": null,
"classifiable": true
}
]
Listar todos os atributos dinâmicos para o usuário autenticado.
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/document_attributes?all=true
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| all | Trazer todos os atributos, inclusive os não classificáveis |
Criar um atributo de documento
curl --location --request POST 'https://api.webdoxclm.com/api/v2/document_attributes' \
--header 'Authorization: Bearer 30d417ada164f25a0d7e5bcfb9485c2d220d22d9a7ccb97cca4af8488f05d6d0' \
--header 'Content-Type: application/json' \
--data-raw '{
"document_attribute": {
"name": "tipo de contrato 2",
"type_cd": "1"
},
"classifiable": true
}'
O comando acima devolve JSON estruturado assim:
{
"id": 1,
"name": "tipo de contrato",
"type_cd": 1,
"type": "string",
"static": false,
"classifiable": true
}
Recebe os novos parâmetros de atributos dinâmicos e devolve o atributo dinâmico criado
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/document_attributes
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | ✔ | Cadeia opcional | Nome do atributo do documento |
| type_cd | Deve ser um inteiro entre 0 e 14 | Ver Lista de parâmetros admisíveis abaixo | |
| classifiable | Booleano opcional | Se estabelece se o atributo é classificável |
Lista de parâmetros permitidos
| Parâmetro | Descrição |
|---|---|
| 0 | Numérico |
| 1 | Cadeia |
| 2 | Data |
| 3 | Lista de valores |
| 4 | Booleano (true / false) |
| 5 | Múltiplo |
| 6 | Estrutura |
| 7 | Numérico |
| 8 | Arquivo |
| 9 | Correio eletrônico |
| 10 | RUT |
| 11 | Texto longo |
| 12 | Região Chilena |
| 13 | Região Chilena |
| 14 | Separador de campos ('vírgula', 'tabulador', 'símbolo de tubulação') |
Exemplo de corpo
{
"name": "test api docs attributes",
"type_cd": 1,
"classifiable": true
}
Atualizar atributo do documento
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/document_attributes/1' \
--header 'Authorization: Bearer 2b8fe65559196a24d1c39033bfad826b053f7d41167b2b439e711f7236dc23f0' \
--header 'Content-Type: application/json' \
--data-raw '{
"document_attribute": {
"name": "updated name",
"type_cd": "1"
}
}'
O comando acima devolve JSON estruturado assim:
{
"id": 1,
"name": "updated name",
"type_cd": 1,
"type": "string",
"static": false,
"classifiable": true
}
Recebe um atributo dinâmico e seus novos parâmetros e devolve o atributo dinâmico atualizado
PUT https://api.webdoxclm.com/api/v2/document_attributes/:id
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | O ID do atributo do documento |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | ✔ | Cadeia opcional | Nome do atributo do documento |
| type_cd | Deve ser um inteiro entre 0 e 14 | Ver Lista de parâmetros admisíveis abaixo |
Lista de parâmetros permitidos
| Parâmetro | Descrição |
|---|---|
| 0 | Numérico |
| 1 | Cadeia |
| 2 | Data |
| 3 | Lista de valores |
| 4 | Booleano (true / false) |
| 5 | Múltiplo |
| 6 | Estrutura |
| 7 | Numérico |
| 8 | Arquivo |
| 9 | Correio eletrônico |
| 10 | RUT |
| 11 | Texto longo |
| 12 | Região Chilena |
| 13 | Região Chilena |
| 14 | Separador de campos ('vírgula', 'tabulador', 'símbolo de tubulação') |
Exemplo de corpo
{
"document_attribute": {
"name": "update name"
}
}
Plantilha de Word
Estes se utilizam para iniciar novos documentos de Word com o formato de plantilha.
Obter todas as plantilhas de Word
curl --location --request GET 'https://api.webdoxclm.com/api/v2/word_templates' \
--header 'Authorization: Bearer 0b8ff3ad1b916144b9e1c7511b485396fce4b893e8c80d0cee763e764058bc38'
O comando acima devolve JSON estruturado assim:
[
{
"id": "2b3d767a-f695-4967-8c61-ba00c97e1ac4",
"name": "token loreal",
"subject_id": "bc1ed6d6-a645-4749-a32c-a292772f11fa",
"tokens_json": [
{
"token": "Nombre Colaborador"
},
{
"token": "RUT Colaborador"
},
{
"token": "Mail Colaborador"
},
{
"token": "Division"
}
]
},
...
]
Este endpoint recupera todas as plantilhas de Word.
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/word_templates
Obter Plantilha de Word
curl --location --request GET 'https://api.webdoxclm.com/api/v2/word_templates/<ID>' \
--header 'Authorization: Bearer 0b8ff3ad1b916144b9e1c7511b485396fce4b893e8c80d0cee763e764058bc38'
O comando acima devolve JSON estruturado assim:
{
"id": 1,
"name": "Word Template",
"subject_id": "bc1ed6d6-a645-4749-a32c-a292772f11fa",
"tokens_json": [
{
"token": "Nombre Colaborador"
},
{
"token": "RUT Colaborador"
},
{
"token": "Mail Colaborador"
},
{
"token": "Division"
}
]
}
Este endpoint devolve a informação de uma Plantilha de Word.
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/word_templates/ID
Criar plantilhas de palavras
curl --location --request POST 'https://api.webdoxclm.com/api/v2/word_templates' \
--header 'Authorization: Bearer 0b8ff3ad1b916144b9e1c7511b485396fce4b893e8c80d0cee763e764058bc38' \
--form 'word_template[name]=TEmplate word' \
--form 'word_template[subject_id]=1' \
--form 'word_template[attachment]=Path_to_file/Template.docx'
O comando acima devolve JSON estruturado assim:
{
"id": "3714a6c8-f7e5-4e48-8cb8-9540156069bb",
"name": "test",
"subject_id": "bc1ed6d6-a645-4749-a32c-a292772f11fa",
"tokens_json": [
{
"token": "Nombre Colaborador"
},
{
"token": "RUT Colaborador"
},
{
"token": "Mail Colaborador"
},
{
"token": "Division"
}
]
}
Este endpoint permite a criação de uma nova plantilha de palavras
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/word_templates
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| word_template | ✔ | Deve ser um hash | |
| name | ✔ | Deve ser uma cadeia | Nome da plantilha de palavras |
| subject_id | ✔ | Deve ser UUID | ID do assunto para a plantilha de Word |
| attachment | ✔ | Deve ser um arquivo | Arquivo de plantilha de Word |
Exemplo de corpo
--form 'word_template[name]=Template word' \
--form 'word_template[subject_id]=bc1ed6d6-a645-4749-a32c-a292772f11fa' \
--form 'word_template[attachment]=Path_to_file/Template.docx'
Eliminar plantilha de Word
curl --location --request DELETE 'https://api.webdoxclm.com/api/v2/word_templates/<ID>' \
--header 'Authorization: Bearer 0b8ff3ad1b916144b9e1c7511b485396fce4b893e8c80d0cee763e764058bc38'
Este endpoint permite eliminar uma plantilha de Word
Requisição HTTP
DELETE https://api.webdoxclm.com/api/v2/api/word_templates/<ID>
Grupo
Este recurso representa a grupos.
Obter grupos
curl --location --request GET 'https://api.webdoxclm.com/api/v2/groups' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66'
O comando acima devolve JSON estruturado assim:
[
{
"id": 2,
"name": "all"
},
{
"id": 3,
"name": "new group"
},
...
]
Este endpoint recupera todos os grupos.
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/groups
Criar Grupo
curl --location --request POST 'https://api.webdoxclm.com/api/v2/groups' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66' \
--header 'Content-Type: application/json' \
--data-raw '{"name": "new group 3"}'
O comando acima devolve JSON estruturado assim:
{
"id": 4,
"name": "new group 3"
}
Este endpoint cria um grupo.
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/groups
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | ✔ | Deve ser uma cadeia | Nome do grupo |
Exemplo de corpo
{
"name": "new group"
}
Obter grupo
curl --location --request GET 'https://api.webdoxclm.com/api/v2/groups/ab4a4e02-c079-4671-aade-782d7faee5e4' \
--header 'Authorization: Bearer b8e267b3dcb49bff102151bf04c7250b9320865bbfc63f7a4328f317feb5845c'
O comando acima devolve JSON estruturado assim:
{
"group": {
"id": "ab4a4e02-c079-4671-aade-782d7faee5e4",
"name": "webdoxlocal"
},
"users": [
{
"id": "74d8dddb-fd1e-45d5-b90b-dac42f08a703",
"first_name": "Felipe",
"last_name": "Gonzalez",
"email": "[email protected]"
}
]
}
Este recurso obtém o detalhe do grupo
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/groups/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | ID do grupo a obter. |
Atualizar Grupo
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/groups' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66' \
--header 'Content-Type: application/json' \
--data-raw '{
"group":
{
"name": "new group editado bbb",
"user_ids": "77c5a0b5-4260-4922-8589-7a58c4467ba7,2125752d-39cc-4033-9964-1145a8c13db3,040b0e08-deb7-41af-9af8-b4dc24830e68"
}
}'
O comando acima devolve JSON estruturado assim:
{
"group": {
"id": "fe02ff6f-9fa2-4a72-a2e9-a817653f0626",
"name": "new group editado bbb"
},
"users": [
{
"id": "040b0e08-deb7-41af-9af8-b4dc24830e68",
"first_name": "User",
"last_name": "Test",
"email": "[email protected]"
},
{
"id": "77c5a0b5-4260-4922-8589-7a58c4467ba7",
"first_name": "luis",
"last_name": "tapia",
"email": "[email protected]"
},
{
"id": "2125752d-39cc-4033-9964-1145a8c13db3",
"first_name": "kuis",
"last_name": "tapia",
"email": "[email protected]"
}
]
}
Este endpoint atualiza um grupo.
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/groups/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | O ID do grupo a atualizar |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | ✔ | Deve ser uma cadeia | Nome do grupo |
| user_ids | ✔ | Cadeia opcional | IDs de usuários separados por vírgula |
Exemplo de corpo
{
"group":
{
"name": "new group editado bbb",
"user_ids": "77c5a0b5-4260-4922-8589-7a58c4467ba7,2125752d-39cc-4033-9964-1145a8c13db3,040b0e08-deb7-41af-9af8-b4dc24830e68"
}
}
Tipo de documento
Estes se utilizam para atribuir um tipo aos documentos. Referência a Documento.
Criar Tipo de documento
curl --location --request POST 'https://api.webdoxclm.com/api/v2/subjects' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99"' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Subject Test Api",
}'
O comando acima devolve JSON estruturado assim:
{
"id": "9dad2f83-da6c-4010-9978-04fc5de779fb",
"name": "Subject Test Api"
}
Este endpoint permite a criação de um novo tipo de documento
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/subjects
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | Deve ser uma cadeia | Nome do tipo de documento |
Este endpoint permite a criação de um novo tipo de documento
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/subjects
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | Deve ser uma cadeia | Nome do tipo de documento |
Exemplo de corpo
{
"name": "subject test"
}
Atualizar Tipo de documento
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/subjects/<ID>' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99"' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "subject test api 2"
}'
O comando acima devolve JSON estruturado assim:
{
"id": "9dad2f83-da6c-4010-9978-04fc5de779fb",
"name": "Subject test api 2"
}
Este endpoint permite a atualização de um tipo de documento
PUT https://api.webdoxclm.com/api/v2/subjects/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | O ID do tipo de documento a atualizar |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| name | Deve ser uma cadeia | Nome do tipo de documento |
Usuário
Este recurso representa a usuários.
Obter todos os usuários
curl --location --request GET 'https://api.webdoxclm.com/api/v2/users' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66'
O comando acima devolve JSON estruturado assim:
[
{
"id": "59db41d9-bcf4-4e7c-9330-830d1ca95c52",
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"job_ids": [
2
],
"blocked": false,
"external_id": "",
"profile_ids": []
},
{
"id": "ba902463-0c68-4c89-804f-1bd1952ab5f9",
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"job_ids": [],
"blocked": false,
"external_id": null,
"profile_ids": []
},
...
]
Listar todos os usuários para a autenticação de usuário
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/users
Obter informação de usuário
curl --location --request GET 'https://api.webdoxclm.com/api/v2/users/<ID>' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66'
O comando acima devolve JSON estruturado assim:
{
"id": "ba902463-0c68-4c89-804f-1bd1952ab5f9",
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"job_ids": [],
"blocked": false,
"external_id": null,
"profile_ids": []
}
Permite obter os dados de um usuário específico
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/users/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | ID do usuário |
Criar usuário
curl --location --request POST 'https://api.webdoxclm.com/api/v2/users \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66' \
--data-raw '{
"user": {
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]"
"external_id": 100,
"profile_ids": ["7a78a42f-0903-490e-92e2-109bce0ea225"]
}
}'
O comando acima devolve JSON estruturado assim:
{
"id": "ba902463-0c68-4c89-804f-1bd1952ab5f9",
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"job_ids": [],
"blocked": false,
"external_id": "100",
"profile_ids": ["7a78a42f-0903-490e-92e2-109bce0ea225"]
}
Este endpoint permite a criação de um novo usuário para a conta que realiza a solicitação
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/users
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| user | ✔ | Deve ser um hash | |
| user[external_id] | ✔ | Deve ser uma cadeia | ID para endpoints externos |
| user[first_name] | ✔ | Deve ser uma cadeia | Nome do usuário |
| user[last_name] | ✔ | Deve ser uma cadeia | Sobrenome do usuário |
| user[email] | ✔ | Deve ser uma cadeia | Correio eletrônico do usuário |
| user[job_ids] | Array de uuids | Grupos que tem o usuário | |
| user[blocked] | Booleano opcional | Bloqueia o usuário se verdadeiro | |
| user[profile_ids] | Array de uuids | Perfil que terá o usuário | |
| skip_confirmation | Booleano opcional | Permite evitar o envio de um correio de confirmação ao usuário |
Exemplo de corpo
{
"user":
{
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"job_ids": ["15f91198-0708-41e8-9659-935cf9f85251"],
"blocked": false,
"external_id": "100"
}
skip_confirmation: false
}
Atualizar usuário
curl --location --request PUT 'https://api.webdoxclm.com/api/v2/users/<ID>' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66' \
--data-raw '{
"user": {
"first_name": "Test",
"last_name": "User",
"external_id": 150.
"job_ids": ["15f91198-0708-41e8-9659-935cf9f85251"],
"blocked": false,
"profile_ids": ["7a78a42f-0903-490e-92e2-109bce0ea225"]
}
}'
O comando acima devolve JSON estruturado assim:
{
"id": "ba902463-0c68-4c89-804f-1bd1952ab5f9",
"first_name": "Test",
"last_name": "User",
"email": "[email protected]",
"job_ids": ["15f91198-0708-41e8-9659-935cf9f85251"],
"blocked": false,
"external_id": "150",
"profile_ids": ["7a78a42f-0903-490e-92e2-109bce0ea225"]
}
Este endpoint permite a atualização dos dados do usuário identificados com o ID fornecido
Requisição HTTP
PUT https://api.webdoxclm.com/api/v2/users/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | ID do usuário |
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| user | ✔ | Deve ser um hash | |
| user[external_id] | ✔ | Deve ser uma cadeia | ID para endpoints externos |
| user[first_name] | ✔ | Deve ser uma cadeia | Nome do usuário |
| user[last_name] | ✔ | Deve ser uma cadeia | Sobrenome do usuário |
| user[email] | ✔ | Deve ser uma cadeia | Correio eletrônico do usuário |
| user[job_ids] | Array de uuids | Grupos que tem o usuário | |
| user[blocked] | Booleano opcional | Bloqueia o usuário se verdadeiro | |
| user[profile_ids] | Array de uuids | Perfil que terá o usuário | |
| skip_confirmation | Booleano opcional | Permite evitar o envio de um correio de confirmação ao usuário |
Bloquear usuário
curl --location --request DELETE 'https://api.webdoxclm.com/api/v2/users/<ID>' \
--header 'Authorization: Bearer edfcbb1a61180cfa67ae27a09d792bb3c64d32d1f2dde001a4cc09a7cf4b1d66'
O comando acima devolve JSON estruturado assim:
{}
Este endpoint permite bloquear um usuário identificado com o ID fornecido
Requisição HTTP
DELETE https://api.webdoxclm.com/api/v2/users/<ID>
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| ID | ID do usuário |
Criação em massa
curl --location --request POST 'http://localhost:3000/api/v2/users/bulk_create' \
--header 'Authorization: Bearer f5b3dc826b8db21f5a6b58f3e13f5c167b90541235761caeaa577f0c5f3eca98' \
--header 'Content-Type: application/json' \
--header 'Cookie: csrftoken=uxWx5huTKxYHq9gbcgXeDoLisd9lF1mqzyvzX7Ex62s99q7OE5ByyLTbbD3E4ld7' \
--data-raw '{
"users": [
{
"first_name": "Grai4g",
"last_name": "Klempke34",
"email": "[email protected]",
"job_ids": ["46896f04-1217-476a-87fa-3c6fc50ae936"],
"profile_ids": ["7a78a42f-0903-490e-92e2-109bce0ea225"]
},
{
"first_name": "Shellysheldon4",
"last_name": "Koppen3",
"email": "[email protected]",
"job_ids": ["46896f04-1217-476a-87fa-3c6fc50ae936", "7390fd91-f3dc-43f8-a786-033c314ad0bd"]
}]
}
'
O comando acima devolve JSON estruturado assim:
[
{
"id": "6741a2e5-5710-4f7f-bb97-80d25ee5f31b",
"first_name": "Grai4g",
"last_name": "Klempke34",
"email": "[email protected]",
"job_ids": [
"46896f04-1217-476a-87fa-3c6fc50ae936"
],
"blocked": false,
"external_id": null,
"profile_ids": [
"7a78a42f-0903-490e-92e2-109bce0ea225"
]
},
{
"id": "1f0258cd-7c60-404c-a437-7a43b463f887",
"first_name": "Shellysheldon4",
"last_name": "Koppen3",
"email": "[email protected]",
"job_ids": [
"46896f04-1217-476a-87fa-3c6fc50ae936",
"7390fd91-f3dc-43f8-a786-033c314ad0bd"
],
"blocked": false,
"external_id": null
}
]
Permite criar usuários em massa usando um array de JSON
Requisição HTTP
POST https://api.webdoxclm.com/api/v2/users/bulk_create
Parâmetros do corpo
| Parâmetro | Obrigatório | Validação | Descrição |
|---|---|---|---|
| users | ✔ | Array de Hash | Contém os usuários que serão carregados na plataforma |
| first_name | ✔ | Deve ser uma cadeia | Nome do usuário |
| last_name | ✔ | Deve ser uma cadeia | Sobrenome do usuário |
| ✔ | Deve ser uma cadeia | Correio eletrônico do usuário | |
| job_ids | Array de uuids | Grupos que tem o usuário | |
| blocked | Booleano opcional | Bloqueia o usuário se verdadeiro | |
| profile_ids | Array de uuids | Perfil que terá o usuário |
Perfis
Os perfis definem as permissões dos usuários atribuídos a eles
Obter listado de perfis
curl --location --request GET 'https://api.webdoxclm.com/api/v2/profiles' \
--header 'Authorization: Bearer c3aee39ac76970dbe72ec2a2741158a536dfd945b81109abacdd9fcee4846c2b' \
O comando acima devolve JSON estruturado assim:
[
{
"id": "bd188323-c086-4c3c-8373-a75bd74d2e72",
"name": "Admin"
},
{
"id": "7a78a42f-0903-490e-92e2-109bce0ea225",
"name": "Usuario avanzado"
}
]
Permite obter o listado de perfis da conta
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/profiles
Auditoria
Devolve todas as atividades em formato paginado, com um limite de 20 por página. Pode navegar entre páginas usando o parâmetro 'page'. 'trackable_id' é o ID do objeto auditado, e 'trackable_type' é o tipo de objeto (por exemplo, Document, User), enquanto que 'trackable_process_id' é o ID do workflow ou da solicitação associado à auditoria.
Obter atividades
curl --location --request GET 'https://api.webdoxclm.com/api/v2/audits' \
--header 'Authorization: Bearer 245d298daffc6a25278fe6eeb199a1d19e10f2a4d4c43003eb3b7a7b656cba99' \
O comando acima devolve JSON estruturado assim:
{
"data": [
{
"id": "5189",
"type": "audit",
"attributes": {
"id": 5189,
"action": "session_security_updated",
"key": "customer.session_security_updated",
"parameters": {
"changes": {
"timeout_in_unit_cd": [
1,
2
],
"updated_at": [
"2023-09-06T14:51:08.956-03:00",
"2023-09-06T14:53:44.991-03:00"
]
}
},
"trackable_id": 1,
"trackable_type": "Customer",
"owner_id": 1,
"owner_type": "User",
"customer_id": 1,
"recipient_type": null,
"recipient_id": null,
"local_id": null,
"correlative_id": 52,
"created_at": "2023-09-06T14:53:45-03:00",
"updated_at": "2023-09-06T14:53:45-03:00",
"deleted_at": null
}
}
],
"meta": {
"page": 1,
"per_page": 1,
"total_elements": 4160
}
}
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/audits?page=<Number>&per_page=<Number>
Tipos de Documentos de Identidade
Permite consultar os tipos de documentos de identidade disponíveis por país
Listar tipos de documentos de identidade
curl --location --request GET 'https://api.webdoxclm.com/api/v2/national_identification_kinds' \
--header 'Authorization: Token token="7ba2941be41544acba9ddbb9ffa4daf5"'
O comando acima devolve JSON estruturado assim:
{
"COL": [
{
"id": "bfbc6016-aab3-4508-a01d-64ffaeee96b4",
"kind": "CC"
},
{
"id": "cc6a114b-410d-4242-88fb-a3e7d834b22b",
"kind": "CE"
},
{
"id": "fc8c127f-7138-4d53-834e-060f952390da",
"kind": "PEP"
}
],
"PER": [
{
"id": "94bfbabc-9971-4cc8-bb6b-80c62aa2887d",
"kind": "DNI"
},
{
"id": "0b6219c3-4b24-4f5c-804d-c89b65bf9225",
"kind": "RUC"
},
{
"id": "48a26347-9f64-4d26-bead-0c3f651ad079",
"kind": "CE"
}
],
"ECU": [
{
"id": "71042c55-977d-4527-99ae-fb49ce922509",
"kind": "CE"
},
{
"id": "adc35bc0-957a-42d3-af9a-5ab798371364",
"kind": "RUC"
}
]
}
Requisição HTTP
GET https://api.webdoxclm.com/api/v2/national_identification_kinds
Parâmetros de consulta
GET https://api.webdoxclm.com/api/v2/national_identification_kinds?country_code=PER
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| country_code | Código ISO 3166-1 alpha-3 do país pelo qual filtrar |
Erros
A API da Webdox utiliza os seguintes códigos de erro:
| Código de erro | Significado |
|---|---|
| 400 | Requisição incorreta: sua solicitação não é válida. |
| 401 | Não autorizado: sua chave de API está incorreta. |
| 403 | Não autorizado. |
| 404 | Não encontrado. |
| 405 | Método não permitido: tentou acessar um recurso com um método inválido. |
| 422 | Entidade não processável. |
| 500 | Erro interno do servidor: tivemos um problema com nosso servidor. Tente novamente mais tarde. |
| 503 | Serviço não disponível: estamos temporariamente offline para manutenção. Tente novamente mais tarde. |