APIs Nova Gestão de Envelopes
Informamos que a API newEnvelope (versão 1) foi deprecada em 12/09/2025. Recomendamos utilizar exclusivamente a versão 2, enviando o header Accept: application/json;seniorx.version=2.
- Conceito
- Pré-requisitos
- APIs
3.1 Criar Envelope como Rascunho - newEnvelope
3.2 Criar e Enviar Envelope Diretamente para Assinatura
3.3 Editar Envelope - editEnvelope
3.4 Enviar Rascunho para Assinatura - newEnvelope
3.5 Upload de Documentos via GED
3.6 Associação de Contatos aos Signatários - Comparativo: Gestão Antiga vs. Nova Gestão
- FAQ
- Referência Técnica - Enumerações
- Páginas Relacionadas
1. Conceito
Nesta página serão detalhadas as APIs da funcionalidade Nova Gestão de Envelopes. Para mais informações sobre a funcionalidade, consulte a documentação.
A Nova Gestão de Envelopes centraliza as operações na API newEnvelope (versão 2), substituindo o fluxo anterior e proporcionando maior flexibilidade na criação e gerenciamento de envelopes. Com essa evolução, é possível:
- criar envelopes como rascunho para posterior revisão e envio.
- criar e enviar envelopes diretamente para assinatura em uma única chamada, sem necessidade de etapa intermediária.
- vincular documentos do GED ao envelope.
- associar contatos previamente cadastrados como signatários, agilizando o preenchimento das informações.
Para realizar o acesso via API, utilize o endpoint:
POST /rest/platform/sign/actions/newEnvelope
Importante:
É obrigatório enviar o header de versionamento para utilizar a versão 2: Accept: application/json;seniorx.version=2
2. Pré-requisitos
Os pré-requisitos para utilização das APIs são os mesmos descritos na documentação da Nova Gestão de Envelopes .
3. APIs
3.1 Criar Envelope como Rascunho - newEnvelope
Permite criar um envelope no estado de rascunho para revisão posterior antes do envio para assinatura. Este é o comportamento padrão da API.
Ao criar um envelope como rascunho, o sistema registra todas as informações do envelope (nome, signatários, documentos e configurações), sem iniciar o processo de assinatura. O envelope fica com status DRAFT e pode ser editado livremente antes do envio.
- URL (acesso)
- Parâmetros Principais
- Exemplo
- Resposta
- Multijurisdição ao Criar um Envelope
- Observações
URL
| endpoint | POST /rest/platform/sign/actions/newEnvelope
|
|---|---|
| header obrigatório | Accept: application/json;seniorx.version=2
|
Parâmetros Principais
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id
|
string | Não | Identificador do envelope. Se não informado, será gerado automaticamente. |
configuration
|
envelopeConfiguration | Sim |
Configurações do envelope (nome, prazo de expiração, geolocalização, etc.). *O campo |
daysToExpire
|
integer | Não | Prazo de expiração (entre 1 e 240 dias, o padrão é 120 dias). |
signers
|
signer[] | Sim | Lista de signatários do envelope. |
documentsVersions
|
documentVersion[] | Não | Documentos do GED a serem vinculados ao envelope. |
permissions
|
permission[] | Não | Permissões de acesso ao envelope. |
conectors
|
conector[] | Não | Conectores (plugins) configurados para o envelope. |
envelopeBatchId
|
string | Não | Identificador do envelope em lote, quando aplicável. |
notificationTemplateId
|
string | Não | Template de notificação personalizado. |
draft
|
boolean | Não | Padrão: true. Quando true, cria o envelope como rascunho. Caso não seja informado, o envelope será criado como rascunho. |
Exemplo:
{
"configuration": {
"name": "Contrato de Prestação de Serviços",
"daysToExpire": 30,
"askGeolocation": "DONT_ASK_LOCATION",
"instructionsToSigner": "Por favor, leia atentamente antes de assinar.",
"mandatoryView": true,
"notificateAuthor": true,
"recurrentNotificationIntervalDays": 7
},
"signers": [
{
"name": "Maria Silva",
"email": "maria.silva@empresa.com",
"signerType": "MANDATORY",
"signerSubtype": "SIGN",
"orderSign": 1,
"communicationChannel": {
"email": true,
"platform": true
}
},
{
"name": "João Souza",
"email": "joao.souza@empresa.com",
"signerType": "MANDATORY",
"signerSubtype": "SIGN_ATTESTANT",
"orderSign": 2
}
],
"documentsVersions": [
{
"documentVersionId": "01cfdf64-b8ca-4a59-a318-5ad84710072e",
"envelopePosition": 1,
"documentVersionUrl": "https://ged.exemplo.com/documents/01cfdf64",
"originalFileName": "contrato-servicos.pdf"
}
],
"draft": true
}
Resposta
{
"envelopeId": "772832cf-6922-4670-8bd3-56f3f1dca92d"
}
Multijurisdição ao Criar um Envelope
Caso o usuário possua a Multijurisdição habilitada, ao criar um envelope, é possível selecionar a qual jurisdição o mesmo pertencerá. É permitido apenas uma jurisdição por envelope:
Ao selecionar uma jurisdição, apenas contatos com aquela jurisdição serão exibidos. O mesmo vale para o cadastro do contato. Será possível cadastrar apenas contatos na jurisdição selecionada e com seus respectivos documentos:
Caso seja criado via API, deve ser feito um POST para a primitiva platform/sign/actions/newEnvelope com o parâmetro competence de acordo com o país da Multijurisdição selecionado.
- O envelope em rascunho pode ser editado livremente antes do envio.
- Não há disparo de notificações para signatários enquanto o envelope estiver em rascunho.
Limitações
- Um envelope em rascunho não inicia o fluxo de assinatura.
- Documentos devem estar previamente carregados no GED.
3.2 Criar e Enviar Envelope Diretamente para Assinatura
Permite criar e enviar o envelope para assinatura em uma única chamada, sem a etapa intermediária de rascunho.
Ao definir o parâmetro draft como false, o envelope é criado e enviado imediatamente para assinatura. Não é necessário informar o campo id. Basta enviar draft: false para que envelope seja criado e enviado diretamente. Os signatários são notificados conforme os canais de comunicação configurados, e o processo de assinatura é iniciado automaticamente.
URL
| endpoint |
|
|---|---|
| header obrigatório |
|
Exemplo:
{
"configuration": {
"name": "Termo de Aceite - Projeto Alpha",
"daysToExpire": 15,
"askGeolocation": "ASK_LOCATION",
"recurrentNotificationIntervalDays": 3,
"notificateAuthor": true
},
"signers": [
{
"name": "Ana Costa",
"email": "ana.costa@parceiro.com",
"signerType": "MANDATORY",
"signerSubtype": "SIGN",
"communicationChannel": {
"email": true
}
}
],
"documentsVersions": [
{
"documentVersionId": "5ad8d55e-4a5c-4fb7-882e-ae500bca88df",
"envelopePosition": 1,
"documentVersionUrl": "https://ged.exemplo.com/documents/5ad8d55e",
"originalFileName": "termo-aceite.pdf"
}
],
"draft": false
}
- Todos os dados obrigatórios (signatários, documentos, configurações) devem estar completos na requisição, pois não haverá etapa de edição posterior.
- As notificações são disparadas imediatamente aos signatários, conforme os canais configurados (e-mail, platform, whatsapp, sms).
- A ordem de assinatura é respeitada conforme o campo
orderSignde cada signatário.
Limitações
- Após o envio direto, o envelope não pode mais ser editado livremente — apenas via
editEnvelope(versão 2), que permite operações limitadas (adicionar/remover signatários, documentos e permissões). - Documentos devem estar previamente carregados noGED.
3.3 Editar Envelope - editEnvelope
Permite editar um envelope que já foi enviado para assinatura.
A edição de envelopes na versão 2 permite adicionar ou remover signatários, documentos e permissões de um envelope já enviado para assinatura. Também é possível ajustar o prazo de expiração e os conectores.
URL
| endpoint |
|
|---|---|
| header obrigatório |
|
Parâmetros
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id
|
string | Sim | Identificador do envelope a ser editado. |
daysToExpire
|
integer | Não | Prazo de expiração (entre 1 e 240 dias, o padrão é 120 dias). |
signersToAdd
|
signer[] | Não | Signatários a serem adicionados. |
signersToRemove
|
string[] | Não | Identificadores de signatários a serem removidos. |
documentsToAdd
|
documentVersion[] | Não | Documentos a serem adicionados. |
documentsToRemove
|
string[] | Não | Identificadores de documentos a serem removidos. |
permissionsToAdd
|
permission[] | Não | Permissões a serem adicionadas. |
permissionsToRemove
|
string[] | Não | Identificadores de permissões a serem removidas. |
conectors
|
conector[] | Não | Conectores do envelope. |
Exemplo:
{
"id": "772832cf-6922-4670-8bd3-56f3f1dca92d",
"daysToExpire": 60,
"signersToAdd": [
{
"name": "Carlos Lima",
"email": "carlos.lima@empresa.com",
"signerType": "MANDATORY",
"signerSubtype": "SIGN"
}
],
"signersToRemove": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890"]
}
- Somente envelopes já enviados para assinatura podem ser editados por este endpoint.
- Signatários que já assinaram não podem ser removidos.
- Caso algum signatário já tenha assinado, os documentos não poderão ser modificados.
3.4 Enviar Rascunho para Assinatura - newEnvelope
Quando um envelope é criado como rascunho ( draft: true), é necessário enviá-lo explicitamente para assinatura.
Para enviar um rascunho, basta chamar novamente o newEnvelope (versão 2) informando o id do envelope existente e definindo draft: false. Isso finaliza o rascunho e inicia o processo de assinatura.
URL
| endpoint |
|
|---|---|
| header obrigatório |
|
Exemplo:
{
"id": "772832cf-6922-4670-8bd3-56f3f1dca92d",
"configuration": {
"name": "Contrato de Prestação de Serviços"
},
"signers": [
{
"name": "Maria Silva",
"email": "maria.silva@empresa.com",
"signerType": "MANDATORY",
"signerSubtype": "SIGN"
}
],
"draft": false
}
- O campo
iddeve corresponder a um envelope existente com status DRAFT. - Ao definir
draft: false, o envelope é enviado para assinatura e os signatários são notificados. - Todos os dados obrigatórios devem estar preenchidos no momento do envio.
3.5 Upload de Documentos via GED
Os documentos devem estar previamente armazenados no GED antes de serem incluídos em um envelope.
O fluxo para vincular documentos do GED ao envelope envolve:
- Fazer upload do documento no GED, obtendo o
documentId. - Recuperar a versão do documento (
documentVersionId) a partir dodocumentId. - Incluir o
documentVersionIdno campodocumentsVersionsda requisição de criação do envelope.
Estrutura do objeto documentVersion
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| documentVersionId | string |
Sim |
Identificador da versão do documento no GED |
| envelopePosition | integer | Sim | Define a posição/ordem do documento dentro do envelope (mínimo: 1) |
| documentVersionUrl | string |
Sim |
URL para download do documento. |
| originalFileName | string |
Não |
Nome original do arquivo. |
Como obter o parâmetro documentVersionUrl
O Parâmetro documentVersionUrl pode ser obtido através das primitivas requestDocumentVersionDownload e requestDocumentVersionDownload
requestDocumentVersionDownload:
- GET →
/ecm_ged/queries/requestDocumentVersionDownload
Os parâmetros são documentVersionUrl e preview (por padrão é true) e o retorno é o campo downloadUrl que corresponde ao parâmetro documentVersionUrl:
requestDocumentDownload:
- GET →
/ecm_ged/queries/requestDocumentDownload
Os parâmetros são documentId e preview (por padrão é true) e o retorno é o campo downloadUrl que corresponde ao parâmetro downloadVersionUrl:
Limitações
- Apenas documentos previamente armazenados no GED podem ser vinculados ao envelope.
- O sistema não realiza upload de documentos diretamente na criação do envelope.
3.6 Associação de Contatos aos Signatários
Permite vincular contatos previamente cadastrados na Agenda de Contatos do SIGN como signatários do envelope.
Ao criar um envelope, é possível informar o contactUserId de um contato cadastrado na Agenda de Contatos. Isso preenche automaticamente os dados do signatário (nome, e-mail, telefone, documento) com base no cadastro existente, evitando retrabalho e garantindo consistência de dados.
Pré-requisitos
Feature toggle:
flow/contact/new_contact_service— habilita o novo serviço de contatos.
Exemplo:
{
"signers": [
{
"contactUserId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"signerType": "MANDATORY",
"signerSubtype": "SIGN",
"orderSign": 1
}
]
}
Documentos Utilizados ao Assinar um Envelope:
Ao criar um contato seja na hora da criação do envelope ou anteriormente, é possível adicionar diversos documentos, mas apenas o primeiro da lista será o principal e utilizado na assinatura e para editar o próprio contato:
Os documentos adicionados podem ser arrastados, e o que está em primeiro ao salvar o contato, é o documento principal utilizado em todo o processo de assinatura e liberação da edição do contato.
Caso seja criado via API, deve realizar um POST para a primitiva flow/contact/actions/newContactUser com os parâmetros:
O documento com o campo active = true, é o documento principal. Só pode haver um documento com active = true por contato.
- O contactUserId deve corresponder a um contato válido e existente na Agenda de Contatos.
- Quando o contactUserId é informado, os dados do contato sobrescrevem todos os campos do signatário, independentemente de terem sido preenchidos manualmente. Os campos sobrescritos são:
namenome do contato cpfvalor do documento do contato documentValuevalor do documento do contato documentTypetipo do documento do contato birthdaydata de nascimento phoneNumbertelefone usernamelogin na plataforma emaile-mail do contato * Valores informados manualmente nesses campos serão ignorados quando
contactUserIdfor preenchido.* É possível combinar signatários com contato e signatários informados manualmente na mesma requisição.
* O usuário deve possuir permissão de cadastro de contatos para gerenciar a Agenda de Contatos.
4. Comparativo: Gestão Antiga vs. Nova Gestão
| Aspecto | Gestão Antiga | Nova Gestão de Envelopes |
|---|---|---|
| Serviço/API | ecm_ged (saveEnvelope + sendDraftToSign) |
sign (newEnvelope versão 2) |
| Versionamento | Sem header / versões 2 e 3 via saveEnvelope |
Header Accept: application/json;seniorx.version=2 |
| Criação de envelope | Sempre cria como rascunho (envelopeDraftId) |
Cria como rascunho (draft: true) ou envia direto (draft: false) |
| Envio para assinatura | Chamada separada: sendDraftToSign |
Mesmo endpoint: newEnvelope com draft: false |
| Edição de envelope | saveEnvelope com envelopeDraftId |
editEnvelope versão 2 (adicionar/remover signatários, documentos, permissões) |
| Exclusão de rascunho | DELETE envelopeDraft/{id}
|
Via interface da Nova Gestão |
| Envio direto (sem rascunho) | Não disponível (obrigatório criar rascunho primeiro) | Disponível com draft: false |
| Associação de contatos | Manual (dados digitados a cada envelope) | Automática via contactUserId (dados sobrescritos do cadastro) |
| Template de notificação | Não suportado | Suportado via notificationTemplateId |
| Feature toggle | Nenhum | platform/sign/new_envelope_management
|
| Contatos (serviço) | Serviço legado | Novo serviço (flow/contact/new_contact_service) |
| Fluxo mínimo para envio | 2 chamadas (criar rascunho + enviar) | 1 chamada (draft: false) |
| Campos de documento | documentsVersionIds (lista de IDs) |
documentsVersions (objeto com posição, URL e nome original) |
| Recorrência de notificação | Versão 3 do saveEnvelope |
Nativo via recurrentNotificationIntervalDays |
| Ordenação de documentos | Versão 2 do saveEnvelope (envelopePosition) |
Nativo via envelopePosition no objeto documentVersion |
5. FAQ
newEnvelope?
A versão 2 (acessada via header Accept: application/json;seniorx.version=2) consolida criação e envio em um único endpoint com o parâmetro draft, permite envio direto sem rascunho, e oferece suporte a campos adicionais como notificationTemplateId e envelopeBatchId. A versão 1 foi deprecada em 12/09/2025.
Sim, o campo documentsVersions é opcional na criação do envelope. Documentos podem ser adicionados posteriormente via edição do rascunho.
Chame novamente o newEnvelope (versão 2) informando o id do rascunho existente e definindo draft: false. Para criar e enviar diretamente sem rascunho, basta informar draft: false sem necessidade de id.
Sim, utilize o endpoint editEnvelope (versão 2, com header Accept: application/json;seniorx.version=2). É possível adicionar ou remover signatários, documentos e permissões, e alterar o prazo de expiração. Signatários que já assinaram não podem ser removidos.
contactUserId junto com dados manuais do signatário?Os dados do contato cadastrado sobrescrevem todos os campos do signatário (nome, e-mail, CPF, documento, telefone, data de nascimento e login). Valores manuais informados nesses campos serão ignorados.
draft?O valor padrão é true, ou seja, o envelope será criado como rascunho.
Sim, configure os canais desejados no objeto communicationChannel de cada signatário (whatsapp: true, sms: true). Os canais devem estar habilitados no tenant.
6. Referência Técnica - Enumerações
- Tipos de Signatário (
signerType) - Subtipos de Signatário (
signerSubtype) - Geolocalização (
askGeolocation) - Jurisdição (
envelopeCompetence) - Certificado Digital (
digitalCertificateOption) - Status do Envelope (
envelopeStatus)
Tipos de Signatário (signerType)
| Valor | Descrição |
|---|---|
| MANDATORY | Assinatura obrigatória |
| RECEIVE_COPY | Recebe uma cópia ao final do processo |
| RECEIVE_COPY_BEFORE_SIGN | Receber uma cópia antes de assinar |
| PIONEER | Assinatura pioneira |
Subtipos de Signatário (signerSubtype)
| Valor | Descrição |
|---|---|
| SIGN | Assinar |
| SIGN_LEGAL_REPRESENTATIVE | Assinar como representante legal |
| SIGN_ATTESTANT | Assinar como testemunha |
| SIGN_VALIDATOR | Assinar como validador |
Geolocalização (askGeolocation)
| Valor | Descrição |
|---|---|
| DONT_ASK_LOCATION | Não solicitar localização |
| ASK_LOCATION | Solicitar localização (opcional) |
| REQUIRED_LOCATION | Localização obrigatória |
Jurisdição (envelopeCompetence)
| Valor | Descrição |
|---|---|
| BRASIL | Brasil |
| COLOMBIA | Colômbia |
Certificado Digital (digitalCertificateOption)
| Valor | Descrição |
|---|---|
| DISABLED | Desabilitado |
| OPTIONAL | Opcional |
| MANDATORY | Obrigatório |
Status do Envelope (envelopeStatus)
| Valor | Descrição |
|---|---|
| PENDING | Pendente |
| DRAFT | Rascunho |
| COMPLETED | Completo |
| CANCELED | Cancelado |
| EXPIRED | Expirado |
| PROCESSING | Em processamento |
| WAITING_DOCUMENTS | Aguardando envio dos documentos |
| FAILED_TO_LOAD | Falha ao enviar documentos |
| FAILED_TO_WRITE_PDF | Falha ao finalizar PDF |
- Utilize rascunhos para envelopes complexos: para envelopes com muitos signatários ou documentos, prefira criar como rascunho (
draft: true) e revisar antes do envio. - Cadastre signatários frequentes na Agenda de Contatos para agilizar a criação de envelopes, reduzir retrabalho e evitar erros de digitação nos dados dos destinatários.
- Defina prazos de expiração adequados: configure
daysToExpireconforme a urgência do documento. O padrão é 120 dias, mas documentos urgentes podem ter prazos menores. - Configure notificações recorrentes: utilize o campo
recurrentNotificationIntervalDayspara lembrar os signatários periodicamente sobre assinaturas pendentes. - Ordene os signatários quando necessário: utilize o campo
orderSignpara definir a sequência de assinaturas quando houver dependência entre os signatários. - Ative a visualização obrigatória: para documentos críticos, utilize
mandatoryView: truepara garantir que os signatários visualizem o documento antes de assinar. - Valide os documentos no GED antes de criar o envelope: certifique-se de que todos os
documentVersionIdsão válidos e os documentos são acessíveis.

English
Español


