participant.role diz qual dos dois. Com a recusa, oDECLINED e não pode mais ser assinado. Visão geral dePARTICIPANT_DECLINED no campo events. Endpoints já cadastrados não passam aPOST /v4/api/envelopes/{envelopeId}/participants/{participantId}/decline.409 PARTICIPANT_ALREADY_DECLINED e não geraPARTICIPANT_DECLINED para o mesmo envelope: se,data.participant.id.{
"id": "f1e2d3c4-0000-4000-8000-000000000030",
"event": "PARTICIPANT_DECLINED",
"createdAt": "2026-10-01T15:00:02.000Z",
"data": {
"envelope": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"status": "DECLINED",
"occurredAt": "2026-10-01T15:00:00.000Z"
},
"participant": {
"id": "7a9e6679-7425-40de-944b-e07fc1f90ae7",
"name": "Pessoa Exemplo",
"email": "pessoa@example.com",
"role": "SIGNATORY"
},
"reason": "O valor da cláusula 4 está diferente do combinado."
}
}{
"id": "f1e2d3c4-0000-4000-8000-000000000031",
"event": "PARTICIPANT_DECLINED",
"createdAt": "2026-10-01T16:00:02.000Z",
"data": {
"envelope": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"status": "DECLINED",
"occurredAt": "2026-10-01T16:00:00.000Z"
},
"participant": {
"id": "0b1c2d3e-4f50-4a61-8b72-93a4b5c6d7e8",
"name": "Aprovadora Exemplo",
"email": "aprovadora@example.com",
"role": "APPROVER"
},
"reason": "Falta o anexo de garantias."
}
}data| Campo | Tipo | Descrição |
|---|---|---|
envelope.id | string (UUID) | Id do envelope. |
envelope.status | string | Sempre DECLINED: o status que a recusa gravou. |
envelope.occurredAt | string (ISO 8601, UTC) | Quando a recusa foi registrada. |
participant.id | string (UUID) | Id do participante no envelope, o mesmo do GET da API. |
participant.name | string ou null | Nome do participante no momento da recusa. |
participant.email | string ou null | E-mail do participante no momento da recusa. |
participant.role | string | SIGNATORY (signatário) ou APPROVER (aprovador). |
reason | string ou null | O motivo informado, inteiro, como foi escrito. É texto livre de uma pessoa: trate como dado pessoal. |
id, event, createdAt, environment) e os cabeçalhosdata.envelope.id + data.participant.id: a mesmareason em log de aplicação: é texto livre e pode conter dados