httpstat.us
This is a super simple service for generating different HTTP codes.
It's useful for testing how your own scripts deal with varying responses.
Just add the status code you want to the URL, like this: httpstat.us/200
We'll return a response like this:
HTTP/1.1 {status code} {status description}
Content-Type: text/plain or application/json
Content-Length: {something}
{any custom response headers}
{status code} {status description}
{list of any custom response headers we added}
To get a JSON response back, you need to ensure that the Accept header contains 'application/json'. Then we'll JSON encode the response and send the Content-Type header accordingly.
If you want a delay on the response add a query string of sleep (the time in ms, max 5 minutes*), like this:
httpstat.us/200?sleep=5000
*When using the hosted instance the timeout is actually 230 seconds, which is the max timeout allowed by an Azure App Service (see this thread post). If you host it yourself in IIS/IIS Express you won't have that limit.
Here are all the codes we support (and any special notes):
- 100
- Continue
- 101
- Switching Protocols
- 102
- Processing
- 103
- Early Hints
- 200
- OK
- 201
- Created
- 202
- Accepted
- 203
- Non-Authoritative Information
- 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
- 306
- Switch 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 Authentication Required
- 408
- Request Timeout
- 409
- Conflict
- 410
- Gone
- 411
- Length Required
- 412
- Precondition Failed
- 413
- Request Entity Too Large
- 414
- Request-URI Too Long
- 415
- Unsupported Media Type
- 416
- Requested Range Not Satisfiable
- 417
- Expectation Failed
- 418
- I'm a teapot
- 421
- Misdirected Request
- 422
- Unprocessable Entity
- 423
- Locked
- 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
- 520
- Web Server Returned an Unknown Error
- 521
- Web Server Is Down
- 522
- Connection Timed out
- 523
- Origin Is Unreachable
- 524
- A Timeout Occurred
- 525
- SSL Handshake Failed
- 526
- Invalid SSL Certificate
- 527
- Railgun Error
- 530
If you need to enable CORS, all endpoints have been configured to allow all origins, headers, and HTTP methods.
If you send any other three digit number that's not in that list, we'll return it too. Or, send us a pull request to add full support for a new code.
Enjoy!