Weesy Docs

Histórico de envios

Listar os webhooks enviados

GET https://apifiscal.weesy.com.br/v1/webhooks/eventos

Abrir na referência interativa

Todos os avisos que enviamos, com cada tentativa: quando, a resposta do seu sistema (código HTTP) e o tempo. Use para descobrir por que um aviso não chegou.

Parâmetros

NomeOndeTipoDescrição
cnpjEmitentequerystring

CNPJ da empresa. Obrigatório para integradores, que têm várias empresas.

tipoquerystring

Valores: nfse.recebida, nfse.autorizada, nfse.rejeitada, nfse.erro, nfse.cancelada, nfse.cancelamento_rejeitado, cte.autorizado, cte.rejeitado, cte.cancelado, cte.carta_correcao_registrada, cte.erro, mdfe.autorizado, mdfe.rejeitado, mdfe.cancelado, mdfe.encerrado, mdfe.erro, teste.

situacaoquerystring

Valores: pendente, entregue, esgotado.

dequerystring (date-time)
atequerystring (date-time)
limitequeryinteger
cursorquerystring

Para pegar a próxima página, repasse o paginacao.proximoCursor da resposta anterior.

Exemplo de chamada

cURL

curl --request GET \
  --url "https://apifiscal.weesy.com.br/v1/webhooks/eventos" \
  --header "Authorization: Bearer $WEESY_TOKEN"

Node.js

const resposta = await fetch("https://apifiscal.weesy.com.br/v1/webhooks/eventos", {
  method: "GET",
  headers: {
    Authorization: `Bearer ${process.env.WEESY_TOKEN}`,
  },
});
console.log(resposta.status, await resposta.text());

Python

import os

import requests

resposta = requests.get(
    "https://apifiscal.weesy.com.br/v1/webhooks/eventos",
    headers={"Authorization": f"Bearer {os.environ['WEESY_TOKEN']}"},
    timeout=30,
)
print(resposta.status_code, resposta.text)

PHP

<?php

$contexto = stream_context_create(["http" => [
    "method" => "GET",
    "header" => implode("\r\n", ["Authorization: Bearer " . getenv("WEESY_TOKEN")]),
    "ignore_errors" => true, // lê o corpo também nas respostas de erro
]]);
$resposta = file_get_contents("https://apifiscal.weesy.com.br/v1/webhooks/eventos", false, $contexto);
echo $http_response_header[0], PHP_EOL, $resposta, PHP_EOL;

C#

using System.Net.Http.Headers;

using var http = new HttpClient();
http.DefaultRequestHeaders.Authorization =
    new AuthenticationHeaderValue("Bearer", Environment.GetEnvironmentVariable("WEESY_TOKEN"));

using var resposta = await http.GetAsync("https://apifiscal.weesy.com.br/v1/webhooks/eventos");
Console.WriteLine($"{(int)resposta.StatusCode} {await resposta.Content.ReadAsStringAsync()}");

Respostas

Campos da resposta 200

CampoTipoDescrição
dados
obrigatório
array de object
dados[].id
obrigatório
string

Identificador do evento.

dados[].tipo
obrigatório
string

Tipo do evento registrado.

Valores: nfse.recebida, nfse.autorizada, nfse.rejeitada, nfse.erro, nfse.cancelada, nfse.cancelamento_rejeitado, cte.autorizado, cte.rejeitado, cte.cancelado, cte.carta_correcao_registrada, cte.erro, mdfe.autorizado, mdfe.rejeitado, mdfe.cancelado, mdfe.encerrado, mdfe.erro, teste.

dados[].situacao
obrigatório
string

Estado de entrega do evento.

ValorSignificado
pendenteAinda não chegou — vamos tentar de novo
entregueO seu sistema respondeu 2xx
esgotadoAs 7 tentativas falharam — reenvie quando quiser
dados[].tentativas
obrigatório
array de object

Tentativas de entrega registradas para o evento.

dados[].tentativas[].em
obrigatório
string (date-time)

Data e hora em UTC, terminada em Z (ex. 2026-10-26T12:27:34Z).

dados[].tentativas[].statusHttpinteger ou null
dados[].tentativas[].errostring ou null
dados[].tentativas[].duracaoMsinteger
paginacao
obrigatório
object

Como pegar a próxima página. Enquanto temMais for true, chame a mesma rota passando cursor=<proximoCursor>. A lista vem da atualização mais recente para a mais antiga, e o cursor vale por 24 horas. Registros criados enquanto você pagina não bagunçam as páginas: eles aparecem numa nova consulta.

paginacao.limite
obrigatório
integer

Quantos registros vêm por página (padrão 50, máximo 100).

paginacao.proximoCursorstring ou null

Código da próxima página. Repasse como veio, sem alterar — ele já leva os filtros. null quando acabou.

paginacao.temMais
obrigatório
boolean

true se ainda há mais páginas.

← Voltar ao início