| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Atualizar Cadeia de Assinatura
Permite adicionar, remover, substituir ou atualizar informações de signatários em uma solicitação de assinatura em cadeia.
Método: PUT
URL: /api/requests/chain/update
Headers obrigatórios:
| Header | Valor |
|---|---|
Authorization | Bearer <token> |
Content-Type | application/json |
Body da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
signing_key | string | Sim | Chave de assinatura da solicitação |
operations | array | Sim | Lista de operações (mínimo 1). Processadas em ordem. |
Ações
Cada objeto dentro de operations deve ter um campo action que define qual operação executar.
update — Substituir email de signatário
update — Substituir email de signatárioSubstitui o email de um signatário existente na cadeia e atualiza o contact no additional_info_sign.
Campos:
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
action | string | Sim | "update" |
target_email | string | Sim | Email atual do signatário |
new_email | string | Sim | Novo email |
{
"signing_key": "SUA_CHAVE_AQUI",
"operations": [
{
"action": "update",
"target_email": "[email protected]",
"new_email": "[email protected]"
}
]
}Resposta (200):
{
"message": "Cadeia de assinatura atualizada com sucesso.",
"chain_emails": ["[email protected]"],
"warnings": []
}add — Adicionar novo signatário
add — Adicionar novo signatárioInsere um novo signatário em uma posição específica da cadeia.
Campos:
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
action | string | Sim | "add" |
new_email | string | Sim | Email do novo signatário |
after_email | string | Sim | Email do signatário após o qual inserir. Valores especiais: "last" (final), "beginning" (início) |
fullname | string | Não | Nome completo |
cpf | string | Não | CPF |
birthdate | string | Não | Data de nascimento (YYYY-MM-DD) |
message | string | Não | Mensagem personalizada do recipient |
subject | string | Não | Assunto do email |
allow_selfie | boolean | Não | Permitir selfie |
allow_document | boolean | Não | Permitir envio de documento (frente) |
allow_document_back | boolean | Não | Permitir envio de documento (verso) |
allow_cpf | boolean | Não | Exigir CPF (padrão: true) |
allow_birth_date | boolean | Não | Exigir data de nascimento (padrão: true) |
signature_type | string | Não | Tipo de assinatura |
signature_mode | string | Não | Modo: "all", "draw", "text" ou "upload" |
doubleauth | boolean | Não | Autenticação dupla |
certificate | integer | Não | Código de certificado associado ao signatário. |
send_finished | boolean | Não | Enviar email ao finalizar |
expire_date | string | Não | Data de expiração (YYYY-MM-DD, futura) |
fields | array | Não | Posições dos campos no documento (ver Fields) |
{
"signing_key": "SUA_CHAVE_AQUI",
"operations": [
{
"action": "add",
"new_email": "[email protected]",
"after_email": "[email protected]",
"fullname": "João da Silva",
"cpf": "11111111111",
"allow_cpf": true,
"allow_birth_date": true
}
]
}{
"signing_key": "SUA_CHAVE_AQUI",
"operations": [
{
"action": "add",
"new_email": "[email protected]",
"after_email": "last",
"fullname": "Último da fila"
}
]
}Resposta (200):
{
"message": "Cadeia de assinatura atualizada com sucesso.",
"chain_emails": ["[email protected]", "[email protected]"],
"warnings": []
}remove — Remover signatário
remove — Remover signatárioRemove o signatário de todos os arrays: chain_emails, chain_positions, chain_options e additional_info_sign.
Campos:
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
action | string | Sim | "remove" |
target_email | string | Sim | Email do signatário a ser removido |
{
"signing_key": "SUA_CHAVE_AQUI",
"operations": [
{
"action": "remove",
"target_email": "[email protected]"
}
]
}Resposta (200):
{
"message": "Cadeia de assinatura atualizada com sucesso.",
"chain_emails": ["[email protected]"],
"warnings": []
}update_additional_info — Atualizar dados cadastrais
update_additional_info — Atualizar dados cadastraisAtualiza informações (nome, CPF, nascimento) de um signatário existente no additional_info_sign.
Campos:
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
action | string | Sim | "update_additional_info" |
target_email | string | Sim | Email atual do signatário |
new_email | string | Não | Novo e-mail. Atualiza chain_emails se o signatário estiver nessa cadeia. Caso contrário, atualiza apenas additional_info_sign e retorna um aviso. |
fullname | string | Não | Nome completo |
cpf | string | Não | CPF |
birthdate | string | Não | Data de nascimento (YYYY-MM-DD) |
{
"signing_key": "SUA_CHAVE_AQUI",
"operations": [
{
"action": "update_additional_info",
"target_email": "[email protected]",
"fullname": "João da Silva",
"cpf": "22222222222",
"birthdate": "1990-01-15"
}
]
}Resposta (200):
{
"message": "Cadeia de assinatura atualizada com sucesso.",
"chain_emails": ["[email protected]"],
"warnings": []
}Fields — Posicionamento de campos no documento
Usado na ação add para definir a posição de campos de assinatura, rubrica e texto no documento.
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
type | string | Sim | "signature", "rubric" ou "text" |
page | integer | Não | Página do documento. Inclua para campos signature e text; para rubric, a API usa a página 0. |
xPos | number | Sim | Posição X |
yPos | number | Sim | Posição Y |
width | number | Sim | Largura |
height | number | Sim | Altura |
text | string | Não | Texto (type: "text" apenas) |
fontsize | integer | Não | Tamanho da fonte. Para campos text com text informado, o padrão é 14. |
color | string | Não | Cor (padrão: "#000000") |
align | string | Não | "left", "center" ou "right" |
bold | string | Não | Negrito |
italic | string | Não | Itálico |
underline | string | Não | Sublinhado |
strikethrough | string | Não | Tachado |
default | string | Não | Valor padrão do campo |
validateData | boolean | Não | Validar dados |
{
"signing_key": "SUA_CHAVE_AQUI",
"operations": [
{
"action": "add",
"new_email": "[email protected]",
"after_email": "last",
"fullname": "João",
"fields": [
{
"type": "signature",
"page": 1,
"xPos": 100,
"yPos": 500,
"width": 200,
"height": 60
},
{
"type": "text",
"page": 1,
"xPos": 100,
"yPos": 400,
"width": 300,
"height": 30,
"text": "Assinatura do cliente",
"fontsize": 12,
"color": "#333333"
}
]
}
]
}Sem fields, a API copia as posições do signatário anterior quando disponível. Ao inserir no início da cadeia, usa as posições originais da solicitação.
Múltiplas operações
Envie várias operações em um único request. Elas são executadas em ordem:
{
"signing_key": "SUA_CHAVE_AQUI",
"operations": [
{
"action": "update",
"target_email": "[email protected]",
"new_email": "[email protected]"
},
{
"action": "add",
"new_email": "[email protected]",
"after_email": "[email protected]"
},
{
"action": "remove",
"target_email": "[email protected]"
}
]
}Respostas
200 — Sucesso
{
"message": "Cadeia de assinatura atualizada com sucesso.",
"chain_emails": ["[email protected]", "[email protected]"],
"warnings": []
}404 — Não encontrado
{
"error": "Request não encontrado, não está pendente ou não é uma solicitação encadeada."
}O request não foi encontrado, não está com status
Pending, ou não possuichain_emails.
422 — Erro de validação
{
"message": "The given data was invalid.",
"errors": {
"operations.0.target_email": [
"O campo target_email é obrigatório para as ações update, remove e update_additional_info."
]
}
}422 — Erro de negócio
{
"error": "Email '[email protected]' não encontrado na cadeia."
}Notas importantes
- O request deve estar com status Pending e possuir cadeia de assinatura (
chain_emailsnão nulo) - A empresa autenticada no token deve ser a mesma do request
- Se new_email for informado, chain_emails só é atualizado quando o signatário estiver nessa lista. Para alterar o e-mail do signatário atual, use change-signer.
removeremove o signatário de todos os arrays:chain_emails,chain_positions,chain_optionseadditional_info_signaddcopia as posições (chain_positions) do signatário anterior quandofieldsnão é informado
