HTTP Status Codes

Pesquise qualquer código de status HTTP por número, nome ou descrição e entenda o significado de cada resposta, de 1xx informativos a 5xx erros de servidor.

  • 100Continue

    O servidor recebeu os cabeçalhos e o cliente pode enviar o corpo da requisição (usado com Expect: 100-continue).

  • 101Switching Protocols

    O servidor aceitou trocar de protocolo, como no upgrade de HTTP para WebSocket.

  • 103Early Hints

    Envia cabeçalhos Link antecipados para o navegador pré-carregar recursos enquanto a resposta final é preparada.

  • 200OK

    Requisição bem-sucedida. O significado do corpo depende do método (GET retorna o recurso, POST o resultado da ação).

  • 201Created

    Um novo recurso foi criado. O cabeçalho Location deve apontar para ele.

  • 202Accepted

    A requisição foi aceita para processamento assíncrono, mas ainda não concluída.

  • 204No Content

    Sucesso sem corpo de resposta. Comum em DELETE e PUT.

  • 206Partial Content

    Resposta a uma requisição com cabeçalho Range; usada em downloads retomáveis e streaming.

  • 301Moved Permanently

    O recurso mudou de URL permanentemente. Mecanismos de busca transferem a relevância para a nova URL.

  • 302Found

    Redirecionamento temporário. Navegadores podem trocar o método para GET.

  • 303See Other

    Redireciona para outro recurso via GET, tipicamente após um POST (padrão Post/Redirect/Get).

  • 304Not Modified

    O recurso não mudou desde a versão em cache (ETag/If-None-Match ou Last-Modified).

  • 307Temporary Redirect

    Redirecionamento temporário que preserva o método e o corpo da requisição.

  • 308Permanent Redirect

    Redirecionamento permanente que preserva o método e o corpo da requisição.

  • 400Bad Request

    A requisição é malformada: JSON inválido, parâmetros ausentes ou sintaxe incorreta.

  • 401Unauthorized

    Autenticação ausente ou inválida. A resposta deve incluir WWW-Authenticate.

  • 402Payment Required

    Reservado para uso futuro; algumas APIs usam para indicar cota ou pagamento pendente.

  • 403Forbidden

    O cliente está autenticado, mas não tem permissão para acessar o recurso.

  • 404Not Found

    O recurso não existe ou o servidor prefere não revelar sua existência.

  • 405Method Not Allowed

    O método HTTP não é suportado pelo recurso. O cabeçalho Allow lista os métodos válidos.

  • 406Not Acceptable

    O servidor não consegue produzir uma resposta compatível com os cabeçalhos Accept do cliente.

  • 408Request Timeout

    O servidor encerrou a conexão porque o cliente demorou demais para enviar a requisição.

  • 409Conflict

    Conflito com o estado atual do recurso, como edição concorrente ou registro duplicado.

  • 410Gone

    O recurso foi removido permanentemente e não há novo endereço.

  • 411Length Required

    O servidor exige o cabeçalho Content-Length.

  • 412Precondition Failed

    Uma pré-condição (If-Match, If-Unmodified-Since) não foi satisfeita; usado em controle otimista de concorrência.

  • 413Content Too Large

    O corpo da requisição excede o limite aceito pelo servidor.

  • 414URI Too Long

    A URL é maior do que o servidor aceita processar.

  • 415Unsupported Media Type

    O Content-Type enviado não é suportado pelo endpoint.

  • 416Range Not Satisfiable

    O intervalo pedido no cabeçalho Range está fora do tamanho do recurso.

  • 418I'm a teapot

    Código humorístico da RFC 2324; às vezes usado para recusar requisições automatizadas.

  • 422Unprocessable Content

    A sintaxe está correta, mas os dados falham na validação semântica.

  • 425Too Early

    O servidor não quer processar uma requisição que pode ser repetida (TLS early data).

  • 426Upgrade Required

    O cliente precisa trocar para outro protocolo, indicado no cabeçalho Upgrade.

  • 428Precondition Required

    O servidor exige requisições condicionais para evitar o problema de atualização perdida.

  • 429Too Many Requests

    Limite de taxa (rate limit) excedido. Retry-After indica quando tentar novamente.

  • 431Request Header Fields Too Large

    Os cabeçalhos são grandes demais, frequentemente por excesso de cookies.

  • 451Unavailable For Legal Reasons

    O recurso foi bloqueado por exigência legal.

  • 500Internal Server Error

    Erro genérico e inesperado no servidor. Verifique os logs da aplicação.

  • 501Not Implemented

    O servidor não suporta a funcionalidade necessária para atender à requisição.

  • 502Bad Gateway

    Um proxy ou gateway recebeu resposta inválida do servidor de origem.

  • 503Service Unavailable

    Servidor sobrecarregado ou em manutenção. Retry-After pode indicar a previsão de retorno.

  • 504Gateway Timeout

    Um proxy ou gateway não recebeu resposta do servidor de origem a tempo.

  • 505HTTP Version Not Supported

    A versão do protocolo HTTP usada na requisição não é suportada.

  • 507Insufficient Storage

    O servidor não tem espaço para armazenar a representação necessária (WebDAV).

  • 508Loop Detected

    O servidor detectou um loop infinito ao processar a requisição (WebDAV).

  • 511Network Authentication Required

    É preciso autenticar para obter acesso à rede, como em portais cativos de Wi-Fi.

Usar via API

Consulta um status HTTP ou lista todos os catalogados.

GEThttps://enhanced.dev.br/api/v1/web/http-status
Parâmetros da query string
QueryTipoDescrição
code100–599Código a consultar; omita para receber a lista completa.
lang"pt" | "en"Idioma das descrições. Padrão: "pt".

Exemplo de requisição

curl "https://enhanced.dev.br/api/v1/web/http-status?code=429"

Resposta

{
  "ok": true,
  "data": {
    "code": 429,
    "name": "Too Many Requests",
    "description": "Limite de taxa (rate limit) excedido. Retry-After indica quando tentar novamente."
  },
  "meta": {
    "version": "v1"
  }
}
  • Erros retornam { ok: false, error: { code, message } } com status HTTP 4xx/5xx.
  • Gratuita e sem chave de API. Limite de 120 requisições por minuto por IP.
  • CORS liberado: pode ser chamada direto do navegador em qualquer domínio.

Como usar

  1. Digite o código, o nome ou uma palavra-chave (ex.: timeout, redirect).
  2. Filtre por classe: 1xx, 2xx, 3xx, 4xx ou 5xx.
  3. Leia a descrição para entender quando o status deve ser usado.

Casos de uso

  • Escolher o status correto ao projetar respostas de uma API REST.
  • Interpretar erros em logs de servidor, CDN e balanceadores de carga.
  • Configurar redirecionamentos corretos para SEO (301 vs 302 vs 308).

Conceitos técnicos

Classes de status

O primeiro dígito define a classe: 1xx informativo, 2xx sucesso, 3xx redirecionamento, 4xx erro do cliente (a requisição precisa mudar) e 5xx erro do servidor (a requisição pode estar correta, mas o servidor falhou).

401 versus 403

401 Unauthorized significa que a autenticação está ausente ou inválida: o cliente deve se autenticar. 403 Forbidden significa que a identidade é conhecida, mas não tem permissão. Reautenticar não resolve um 403.

Redirecionamentos e SEO

301 e 308 são permanentes e transferem a relevância para a nova URL; 302 e 307 são temporários. 307 e 308 garantem que o método e o corpo sejam preservados, ao contrário de 301 e 302 em navegadores antigos.

Perguntas frequentes

Quando usar 400 e quando usar 422?

400 indica requisição malformada (sintaxe inválida, JSON quebrado). 422 indica sintaxe correta, mas dados que falham em regras de validação.

Qual status devolver para rate limit?

429 Too Many Requests, idealmente com o cabeçalho Retry-After indicando quando tentar novamente.

502, 503 e 504: qual a diferença?

502 indica resposta inválida do servidor de origem, 503 indica serviço indisponível ou sobrecarregado e 504 indica que o proxy esgotou o tempo esperando a origem.

Ferramentas relacionadas