AssinAPI

Quickstart

Faça sua primeira assinatura em menos de 5 minutos — tudo no Sandbox, sem custo.

Secret key só no servidor

Guarde a chave em ASSINAPI_SECRET_KEY (Supabase Secrets, Vercel, .env). Nunca no navegador, app mobile ou GitHub.

1. Crie sua conta

Crie uma conta — você ganha uma organização, o projeto “Meu primeiro projeto” e acesso ao Sandbox.

2. Gere uma API Key

No dashboard, em API Keys, crie uma chave de Sandbox (ask_test_…). Ela é exibida uma única vez.

3. Envie um documento

O caminho mais curto é POST /v1/signature-requests: uma chamada cria o documento, cadastra o signatário e envia o convite.

curl -X POST https://sandbox.api.assinapi.com.br/v1/signature-requests \
  -H "Authorization: Bearer $ASSINAPI_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Contrato de prestação",
    "document": { "filename": "contrato.pdf", "contentBase64": "JVBERi0x..." },
    "signer": { "name": "João Silva", "email": "joao@email.com", "cpf": "529.982.247-25" }
  }'

4. Adicione um signatário

No passo anterior o signatário já vai junto. Para vários, use signers: [...]; para controle total, a API granular (Signatários). No Sandbox, o código de verificação é sempre 123456.

5. Escute o webhook

Cadastre uma URL em Webhooks (ou POST /v1/webhooks) e trate envelope.completed. Localmente: assinapi listen --forward-to localhost:3000/api/webhooks/assinapi.

6. Faça download do documento concluído

Com o envelope COMPLETED, GET /v1/envelopes/{id}/evidence devolve URLs temporárias do PDF assinado, do certificado e do manifesto.