Por que usar webhooks
O processamento de um relatório GYRA+ é assíncrono — consultas externas como Serasa, SCR e certidões levam tempo. Em vez de consultarGET /report/:id repetidamente, configure um webhook para receber o resultado assim que estiver pronto.
Isso é a base de qualquer integração robusta com a GYRA+.
Como funciona
- Você cria o relatório com
POST /report - Recebe imediatamente o
reportIde o statusPENDING - A GYRA+ processa em background
- Quando concluído, envia um
POSTpara a URL do seu webhook com o resultado completo
Payload do webhook
Quando o relatório é concluído, a GYRA+ envia umPOST para sua URL com o seguinte payload:
| Campo | Tipo | Descrição |
|---|---|---|
reportId | string | ID do relatório na GYRA+ |
document | string | CPF ou CNPJ consultado |
type | string | CPF ou CNPJ |
status | string | Status geral: APPROVED, DENIED, ALERT |
policyStatus | string | Resultado da política de crédito |
score | number | Score final (0–1000) |
externalId | string | Identificador do seu sistema (se enviado no POST /report) |
Configurando um webhook
Crie o endpoint no seu sistema
O endpoint deve estar acessível publicamente e responder
HTTP 200 para confirmar o recebimento.Boas práticas
Responda 200 imediatamente
Responda 200 imediatamente
Seu endpoint de webhook deve responder
HTTP 200 o mais rápido possível — antes de qualquer processamento pesado. Processe o payload de forma assíncrona na sua fila interna.Use o externalId para rastrear
Use o externalId para rastrear
Ao criar o relatório, passe o
externalId com o identificador do seu sistema (ID do pedido, ID do cliente, etc.). O webhook retornará esse campo, facilitando o vínculo com sua base de dados.Valide o payload antes de processar
Valide o payload antes de processar
Verifique os campos
status e policyStatus antes de tomar qualquer ação no seu sistema. Um status: APPROVED com policyStatus: ALERT pode ter tratamento diferente.Tenha fallback com polling
Tenha fallback com polling
Em caso de indisponibilidade temporária do seu endpoint, implemente um fallback com
GET /report/:id para não perder resultados.Referência de eventos
| Evento | Descrição |
|---|---|
report.completed | Relatório concluído (aprovado, negado ou alerta) |
Mais eventos serão adicionados em versões futuras da API. Acompanhe o Changelog para novidades.

