Skip to main content
Todas as requisições à API devem incluir autenticação. Este documento descreve os mecanismos suportados e o formato de erros.

Autenticação

1. API Key (x-api-key) — Server-to-Server

Use uma chave de API para operações administrativas e de integração (criar envelopes, gerenciar templates, listar signatários).
A chave de API:
  • Identifica seu projeto e organização automaticamente.
  • Autoriza operações de qualquer scope (projeto).
  • Deve ser mantida segura e privada — nunca versione-a ou exponha em código frontend.

2. Bearer Token (OAuth2/OIDC) — User-Delegated

Use um token Bearer quando a requisição é feita em nome de um usuário específico (ex: login de usuário de backoffice).
Bearer Token exige três headers simultâneos:
  • Authorization: Bearer <token> — o token OAuth2/OIDC.
  • x-project-id — UUID do projeto (não extraído do token, deve ser enviado explicitamente).
  • x-organization-id — UUID da organização (não extraído do token, deve ser enviado explicitamente).
Omitir qualquer um deles resultará em 401 Unauthorized.

3. Session Token (sessionToken) — Signer-Only

Endpoints do signatário (ex: /v1/sign/:sessionToken) não exigem nenhum header de autenticação — o sessionToken é a credencial.
O sessionToken:
  • É único para cada signatário, em cada envelope.
  • Retornado na criação do envelope (campo signers[].sessionToken).
  • Encapsula identidade e autorização — qualquer um que o possuir pode acessar e assinar.
  • Nunca inclua em logs ou transmita de forma não segura.

Qual mecanismo usar?

Formato de respostas de erro

Erros retornam um envelope JSON estruturado:
integer
required
Código HTTP da resposta (ex: 400, 401, 404).
string
required
Descrição legível do erro em português.
object
Detalhes adicionais do erro (presente apenas em alguns casos).

Exemplo de resposta de erro

Códigos de erro comuns

Tratamento de erros recomendado

Dicas de depuração

  • Verifique os headers: Certifique-se de que x-api-key (ou Authorization + x-project-id + x-organization-id) está presente em toda requisição de administrador.
  • Valide o sessionToken: Se um signatário vê erro 410, o token expirou — solicite um novo via PATCH no signatário ou crie um novo envelope.
  • Logs de auditoria: Use GET /v1/envelopes/:uuid/history para ver o histórico completo de um envelope (incluindo IPs, timestamps, falhas de verificação).
  • Sandbox/testes: Use credenciais de desenvolvimento até validar o fluxo completo; só então migre para credenciais de produção.

Próximas páginas

Veja o contrato de cada operação na seção API.