Ir para o conteúdo principal
Certyneo

API Assinatura Eletrônica: Guia Desenvolvedor REST 2026

Integrar uma API de assinatura eletrônica em seu aplicativo empresarial nunca foi tão estratégico. Este guia para desenvolvedores cobre autenticação, webhooks e conformidade eIDAS de A a Z.

Equipa Certyneo13 min de lectura

Atualizado o

Equipa Certyneo

Redator — Certyneo · Sobre Certyneo

Scrabble tiles spell out the word adequate.

Introdução

A integração de uma API REST de assinatura eletrônica tornou-se um pré-requisito incontornável para as equipes de desenvolvimento em 2026. Com mais de 73% das empresas europeias tendo digitalizado pelo menos um processo contratual (fonte: IDC European Digital Transformation Report 2025), a demanda por integrações técnicas robustas explode. Se você está construindo um SaaS LegalTech, um ERP ou uma plataforma de RH, entender como consumir uma API de assinatura eletrônica — autenticação OAuth2, gerenciamento de webhooks, conformidade eIDAS — determina diretamente a qualidade e o valor jurídico de seus fluxos documentários. Este guia para desenvolvedores REST o acompanha passo a passo: arquitetura, autenticação, ciclo de vida de um documento, webhooks em tempo real e boas práticas de segurança.

---

Arquitetura de uma API REST de Assinatura Eletrônica

Princípios RESTful e estrutura dos endpoints

Uma API REST de assinatura eletrônica bem projetada repousa sobre recursos claramente identificados e verbos HTTP semânticos. Os recursos fundamentais são geralmente:

  • `/documents` — upload, gerenciamento e recuperação de documentos PDF/DOCX
  • `/signature-requests` — criação e pilotagem de solicitações de assinatura
  • `/signatories` — gerenciamento de signatários e suas identidades
  • `/audit-trails` — recuperação de registros de auditoria certificados
  • `/templates` — gerenciamento de modelos de documentos reutilizáveis

Cada recurso expõe endpoints CRUD padrão (`GET`, `POST`, `PUT`, `PATCH`, `DELETE`) e retorna respostas JSON com códigos HTTP normalizados: `200 OK`, `201 Created`, `400 Bad Request`, `401 Unauthorized`, `422 Unprocessable Entity`, `429 Too Many Requests`.

Um aspecto crítico frequentemente negligenciado: o gerenciamento de paginação. As APIs maduras utilizam o padrão cursor-based ao invés de offset/limit, o que garante desempenho estável mesmo em volumes de milhares de documentos assinados. Verifique se a API alvo expõe um cabeçalho `X-Next-Cursor` ou um campo `next_page_token` no corpo.

Versionamento da API e compatibilidade com versões anteriores

O versionamento constitui um ponto de vigilância importante para integradores. As duas abordagens dominantes em 2026 são:

  1. Versionamento por URL: `https://api.certyneo.com/v2/signature-requests` — legível, armazenável em cache por CDNs, recomendado para APIs B2B.
  2. Versionamento por cabeçalho: `Accept: application/vnd.certyneo.v2+json` — mais limpo arquitetonicamente, mas menos visível.

Priorize fornecedores que se comprometam com uma política de depreciação mínima de 12 meses e que publiquem um changelog público. Uma ruptura de compatibilidade não anunciada em seu fluxo de assinatura pode ter consequências jurídicas diretas (contratos não assinados, prazos perdidos).

---

Autenticação OAuth2 e Segurança de Chamadas de API

OAuth2: fluxo client_credentials vs authorization_code

A autenticação é a pedra angular de toda integração de API de assinatura eletrônica. Os dois fluxos OAuth2 mais pertinentes para desenvolvedores são:

Fluxo Client Credentials (M2M — Machine to Machine): ``` POST /oauth/token Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials &client_id=YOUR_CLIENT_ID &client_secret=YOUR_CLIENT_SECRET &scope=documents:write signature_requests:write audit_trails:read ``` Este fluxo é ideal para integrações servidor-a-servidor onde nenhum usuário final está envolvido na autenticação (processamento em lote, automação de contratos).

Fluxo Authorization Code + PKCE: recomendado quando sua aplicação atua em nome de um usuário final identificado. O PKCE (Proof Key for Code Exchange) é obrigatório desde o RFC 7636 e protege contra ataques de interceptação.

Dicas essenciais de segurança:

  • Armazene os `client_secret` em um vault (HashiCorp Vault, AWS Secrets Manager) — nunca em variável de ambiente não criptografada
  • Implemente rotação automática de tokens com buffer de 60 segundos antes da expiração
  • Use escopos granulares: solicite apenas as permissões estritamente necessárias

Gerenciamento de chaves de API e limitação de taxa

Para integrações leves ou ambientes de teste, algumas APIs oferecem chaves de API estáticas (Bearer Token). Se as usar em produção, aplique sistematicamente:

  • Rotação trimestral de chaves
  • Restrição por IP (lista de permissões)
  • Monitoramento de chamadas anormais via seu SIEM

O rate limiting é uma realidade incontornável: as APIs de assinatura geralmente limitam entre 100 e 1000 chamadas/minuto dependendo do plano. Implemente um mecanismo de retry exponencial com jitter: ``` retry_delay = base_delay * (2^attempt) + random_jitter ``` Respeite rigorosamente o cabeçalho `Retry-After` retornado com `429 Too Many Requests`.

---

Ciclo de Vida de uma Solicitação de Assinatura via API

Criação e configuração de uma solicitação de assinatura

O ciclo de vida de uma solicitação de assinatura via API REST segue um esquema de estados (`draft` → `pending` → `in_progress` → `completed` | `declined` | `expired`). Aqui estão as etapas técnicas detalhadas:

Etapa 1 — Upload do documento: ``` POST /v2/documents Content-Type: multipart/form-data

file=@contrato.pdf ``` Resposta: `{ "document_id": "doc_a1b2c3", "checksum_sha256": "e3b0c442..." }`

Etapa 2 — Criação da solicitação: ```json POST /v2/signature-requests { "document_id": "doc_a1b2c3", "name": "Contrato de prestação de serviço Q3 2026", "signatories": [ { "email": "signatario@cliente.br", "first_name": "Maria", "last_name": "Silva", "signature_level": "advanced", "fields": [{ "type": "signature", "page": 3, "x": 120, "y": 680 }] } ], "expiry_date": "2026-06-05T23:59:59Z", "reminder_settings": { "enabled": true, "frequency_days": 3 } } ```

Etapa 3 — Ativação: `POST /v2/signature-requests/req_x9y8z7/activate`

A partir da ativação, os signatários recebem seus convites e a solicitação passa para o estado `in_progress`.

Recuperação do documento assinado e do registro de auditoria

Uma vez atingido o status `completed` (detectável via webhook — veja a seção seguinte), recupere:

``` GET /v2/signature-requests/req_x9y8z7/document/signed → PDF assinado com assinaturas eletrônicas incorporadas (PAdES-B-T conforme ETSI EN 319 132)

GET /v2/signature-requests/req_x9y8z7/audit-trail → PDF do registro de auditoria certificado (carimbo de tempo qualificado RFC 3161) ```

Armazene sempre os dois arquivos juntos em seu GED ou DMS. O registro de auditoria é a prova oponível em caso de contestação judicial.

---

Webhooks: Eventos em Tempo Real e Gerenciamento de Erros

Configuração e segurança de webhooks

Os webhooks transformam sua integração de um polling custoso em uma arquitetura orientada a eventos reativa. Configure seu endpoint webhook:

``` POST /v2/webhooks { "url": "https://seu-app.com/hooks/certyneo", "events": [ "signature_request.completed", "signature_request.declined", "signatory.signed", "signature_request.expired" ], "secret": "whsec_seu_secret_hmac" } ```

Segurança HMAC obrigatória: valide cada payload recebido comparando a assinatura HMAC-SHA256 calculada com o cabeçalho `X-Certyneo-Signature`: ```python import hmac, hashlib

def verify_webhook(payload: bytes, secret: str, signature_header: str) -> bool: expected = hmac.new( secret.encode(), payload, hashlib.sha256 ).hexdigest() return hmac.compare_digest(f"sha256={expected}", signature_header) ``` Nunca use uma comparação de string clássica — vulnerável a timing attacks.

Idempotência e gerenciamento de retransmissões

Os webhooks podem ser reentregues em caso de timeout ou erro 5xx do seu endpoint. Implemente a idempotência obrigatoriamente:

  1. Extraia o `event_id` único de cada payload webhook
  2. Verifique em banco de dados se este `event_id` já foi processado
  3. Retorne `200 OK` imediatamente (mesmo para duplicatas) para evitar reentregas infinitas
  4. Processe a lógica de negócio de forma assíncrona (fila: Redis, RabbitMQ, SQS)

Regra de ouro: seu endpoint webhook deve responder em menos de 5 segundos. Todo processamento de negócio pesado (envio de email, arquivamento em GED, notificação ERP) deve ser delegado a um worker assíncrono.

Para aprofundar sua compreensão dos níveis de assinatura disponíveis via API, consulte nosso guia completo de assinatura eletrônica que detalha as diferenças entre assinaturas simples, avançadas e qualificadas.

---

Boas Práticas de Integração e Desempenho

Ambientes sandbox e estratégia de testes

Toda API de assinatura eletrônica séria oferece um ambiente sandbox isolado da produção. Adote esta estratégia de testes:

  • Testes unitários: simule respostas de API (Wiremock, MSW) para validar sua lógica de negócio sem depender da rede
  • Testes de integração: execute contra o sandbox real para validar o ciclo de vida completo (criação → assinatura → recuperação)
  • Testes de carga: simule picos de solicitações simultâneas para identificar seus gargalos antes da implantação em produção
  • Testes de caos: simule timeouts e erros 5xx para validar sua lógica de retry

Nunca teste em produção com identidades reais de signatários. As assinaturas eletrônicas criadas em sandbox não têm nenhum valor jurídico, que é exatamente o que você deseja para seus testes.

Monitoramento, observabilidade e alertas

Em produção, instrumente sua integração com:

  • Métricas: taxa de sucesso de chamadas de API, latência p95/p99, taxa de erro por endpoint
  • Rastreamentos distribuídos: propague os `trace-id` em seus cabeçalhos para correlacionar seus logs com os logs de API do fornecedor
  • Alertas: acione um alerta se a taxa de erro exceder 1% ou se a latência p99 exceder 3 segundos

Consulte nosso comparativo de soluções de assinatura eletrônica para avaliar os SLA de disponibilidade (uptime) oferecidos por diferentes fornecedores — um critério frequentemente subestimado ao integrar uma API.

Se você está migrando de outra plataforma, nosso guia sobre como migrar de DocuSign ou YouSign para Certyneo cobre os aspectos técnicos da migração de API e a compatibilidade dos webhooks existentes.

Para estimar o retorno sobre investimento de sua integração, use nosso calculador ROI de assinatura eletrônica que integra os ganhos de produtividade relacionados à automação via API.

Por fim, se deseja ir além na geração automatizada de documentos a serem assinados, descubra nosso gerador de contratos por IA que se integra nativamente com nossa API REST.

A integração de uma API de assinatura eletrônica não se limita a uma questão técnica: ela envolve diretamente a responsabilidade jurídica do editor e seus clientes em vários textos fundamentais.

Regulamento eIDAS nº 910/2014 e eIDAS 2.0

O Regulamento (UE) nº 910/2014 (eIDAS) estabelece o marco legal da assinatura eletrônica na União Europeia. Distingue três níveis:

  • Assinatura eletrônica simples (SES): valor jurídico mínimo, adequado para atos de baixo risco
  • Assinatura eletrônica avançada (AES): vinculada de forma unívoca ao signatário, criada a partir de dados sob seu controle exclusivo — artigo 26 eIDAS
  • Assinatura eletrônica qualificada (QES): equivalente a uma assinatura manuscrita em toda a UE — artigo 25 §2 eIDAS

Com a entrada em aplicação progressiva do regulamento eIDAS 2.0 (Regulamento UE 2024/1183), os desenvolvedores devem antecipar a integração das Carteiras Europeias de Identidade Digital (EUDIW) em seus fluxos de autenticação. Consulte nosso guia eIDAS 2.0 para as implicações técnicas detalhadas.

Código Civil Português — Artigos 1 e 2 da Lei da Assinatura Digital

Em direito português, a Lei nº 10/2004, de 28 de Março (Lei da Assinatura Digital) estabelece os requisitos para que uma assinatura eletrônica tenha validade. O documento eletrônico assinado deve permitir a identificação do signatário e garantir a integridade do documento.

A legislação portuguesa alinha-se com as exigências eIDAS: identificação do signatário e garantia de integridade do documento. Estes requisitos traduzem-se tecnicamente na obrigação de conservar os registros de auditoria certificados e as provas de identidade utilizadas durante a assinatura — elementos que sua API deve expor e que deve armazenar.

Normas ETSI EN 319 132 — PAdES

O formato técnico obrigatório para assinaturas PDF conformes a eIDAS é PAdES (PDF Advanced Electronic Signatures), definido pela norma ETSI EN 319 132. Sua API deve produzir assinaturas PAdES-B-T (com carimbo de tempo) no mínimo, e PAdES-B-LT ou PAdES-B-LTA para garantir a validabilidade a longo prazo (arquivamento 10+ anos).

RGPD nº 2016/679 — Dados dos Signatários

Os dados pessoais coletados durante o processo de assinatura (nome, sobrenome, email, endereço IP, dados de identidade para AES/QES) constituem dados de caráter pessoal sujeitos ao RGPD. Suas obrigações como responsável do tratamento ou subcontratado incluem:

  • Definir um período de conservação justificado (geralmente alinhado com prazos de prescrição: 5 anos em direito comum)
  • Prever um mecanismo de purga automática via API (`DELETE /v2/signature-requests/{id}/personal-data`)
  • Documentar o processamento em seu registro de atividades de processamento (artigo 30 RGPD)
  • Celebrar um DPA (Data Processing Agreement) com seu fornecedor de API de assinatura

Diretiva NIS2 e continuidade de serviço

Para editores de software qualificados como entidades essenciais ou importantes no sentido da Diretiva NIS2 (2022/2555), a integração de uma API de terceiros cria uma dependência que deve ser documentada em sua análise de riscos da cadeia de abastecimento digital. Exija do seu fornecedor de API uma certificação SOC 2 Type II e um SLA de disponibilidade ≥ 99,9%.

Cenários de Uso: API de Assinatura Eletrônica na Prática

Cenário 1 — Automação de contratos de fornecedores em uma PME industrial

Uma PME industrial gerenciando cerca de 200 contratos de fornecedores por ano desejava eliminar os vai-e-vém de papel e relances manuais que mobilizavam 2 dias por mês de um assistente administrativo. A equipe de desenvolvimento integrou a API REST de assinatura eletrônica diretamente em seu ERP corporativo através do seguinte fluxo:

  1. Na validação de uma nota de encomenda no ERP, uma chamada `POST /v2/signature-requests` é disparada automaticamente
  2. O contrato PDF gerado é carregado e uma solicitação de assinatura é enviada ao contato do fornecedor referenciado
  3. Um webhook `signatory.signed` atualiza o status da nota de encomenda em tempo real
  4. O documento assinado e o registro de auditoria são arquivados automaticamente no DMS através de uma segunda chamada de API

Resultados observados (faixa de valores derivada de relatórios setoriais KPMG/IDC 2024-2025): redução do prazo médio de assinatura de 8 dias para menos de 24 horas, economia estimada em 60-70% do tempo administrativo gasto com relances, e zero perda documental.

Cenário 2 — Plataforma LegalTech para escritórios de advocacia

Um editor de software desenvolvendo uma solução SaaS destinada a escritórios de advocacia de 5 a 30 colaboradores integrou a API de assinatura eletrônica para permitir que seus usuários finais fizessem assinar os mandatos, convenções de honorários e atos processuais diretamente da interface do escritório.

A arquitetura técnica adotada utiliza o fluxo OAuth2 Authorization Code + PKCE para que cada advogado autentique as solicitações em seu próprio nome. Os webhooks `signature_request.completed` disparam automaticamente o depósito do documento assinado na pasta do cliente do GED jurídico.

O editor valorizou particularmente a disponibilidade de assinaturas eletrônicas avançadas (AES) via API — nível exigido para convenções de honorários de acordo com as recomendações do Conselho Nacional da Ordem dos Advogados. O tempo de desenvolvimento da integração inicial foi estabelecido em aproximadamente 3 semanas para um desenvolvedor backend sênior, com cobertura de testes de 85%.

Cenário 3 — Onboarding digital em um grupo de clínicas privadas

Um grupo de clínicas privadas com cerca de 600 leitos precisava desmaterializar formulários de consentimento informado e contratos de admissão, até então impressos e assinados manualmente na recepção — gerando custos de impressão estimados em vários milhares de euros por ano e tempos de espera em recepção.

A integração de API conectou o sistema de informações hospitalares (SIH) à plataforma de assinatura eletrônica. No registro de um paciente, o SIH chama a API para criar uma solicitação de assinatura multipartida (paciente + médico responsável) com posicionamento automático dos campos de assinatura calculado a partir dos metadados do template.

A conformidade com o RGPD exigiu a implementação de uma purga automática programada via API (`PATCH /v2/signature-requests` + webhook de confirmação de exclusão) alinhada aos períodos de conservação legal dos registros médicos (20 anos para maiores de idade, de acordo com o artigo R. 1112-7 do Código de Saúde Pública). Os ganhos medidos atingiram uma redução de 80% no tempo de espera na admissão e uma economia de 40% nos custos de impressão e digitalização.

Conclusão

Integrar uma API REST de assinatura eletrônica em 2026 requer domínio simultâneo de várias dimensões: arquitetura RESTful robusta, autenticação OAuth2 segura, gerenciamento de eventos por webhooks, e conformidade com requisitos eIDAS e RGPD. Os desenvolvedores que antecipam essas questões desde a concepção de sua integração evitam refatorações custosas e riscos jurídicos significativos.

Os três pilares a reter: proteja suas chamadas de API (OAuth2 + escopos mínimos + vault), processe eventos de forma assíncrona e idempotente via webhooks, e arquive sistematicamente o documento assinado com seu registro de auditoria certificado.

Certyneo disponibiliza uma API REST documentada, em conformidade com eIDAS, com sandbox gratuito e suporte técnico dedicado a desenvolvedores. Crie sua conta Certyneo para acessar sua chave API sandbox e comece sua integração hoje mesmo.

Teste Certyneo gratis

Envía o seu primeiro sobre de assinatura em menos de 5 minutos. 5 envelopes gratuitos ao mês, sem cartão de crédito.

Aprofundar o tema

Os nossos guias completos para dominar a assinatura electrónica.