Erros
Os 53 códigos de erro da API: o que cada um quer dizer e como resolver.
Todo erro vem em application/problem+json (RFC 9457). Decida pelo code, nunca pelo texto: o texto muda com o Accept-Language e pode ser melhorado; o code não muda. O type é o endereço da página do erro.
{
"type": "https://imobyflow.com.br/desenvolvedores/erros/invalid-param",
"title": "Parâmetro inválido",
"status": 400,
"code": "invalid_param",
"requestId": "8c1f0a4e-2b7d-4c39-9e51-6a0d3f2b1c7e",
"invalidParams": [
{
"name": "address.neighborhoodSlug",
"reason": "not_in_catalog"
}
]
}Toque ou passe o mouse num campo para ver o que ele significa.
Problem
typestringobrigatório- Endereço da página deste erro, com a causa e o conserto.
titlestringobrigatório- O nome do erro, na língua do
Accept-Language. statusintegerobrigatório- O código HTTP.
codestringobrigatório- Código estável — é por ele que o seu sistema decide o que fazer.
requestIdstringobrigatório- Id da requisição. Mande junto quando falar com o suporte.
detailstring- Explicação do caso (quando houver).
invalidParamslista de objeto- Todos os problemas do pedido de uma vez — não só o primeiro.
invalidParams[].namestringobrigatório- O campo, com o caminho (
address.city,phones[0].number). invalidParams[].reasonstringobrigatório- O motivo, em código (
required,unknown_field,one_of…).
400Pedido inválido
- bad_requestRequisição recusada
- invalid_paramParâmetro inválido
- invalid_cursorCursor inválido — recomece a listagem sem ele
- invalid_bodyCorpo inválido — envie um objeto JSON
- invalid_idempotency_keyIdempotency-Key inválida (até 100 caracteres visíveis)
401Não autenticado
- unauthorizedChave ausente, inválida, revogada ou vencida
403Sem permissão
- access_not_activeA API desta conta não está ativa
- access_deniedAcesso negado
- IP_NOT_ALLOWEDEndereço de origem fora da lista da chave
- ACCOUNT_INACTIVEConta inativa
- NOT_REQUESTEDAPI não pedida para esta conta
- PENDINGPedido de acesso em análise
- INFO_REQUESTEDPedido de acesso aguardando informações
- DENIEDPedido de acesso recusado
- SUSPENDEDAcesso à API suspenso
- REVOKEDAcesso à API encerrado
- PLAN_NOT_ELIGIBLEPlano sem acesso à API
- SUBSCRIPTION_INACTIVEAssinatura em atraso
- PILOT_EXPIREDPeríodo de piloto encerrado
- scope_missingA chave não tem a permissão desta rota
- not_availableRecurso indisponível para este tipo de conta
- captacao_terms_requiredAceite pela API sem o termo específico aceito no painel
404Não encontrado
- route_not_foundRota não encontrada
- not_foundNão encontrado
405Método não aceito
- method_not_allowedMétodo não permitido nesta rota
409Conflito
- idempotency_in_progressUm pedido com esta Idempotency-Key ainda está em andamento
- concurrent_writeOutra gravação deste código está em andamento — tente de novo
- feed_sync_activeA sincronização automática do CRM está ligada nesta conta
- feed_not_configuredO link do feed do CRM não está configurado nesta conta
- plan_limit_reachedLimite de imóveis ativos do plano atingido
- property_in_trashImóvel na lixeira
- external_ref_existsJá existe um imóvel com este código
- shrink_guardTrava de encolhimento: exclusões demais em 24 horas
- lead_existsJá existe um cliente com este telefone ou e-mail
- lead_linked_to_other_refO cliente com este contato já tem outro código do CRM
- lead_in_trashCliente na lixeira
- captacao_not_activeA Captação não está ligada nesta conta
- offer_unavailableEste proprietário não está mais disponível para a sua conta
- captacao_insufficient_creditCrédito da Captação insuficiente
- webhook_limit_reachedLimite de webhooks da conta atingido
413Corpo grande demais
- payload_too_largeCorpo grande demais
422Não processável
- idempotency_key_reusedIdempotency-Key já usada com outro pedido
- invalid_propertyImóvel incompleto ou incoerente
- consent_requiredConsentimento do cliente não declarado
- webhook_url_refusedEndereço de webhook recusado
- request_refusedA plataforma recusou o pedido
429Limite excedido
- rate_limitedLimite de chamadas por segundo atingido
- monthly_quota_exceededCota do mês esgotada
500Erro interno
- authorizer_failureFalha temporária ao validar a chave
- internalErro interno
503Indisponível
- upstream_busyMuitas requisições ao mesmo tempo — tente de novo em instantes
- upstream_unavailableServiço temporariamente indisponível
504Tempo esgotado
- upstream_timeoutA consulta demorou demais — tente uma página menor