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
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
}
}'
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
}
]
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 |
| 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. |