Docs
Operações

Consultar status

Retorna o status atual de uma operação e de cada assinante, com o progresso das assinaturas.

Mostra em que ponto a operação está. Em uma única chamada você recebe o status da operação, quantos assinantes já concluíram e a situação de cada participante.

Para reagir a mudanças, prefira os webhooks. Use esta consulta para exibir o andamento sob demanda ou para conferir o estado quando um webhook não chegou.

Endpoint

GET
/api/v2/operation/{operationId}/status
X-Api-Key<token>

Token de integracao. Envie no header X-Api-Key.

In: header

Path Parameters

operationId*integer
Formatint64

Header Parameters

Response Body

curl -X GET "https://example.com/api/v2/operation/0/status"
{
  "data": {
    "operation": {
      "name": "string",
      "status": "InProgress",
      "stage": "WaitingToSend",
      "createdAt": "2019-08-24T14:15:22Z",
      "expirationDate": "2019-08-24T14:15:22Z",
      "completedAt": "2019-08-24T14:15:22Z",
      "progressCurrent": 0,
      "progressTotal": 0
    },
    "members": [
      {
        "name": "string",
        "email": "string",
        "role": "string",
        "order": 0,
        "observer": true,
        "status": "Create",
        "stage": "WaitingToSend",
        "completedAt": "2019-08-24T14:15:22Z"
      }
    ]
  }
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}

Sem body. O operationId na URL é o ID da operação, o campo id retornado em Criar operação.

Exemplo

curl "https://api.forsign.digital/api/v2/operation/4821/status" \
  -H "X-Api-Key: $API_KEY"
const resp = await fetch(`https://api.forsign.digital/api/v2/operation/${operationId}/status`, {
  headers: { 'X-Api-Key': apiKey },
});
const { data } = await resp.json();
console.log(`${data.operation.progressCurrent}/${data.operation.progressTotal} assinaturas`);
var resp = await http.GetAsync($"/api/v2/operation/{operationId}/status");
resp.EnsureSuccessStatusCode();
var json = await resp.Content.ReadAsStringAsync();

Resposta de sucesso (200)

{
  "data": {
    "operation": {
      "name": "Contrato de prestação de serviços",
      "status": "InProgress",
      "stage": "Signature",
      "createdAt": "2026-09-22T14:03:11Z",
      "expirationDate": "2026-10-22T23:59:59Z",
      "completedAt": null,
      "progressCurrent": 1,
      "progressTotal": 2
    },
    "members": [
      {
        "name": "Maria Souza",
        "email": "[email protected]",
        "role": "Contratante",
        "order": 1,
        "observer": false,
        "status": "Completed",
        "stage": "Completed",
        "completedAt": "2026-09-22T15:40:02Z"
      },
      {
        "name": "João Lima",
        "email": "[email protected]",
        "role": "Contratado",
        "order": 2,
        "observer": false,
        "status": "InProgress",
        "stage": "Signature",
        "completedAt": null
      }
    ]
  }
}

Campos da operação

CampoTipoDescrição
namestringNome da operação.
statusstringStatus da operação. Veja os valores.
stagestringEtapa em que a operação está. Mesmos valores da etapa do assinante.
createdAtdatetimeData de criação.
expirationDatedatetime | nullData de vencimento, se houver.
completedAtdatetime | nullPreenchido apenas quando status é Completed.
progressCurrentintQuantos assinantes já concluíram.
progressTotalintTotal de assinantes. Observadores não entram na conta.

Campos de cada participante (members[])

CampoTipoDescrição
name / emailstringDados do participante.
rolestring | nullPapel informado na criação (ex.: Contratante).
orderintPosição na ordem de assinatura.
observerbooltrue = só observa, não assina.
statusstringCreate, InProgress, Completed ou Canceled.
stagestringEtapa do participante. Veja os valores.
completedAtdatetime | nullPreenchido apenas quando status é Completed.

Status da operação

ValorSignificado
InProgressEm andamento.
CompletedConcluída: todos assinaram e os PDFs finais foram gerados.
CanceledCancelada.
ExpiredVenceu antes de ser concluída.
OperationCreated, WaitingNotify, WaitingSignatures, WaitingForms, CheckingAttachmentsEstados intermediários do andamento. Trate como "em andamento".

Etapas

WaitingToSend, Sent, Authentication, Form, Attachments, Signature, Completed, Others.

Comportamento e gotchas

  • Enums vêm como texto ("Completed"), não como número.
  • Assinante cancelado continua na lista com status = Canceled. Filtre por status se só quiser os ativos.
  • A consulta não altera nada na operação e pode ser repetida à vontade.

Erros comuns

StatusCausaComo resolver
401API key ausente ou inválidaConfira o header X-Api-Key.
404Operação não encontradaConfira o id. A operação pode não existir na sua conta, ou a chave não tem acesso a ela.

Veja também

On this page