Pular para o conteúdo

Erros de contato

Tabela de erros

HTTPerrorQuando
400invalid_contact_idcontact_id não bate com ^ct_[0-9a-f]{32}$
400invalid_cursorCursor opaco corrompido
402contact_quota_exceededRetornado pelo envio de mensagem (não pelos endpoints de contato) quando a cota de contatos distintos do ciclo do número já foi atingida
401not_authenticatedA chave de API está ausente, inválida ou revogada
403insufficient_scopeA chave de API não tem o escopo exigido pela rota: contacts:read para listagem, detalhe e foto; contacts:write para atualização (a resposta inclui required_scope)
404contact_not_foundO contato não existe, pertence a outra organização ou a outro número (o {ref} da rota)
404number_not_foundO {ref} da rota não corresponde a nenhum número da conta (vale para /contacts, /contacts/{id}, /contacts/quota e as demais sub-rotas)
400invalid_number_idO valor na URL começa com num_, mas não é um id de número válido.
404contact_picture_unavailableCaso raro: falha ao gerar a URL pré-assinada da foto. A ausência de foto (sem armazenamento, envio da foto falhou, contato sem foto) não retorna 404: veja Foto de perfil
422validation_errorUm parâmetro de consulta não passou na validação, por exemplo limit fora do intervalo de 1 a 200. A resposta traz details.errors com os campos rejeitados
429refresh_rate_limitedLimite de atualizações por minuto atingido
500internal_errorErro inesperado no servidor

Exemplo de resposta 402

Retornado quando você tenta falar pelo Turbo Notify com um contato que passaria a ser contado no ciclo atual (um contato novo ou um contato recorrente ainda não contado neste ciclo) e a cota de contatos distintos do ciclo já está esgotada.

Status HTTP: 402
{
  "error": "contact_quota_exceeded",
  "message": "Distinct-contacts quota exceeded for tier SOLO (100/100 this cycle)",
  "details": {
    "quota": 100,
    "used": 100,
    "resets_at": "2026-08-01T00:00:00Z",
    "tier": "SOLO"
  }
}

O que fazer: faça upgrade do plano. Ao contrário do 429, o 402 não tem Retry-After: repetir o envio não resolve. A cota só volta quando o ciclo de faturamento fecha (em resets_at) ou quando o plano muda.

Diferença entre 402 e 429

402 Payment Required429 Too Many Requests
SignificadoLimite do plano: faça upgradeLimite de velocidade: tente de novo depois
Cabeçalho—Retry-After: <segundos>
Quando voltaNo fim do ciclo de faturamento (resets_at) ou com upgradeEm segundos ou minutos
OrigemCota do cicloProteção contra rajadas

Veja também: Cota e uso.