Início/Guias/Desenvolvedores
Desenvolvedores

Nenhum resultado ou erro API: como fazer a distinção?

Distingue resultado vazio, resposta parcial e erro na API ROOTE. Verifique coordenadas, filtros, cobertura e limites para mostrar a mensagem correta.

By ROOTE·7 min de leitura
Nenhum resultado ou erro API: como fazer a distinção?
Uma resposta vazia não é uma falha.

O essencial em poucos segundos

Comece pelo transporte HTTP, depois valide o conteúdo e o estado de negócio. Uma busca vazia não é uma falha; uma falha não prova ausência de serviços. Uma resposta parcial pode ser utilizada mantendo seus avisos.

Uma API sem resultados e uma API com erro exigem tratamentos diferentes. Uma busca bem-sucedida pode não retornar nenhum local dentro da área consultada. Uma falha de rede, limite atingido ou fonte indisponível impede, ao contrário, concluir a partir da busca.

Para ROOTE, verifique a resposta HTTP, em seguida o estado de negócio, a coleção esperada e a cobertura. Esse procedimento evita mostrar “nenhum banheiro” quando a chamada aos Serviços falhou ou “nenhuma parada” após um tempo limite ultrapassado.

Ler os três níveis de uma resposta

NívelA verificarConclusão possível
TransporteConexão, tempo e estado HTTPA requisição foi concluída?
ContratoJSON válido, versão e campos esperadosA resposta é utilizável?
Resultado de negóciostatus, coleções, coverage, avisos e metaO que sabemos dentro do perímetro solicitado?

Um código HTTP 200 não é suficiente para validar uma busca. A resposta pode indicar execução parcial ou estado de erro. Por outro lado, um 404 em uma rota não é forma normal de expressar uma coleção vazia: verifique a URL e o contrato.

Compreender success, empty, partial e error

StatusTratamento recomendado
successMostrar as entidades após validação e manter os limites
emptyIndicar que nenhum resultado foi retornado para essa busca
partialMostrar as informações utilizáveis com seus avisos
errorApresentar a busca como indisponível; não concluir que não há locais

A ausência de resultado refere-se a uma requisição e fontes conhecidas. Ela não prova que nenhum serviço exista fisicamente. Uma cobertura não exaustiva, um filtro restritivo ou um limite aplicado podem reduzir os resultados.

Uma árvore de decisão para sua interface

1. La requête a-t-elle abouti ?
   Non → indisponibilité réseau ou délai dépassé.
2. Le statut HTTP est-il acceptable selon le contrat ?
   Non → traiter le code et le message d'erreur.
3. Le JSON respecte-t-il le schéma attendu ?
   Non → réponse inexploitable, jamais "aucun résultat".
4. Le statut métier est-il error ?
   Oui → recherche indisponible.
5. Le statut est-il partial ou la couverture limitée ?
   Oui → résultats utilisables + avertissement.
6. La collection attendue est-elle vide ?
   Oui → aucun résultat retourné dans ce périmètre.
   Non → afficher les résultats et leurs limites.

Verificar parâmetros na ordem correta

Verifique primeiro latitude e longitude, sua ordem e a cidade obtida. Depois confira a unidade do raio e o vocabulário dos filtros. A API Services usa types=toilets; uma URL de mapa usa modes=toilets. Esses parâmetros pertencem a contratos diferentes.

Amplie depois uma só dimensão por vez: aumente o raio dentro dos limites da rota ou retire um filtro para teste explícito. Guarde o registro da requisição inicial. Se ampliar automaticamente, informe o novo perímetro ao usuário.

Construir uma busca API em torno de coordenadas GPS

Tratar uma fonte indisponível sem perder as outras

Uma resposta parcial pode conter locais de fontes que responderam enquanto outra falhou. Mantenha esses resultados, suas atribuições e o aviso pertinente. Não apresente a lista como exaustiva e não substitua campos faltantes por valores padrão enganosos.

Uma informação antiga armazenada em cache também pode ser útil se sua política permitir essa alternativa. Deve permanecer identificada como antiga. O horário da recepção da sua requisição não atualiza a observação original.

Adaptar mensagens e retomadas

SituaçãoMensagem a adaptar em sua interfaceAção
emptyNenhum resultado retornado nesta área com esses filtrosModifique a área ou os filtros
partialAlguns resultados estão disponíveis; a busca está incompletaMostrar os resultados e o aviso
Erro de validaçãoA busca contém um parâmetro inválidoCorrigir a requisição
Autenticação ou direitosEste acesso não permite esta buscaVerificar a conta ou o token
Limite ou indisponibilidadeA busca está temporariamente indisponívelSeguir as instruções de retomada

Para um 429, consulte as instruções do serviço e o possível Retry-After. Um erro 400 requer correção dos argumentos; repetir a mesma requisição não resolve. Não transforme um 401 em chamada anônima automática se o usuário forneceu um token.

Referência de erros da API ROOTE

Estado dos serviços ROOTE

Testar os quatro estados antes de publicar

Prepare respostas de teste completas, vazias, parciais e com erro, assim como um JSON inválido e um tempo limite excedido. Verifique a mensagem exibida, os resultados mantidos e o número de tentativas. O teste essencial é que uma falha nunca produza uma afirmação de ausência de serviços.

Aplicar essas regras a um assistente IA

Compreender os formatos de dados de mobilidade

Para desenvolvedoresROOTE Mobility API

Mobilidade em torno de um ponto.
Diretamente na sua aplicação.

  • Procurar
    ao redor de uma posição
  • Aceder aos
    dados de mobilidade
  • Integrar em
    sua aplicação

Passe do mapa aos dados: pesquise mobilidades e serviços próximos com a API ROOTE.

Perguntas frequentes

Uma lista vazia prova a ausência de banheiros?

Não. Ela apenas indica que nenhum resultado foi retornado para essa busca e as fontes consultadas.

Pode-se mostrar uma resposta parcial?

Sim, se as entidades usadas forem válidas e se você mantiver os avisos e limites necessários.

Deve-se relançar cada erro?

Não. Corrija erros de parâmetros ou acesso; limite as tentativas para incidentes transitórios e respeite as instruções do serviço.

Que tal olhar ao seu redor?

Explore seu bairro com ROOTE e encontre informações disponíveis para preparar o seu deslocamento.

Explorar o mapa ROOTE ↗