Computação Jr.
CodeDex
Base de Conhecimento & Glossário · Code Júnior
Início / Consumo de APIs / Status Codes HTTP na prática
Básico

Status Codes HTTP na prática

Como interpretar códigos 2xx, 4xx e 5xx para saber se o erro está na sua requisição ou no servidor.

Lendo a resposta da API

Toda resposta HTTP vem acompanhada de um código numérico que resume o resultado da chamada:

2xx — Sucesso

  • 200 OK: requisição atendida com sucesso (ex.: GET https://pokeapi.co/api/v2/pokemon/pikachu).
  • 201 Created: novo recurso criado (comum após um POST).
  • 204 No Content: sucesso sem corpo de resposta (comum após um DELETE).

4xx — Erro do Cliente (revise o que você enviou)

  • 400 Bad Request: JSON malformado ou parâmetro inválido.
  • 401 Unauthorized: faltou autenticação ou o token expirou.
  • 403 Forbidden: você está autenticado, mas não tem permissão para acessar aquilo.
  • 404 Not Found: URL/endpoint errado ou registro não encontrado (ex.: buscar pokemon/missingno na PokéAPI).
  • 422 Unprocessable Entity: erro de validação (ex.: e-mail inválido ou campo obrigatório vazio).

5xx — Erro do Servidor

  • 500 Internal Server Error / 502 / 503: falha no servidor da API ou serviço temporariamente indisponível.
Exemplo Prático
javascript
async function buscarPokemon(nome) {
  const response = await fetch(`https://pokeapi.co/api/v2/pokemon/${nome}`);

  if (response.status === 404) {
    throw new Error(`Pokémon "${nome}" não encontrado (404).`);
  }

  if (!response.ok) {
    throw new Error(`Falha na API: status ${response.status}`);
  }

  return response.json();
}

Teste seus conhecimentos

Esta nota tem 2 perguntas para você praticar.

Ir para o Quiz desta Nota →