api: YAML JSON TOON Database
version: 1.0.0
format: json
dataset:
  id: 3
  slug: http-status-codes-complete
  title: Complete HTTP Status Codes Reference
  description: "Complete reference of all HTTP status codes organized by class: 1xx informational, 2xx success, 3xx redirection, 4xx client error, 5xx server error."
  summary: The HTTP status codes most used in practice, grouped by class (informational, success, redirection, client error and server error) with the registered name and a one-line meaning, from 100 Continue and 200 OK to 418 and 511.
  use_when:
    - You need the exact name and meaning of a status code.
    - You are choosing a response code for an API.
  caveats:
    - Some names changed over time (for example 413 is now Content Too Large and 422 Unprocessable Content); registered names are in the IANA registry.
    - Codes such as 418 are defined for humor or for specific protocols and are not meant for production use.
  related:
    - http-methods-reference
    - http-client-error-guide
    - http-server-error-guide
    - http-redirect-status-codes
  category: HTTP Status Codes
  category_slug: http-status-codes
  tags: http,web,reference,status codes
  view_count: 0
  created_at: 1777673262
  updated_at: 1777673262
  entry_count: 45
  fields:
    - section: codes
      field: code
      type: integer
      example: "200"
    - section: codes
      field: name
      type: string
      example: OK
    - section: codes
      field: class
      type: string
      example: Success
    - section: codes
      field: description
      type: string
      example: Request succeeded
data:
  codes:
    - code: 200
      name: OK
      class: Success
      description: Request succeeded
    - code: 201
      name: Created
      class: Success
      description: Resource created successfully
    - code: 204
      name: No Content
      class: Success
      description: Request succeeded, no content returned
    - code: 301
      name: Moved Permanently
      class: Redirection
      description: Resource permanently moved to new URL
    - code: 304
      name: Not Modified
      class: Redirection
      description: Cached version is still valid
    - code: 400
      name: Bad Request
      class: Client Error
      description: Malformed request syntax
    - code: 401
      name: Unauthorized
      class: Client Error
      description: Authentication required
    - code: 403
      name: Forbidden
      class: Client Error
      description: Server refuses to authorize
    - code: 404
      name: Not Found
      class: Client Error
      description: Resource not found
    - code: 429
      name: Too Many Requests
      class: Client Error
      description: Rate limit exceeded
    - code: 500
      name: Internal Server Error
      class: Server Error
      description: Unexpected server condition
    - code: 502
      name: Bad Gateway
      class: Server Error
      description: Invalid response from upstream
    - code: 503
      name: Service Unavailable
      class: Server Error
      description: Server temporarily overloaded
    - code: 100
      name: Continue
      class: Informational
      description: Initial part of the request received; the client should continue sending the body
    - code: 101
      name: Switching Protocols
      class: Informational
      description: Server agrees to switch protocols, for example to WebSocket
    - code: 103
      name: Early Hints
      class: Informational
      description: Preliminary headers, such as preload links, sent before the final response
    - code: 202
      name: Accepted
      class: Success
      description: Request accepted for processing but not yet completed
    - code: 206
      name: Partial Content
      class: Success
      description: Server is sending only part of the resource in response to a Range request
    - code: 207
      name: Multi-Status
      class: Success
      description: WebDAV response carrying separate status codes for several operations
    - code: 302
      name: Found
      class: Redirection
      description: Resource temporarily at a different URL
    - code: 303
      name: See Other
      class: Redirection
      description: Retrieve the result at another URL with GET, often after a POST
    - code: 307
      name: Temporary Redirect
      class: Redirection
      description: Temporary redirect that preserves the request method
    - code: 308
      name: Permanent Redirect
      class: Redirection
      description: Permanent redirect that preserves the request method
    - code: 405
      name: Method Not Allowed
      class: Client Error
      description: Method not supported for this resource; the Allow header lists valid methods
    - code: 406
      name: Not Acceptable
      class: Client Error
      description: No representation matches the Accept headers sent by the client
    - code: 408
      name: Request Timeout
      class: Client Error
      description: Server timed out waiting for the request
    - code: 409
      name: Conflict
      class: Client Error
      description: Request conflicts with the current state of the resource
    - code: 410
      name: Gone
      class: Client Error
      description: Resource was removed permanently and will not return
    - code: 412
      name: Precondition Failed
      class: Client Error
      description: A condition in the request headers, such as If-Match, was not met
    - code: 413
      name: Content Too Large
      class: Client Error
      description: Request body is larger than the server will accept
    - code: 414
      name: URI Too Long
      class: Client Error
      description: The request URI is longer than the server will process
    - code: 415
      name: Unsupported Media Type
      class: Client Error
      description: The request's Content-Type is not supported
    - code: 416
      name: Range Not Satisfiable
      class: Client Error
      description: The requested byte range cannot be served
    - code: 418
      name: I'm a teapot
      class: Client Error
      description: April Fools' joke code from RFC 2324; not for production use
    - code: 422
      name: Unprocessable Content
      class: Client Error
      description: Request is well-formed but contains semantic errors, often validation failures
    - code: 425
      name: Too Early
      class: Client Error
      description: Server is unwilling to process a request that might be replayed
    - code: 426
      name: Upgrade Required
      class: Client Error
      description: Client must switch to another protocol, indicated in the Upgrade header
    - code: 428
      name: Precondition Required
      class: Client Error
      description: Server requires the request to be conditional to avoid lost updates
    - code: 431
      name: Request Header Fields Too Large
      class: Client Error
      description: Headers are too large for the server to process
    - code: 451
      name: Unavailable For Legal Reasons
      class: Client Error
      description: Access denied because of a legal demand
    - code: 501
      name: Not Implemented
      class: Server Error
      description: Server does not support the functionality required to fulfill the request
    - code: 504
      name: Gateway Timeout
      class: Server Error
      description: A gateway or proxy did not get a timely response from the upstream server
    - code: 505
      name: HTTP Version Not Supported
      class: Server Error
      description: The HTTP version used in the request is not supported
    - code: 507
      name: Insufficient Storage
      class: Server Error
      description: Server cannot store the representation needed to complete the request
    - code: 511
      name: Network Authentication Required
      class: Server Error
      description: Client must authenticate to gain network access, as on a captive portal
