NAV Navbar
shell

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":"*************" }

Postman 4

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", }

Postman 6

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", }

Postman 5

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&parallel_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&parallel_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&parallel_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>&parallel_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>&parallel_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>&parallel_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 &#39;list&#39;</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 &#39;send_mail&#39;</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
email email
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
email 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
email 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
email 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.