Skip to main content
Todo erro da API da Niadra tem o mesmo formato e um código estável. O seu código decide pelo code, nunca pelo texto de detail, que pode mudar. Os códigos são versionados junto do OpenAPI da /v1: dentro de uma versão, um código nunca muda de sentido.

O documento de problema

Os erros respondem com Content-Type: application/problem+json, o formato da RFC 9457.
Uma rota que pede pessoa, como os vereditos de revisão, responde 403 forbidden a uma chave de fonte. Os tamanhos estão em Limites e convenções. No SDK de Python, code e request_id são propriedades de APIError, e problem traz o corpo já lido. No SDK de TypeScript, NiadraAPIError tem status, code, requestId e problem.

Erros dentro de um lote

POST /v1/batch responde 200 quando todos os itens entraram e 207 quando algum foi recusado; POST /v1/feedback e o webhook de sistema respondem do mesmo jeito. Os códigos de item são os do catálogo, mais too_large, para um item acima de 1 MB. Um item ruim nunca derruba o lote: os itens válidos são gravados e cada item recusado volta com a posição dele.
Duplicata não é erro: reenviar um lote depois de um tempo esgotado é seguro. Os SDKs registram no log os itens recusados, com o código, e os descartam, porque o mesmo item seria recusado de novo.

Novas tentativas

Os dois SDKs dão às leituras um tempo total curto e próprio, então uma nova tentativa nunca faz o agente esperar além dele. No modo padrão, uma leitura que falha resolve com um valor vazio ou com o último valor bom, e o agente segue sem a memória naquele turno.

Rastrear uma requisição

Mande um cabeçalho traceparent do W3C, e a Niadra continua o seu rastro; toda resposta traz request_id. Informe o request_id quando falar com a gente. Os erros dos SDKs expõem esse id como request_id em Python e requestId em TypeScript.

Próximos passos

Limites e convenções

idempotência, paginação, limites de taxa e tamanhos.

SDK de Python

as classes de exceção e o modo estrito.

SDK de TypeScript

as classes de erro e o Result.

Enviar um lote

as respostas 200 e 207 na referência da API.