Recherche de code de statut HTTP

Rechercher la signification des codes de statut HTTP hors ligne

Showing 62 of 62 status codes

1xx Informational

100
Continue
The server has received the request headers and the client should proceed to send the request body.
101
Switching Protocols
The requester has asked the server to switch protocols and the server has agreed to do so.
102
Processing
The server has received and is processing the request, but no response is available yet.
103
Early Hints
Used to return some response headers before final HTTP message.

2xx Success

200
OK
The request has succeeded. The meaning of the success depends on the HTTP method.
201
Created
The request has succeeded and a new resource has been created as a result.
202
Accepted
The request has been received but not yet acted upon. It is intended for cases where another process handles the request.
203
Non-Authoritative Information
The returned metadata is not exactly the same as is available from the origin server.
204
No Content
There is no content to send for this request, but the headers may be useful.
205
Reset Content
Tells the user agent to reset the document which sent this request.
206
Partial Content
This response code is used when the Range header is sent from the client to request only part of a resource.
207
Multi-Status
Conveys information about multiple resources, for situations where multiple status codes might be appropriate.
208
Already Reported
Used inside a DAV: propstat response element to avoid enumerating the internal members of multiple bindings.
226
IM Used
The server has fulfilled a GET request for the resource, and the response is a representation of the result.

3xx Redirection

300
Multiple Choices
The request has more than one possible response. The user agent or user should choose one of them.
301
Moved Permanently
The URL of the requested resource has been changed permanently. The new URL is given in the response.
302
Found
The URI of requested resource has been changed temporarily. Further changes in the URI might be made in the future.
303
See Other
The server sent this response to direct the client to get the requested resource at another URI with a GET request.
304
Not Modified
This is used for caching purposes. It tells the client that the response has not been modified.
305
Use Proxy
Deprecated. Was defined to indicate that a requested response must be accessed by a proxy.
307
Temporary Redirect
The server sends this response to direct the client to get the requested resource at another URI with same method.
308
Permanent Redirect
The resource is now permanently located at another URI, specified by the Location header.

4xx Client Error

400
Bad Request
The server cannot or will not process the request due to something that is perceived to be a client error.
401
Unauthorized
The client must authenticate itself to get the requested response.
402
Payment Required
Reserved for future use. Originally created for digital payment systems.
403
Forbidden
The client does not have access rights to the content; the server is refusing to give the requested resource.
404
Not Found
The server cannot find the requested resource. This can also mean the endpoint is valid but the resource does not exist.
405
Method Not Allowed
The request method is known by the server but is not supported by the target resource.
406
Not Acceptable
The server cannot produce a response matching the list of acceptable values defined in the request headers.
407
Proxy Authentication Required
Similar to 401 Unauthorized but authentication is needed to be done by a proxy.
408
Request Timeout
The server would like to shut down this unused connection.
409
Conflict
This response is sent when a request conflicts with the current state of the server.
410
Gone
The content has been permanently deleted from server, with no forwarding address.
411
Length Required
Server rejected the request because the Content-Length header field is not defined.
412
Precondition Failed
The client has indicated preconditions in its headers which the server does not meet.
413
Payload Too Large
Request entity is larger than limits defined by server.
414
URI Too Long
The URI requested by the client is longer than the server is willing to interpret.
415
Unsupported Media Type
The media format of the requested data is not supported by the server.
416
Range Not Satisfiable
The range specified by the Range header field in the request cannot be fulfilled.
417
Expectation Failed
The expectation indicated by the Expect request header field cannot be met by the server.
418
I'm a Teapot
The server refuses the attempt to brew coffee with a teapot. (RFC 2324)
421
Misdirected Request
The request was directed at a server that is not able to produce a response.
422
Unprocessable Entity
The request was well-formed but was unable to be followed due to semantic errors.
423
Locked
The resource that is being accessed is locked.
424
Failed Dependency
The request failed because it depended on another request and that request failed.
425
Too Early
Indicates that the server is unwilling to risk processing a request that might be replayed.
426
Upgrade Required
The server refuses to perform the request using the current protocol.
428
Precondition Required
The origin server requires the request to be conditional.
429
Too Many Requests
The user has sent too many requests in a given amount of time (rate limiting).
431
Request Header Fields Too Large
The server is unwilling to process the request because its header fields are too large.
451
Unavailable For Legal Reasons
The user agent requested a resource that cannot legally be provided.

5xx Server Error

500
Internal Server Error
The server has encountered a situation it does not know how to handle.
501
Not Implemented
The request method is not supported by the server and cannot be handled.
502
Bad Gateway
The server, while acting as a gateway, got an invalid response.
503
Service Unavailable
The server is not ready to handle the request. Common causes are maintenance or overload.
504
Gateway Timeout
The server is acting as a gateway and cannot get a response in time.
505
HTTP Version Not Supported
The HTTP version used in the request is not supported by the server.
506
Variant Also Negotiates
The server has an internal configuration error.
507
Insufficient Storage
The method could not be performed on the resource because the server is unable to store the representation.
508
Loop Detected
The server detected an infinite loop while processing the request.
510
Not Extended
Further extensions to the request are required for the server to fulfill it.
511
Network Authentication Required
The client needs to authenticate to gain network access.

Le référentiel des codes de statut HTTP offre un accès instantané aux explications détaillées de chaque code de réponse HTTP de 100 à 599, incluant les références RFC, les cas d'utilisation courants et les distinctions subtiles entre les codes fréquemment confondus. Saisissez un code comme 403 ou recherchez par mot-clé comme "redirect" pour obtenir le nom officiel, la signification et des recommandations pratiques pour son utilisation dans vos propres API.

Comprendre les codes de statut HTTP

Chaque réponse HTTP commence par un code de statut à trois chiffres qui indique au client ce qui s'est passé avec sa requête. Si vous avez déjà vu une page 404, reçu une erreur 500 d'une API, ou été silencieusement redirigé par un 301, vous avez rencontré les codes de statut en action. Ils sont la première chose que votre navigateur, client HTTP ou système de monitoring vérifie lorsqu'une réponse arrive, et choisir le bon code dans vos propres API est essentiel pour construire des systèmes qui se comportent de manière prévisible et sont faciles à déboguer.

Les codes de statut sont regroupés en cinq classes selon leur premier chiffre. Les codes 1xx sont informatifs -- le serveur accuse réception de la requête mais n'a pas fini de la traiter. Les codes 2xx indiquent le succès -- la requête a été reçue, comprise et traitée correctement. Les codes 3xx gèrent les redirections -- le client doit effectuer une action supplémentaire, généralement suivre une nouvelle URL. Les codes 4xx signalent des erreurs client -- la requête était malformée, non autorisée, ou pointait vers quelque chose qui n'existe pas. Et les codes 5xx indiquent des erreurs serveur -- le serveur a compris la requête mais n'a pas réussi à la traiter en raison d'un problème interne.

La difficulté ne réside pas dans le fait de savoir que 200 signifie succès ou que 404 signifie non trouvé -- ceux-là sont bien connus. La vraie complexité se trouve dans les distinctions subtiles. Devriez-vous utiliser 401 ou 403 quand un utilisateur n'a pas les permissions ? 301 ou 308 est-il la bonne redirection pour un endpoint POST qui a été déplacé ? Une recherche sans résultat devrait-elle retourner 200 avec un corps vide, 204, ou 404 ? Cet outil explique ces distinctions avec des recommandations pratiques pour que vous puissiez faire le bon choix selon votre cas d'utilisation spécifique.

Comment rechercher un code de statut HTTP

  1. Saisissez un numéro de code de statut (par ex. 404) ou recherchez par mot-clé (par ex. "redirect", "unauthorized").
  2. Consultez le nom officiel, la référence RFC et l'explication détaillée.
  3. Lisez les recommandations d'utilisation pour savoir quand retourner ce code dans votre propre API.

Référence rapide des codes de statut HTTP

Information (1xx)

CodeNomSignification
100ContinueLe serveur a reçu les en-têtes de la requête ; le client doit envoyer le corps
101Switching ProtocolsLe serveur bascule vers le protocole demandé via l'en-tête Upgrade (par ex. WebSocket)
103Early HintsLe serveur envoie des en-têtes préliminaires (par ex. Link pour le préchargement) avant la réponse finale

Succès (2xx)

CodeNomSignification
200OKRéponse standard de succès
201CreatedLa ressource a été créée avec succès (courant pour POST)
204No ContentSuccès, mais aucun corps à retourner (courant pour DELETE)
206Partial ContentLe serveur retourne une portion de la ressource (utilisé avec l'en-tête Range)

Redirection (3xx)

CodeNomSignification
301Moved PermanentlyLa ressource a une nouvelle URL permanente ; les moteurs de recherche mettent à jour leur index
302FoundRedirection temporaire ; historiquement ambiguë sur la conservation de la méthode
304Not ModifiedLa version en cache est toujours valide ; aucun corps retourné
307Temporary RedirectComme 302, mais garantit que la méthode HTTP n'est pas modifiée
308Permanent RedirectComme 301, mais garantit que la méthode HTTP n'est pas modifiée

Erreur client (4xx)

CodeNomSignification
400Bad RequestLe serveur ne peut pas traiter la requête en raison d'une syntaxe malformée
401UnauthorizedL'authentification est requise et a échoué ou n'est pas fournie
403ForbiddenLe serveur a compris la requête mais refuse de l'autoriser
404Not FoundLa ressource demandée n'existe pas
405Method Not AllowedLa méthode HTTP n'est pas supportée pour ce endpoint
409ConflictLa requête entre en conflit avec l'état actuel de la ressource
410GoneLa ressource existait mais a été supprimée définitivement
429Too Many RequestsLimite de débit dépassée

Erreur serveur (5xx)

CodeNomSignification
500Internal Server ErrorErreur générique côté serveur
502Bad GatewayLe serveur en amont a retourné une réponse invalide
503Service UnavailableLe serveur est temporairement surchargé ou en maintenance
504Gateway TimeoutLe serveur en amont n'a pas répondu dans les délais

Codes de statut fréquemment confondus

301 vs. 302 vs. 307 vs. 308

  • 301 Moved Permanently -- À utiliser lorsque l'URL d'une ressource a changé définitivement. Les navigateurs et moteurs de recherche peuvent transformer un POST en GET lors de la redirection.
  • 302 Found -- Redirection temporaire. Historiquement, les navigateurs transformaient POST en GET malgré la spécification qui l'interdisait. Ambigu en pratique.
  • 307 Temporary Redirect -- Comme 302, mais le navigateur doit conserver la méthode HTTP d'origine (POST reste POST).
  • 308 Permanent Redirect -- Comme 301, mais le navigateur doit conserver la méthode HTTP d'origine. À utiliser au lieu de 301 lors de la redirection de soumissions de formulaires.

401 vs. 403

  • 401 Unauthorized -- Le client n'a pas fourni d'identifiants d'authentification valides. La réponse doit inclure un en-tête WWW-Authenticate indiquant le schéma d'authentification attendu.
  • 403 Forbidden -- Le client est authentifié (ou l'authentification n'est pas requise), mais n'a pas la permission d'accéder à la ressource. Se ré-authentifier ne résoudra pas le problème.

404 vs. 410

  • 404 Not Found -- La ressource n'est pas disponible. Elle peut n'avoir jamais existé, ou peut exister dans le futur.
  • 410 Gone -- La ressource existait auparavant mais a été intentionnellement et définitivement supprimée. Les moteurs de recherche désindexent l'URL plus rapidement avec 410 qu'avec 404.

500 vs. 502 vs. 503 vs. 504

  • 500 -- Le serveur lui-même a rencontré une erreur lors du traitement de la requête (exception non gérée, bug).
  • 502 -- Un reverse proxy ou load balancer a reçu une réponse invalide d'un serveur en amont.
  • 503 -- Le serveur est temporairement dans l'incapacité de traiter les requêtes (surchargé, en maintenance). Inclut souvent un en-tête Retry-After.
  • 504 -- Un reverse proxy ou load balancer a expiré en attendant la réponse d'un serveur en amont.

Quand utiliser cet outil

  • Conception d'API RESTful -- Choisissez des codes de statut sémantiquement corrects pour chaque endpoint et condition d'erreur.
  • Débogage de réponses API -- Comprenez la signification d'un code de statut inconnu ou inattendu dans les logs serveur.
  • Gestion des redirections -- Déterminez s'il faut utiliser 301, 302, 307 ou 308 pour votre scénario de redirection spécifique.
  • Configuration des alertes de monitoring -- Mettez en place des alertes pour des codes de statut spécifiques en comprenant ce que chacun indique.
  • Optimisation SEO -- Utilisez les bons codes de redirection (301 vs 302) pour préserver le référencement lors des migrations d'URL.
  • Triage d'incidents -- Identifiez rapidement si une erreur 5xx provient de votre application (500) ou de l'infrastructure (502, 504).

Recommandations pratiques pour les codes de statut API

L'une des erreurs les plus courantes en conception d'API est de surexploiter 200 OK pour tout, y compris les erreurs. Certaines API retournent 200 avec un message d'erreur dans le corps, forçant le client à analyser la réponse pour déterminer si la requête a réellement réussi. Cela casse les outils HTTP standard, rend le monitoring peu fiable et désoriente les développeurs qui s'attendent à ce que les codes de statut HTTP reflètent le résultat réel. Utilisez 200 pour le succès, 4xx pour les erreurs client et 5xx pour les erreurs serveur -- c'est à cela que servent ces codes.

Une autre source fréquente de confusion est le choix entre 404 et des réponses de succès vides. Si un utilisateur recherche des produits et que la recherche ne retourne aucun résultat, la bonne réponse est 200 avec un tableau vide -- le endpoint de recherche existe, il a fonctionné, et il n'a rien trouvé. Si l'utilisateur demande un produit spécifique par ID et que ce produit n'existe pas, la bonne réponse est 404 -- la ressource demandée n'est pas là. La distinction est entre "j'ai fait ce que vous avez demandé et la réponse est rien" (200) versus "ce que vous cherchez n'existe pas" (404).

Pour les API qui servent à la fois des utilisateurs authentifiés et non authentifiés, faites attention aux informations que vous divulguez à travers les codes de statut. Répondre avec 403 à une requête non autorisée vers /admin/users confirme que le endpoint existe. Répondre avec 404 à la place ne révèle rien sur la structure de vos URL. La communauté sécurité appelle cela la "sécurité par l'obscurité" et cela a ses limites, mais c'est une mesure de défense en profondeur raisonnable pour les endpoints sensibles.

Questions fréquentes

Quels sont les codes de statut 5xx personnalisés de CloudFlare ?

CloudFlare utilise les codes 520 à 527 pour les problèmes entre ses serveurs edge et les serveurs d'origine. Par exemple, 520 signifie que l'origine a retourné une réponse inattendue, 521 signifie que le serveur web d'origine est hors service, 522 signifie que la connexion vers l'origine a expiré, et 524 signifie que l'origine a répondu mais a pris trop de temps.

Y a-t-il une différence entre "Unauthorized" et "Unauthenticated" ?

Techniquement, le code HTTP 401 devrait s'appeler "Unauthenticated" car il signifie que le client n'a pas prouvé son identité. Le nom "Unauthorized" est un abus de langage historique dans la spécification. La véritable erreur d'autorisation (vous êtes authentifié mais n'avez pas les droits) correspond au code 403 Forbidden.

Faut-il utiliser 404 ou 204 quand une recherche ne retourne aucun résultat ?

Utilisez 200 avec un ensemble de résultats vide. La ressource (le endpoint de recherche) existe et a répondu avec succès -- elle n'a simplement trouvé aucun élément correspondant. Réservez 404 aux cas où le endpoint lui-même n'existe pas.

Quand dois-je utiliser 429 Too Many Requests ?

Utilisez 429 lorsqu'un client a dépassé la limite de débit de votre API. Incluez un en-tête Retry-After indiquant combien de secondes le client doit attendre avant de réessayer. Ajoutez également les en-têtes X-RateLimit-Limit et X-RateLimit-Remaining pour que les clients puissent voir leur quota actuel sans atteindre la limite.

Quelle est la différence entre 502 et 504 dans une configuration reverse proxy ?

Un 502 Bad Gateway signifie que le proxy a reçu une réponse du serveur en amont, mais cette réponse était invalide ou malformée (par exemple, le serveur en amont a renvoyé des données corrompues ou a fermé la connexion en cours de réponse). Un 504 Gateway Timeout signifie que le proxy n'a jamais reçu de réponse -- le serveur en amont n'a pas répondu dans le délai configuré. Les deux indiquent des problèmes en amont, mais 504 suggère généralement que le serveur est surchargé ou injoignable, tandis que 502 suggère qu'il répond mais se comporte incorrectement.

Dois-je retourner 201 Created ou 200 OK après la création d'une ressource ?

Utilisez 201 Created pour les requêtes POST qui créent une nouvelle ressource. Incluez un en-tête Location pointant vers l'URL de la ressource nouvellement créée. Cela suit les conventions REST et aide les clients à localiser la nouvelle ressource sans analyser le corps de la réponse. Utilisez 200 pour les mises à jour de ressources existantes (PUT/PATCH).

Outils associés

  • HTTP Header Formatter - Analyser et formater les en-têtes de réponse HTTP qui accompagnent les codes de statut
  • CORS Header Explainer - Comprendre les erreurs CORS qui produisent des codes de statut spécifiques
  • MIME Type Lookup - Rechercher les en-têtes Content-Type retournés avec les réponses HTTP
  • Cookie Header Parser - Analyser les en-têtes Set-Cookie des réponses HTTP
  • curl Command Builder - Construire des commandes curl pour tester les endpoints et inspecter les codes de statut
IPparse•Outils de calcul réseau et sous-réseau gratuits

© 2026 IPparse. All tools run locally in your browser.

100% Privacy-First • No Data Collected