Skip to main content

Formato do erro

Uma chamada recusada sempre devolve data: null e um ou mais itens em errors:
Use sempre errors[0].code na sua lógica de tratamento — é o único campo com valores estáveis. message existe para gente ler durante o desenvolvimento, nunca para decisão de código: seu conteúdo pode mudar sem aviso.

Códigos de erro

Todo endpoint documenta, na referência, exatamente quais destes códigos ele pode devolver — a lista acima é o catálogo completo e fechado; a API pública nunca introduz um código novo sem documentá-lo aqui primeiro.

Rate limit

O limite se aplica por chave, nunca por endereço de origem — uma integração com vários servidores compartilha a mesma cota. O padrão é 600 requisições por minuto por contratante (configurável pela Koolisys por contratante). Toda resposta de um endpoint de dados carrega os cabeçalhos: Monitore RateLimit-Remaining e reduza o ritmo antes de bater no limite, em vez de reagir só ao 429. Se a checagem de limite falhar internamente (degradação do contador), a resposta segue sem os cabeçalhos de limite, com X-RateLimit-Degraded: 1 — a chamada nunca é bloqueada por uma falha de infraestrutura do lado da Koolisys. POST /v1/auth/token tem seu próprio limite, mais restrito: 10 tentativas por minuto por chave e, separadamente, 10 por minuto por endereço de origem — ver Autenticação.

Cabeçalhos úteis para suporte

Toda resposta traz X-Request-Id (ou ecoa o que você enviar no mesmo cabeçalho). Inclua esse valor ao abrir um chamado com a Koolisys sobre uma chamada específica — ele identifica a requisição nos registros do lado do servidor sem precisar reenviar dados sensíveis.