/v2/envelopes/POSTbearerAuth)POST /v2/envelopes/ com os metadados dos documentos, signatários e campos de assinatura.envelopeId e os uploadUrls para envio dos arquivos binários.uploadUrls retornados.| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
x-account-id | string | ✅ | ID da conta que está criando o envelope. |
Authorization | string | ✅ | Token Bearer JWT. Exemplo: Bearer <token>. |
application/json){
"title": "string",
"folderId": "string",
"deadline": "2025-12-31T23:59:59Z",
"message": "string (máx. 500 caracteres)",
"documents": [
{
"id": "string",
"fileName": "string",
"contentType": "application/pdf"
}
],
"signatories": [
{
"id": "string",
"name": "string",
"email": "user@example.com",
"qualification": "string",
"authMethod": "EMAIL|SMS|WHATSAPP",
"phoneNumber": "string (opcional)",
"signingOrder": 1
}
],
"observers": [
{
"email": "observer@example.com",
"notifyOnSent": false,
"notifyOnCompletion": true
}
],
"fields": [
{
"type": "SIGNATURE|INITIALS|TEXT",
"documentId": "string",
"signatoryId": "string",
"pageNumber": 1,
"position": {
"x": 100,
"y": 200,
"width": 150,
"height": 50
},
"properties": {
"label": "Texto opcional (para campos TEXT)"
}
}
]
}documents (mínimo 1)signatories (mínimo 1)| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id | string | ✅ | Identificador único temporário do documento utilizado para identificar o documento quando houver fields. |
fileName | string | ✅ | Nome do arquivo (ex: contrato.pdf). |
contentType | string | ✅ | Tipo MIME do documento (application/pdf). |
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id | string | ✅ | Identificador único temporário do signatário utilizado para identificar o signatário quando houver fields. |
name | string | ✅ | Nome completo do signatário. |
email | string | ✅ | Endereço de e-mail válido. |
qualification | string | ✅ | Qualificação (ex: “Representante Legal”). |
authMethod | string | ✅ | Método de autenticação (EMAIL, SMS ou WHATSAPP). |
phoneNumber | string | ❌ | Necessário se o método for SMS ou WHATSAPP no formato E.164 (+55119XXXXYYYY). |
signingOrder | number | ❌ | Ordem de assinatura (usado se o fluxo for sequencial). |
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
deadline | string (datetime) | ❌ | Data limite para assinaturas. |
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
email | string | ✅ | Endereço de e-mail do observador. |
notifyOnSent | boolean | ❌ | Notifica quando o envelope é enviado (padrão: false). |
notifyOnCompletion | boolean | ❌ | Notifica quando o envelope é concluído (padrão: true). |
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
type | string | ✅ | Tipo de campo (SIGNATURE, INITIALS ou TEXT). |
documentId | string | ✅ | ID do documento onde o campo será inserido. |
signatoryId | string | ✅ | ID do signatário vinculado ao campo. |
pageNumber | integer | ✅ | Número da página (≥ 1). |
position | object | ✅ | Define as coordenadas e dimensões do campo no documento. |
properties | object | ❌ | Campos adicionais, como label (usado apenas em campos TEXT). |
{
"type": "SIGNATURE",
"documentId": "doc-123",
"signatoryId": "sig-456",
"pageNumber": 1,
"position": { "x": 100, "y": 600, "width": 180, "height": 50 }
}{
"type": "TEXT",
"documentId": "doc-123",
"signatoryId": "sig-456",
"pageNumber": 1,
"position": { "x": 200, "y": 400, "width": 300, "height": 30 },
"properties": { "label": "CPF do signatário" }
}{
"envelopeId": "env_12345",
"uploadDetails": [
{
"documentId": "doc_abc",
"fileName": "contrato.pdf",
"uploadUrl": "https://storage-provider/upload/doc_abc"
}
]
}{
"error": {
"code": "INVALID_FIELD_LINKING",
"message": "Invalid field linking"
}
}{
"error": {
"code": "INVALID_FIELD_TYPE",
"message": "Invalid field type"
}
}{
"error": {
"code": "ENVELOPES_QUOTA_EXCEEDED",
"message": "Envelopes limit reached for this account"
}
}{
"error": {
"code": "RESOURCE_NOT_FOUND",
"message": "Subscription not found"
}
}Authorization: Bearer <seu_token_jwt>deadline não for definido, por padrão a data limite para assinaturas será de 7 dias a partir da data de criação do envelope.uploadUrls retornados devem ser usados para enviar os arquivos binários correspondentes aos documentos informados.uploadDetails.x-goog-meta-documentid com o ID do documento correspondente no array uploadDetails ao enviar o arquivo binário com a url assinada.SMS ou WHATSAPP, o campo phoneNumber do signatário torna-se obrigatório.TEXT permitem adicionar rótulos (label) para exibição no documento.{
"title": "Contrato X",
"folderId": "fld_123",
"deadline": "2025-12-31T23:59:59Z",
"message": "Por favor, revise e assine o contrato.",
"documents": [
{
"id": "doc_001",
"fileName": "contrato.pdf",
"contentType": "application/pdf"
}
],
"signatories": [
{
"id": "sig_001",
"name": "Maria Oliveira",
"email": "maria@exemplo.com",
"qualification": "Representante Legal",
"authMethod": "EMAIL",
"signingOrder": 1
}
],
"observers": [
{
"email": "juridico@empresa.com",
"notifyOnSent": true,
"notifyOnCompletion": true
}
],
"fields": [
{
"type": "SIGNATURE",
"documentId": "doc_001",
"signatoryId": "sig_001",
"pageNumber": 1,
"position": {
"x": 100,
"y": 600,
"width": 150,
"height": 50
}
}
]
}