tigtools

Códigos de status HTTP

Consulte qualquer código de status HTTP: o que significa, quando os servidores o enviam e qual especificação o define. Pesquise por número ou palavra-chave, filtre por classe e acesse diretamente um código por link.

Executado no seu navegador Sem cadastro

79 códigos exibidos

  • 100 Continue

    O servidor recebeu os cabeçalhos da solicitação, e o cliente pode enviar o corpo. Ocorre quando um cliente envia “Expect: 100-continue” antes de fazer upload de um corpo grande.

    Definido em RFC 9110

  • 101 Switching Protocols

    O servidor concorda em mudar para o protocolo solicitado pelo cliente no cabeçalho Upgrade. Ocorre quando uma conexão é atualizada para WebSocket.

    Definido em RFC 9110

  • 102 Processing

    Obsoleto ou não utilizado

    O servidor aceitou uma solicitação WebDAV, mas ainda não a concluiu. Esse código foi removido das especificações WebDAV posteriores e raramente é usado hoje.

    Definido em RFC 2518

  • 103 Early Hints

    Enviado antes da resposta final para que o navegador possa começar a pré-carregar os recursos listados nos cabeçalhos Link. Usado por CDNs e servidores para acelerar o carregamento das páginas.

    Definido em RFC 8297

  • 200 OK

    A solicitação foi concluída com sucesso, e a resposta contém o resultado. Esta é a resposta normal ao carregar uma página ou fazer uma chamada API com sucesso.

    Definido em RFC 9110

  • 201 Created

    A solicitação foi concluída com sucesso e criou um novo recurso, geralmente identificado pelo cabeçalho Location. É comum após um POST bem-sucedido que cria um registro.

    Definido em RFC 9110

  • 202 Accepted

    A solicitação foi aceita para processamento, mas ainda não foi concluída. Usado por APIs que colocam tarefas em fila, como exportações ou trabalhos em lote.

    Definido em RFC 9110

  • 203 Non-Authoritative Information

    A solicitação foi concluída com sucesso, mas um proxy de transformação modificou o conteúdo retornado pelo servidor de origem.

    Definido em RFC 9110

  • 204 No Content

    A solicitação foi concluída com sucesso e não há conteúdo para retornar. Comum em solicitações DELETE e ao salvar dados quando o cliente não precisa de um corpo de resposta.

    Definido em RFC 9110

  • 205 Reset Content

    A solicitação foi concluída com sucesso, e o cliente deve redefinir a exibição do documento, por exemplo, limpando um formulário. É raramente usado.

    Definido em RFC 9110

  • 206 Partial Content

    O servidor retorna apenas o intervalo de bytes solicitado pelo cliente. Ocorre durante a transmissão de vídeos, ao retomar downloads ou quando o cliente envia um cabeçalho Range.

    Definido em RFC 9110

  • 207 Multi-Status

    Uma resposta WebDAV que contém códigos de status separados para vários recursos em um corpo XML.

    Definido em RFC 4918

  • 208 Already Reported

    Usado dentro de uma resposta WebDAV 207 para evitar listar novamente os membros do mesmo recurso vinculado.

    Definido em RFC 5842

  • 226 IM Used

    O servidor aplicou manipulações de instância (como uma codificação delta) ao recurso atual. É muito raro.

    Definido em RFC 3229

  • 300 Multiple Choices

    O recurso tem várias representações, e o cliente deve escolher uma. É raramente usado na prática.

    Definido em RFC 9110

  • 301 Moved Permanently

    O recurso foi movido permanentemente para a URL indicada no cabeçalho Location. Navegadores e mecanismos de busca atualizam seus links; alguns clientes mudam POST para GET ao seguir o redirecionamento.

    Definido em RFC 9110

  • 302 Found

    O recurso está temporariamente em outra URL, indicada no cabeçalho Location. É comum após logins e em redirecionamentos de curto prazo; os navegadores geralmente o seguem com GET.

    Definido em RFC 9110

  • 303 See Other

    O cliente deve buscar o resultado em outra URL usando GET. Usado após um POST de formulário para redirecionar a uma página de confirmação (o padrão Post/Redirect/Get).

    Definido em RFC 9110

  • 304 Not Modified

    A cópia em cache ainda é válida, então o servidor não envia um corpo. Ocorre quando um navegador revalida um arquivo em cache com If-None-Match ou If-Modified-Since.

    Definido em RFC 9110

  • 305 Use Proxy

    Obsoleto ou não utilizado

    Solicitava que o cliente usasse um proxy indicado no cabeçalho Location. Foi descontinuado por motivos de segurança, e os navegadores o ignoram.

    Definido em RFC 9110

  • 306 (Unused)

    Obsoleto ou não utilizado

    Reservado. Foi usado em uma versão preliminar do HTTP/1.1 e não é mais utilizado.

    Definido em RFC 9110

  • 307 Temporary Redirect

    O recurso está temporariamente em outra URL, e o cliente deve repetir a solicitação com o mesmo método e corpo. Também é usado pelos navegadores para redirecionamentos internos de HSTS para HTTPS.

    Definido em RFC 9110

  • 308 Permanent Redirect

    O recurso foi movido permanentemente, e o cliente deve usar o mesmo método e corpo na nova URL. É a versão permanente do 307, segura para redirecionar solicitações POST.

    Definido em RFC 9110

  • 400 Bad Request

    O servidor não pode processar a solicitação porque ela está malformada, por exemplo, contém JSON inválido, um parâmetro de consulta incorreto ou um cookie corrompido.

    Definido em RFC 9110

  • 401 Unauthorized

    A solicitação não contém credenciais de autenticação válidas. Apesar do nome, significa “não autenticado”; o servidor envia um cabeçalho WWW-Authenticate que explica como fazer login.

    Definido em RFC 9110

  • 402 Payment Required

    Reservado para uso futuro na especificação HTTP. Algumas APIs e serviços de pagamento o usam quando é necessário pagar ou assinar um plano.

    Definido em RFC 9110

  • 403 Forbidden

    O servidor entendeu a solicitação, mas a recusa. Fazer login novamente não vai resolver. Pode ocorrer quando faltam permissões, a listagem de diretórios está desativada ou um firewall bloqueia o cliente.

    Definido em RFC 9110

  • 404 Not Found

    O servidor não consegue encontrar o recurso solicitado. Geralmente, isso acontece por causa de um link digitado incorretamente ou desatualizado, uma página excluída ou uma rota de API incorreta.

    Definido em RFC 9110

  • 405 Method Not Allowed

    O recurso existe, mas não aceita o método HTTP usado, como POST em uma URL somente para leitura. A resposta lista os métodos permitidos no cabeçalho Allow.

    Definido em RFC 9110

  • 406 Not Acceptable

    O servidor não consegue gerar uma resposta em nenhum dos formatos listados nos cabeçalhos Accept do cliente.

    Definido em RFC 9110

  • 407 Proxy Authentication Required

    Semelhante ao 401, mas o cliente precisa se autenticar primeiro em um proxy. Pode ocorrer em redes corporativas que usam proxy com autenticação.

    Definido em RFC 9110

  • 408 Request Timeout

    O servidor excedeu o tempo limite enquanto aguardava o envio completo da solicitação pelo cliente. Pode ocorrer em conexões lentas ou interrompidas.

    Definido em RFC 9110

  • 409 Conflict

    A solicitação entra em conflito com o estado atual do recurso, como em um conflito de edição ou ao tentar criar algo que já existe.

    Definido em RFC 9110

  • 410 Gone

    O recurso foi removido permanentemente e não voltará. Ao contrário do 404, esse código informa aos mecanismos de busca que removam a URL mais rapidamente.

    Definido em RFC 9110

  • 411 Length Required

    O servidor exige um cabeçalho Content-Length, mas a solicitação não o incluiu.

    Definido em RFC 9110

  • 412 Precondition Failed

    Uma condição nos cabeçalhos da solicitação, como If-Match, não foi atendida. É usado para evitar que um recurso seja sobrescrito após ter sido alterado desde a última vez que o cliente o leu.

    Definido em RFC 9110

  • 413 Content Too Large

    O corpo da solicitação é maior do que o servidor aceita. Pode ocorrer ao enviar um arquivo que excede um limite, como o client_max_body_size do nginx.

    Definido em RFC 9110

  • 414 URI Too Long

    A URL é mais longa do que o servidor consegue processar. Geralmente, isso acontece quando um formulário envia dados demais usando GET ou quando um loop de redirecionamento continua acrescentando parâmetros.

    Definido em RFC 9110

  • 415 Unsupported Media Type

    O servidor não aceita o formato do corpo da solicitação, por exemplo, quando se envia XML a um endpoint que espera application/json.

    Definido em RFC 9110

  • 416 Range Not Satisfiable

    O intervalo de bytes solicitado no cabeçalho Range está fora do tamanho do recurso.

    Definido em RFC 9110

  • 417 Expectation Failed

    O servidor não consegue atender ao requisito do cabeçalho Expect do cliente.

    Definido em RFC 9110

  • 418 I'm a teapot

    Uma brincadeira de 1º de abril criada em 1998 para o Hyper Text Coffee Pot Control Protocol: um bule que se recusa a fazer café. O HTTP reserva esse código como não utilizado, mas alguns servidores o retornam como easter egg ou para rejeitar bots indesejados.

    Definido em RFC 2324 / RFC 9110 (Unused)

  • 419 Page Expired

    Não padrão

    Não é um código padrão. O Laravel o retorna quando o token CSRF de um formulário está ausente ou expirou, geralmente após o término de uma sessão.

    Definido em Laravel

  • 420 Enhance Your Calm

    Não padrão

    Não é um código padrão. A antiga API do Twitter o usava para limitar a taxa de solicitações; 429 é o código padrão para isso.

    Definido em Twitter API v1

  • 421 Misdirected Request

    A solicitação chegou a um servidor que não consegue gerar uma resposta para esse host, por exemplo, quando uma conexão HTTP/2 é reutilizada para outro domínio.

    Definido em RFC 9110

  • 422 Unprocessable Content

    A solicitação está bem formada, mas seu conteúdo é inválido, como um formulário que não passou pelas regras de validação. É amplamente usado por APIs para indicar erros de validação.

    Definido em RFC 9110

  • 423 Locked

    O recurso WebDAV está bloqueado e não pode ser alterado.

    Definido em RFC 4918

  • 424 Failed Dependency

    A solicitação WebDAV falhou porque outra ação da qual dependia também falhou.

    Definido em RFC 4918

  • 425 Too Early

    O servidor não processará uma solicitação que possa ser repetida, como uma enviada nos dados iniciais do TLS 1.3.

    Definido em RFC 8470

  • 426 Upgrade Required

    O servidor recusa a solicitação com o protocolo atual e informa o protocolo necessário no cabeçalho Upgrade.

    Definido em RFC 9110

  • 428 Precondition Required

    O servidor exige uma solicitação condicional (por exemplo, com If-Match) para evitar a perda de atualizações.

    Definido em RFC 6585

  • 429 Too Many Requests

    O cliente enviou solicitações demais em determinado período. APIs usam esse código para limitar a taxa de solicitações e muitas vezes incluem um cabeçalho Retry-After indicando quando tentar novamente.

    Definido em RFC 6585

  • 431 Request Header Fields Too Large

    Os cabeçalhos da solicitação são grandes demais, muitas vezes por causa de cookies em excesso ou muito grandes. Limpar os cookies do site geralmente resolve o problema.

    Definido em RFC 6585

  • 444 No Response

    Não padrão

    Não é um código padrão. O nginx o usa internamente para encerrar a conexão sem enviar uma resposta, geralmente para descartar tráfego indesejado; os clientes nunca o recebem de fato.

    Definido em nginx

  • 451 Unavailable For Legal Reasons

    O recurso está indisponível por motivos legais, como uma ordem judicial ou censura governamental. O número faz referência ao romance Fahrenheit 451.

    Definido em RFC 7725

  • 494 Request Header Too Large

    Não padrão

    Não é um código padrão. É uma variante do 431 própria do nginx, registrada quando os cabeçalhos da solicitação excedem os limites dos buffers.

    Definido em nginx

  • 495 SSL Certificate Error

    Não padrão

    Não é um código padrão. O nginx o retorna quando não consegue validar um certificado de cliente.

    Definido em nginx

  • 496 SSL Certificate Required

    Não padrão

    Não é um código padrão. O nginx o retorna quando um certificado de cliente obrigatório não foi fornecido.

    Definido em nginx

  • 497 HTTP Request Sent to HTTPS Port

    Não padrão

    Não é um código padrão. O nginx o retorna quando uma solicitação HTTP sem criptografia é enviada a uma porta configurada para HTTPS.

    Definido em nginx

  • 499 Client Closed Request

    Não padrão

    Não é um código padrão. O nginx o registra quando o cliente encerra a conexão antes de o servidor responder, por exemplo, quando alguém cancela uma página lenta ou ocorre um tempo limite no cliente.

    Definido em nginx

  • 500 Internal Server Error

    O servidor encontrou um erro inesperado e não conseguiu concluir a solicitação. É um erro genérico causado por um bug, uma falha ou uma configuração incorreta; os detalhes estão nos logs do servidor.

    Definido em RFC 9110

  • 501 Not Implemented

    O servidor não oferece suporte à funcionalidade necessária, como um método HTTP que não reconhece.

    Definido em RFC 9110

  • 502 Bad Gateway

    Um gateway ou proxy recebeu uma resposta inválida do servidor upstream. Isso é comum quando a aplicação por trás do nginx ou de um balanceador de carga falha ou está sendo reiniciada.

    Definido em RFC 9110

  • 503 Service Unavailable

    O servidor está temporariamente impossibilitado de atender à solicitação porque está sobrecarregado ou em manutenção. Um cabeçalho Retry-After pode informar quando tentar novamente.

    Definido em RFC 9110

  • 504 Gateway Timeout

    Um gateway ou proxy não recebeu uma resposta do servidor upstream a tempo. Ocorre quando uma solicitação ao backend demora demais, como uma consulta longa ao banco de dados.

    Definido em RFC 9110

  • 505 HTTP Version Not Supported

    O servidor não oferece suporte à versão do HTTP usada na solicitação.

    Definido em RFC 9110

  • 506 Variant Also Negotiates

    Erro de configuração na negociação de conteúdo do servidor: a variante escolhida também está configurada para negociar.

    Definido em RFC 2295

  • 507 Insufficient Storage

    O servidor não consegue armazenar o que é necessário para concluir a solicitação, por exemplo, quando um servidor WebDAV está com o disco cheio.

    Definido em RFC 4918

  • 508 Loop Detected

    O servidor interrompeu uma operação WebDAV ao detectar um loop infinito.

    Definido em RFC 5842

  • 509 Bandwidth Limit Exceeded

    Não padrão

    Não é um código padrão. Usado por alguns serviços de hospedagem compartilhada (módulos do Apache, cPanel) quando um site excede o limite de largura de banda.

    Definido em Apache / cPanel

  • 510 Not Extended

    Obsoleto ou não utilizado

    A solicitação precisa de extensões adicionais para ser atendida. Definido por uma especificação experimental que hoje é considerada histórica.

    Definido em RFC 2774

  • 511 Network Authentication Required

    O cliente precisa se autenticar para obter acesso à rede. Enviado por portais cativos de redes Wi-Fi de hotéis, aeroportos ou cafés antes do login.

    Definido em RFC 6585

  • 520 Web Server Returned an Unknown Error

    Não padrão

    Não é um código padrão. O Cloudflare o retorna quando o servidor de origem envia uma resposta vazia, desconhecida ou inesperada.

    Definido em Cloudflare

  • 521 Web Server Is Down

    Não padrão

    Não é um código padrão. O Cloudflare o retorna quando o servidor de origem recusa a conexão, geralmente porque o servidor web está fora do ar ou bloqueia os endereços IP do Cloudflare.

    Definido em Cloudflare

  • 522 Connection Timed Out

    Não padrão

    Não é um código padrão. O Cloudflare o retorna quando a conexão TCP com o servidor de origem expira.

    Definido em Cloudflare

  • 523 Origin Is Unreachable

    Não padrão

    Não é um código padrão. O Cloudflare o retorna quando não consegue acessar o servidor de origem, por exemplo, devido a um problema de DNS ou roteamento.

    Definido em Cloudflare

  • 524 A Timeout Occurred

    Não padrão

    Não é um código padrão. O Cloudflare o retorna quando se conecta à origem, mas não recebe uma resposta HTTP dentro do tempo limite (100 segundos por padrão).

    Definido em Cloudflare

  • 525 SSL Handshake Failed

    Não padrão

    Não é um código padrão. O Cloudflare o retorna quando o handshake SSL/TLS com o servidor de origem falha.

    Definido em Cloudflare

  • 526 Invalid SSL Certificate

    Não padrão

    Não é um código padrão. O Cloudflare o retorna quando o certificado SSL da origem é inválido e o modo Full (strict) SSL está ativado.

    Definido em Cloudflare

Como usar

  1. Digite um número de código (como 404 ou apenas 5 para todos os erros do servidor) ou uma palavra-chave, como “redirecionamento” ou “tempo limite”.
  2. Restrinja a lista com o filtro de classe: informacional, sucesso, redirecionamento, erro do cliente ou erro do servidor.
  3. Use “Copiar link” em qualquer código para compartilhar um link direto para ele, por exemplo, em um relatório de erro.

Como funciona

Toda resposta HTTP começa com um código de status de três dígitos. O primeiro dígito define a classe: respostas informativas 1xx, sucesso 2xx, redirecionamento 3xx, erros causados pela solicitação 4xx e erros no servidor 5xx. Clientes que não reconhecem um código específico o tratam como o código x00 da mesma classe; assim, um código 4xx desconhecido é tratado como 400.

Os códigos principais são definidos na RFC 9110 (Semântica HTTP, 2022), que substituiu a antiga RFC 7231. Outros vêm de extensões: WebDAV (RFC 4918), RFC 6585 para 428, 429, 431 e 511, RFC 7725 para 451 e RFC 8470 para 425. A RFC 9110 também mudou o nome de dois códigos: 413 agora é “Content Too Large” e 422, “Unprocessable Content”; você ainda pode encontrá-los com os nomes antigos “Payload Too Large” e “Unprocessable Entity”.

Alguns códigos encontrados em logs não são padrões. O nginx usa internamente os códigos 444 e 494–499 (499 indica que o cliente desistiu de esperar), e o Cloudflare retorna 520–526 quando não consegue obter uma resposta adequada do servidor de origem. Eles estão marcados como “Não padrão” na lista. As frases de motivo (como “Not Found”) são exibidas em inglês, conforme aparecem nas especificações; HTTP/2 e HTTP/3 enviam apenas o número.

Exemplos

301 ou 308 ao mudar um site de endereço

Ambos são permanentes. Use 301 para mudanças comuns de página; use 308 quando os clientes precisarem repetir solicitações POST ou PUT para a nova URL, pois alguns clientes transformam POST em GET após um 301.

401 ou 403

Uma API retorna 401 quando nenhum token é enviado ou quando o token expirou, então o cliente deve fazer login. Ela retorna 403 quando o token é válido, mas o usuário não tem permissão; nesse caso, fazer login novamente não adianta.

Como diagnosticar um 502 atrás do nginx

Um erro 502 Bad Gateway do nginx significa que a aplicação por trás dele não respondeu corretamente. Verifique se o processo do app está em execução e o que foi registrado no log; 504, por outro lado, significa que a resposta demorou demais.

Perguntas frequentes

Qual é a diferença entre 404 e 410?

404 significa que o servidor não consegue encontrar o recurso e não diz nada sobre o futuro. 410 indica que o recurso foi removido deliberadamente e não voltará, o que ajuda os mecanismos de busca a remover a URL mais rapidamente.

Um erro de validação deve retornar 400 ou 422?

Ambos são usados. 400 é adequado para solicitações que o servidor não consegue interpretar, como um JSON malformado. 422 é adequado para solicitações interpretadas corretamente, mas com valores inválidos, como um campo de e-mail sem @.

418 I'm a teapot é um código de status real?

Ele vem de uma RFC de 1º de abril de 1998. A RFC 9110 reserva o código 418 como não utilizado, para que não seja atribuído a outra finalidade. Alguns servidores o retornam como brincadeira, mas ele não tem significado padrão.

De onde vem o código 499?

499 é específico do nginx. Ele aparece nos registros do nginx quando o cliente fecha a conexão antes de o servidor enviar uma resposta. O cliente nunca recebe um 499; em geral, esse código indica respostas lentas ou tempos limite no lado do cliente.

Os mecanismos de busca tratam 302 como 301?

Um 302 indica um redirecionamento temporário, então, inicialmente, os mecanismos de busca costumam manter a URL original no índice. Se um 302 permanecer por muito tempo, o Google poderá tratá-lo como um redirecionamento permanente. Use 301 ou 308 para mudanças permanentes.

Privacidade

A lista faz parte da página. A pesquisa e a filtragem acontecem no seu navegador; seus termos de pesquisa não são enviados a lugar nenhum nem incluídos nas estatísticas.