{"openapi":"3.0.0","servers":[{"url":"https://httpbin.org"}],"info":{"contact":{"email":"me@kennethreitz.org","url":"https://kennethreitz.org","x-responsibleDeveloper":"Kenneth Reitz","x-responsibleOrganization":"Kenneth Reitz"},"description":"A simple HTTP Request & Response Service.<br/> <br/> <b>Run locally: </b> <code>$ docker run -p 80:80 kennethreitz/httpbin</code>","title":"httpbin.org","version":"0.9.2","x-apisguru-categories":["developer_tools"],"x-origin":[{"format":"swagger","url":"http://httpbin.org/spec.json","version":"2.0"}],"x-providerName":"httpbin.org"},"tags":[{"description":"Testing different HTTP verbs","name":"HTTP Methods"},{"description":"Auth methods","name":"Auth"},{"description":"Generates responses with given status code","name":"Status codes"},{"description":"Inspect the request data","name":"Request inspection"},{"description":"Inspect the response data like caching and headers","name":"Response inspection"},{"description":"Returns responses in different data formats","name":"Response formats"},{"description":"Generates random and dynamic data","name":"Dynamic data"},{"description":"Creates, reads and deletes Cookies","name":"Cookies"},{"description":"Returns different image formats","name":"Images"},{"description":"Returns different redirect responses","name":"Redirects"},{"description":"Returns anything that is passed to request","name":"Anything"}],"paths":{"/absolute-redirect/{n}":{"get":{"parameters":[{"in":"path","name":"n","required":true,"schema":{"type":"integer"}}],"responses":{"302":{"description":"A redirection."}},"summary":"Absolutely 302 Redirects n times.","tags":["Redirects"],"operationId":"get_absolute-redirect_n"}},"/anything":{"delete":{"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"delete_anything"},"get":{"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"get_anything"},"patch":{"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"patch_anything"},"post":{"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"post_anything"},"put":{"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"put_anything"},"trace":{"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"trace_anything"}},"/anything/{anything}":{"delete":{"parameters":[{"description":"Automatically added","in":"path","name":"anything","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"delete_anything_anything"},"get":{"parameters":[{"description":"Automatically added","in":"path","name":"anything","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"get_anything_anything"},"patch":{"parameters":[{"description":"Automatically added","in":"path","name":"anything","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"patch_anything_anything"},"post":{"parameters":[{"description":"Automatically added","in":"path","name":"anything","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"post_anything_anything"},"put":{"parameters":[{"description":"Automatically added","in":"path","name":"anything","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"put_anything_anything"},"trace":{"parameters":[{"description":"Automatically added","in":"path","name":"anything","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Anything passed in request"}},"summary":"Returns anything passed in request data.","tags":["Anything"],"operationId":"trace_anything_anything"}},"/base64/{value}":{"get":{"parameters":[{"in":"path","name":"value","required":true,"schema":{"default":"SFRUUEJJTiBpcyBhd2Vzb21l","type":"string"}}],"responses":{"200":{"description":"Decoded base64 content."}},"summary":"Decodes base64url-encoded string.","tags":["Dynamic data"],"operationId":"get_base64_value"}},"/basic-auth/{user}/{passwd}":{"get":{"parameters":[{"in":"path","name":"user","required":true,"schema":{"type":"string"}},{"in":"path","name":"passwd","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Sucessful authentication."},"401":{"description":"Unsuccessful authentication."}},"summary":"Prompts the user for authorization using HTTP Basic Auth.","tags":["Auth"],"operationId":"get_basic-auth_user__passwd"}},"/bearer":{"get":{"parameters":[{"in":"header","name":"Authorization","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucessful authentication."},"401":{"description":"Unsuccessful authentication."}},"summary":"Prompts the user for authorization using bearer authentication.","tags":["Auth"],"operationId":"get_bearer"}},"/brotli":{"get":{"responses":{"200":{"description":"Brotli-encoded data."}},"summary":"Returns Brotli-encoded data.","tags":["Response formats"],"operationId":"get_brotli"}},"/bytes/{n}":{"get":{"parameters":[{"in":"path","name":"n","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"Bytes."}},"summary":"Returns n random bytes generated with given seed","tags":["Dynamic data"],"operationId":"get_bytes_n"}},"/cache":{"get":{"parameters":[{"in":"header","name":"If-Modified-Since","schema":{"type":"string"}},{"in":"header","name":"If-None-Match","schema":{"type":"string"}}],"responses":{"200":{"description":"Cached response"},"304":{"description":"Modified"}},"summary":"Returns a 304 if an If-Modified-Since header or If-None-Match is present. Returns the same as a GET otherwise.","tags":["Response inspection"],"operationId":"get_cache"}},"/cache/{value}":{"get":{"parameters":[{"in":"path","name":"value","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"Cache control set"}},"summary":"Sets a Cache-Control header for n seconds.","tags":["Response inspection"],"operationId":"get_cache_value"}},"/cookies":{"get":{"responses":{"200":{"description":"Set cookies."}},"summary":"Returns cookie data.","tags":["Cookies"],"operationId":"get_cookies"}},"/cookies/delete":{"get":{"parameters":[{"allowEmptyValue":true,"explode":true,"in":"query","name":"freeform","schema":{"additionalProperties":{"type":"string"},"type":"string"},"style":"form"}],"responses":{"200":{"description":"Redirect to cookie list"}},"summary":"Deletes cookie(s) as provided by the query string and redirects to cookie list.","tags":["Cookies"],"operationId":"get_cookies_delete"}},"/cookies/set":{"get":{"parameters":[{"allowEmptyValue":true,"explode":true,"in":"query","name":"freeform","schema":{"additionalProperties":{"type":"string"},"type":"string"},"style":"form"}],"responses":{"200":{"description":"Redirect to cookie list"}},"summary":"Sets cookie(s) as provided by the query string and redirects to cookie list.","tags":["Cookies"],"operationId":"get_cookies_set"}},"/cookies/set/{name}/{value}":{"get":{"parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string"}},{"in":"path","name":"value","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Set cookies and redirects to cookie list."}},"summary":"Sets a cookie and redirects to cookie list.","tags":["Cookies"],"operationId":"get_cookies_set_name__value"}},"/deflate":{"get":{"responses":{"200":{"description":"Defalte-encoded data."}},"summary":"Returns Deflate-encoded data.","tags":["Response formats"],"operationId":"get_deflate"}},"/delay/{delay}":{"delete":{"parameters":[{"in":"path","name":"delay","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"A delayed response."}},"summary":"Returns a delayed response (max of 10 seconds).","tags":["Dynamic data"],"operationId":"delete_delay_delay"},"get":{"parameters":[{"in":"path","name":"delay","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"A delayed response."}},"summary":"Returns a delayed response (max of 10 seconds).","tags":["Dynamic data"],"operationId":"get_delay_delay"},"patch":{"parameters":[{"in":"path","name":"delay","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"A delayed response."}},"summary":"Returns a delayed response (max of 10 seconds).","tags":["Dynamic data"],"operationId":"patch_delay_delay"},"post":{"parameters":[{"in":"path","name":"delay","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"A delayed response."}},"summary":"Returns a delayed response (max of 10 seconds).","tags":["Dynamic data"],"operationId":"post_delay_delay"},"put":{"parameters":[{"in":"path","name":"delay","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"A delayed response."}},"summary":"Returns a delayed response (max of 10 seconds).","tags":["Dynamic data"],"operationId":"put_delay_delay"},"trace":{"parameters":[{"in":"path","name":"delay","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"A delayed response."}},"summary":"Returns a delayed response (max of 10 seconds).","tags":["Dynamic data"],"operationId":"trace_delay_delay"}},"/delete":{"delete":{"responses":{"200":{"description":"The request's DELETE parameters."}},"summary":"The request's DELETE parameters.","tags":["HTTP Methods"],"operationId":"delete_delete"}},"/deny":{"get":{"responses":{"200":{"description":"Denied message"}},"summary":"Returns page denied by robots.txt rules.","tags":["Response formats"],"operationId":"get_deny"}},"/digest-auth/{qop}/{user}/{passwd}":{"get":{"parameters":[{"description":"auth or auth-int","in":"path","name":"qop","required":true,"schema":{"type":"string"}},{"in":"path","name":"user","required":true,"schema":{"type":"string"}},{"in":"path","name":"passwd","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Sucessful authentication."},"401":{"description":"Unsuccessful authentication."}},"summary":"Prompts the user for authorization using Digest Auth.","tags":["Auth"],"operationId":"get_digest-auth_qop__user__passwd"}},"/digest-auth/{qop}/{user}/{passwd}/{algorithm}":{"get":{"parameters":[{"description":"auth or auth-int","in":"path","name":"qop","required":true,"schema":{"type":"string"}},{"in":"path","name":"user","required":true,"schema":{"type":"string"}},{"in":"path","name":"passwd","required":true,"schema":{"type":"string"}},{"description":"MD5, SHA-256, SHA-512","in":"path","name":"algorithm","required":true,"schema":{"default":"MD5","type":"string"}}],"responses":{"200":{"description":"Sucessful authentication."},"401":{"description":"Unsuccessful authentication."}},"summary":"Prompts the user for authorization using Digest Auth + Algorithm.","tags":["Auth"],"operationId":"get_digest-auth_qop__user__passwd__algorithm"}},"/digest-auth/{qop}/{user}/{passwd}/{algorithm}/{stale_after}":{"get":{"description":"allow settings the stale_after argument.\n","parameters":[{"description":"auth or auth-int","in":"path","name":"qop","required":true,"schema":{"type":"string"}},{"in":"path","name":"user","required":true,"schema":{"type":"string"}},{"in":"path","name":"passwd","required":true,"schema":{"type":"string"}},{"description":"MD5, SHA-256, SHA-512","in":"path","name":"algorithm","required":true,"schema":{"default":"MD5","type":"string"}},{"in":"path","name":"stale_after","required":true,"schema":{"default":"never","type":"string"}}],"responses":{"200":{"description":"Sucessful authentication."},"401":{"description":"Unsuccessful authentication."}},"summary":"Prompts the user for authorization using Digest Auth + Algorithm.","tags":["Auth"],"operationId":"get_digest-auth_qop__user__passwd__algorithm__stale_after"}},"/drip":{"get":{"parameters":[{"description":"The amount of time (in seconds) over which to drip each byte","in":"query","name":"duration","required":false,"schema":{"default":2,"type":"number"}},{"description":"The number of bytes to respond with","in":"query","name":"numbytes","required":false,"schema":{"default":10,"type":"integer"}},{"description":"The response code that will be returned","in":"query","name":"code","required":false,"schema":{"default":200,"type":"integer"}},{"description":"The amount of time (in seconds) to delay before responding","in":"query","name":"delay","required":false,"schema":{"default":2,"type":"number"}}],"responses":{"200":{"description":"A dripped response."}},"summary":"Drips data over a duration after an optional initial delay.","tags":["Dynamic data"],"operationId":"get_drip"}},"/encoding/utf8":{"get":{"responses":{"200":{"description":"Encoded UTF-8 content."}},"summary":"Returns a UTF-8 encoded body.","tags":["Response formats"],"operationId":"get_encoding_utf8"}},"/etag/{etag}":{"get":{"parameters":[{"in":"header","name":"If-None-Match","schema":{"type":"string"}},{"in":"header","name":"If-Match","schema":{"type":"string"}},{"description":"Automatically added","in":"path","name":"etag","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Normal response"},"412":{"description":"match"}},"summary":"Assumes the resource has the given etag and responds to If-None-Match and If-Match headers appropriately.","tags":["Response inspection"],"operationId":"get_etag_etag"}},"/get":{"get":{"responses":{"200":{"description":"The request's query parameters."}},"summary":"The request's query parameters.","tags":["HTTP Methods"],"operationId":"get_get"}},"/gzip":{"get":{"responses":{"200":{"description":"GZip-encoded data."}},"summary":"Returns GZip-encoded data.","tags":["Response formats"],"operationId":"get_gzip"}},"/headers":{"get":{"responses":{"200":{"description":"The request's headers."}},"summary":"Return the incoming request's HTTP headers.","tags":["Request inspection"],"operationId":"get_headers"}},"/hidden-basic-auth/{user}/{passwd}":{"get":{"parameters":[{"in":"path","name":"user","required":true,"schema":{"type":"string"}},{"in":"path","name":"passwd","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Sucessful authentication."},"404":{"description":"Unsuccessful authentication."}},"summary":"Prompts the user for authorization using HTTP Basic Auth.","tags":["Auth"],"operationId":"get_hidden-basic-auth_user__passwd"}},"/html":{"get":{"responses":{"200":{"description":"An HTML page."}},"summary":"Returns a simple HTML document.","tags":["Response formats"],"operationId":"get_html"}},"/image":{"get":{"responses":{"200":{"description":"An image."}},"summary":"Returns a simple image of the type suggest by the Accept header.","tags":["Images"],"operationId":"get_image"}},"/image/jpeg":{"get":{"responses":{"200":{"description":"A JPEG image."}},"summary":"Returns a simple JPEG image.","tags":["Images"],"operationId":"get_image_jpeg"}},"/image/png":{"get":{"responses":{"200":{"description":"A PNG image."}},"summary":"Returns a simple PNG image.","tags":["Images"],"operationId":"get_image_png"}},"/image/svg":{"get":{"responses":{"200":{"description":"An SVG image."}},"summary":"Returns a simple SVG image.","tags":["Images"],"operationId":"get_image_svg"}},"/image/webp":{"get":{"responses":{"200":{"description":"A WEBP image."}},"summary":"Returns a simple WEBP image.","tags":["Images"],"operationId":"get_image_webp"}},"/ip":{"get":{"responses":{"200":{"description":"The Requester's IP Address."}},"summary":"Returns the requester's IP Address.","tags":["Request inspection"],"operationId":"get_ip"}},"/json":{"get":{"responses":{"200":{"description":"An JSON document."}},"summary":"Returns a simple JSON document.","tags":["Response formats"],"operationId":"get_json"}},"/links/{n}/{offset}":{"get":{"parameters":[{"in":"path","name":"n","required":true,"schema":{"type":"integer"}},{"in":"path","name":"offset","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"HTML links."}},"summary":"Generate a page containing n links to other pages which do the same.","tags":["Dynamic data"],"operationId":"get_links_n__offset"}},"/patch":{"patch":{"responses":{"200":{"description":"The request's PATCH parameters."}},"summary":"The request's PATCH parameters.","tags":["HTTP Methods"],"operationId":"patch_patch"}},"/post":{"post":{"responses":{"200":{"description":"The request's POST parameters."}},"summary":"The request's POST parameters.","tags":["HTTP Methods"],"operationId":"post_post"}},"/put":{"put":{"responses":{"200":{"description":"The request's PUT parameters."}},"summary":"The request's PUT parameters.","tags":["HTTP Methods"],"operationId":"put_put"}},"/range/{numbytes}":{"get":{"parameters":[{"in":"path","name":"numbytes","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"Bytes."}},"summary":"Streams n random bytes generated with given seed, at given chunk size per packet.","tags":["Dynamic data"],"operationId":"get_range_numbytes"}},"/redirect-to":{"delete":{"responses":{"302":{"description":"A redirection."}},"summary":"302/3XX Redirects to the given URL.","tags":["Redirects"],"operationId":"delete_redirect-to"},"get":{"parameters":[{"in":"query","name":"url","required":true,"schema":{"type":"string"}},{"in":"query","name":"status_code","schema":{"type":"integer"}}],"responses":{"302":{"description":"A redirection."}},"summary":"302/3XX Redirects to the given URL.","tags":["Redirects"],"operationId":"get_redirect-to"},"patch":{"responses":{"302":{"description":"A redirection."}},"summary":"302/3XX Redirects to the given URL.","tags":["Redirects"],"operationId":"patch_redirect-to"},"post":{"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"properties":{"status_code":{"type":"integer"},"url":{"type":"string"}},"required":["url"],"type":"object"}}},"required":true},"responses":{"302":{"description":"A redirection."}},"summary":"302/3XX Redirects to the given URL.","tags":["Redirects"],"operationId":"post_redirect-to"},"put":{"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"properties":{"status_code":{"type":"integer"},"url":{"type":"string"}},"required":["url"],"type":"object"}}},"required":true},"responses":{"302":{"description":"A redirection."}},"summary":"302/3XX Redirects to the given URL.","tags":["Redirects"],"operationId":"put_redirect-to"},"trace":{"responses":{"302":{"description":"A redirection."}},"summary":"302/3XX Redirects to the given URL.","tags":["Redirects"],"operationId":"trace_redirect-to"}},"/redirect/{n}":{"get":{"parameters":[{"in":"path","name":"n","required":true,"schema":{"type":"integer"}}],"responses":{"302":{"description":"A redirection."}},"summary":"302 Redirects n times.","tags":["Redirects"],"operationId":"get_redirect_n"}},"/relative-redirect/{n}":{"get":{"parameters":[{"in":"path","name":"n","required":true,"schema":{"type":"integer"}}],"responses":{"302":{"description":"A redirection."}},"summary":"Relatively 302 Redirects n times.","tags":["Redirects"],"operationId":"get_relative-redirect_n"}},"/response-headers":{"get":{"parameters":[{"allowEmptyValue":true,"explode":true,"in":"query","name":"freeform","schema":{"additionalProperties":{"type":"string"},"type":"string"},"style":"form"}],"responses":{"200":{"description":"Response headers"}},"summary":"Returns a set of response headers from the query string.","tags":["Response inspection"],"operationId":"get_response-headers"},"post":{"parameters":[{"allowEmptyValue":true,"explode":true,"in":"query","name":"freeform","schema":{"additionalProperties":{"type":"string"},"type":"string"},"style":"form"}],"responses":{"200":{"description":"Response headers"}},"summary":"Returns a set of response headers from the query string.","tags":["Response inspection"],"operationId":"post_response-headers"}},"/robots.txt":{"get":{"responses":{"200":{"description":"Robots file"}},"summary":"Returns some robots.txt rules.","tags":["Response formats"],"operationId":"get_robots_txt"}},"/status/{codes}":{"delete":{"parameters":[{"in":"path","name":"codes","required":true,"schema":{"type":"string"}}],"responses":{"100":{"description":"Informational responses"},"200":{"description":"Success"},"300":{"description":"Redirection"},"400":{"description":"Client Errors"},"500":{"description":"Server Errors"}},"summary":"Return status code or random status code if more than one are given","tags":["Status codes"],"operationId":"delete_status_codes"},"get":{"parameters":[{"in":"path","name":"codes","required":true,"schema":{"type":"string"}}],"responses":{"100":{"description":"Informational responses"},"200":{"description":"Success"},"300":{"description":"Redirection"},"400":{"description":"Client Errors"},"500":{"description":"Server Errors"}},"summary":"Return status code or random status code if more than one are given","tags":["Status codes"],"operationId":"get_status_codes"},"patch":{"parameters":[{"in":"path","name":"codes","required":true,"schema":{"type":"string"}}],"responses":{"100":{"description":"Informational responses"},"200":{"description":"Success"},"300":{"description":"Redirection"},"400":{"description":"Client Errors"},"500":{"description":"Server Errors"}},"summary":"Return status code or random status code if more than one are given","tags":["Status codes"],"operationId":"patch_status_codes"},"post":{"parameters":[{"in":"path","name":"codes","required":true,"schema":{"type":"string"}}],"responses":{"100":{"description":"Informational responses"},"200":{"description":"Success"},"300":{"description":"Redirection"},"400":{"description":"Client Errors"},"500":{"description":"Server Errors"}},"summary":"Return status code or random status code if more than one are given","tags":["Status codes"],"operationId":"post_status_codes"},"put":{"parameters":[{"in":"path","name":"codes","required":true,"schema":{"type":"string"}}],"responses":{"100":{"description":"Informational responses"},"200":{"description":"Success"},"300":{"description":"Redirection"},"400":{"description":"Client Errors"},"500":{"description":"Server Errors"}},"summary":"Return status code or random status code if more than one are given","tags":["Status codes"],"operationId":"put_status_codes"},"trace":{"parameters":[{"in":"path","name":"codes","required":true,"schema":{"type":"string"}}],"responses":{"100":{"description":"Informational responses"},"200":{"description":"Success"},"300":{"description":"Redirection"},"400":{"description":"Client Errors"},"500":{"description":"Server Errors"}},"summary":"Return status code or random status code if more than one are given","tags":["Status codes"],"operationId":"trace_status_codes"}},"/stream-bytes/{n}":{"get":{"parameters":[{"in":"path","name":"n","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"Bytes."}},"summary":"Streams n random bytes generated with given seed, at given chunk size per packet.","tags":["Dynamic data"],"operationId":"get_stream-bytes_n"}},"/stream/{n}":{"get":{"parameters":[{"in":"path","name":"n","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"Streamed JSON responses."}},"summary":"Stream n JSON responses","tags":["Dynamic data"],"operationId":"get_stream_n"}},"/user-agent":{"get":{"responses":{"200":{"description":"The request's User-Agent header."}},"summary":"Return the incoming requests's User-Agent header.","tags":["Request inspection"],"operationId":"get_user-agent"}},"/uuid":{"get":{"responses":{"200":{"description":"A UUID4."}},"summary":"Return a UUID4.","tags":["Dynamic data"],"operationId":"get_uuid"}},"/xml":{"get":{"responses":{"200":{"description":"An XML document."}},"summary":"Returns a simple XML document.","tags":["Response formats"],"operationId":"get_xml"}}},"components":{"requestBodies":{"postRedirectTo":{"content":{"application/x-www-form-urlencoded":{"schema":{"properties":{"status_code":{"type":"integer"},"url":{"type":"string"}},"required":["url"],"type":"object"}}},"required":true}}},"x-protocol":"https"}