Notas recebidas
Pedir uma busca agora
POST https://apifiscal.weesy.com.br/v1/destinados/sincronizacao
Abrir na referência interativaLiga a busca, se ainda não estiver ligada, e pede uma leitura na próxima execução da rotina, que roda a cada 5 minutos. previstaPara é uma estimativa: a leitura pode começar um pouco depois, e o histórico inteiro pode levar algumas horas na primeira vez.
Limite: um pedido aceito por empresa por hora. Antes disso, 429 limite_excedido com Retry-After (segundos). A busca exige o certificado A1 da empresa enviado à Weesy; certificado A3 não é atendido.
Exemplo de chamada
cURL
curl --request POST \
--url "https://apifiscal.weesy.com.br/v1/destinados/sincronizacao" \
--header "Authorization: Bearer $WEESY_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"cnpjEmitente": "21664333000195",
"modelo": "nfse"
}'Node.js
const resposta = await fetch("https://apifiscal.weesy.com.br/v1/destinados/sincronizacao", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.WEESY_TOKEN}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"cnpjEmitente": "21664333000195",
"modelo": "nfse"
}),
});
console.log(resposta.status, await resposta.text());Python
import os
import requests
resposta = requests.post(
"https://apifiscal.weesy.com.br/v1/destinados/sincronizacao",
headers={"Authorization": f"Bearer {os.environ['WEESY_TOKEN']}"},
json={
"cnpjEmitente": "21664333000195",
"modelo": "nfse",
},
timeout=30,
)
print(resposta.status_code, resposta.text)PHP
<?php
$corpo = <<<'JSON'
{
"cnpjEmitente": "21664333000195",
"modelo": "nfse"
}
JSON;
$contexto = stream_context_create(["http" => [
"method" => "POST",
"header" => implode("\r\n", ["Authorization: Bearer " . getenv("WEESY_TOKEN"), "Content-Type: application/json"]),
"content" => $corpo,
"ignore_errors" => true, // lê o corpo também nas respostas de erro
]]);
$resposta = file_get_contents("https://apifiscal.weesy.com.br/v1/destinados/sincronizacao", false, $contexto);
echo $http_response_header[0], PHP_EOL, $resposta, PHP_EOL;C#
using System.Net.Http.Headers;
using System.Text;
using var http = new HttpClient();
http.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Bearer", Environment.GetEnvironmentVariable("WEESY_TOKEN"));
var corpo = """
{
"cnpjEmitente": "21664333000195",
"modelo": "nfse"
}
""";
using var resposta = await http.PostAsync(
"https://apifiscal.weesy.com.br/v1/destinados/sincronizacao",
new StringContent(corpo, Encoding.UTF8, "application/json"));
Console.WriteLine($"{(int)resposta.StatusCode} {await resposta.Content.ReadAsStringAsync()}");Corpo da requisição
| Campo | Tipo | Descrição |
|---|---|---|
| cnpjEmitente | string | Obrigatório para o integrador; com o token de API, o da própria empresa. |
| modelo obrigatório | string | Valores: |
Exemplo
JSON
{
"cnpjEmitente": "21664333000195",
"modelo": "nfse"
}Respostas
- 202: Pedido aceito.
- 400: Algum dado está errado ou faltando. A lista erros diz qual campo e o que corrigir (code = validacao). (formato de erro)
- 401: Token ausente, errado ou revogado (credencialinvalida). Confira o cabeçalho Authorization. (formato de erro)
- 404: Não encontrado. Pode ser que não exista ou que pertença a outra empresa — por segurança, os dois casos respondem igual. (formato de erro)
- 429: Muitas chamadas em pouco tempo (limiteexcedido). Espere os segundos de Retry-After e tente de novo. (formato de erro)
- 500: Erro do nosso lado (errointerno). Tente de novo; se continuar, mande o traceId para o suporte. (formato de erro)
Campos da resposta 202
| Campo | Tipo | Descrição |
|---|---|---|
| previstaPara obrigatório | string (date-time) | Data e hora em UTC, terminada em |