Pular para o conteúdo

XSigner

Esta seção descreve como utilizar o XJUR Connect para enviar documentos para assinatura eletrônica no XSigner, a plataforma de assinatura nativa do Xjur, e acompanhar o ciclo de vida de cada envelope.

Ao receber uma requisição de criação de envelope, o XJUR Connect:

  1. Valida o payload (assunto, documentos, signatários e papéis).
  2. Armazena os documentos enviados em base64 (ou usa os já enviados por POST /xsigner/documentos).
  3. Resolve o papel de cada signatário (por id ou por nome).
  4. Cria o envelope no XSigner e dispara o e-mail com o link de assinatura para cada signatário.
  5. Devolve o envelope completo, com envelopeId, status, documentos e o link de assinatura de cada signatário.

Depois disso, a integração pode consultar o status, adicionar, alterar ou remover signatários, reenviar links, baixar o PDF assinado e cancelar o envelope.

stateDiagram-v2
  [*] --> AguardandoSignatarios: POST /xsigner/envelopes
  AguardandoSignatarios --> AguardandoSignatarios: signatário assina (restam pendentes)
  AguardandoSignatarios --> Assinado: último signatário assina
  AguardandoSignatarios --> Cancelado: POST /xsigner/envelopes/{id}/cancelar
  AguardandoSignatarios --> Cancelado: signatário recusa o documento
  Assinado --> [*]
  Cancelado --> [*]
StatusSignificado
AguardandoSignatariosLinks enviados; há ao menos um signatário pendente
AssinadoTodos assinaram; o PDF final está disponível em documentoAssinado
CanceladoEnvelope cancelado, pela integração ou pela recusa de um signatário (motivoCancelamento); os links deixam de funcionar
EmConfeccaoEstado transitório, não ocorre em envelopes criados pela integração
MétodoRotaDescrição
POST/xsigner/documentosFaz upload de um arquivo (multipart) e devolve o documentoId
POST/xsigner/envelopesCria o envelope (com arquivos em base64 ou documentoId) e envia os links de assinatura
GET/xsigner/envelopesLista envelopes com filtros e paginação
GET/xsigner/envelopes/{envelopeId}Consulta um envelope completo
POST/xsigner/envelopes/{envelopeId}/cancelarCancela um envelope em andamento
POST/xsigner/envelopes/{envelopeId}/signatariosAdiciona um signatário
PATCH/xsigner/envelopes/{envelopeId}/signatarios/{signatarioId}Altera nome, e-mail ou celular de um signatário pendente
DELETE/xsigner/envelopes/{envelopeId}/signatarios/{signatarioId}Remove um signatário
POST/xsigner/envelopes/{envelopeId}/signatarios/{signatarioId}/reenviar-linkReenvia o e-mail com o link de assinatura
GET/xsigner/envelopes/{envelopeId}/signatarios/{signatarioId}/linkObtém o link de assinatura
GET/xsigner/envelopes/{envelopeId}/documento-assinadoBaixa o PDF final assinado
GET/xsigner/envelopes/{envelopeId}/documentos/zipBaixa um ZIP com os documentos do envelope
GET/xsigner/papeis-signatarioLista os papéis de signatário do cliente
GET/xsigner/dominiosLista status e extensões aceitas
  • Token JWT de usuário de serviço obtido em POST /Autenticacao/AuthenticateUserService (veja Autenticação)
  • Subscription key (X-XJUR-SUBSCRIPTION-KEY)
  • Usuário de serviço habilitado para o XSigner pela equipe Xjur
Terminal window
curl -X POST https://apim-xjur-prd.xjur.com.br/connect/xsigner/envelopes \
-H "Authorization: Bearer <seu-token-jwt>" \
-H "X-XJUR-SUBSCRIPTION-KEY: <sua-chave>" \
-H "Content-Type: application/json" \
-d '{
"assunto": "Contrato de prestação de serviços para assinatura",
"mensagem": "Por favor, assine o contrato em anexo.",
"codigo": "PEDIDO-2026-000123",
"enviarPorOrdem": false,
"documentos": [
{ "nomeArquivo": "contrato.pdf", "conteudoBase64": "JVBERi0xLjQK..." }
],
"signatarios": [
{ "nome": "Maria Silva", "email": "maria.silva@email.com", "papel": "Contratante" },
{ "nome": "João Souza", "email": "joao.souza@email.com", "papel": "Testemunha" }
]
}'

Resposta de sucesso (201):

{
"envelopeId": 1532,
"hashEnvelope": "$2a$10$...",
"codigo": "PEDIDO-2026-000123",
"nomeDocumento": "contrato.pdf",
"plataforma": "xsigner",
"status": "AguardandoSignatarios",
"statusId": 2,
"enviarPorOrdem": false,
"dataCadastro": "2026-09-09T10:15:00",
"documentos": [
{ "envelopeDocumentoId": 2201, "documentoId": 98765, "ordem": 0, "url": "https://.../98765.pdf", "signatariosPermitidos": [] }
],
"signatarios": [
{
"signatarioId": 4101,
"nome": "Maria Silva",
"email": "maria.silva@email.com",
"ordem": 0,
"papelSignatarioId": 5,
"papel": "Contratante",
"status": "PendenteAssinatura",
"statusId": 1,
"dataCadastro": "2026-09-09T10:15:00",
"linkAssinatura": "https://app.xjur.com.br/xsigner?hashEnvelope=...&hashSignatario=..."
}
]
}