httpstatus

A simple service for generating HTTP status code responses, useful for testing how your scripts handle varying responses.

Usage

Add the status code you want to the URL:

https://httpstatus.deno.dev/200

The response will be:

HTTP/1.1 {status code} {status description}
Content-Type: text/plain or application/json

{status code} {status description}

JSON responses

Set the Accept header to application/json to get a JSON response.

Random responses

Use the /random/{range} endpoint to get a random status code from a set. Duplicate entries to increase their probability.

https://httpstatus.deno.dev/random/200,201,500-504

Sleep / delay

Add a sleep query parameter (milliseconds, max 5 minutes) or set the X-HttpStatus-Sleep header:

https://httpstatus.deno.dev/200?sleep=5000

Custom response headers

Send request headers with the X-HttpStatus-Response- prefix to have them included in the response. For example, X-HttpStatus-Response-Foo: Bar will add Foo: Bar to the response headers.

CORS

All endpoints allow all origins, headers, and HTTP methods.

Supported status codes

CodeDescription
101 Switching Protocols
200 OK
201 Created
202 Accepted
203 Non Authoritative Info
204 No Content
205 Reset Content
206 Partial Content
207 Multi Status
208 Already Reported
226 IM Used
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
305 Use Proxy
307 Temporary Redirect
308 Permanent Redirect
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Auth Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Content Too Large
414 URI Too Long
415 Unsupported Media Type
416 Range Not Satisfiable
417 Expectation Failed
418 I'm a teapot
421 Misdirected Request
422 Unprocessable Entity
423 Locked
424 Failed Dependency
425 Too Early
426 Upgrade Required
428 Precondition Required
429 Too Many Requests
431 Request Header Fields Too Large
451 Unavailable For Legal Reasons
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
506 Variant Also Negotiates
507 Insufficient Storage
508 Loop Detected
510 Not Extended
511 Network Authentication Required

Non-standard status codes

CodeDescription
306 Switch Proxy (non-standard status code)
419 CSRF Token Missing or Expired (non-standard status code)
420 Enhance Your Calm (non-standard status code)
440 Login Time-out (non-standard status code)
444 No Response (non-standard status code)
449 Retry With (non-standard status code)
450 Blocked by Windows Parental Controls (non-standard status code)
460 Client closed the connection with AWS Elastic Load Balancer (non-standard status code)
463 The load balancer received an X-Forwarded-For request header with more than 30 IP addresses (non-standard status code)
494 Request header too large (non-standard status code)
495 SSL Certificate Error (non-standard status code)
496 SSL Certificate Required (non-standard status code)
497 HTTP Request Sent to HTTPS Port (non-standard status code)
498 Invalid Token (Esri) (non-standard status code)
499 Client Closed Request (non-standard status code)
520 Web Server Returned an Unknown Error (non-standard status code)
521 Web Server Is Down (non-standard status code)
522 Connection Timed out (non-standard status code)
523 Origin Is Unreachable (non-standard status code)
524 A Timeout Occurred (non-standard status code)
525 SSL Handshake Failed (non-standard status code)
526 Invalid SSL Certificate (non-standard status code)
527 Railgun Error (non-standard status code)
530 Origin DNS Error (non-standard status code)
561 Unauthorized (AWS Elastic Load Balancer) (non-standard status code)