[API] Status das requisições


Imagine que você está enviando uma carta para um amigo. Quando você coloca a carta na caixa de correio, ela começa a ser processada pelo serviço postal. Se tudo der certo, ela chegará ao seu amigo e ele poderá lê-la.

Da mesma forma, quando você faz uma requisição de API, está pedindo para que um servidor lhe envie informações. O servidor processa a sua requisição e envia uma resposta de volta para você. Essa resposta tem um “status code”, que é como um selo na carta que indica se ela foi entregue com sucesso ou se houve algum problema.

Existem muitos códigos de status diferentes e a seguir você terá o detalhamento da maioria deles:

1xx (informativo):

Esses códigos indicam que a requisição foi recebida pelo servidor e o processamento continua.

  • 100 Continue: o servidor recebeu a solicitação e continua a processá-la.
  • 101 Switching Protocols: o servidor concorda em trocar protocolos solicitados pelo cliente.

2xx (sucesso):

Esses códigos indicam que a solicitação foi recebida, entendida e aceita com sucesso pelo servidor.

  • 200 OK: a requisição foi bem-sucedida.
  • 201 Created: a solicitação foi bem-sucedida e resultou na criação de um novo recurso.
  • 202 Accepted: a solicitação foi aceita para processamento, mas ainda não foi concluída.
  • 203 Non-Authoritative Information: a resposta foi recebida com sucesso, mas pode ser modificada pelo servidor.
  • 204 No Content: a solicitação foi bem-sucedida, mas não há conteúdo a ser enviado de volta.
  • 205 Reset Content: a solicitação foi bem-sucedida e o cliente deve redefinir a exibição do documento que enviou a solicitação.
  • 206 Partial Content: a solicitação foi bem-sucedida, mas apenas uma parte do recurso foi enviada de volta.

3xx (redirecionamento):

Esses códigos indicam que a solicitação precisa ser redirecionada para outro recurso.

  • 300 Multiple Choices: a solicitação tem várias respostas possíveis.
  • 301 Moved Permanently: o recurso solicitado foi movido permanentemente para outro local.
  • 302 Found: o recurso solicitado foi encontrado temporariamente em um local diferente.
  • 303 See Other: o servidor redireciona o cliente para outro recurso.
  • 304 Not Modified: o recurso solicitado não foi modificado desde a última vez que foi acessado.
  • 305 Use Proxy: o recurso só pode ser acessado por meio de um proxy.
  • 307 Temporary Redirect: o servidor redireciona o cliente para outro recurso temporariamente.

4xx (erro do cliente):

Esses códigos indicam que houve um erro na solicitação do cliente.

  • 400 Bad Request: a solicitação não pode ser processada devido a um erro no lado do cliente.
  • 401 Unauthorized: a solicitação não pode ser processada sem autenticação válida.
  • 402 Payment Required: a solicitação não pode ser processada sem um pagamento válido.
  • 403 Forbidden: o servidor entendeu a solicitação, mas se recusa a processá-la.
  • 404 Not Found: o servidor não pode encontrar o recurso solicitado.
  • 405 Method Not Allowed: o método de solicitação não é permitido para o recurso solicitado.
  • 406 Not Acceptable: o servidor não pode fornecer uma resposta que atenda aos critérios definidos pelo cliente.
  • 407 Proxy Authentication Required: o cliente deve primeiro se autenticar com o proxy.
  • 408 Request Timeout: o servidor encerrou a conexão devido à solicitação do cliente ter demorado demais.
  • 409 Conflict: a solicitação não pode ser concluída devido a um conflito com o estado atual do recurso.
  • 410 Gone: o recurso solicitado não está mais disponível.
  • 411 Length Required: a solicitação não pode ser processada sem o comprimento do conteúdo.
  • 412 Precondition Failed: a solicitação contém pré-condições que não são atendidas pelo servidor.
  • 413 Payload Too Large: a solicitação excede o tamanho máximo permitido pelo servidor.
  • 414 URI Too Long: a URI da solicitação é muito longa para o servidor processar.
  • 415 Unsupported Media Type: o tipo de mídia da solicitação não é suportado pelo servidor.
  • 416 Range Not Satisfiable: o intervalo especificado na solicitação não pode ser atendido pelo servidor.
  • 417 Expectation Failed: o servidor não pode atender às expectativas indicadas na solicitação.
  • 418 I’m a teapot: este código é usado quando o servidor é um bule de chá e não pode processar a solicitação.
  • 422 Unprocessable Entity: a solicitação foi bem formada, mas o servidor não pode processá-la devido a erros semânticos.
  • 429 Too Many Requests: o cliente enviou muitas solicitações em um determinado período de tempo.

5xx (erro do servidor):

Esses códigos indicam que houve um erro no servidor ao processar a solicitação.

  • 500 Internal Server Error: o servidor encontrou um erro interno inesperado.
  • 501 Not Implemented: o servidor não suporta a funcionalidade solicitada pelo cliente.
  • 502 Bad Gateway: o servidor atuando como gateway ou proxy recebeu uma resposta inválida do servidor upstream.
  • 503 Service Unavailable: o servidor está temporariamente indisponível devido a manutenção ou sobrecarga.
  • 504 Gateway Timeout: o servidor atuando como gateway ou proxy não recebeu uma resposta a tempo.
  • 505 HTTP Version Not Supported: o servidor não suporta a versão HTTP especificada na solicitação.

Se você gostou do conteúdo, convido a conhecer mais do meu trabalho no curso gratuito que preparei com exemplos de consultas GET e POST, além de todo conteúdo exclusivo que encontra no curso completo.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

© 2024 Direitos Reservados - Chora {API}. Desenvolvido por Augusto Mello

Fale conosco
1
Fale conosco
Olá,
Podemos te ajudar?