adPluga

Erros

Erros e rate limits

Cada resposta de erro usa o mesmo envelope JSON para que o cliente possa decidir com base num código estável em vez de fazer parse de mensagens livres.

Envelope de erro

Os erros vêm sempre em application/json com status HTTP e um código estável. Localiza a mensagem para o utilizador final; nunca decidas com base nela.

{
  "error": {
    "code": "rate_limited",
    "message": "Too many requests",
    "details": { "retry_after": 12 }
  }
}

Códigos comuns

Estes são os códigos que vais ver com mais frequência em produção.

StatusCodeDescription
401unauthorizedCabeçalho Authorization em falta ou inválido.
403forbiddenAutenticado mas sem permissão para este recurso.
404not_foundRecurso inexistente ou removido.
422invalid_requestCorpo falhou validação. Vê o campo details.
429rate_limitedDemasiados pedidos. Aguarda e repete.
500internal_errorErro inesperado no servidor. Seguro repetir com backoff.

Rate limits

/v1/serve e /v1/track têm rate limits agressivos por chave SDK e por IP. Endpoints autenticados são limitados por sessão. Ao exceder o limite devolvemos 429 com Retry-After em segundos.