{
    "content": [
        {
            "type": "text",
            "text": "# http (pydoc)\n\n## TLDR\n\n> HTTPie: an HTTP client designed for testing, debugging, and generally interacting with APIs and HTTP servers.\n\n- Make a simple GET request (shows response headers and content):\n  `http {{https://example.com}}`\n- Print specific parts of the content (`H`: request headers, `B`: request body, `h`: response headers, `b`: response body, `m`: response metadata):\n  `http {{-p|--print}} {{H|B|h|b|m|Hh|Hhb|...}} {{https://example.com}}`\n- Specify the HTTP method when sending a request and use a proxy to intercept the request:\n  `http {{GET|POST|HEAD|PUT|PATCH|DELETE|...}} --proxy {{http|https}}:{{http://localhost:8080|socks5://localhost:9050|...}} {{https://example.com}}`\n- Follow any `3xx` redirects and specify additional headers in a request:\n  `http {{-F|--follow}} {{https://example.com}} {{'User-Agent: Mozilla/5.0' 'Accept-Encoding: gzip'}}`\n- Authenticate to a server using different authentication methods:\n  `http {{-a|--auth}} {{username:password|token}} {{-A|--auth-type}} {{basic|digest|bearer}} {{GET|POST|...}} {{https://example.com/auth}}`\n- Construct a request but do not send it (similar to a dry-run):\n  `http --offline {{GET|DELETE|...}} {{https://example.com}}`\n- Use named sessions for persistent custom headers, auth credentials and cookies:\n  `http --session {{session_name|path/to/session.json}} {{-a|--auth}} {{username}}:{{password}} {{https://example.com/auth}} {{API-KEY:xxx}}`\n- Upload a file to a form (the example below assumes that the form field is `<input type=\"file\" name=\"cv\" />`):\n  `http {{-f|--form}} {{POST}} {{https://example.com/upload}} {{cv@path/to/file}}`\n\n*Source: tldr-pages*\n\n---\n\n**Summary:** http\n\n## Section Outline\n\n- **NAME** (2 lines)\n- **MODULE REFERENCE** (8 lines)\n- **PACKAGE CONTENTS** (5 lines)\n- **CLASSES** (3 lines) — 1 subsections\n  - class HTTPStatus (171 lines)\n- **DATA** (2 lines)\n- **FILE** (3 lines)\n\n## Full Content\n\n### NAME\n\nhttp\n\n### MODULE REFERENCE\n\nhttps://docs.python.org/3.10/library/http.html\n\nThe following documentation is automatically generated from the Python\nsource files.  It may be incomplete, incorrect or include features that\nare considered implementation detail and may vary between Python\nimplementations.  When in doubt, consult the module reference at the\nlocation listed above.\n\n### PACKAGE CONTENTS\n\nclient\ncookiejar\ncookies\nserver\n\n### CLASSES\n\nenum.IntEnum(builtins.int, enum.Enum)\nHTTPStatus\n\n#### class HTTPStatus\n\n|  HTTPStatus(value, names=None, *, module=None, qualname=None, type=None, start=1)\n|\n|  HTTP status codes and reason phrases\n|\n|  Status codes from the following RFCs are all observed:\n|\n|      * RFC 7231: Hypertext Transfer Protocol (HTTP/1.1), obsoletes 2616\n|      * RFC 6585: Additional HTTP Status Codes\n|      * RFC 3229: Delta encoding in HTTP\n|      * RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518\n|      * RFC 5842: Binding Extensions to WebDAV\n|      * RFC 7238: Permanent Redirect\n|      * RFC 2295: Transparent Content Negotiation in HTTP\n|      * RFC 2774: An HTTP Extension Framework\n|      * RFC 7725: An HTTP Status Code to Report Legal Obstacles\n|      * RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)\n|      * RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)\n|      * RFC 8297: An HTTP Status Code for Indicating Hints\n|      * RFC 8470: Using Early Data in HTTP\n|\n|  Method resolution order:\n|      HTTPStatus\n|      enum.IntEnum\n|      builtins.int\n|      enum.Enum\n|      builtins.object\n|\n|  Data and other attributes defined here:\n|\n|  ACCEPTED = <HTTPStatus.ACCEPTED: 202>\n|\n|  ALREADYREPORTED = <HTTPStatus.ALREADYREPORTED: 208>\n|\n|  BADGATEWAY = <HTTPStatus.BADGATEWAY: 502>\n|\n|  BADREQUEST = <HTTPStatus.BADREQUEST: 400>\n|\n|  CONFLICT = <HTTPStatus.CONFLICT: 409>\n|\n|  CONTINUE = <HTTPStatus.CONTINUE: 100>\n|\n|  CREATED = <HTTPStatus.CREATED: 201>\n|\n|  EARLYHINTS = <HTTPStatus.EARLYHINTS: 103>\n|\n|  EXPECTATIONFAILED = <HTTPStatus.EXPECTATIONFAILED: 417>\n|\n|  FAILEDDEPENDENCY = <HTTPStatus.FAILEDDEPENDENCY: 424>\n|\n|  FORBIDDEN = <HTTPStatus.FORBIDDEN: 403>\n|\n|  FOUND = <HTTPStatus.FOUND: 302>\n|\n|  GATEWAYTIMEOUT = <HTTPStatus.GATEWAYTIMEOUT: 504>\n|\n|  GONE = <HTTPStatus.GONE: 410>\n|\n|  HTTPVERSIONNOTSUPPORTED = <HTTPStatus.HTTPVERSIONNOTSUPPORTED: 5...\n|\n|  IMATEAPOT = <HTTPStatus.IMATEAPOT: 418>\n|\n|  IMUSED = <HTTPStatus.IMUSED: 226>\n|\n|  INSUFFICIENTSTORAGE = <HTTPStatus.INSUFFICIENTSTORAGE: 507>\n|\n|  INTERNALSERVERERROR = <HTTPStatus.INTERNALSERVERERROR: 500>\n|\n|  LENGTHREQUIRED = <HTTPStatus.LENGTHREQUIRED: 411>\n|\n|  LOCKED = <HTTPStatus.LOCKED: 423>\n|\n|  LOOPDETECTED = <HTTPStatus.LOOPDETECTED: 508>\n|\n|  METHODNOTALLOWED = <HTTPStatus.METHODNOTALLOWED: 405>\n|\n|  MISDIRECTEDREQUEST = <HTTPStatus.MISDIRECTEDREQUEST: 421>\n|\n|  MOVEDPERMANENTLY = <HTTPStatus.MOVEDPERMANENTLY: 301>\n|\n|  MULTIPLECHOICES = <HTTPStatus.MULTIPLECHOICES: 300>\n|\n|  MULTISTATUS = <HTTPStatus.MULTISTATUS: 207>\n|\n|  NETWORKAUTHENTICATIONREQUIRED = <HTTPStatus.NETWORKAUTHENTICATIONR...\n|\n|  NONAUTHORITATIVEINFORMATION = <HTTPStatus.NONAUTHORITATIVEINFORMAT...\n|\n|  NOTACCEPTABLE = <HTTPStatus.NOTACCEPTABLE: 406>\n|\n|  NOTEXTENDED = <HTTPStatus.NOTEXTENDED: 510>\n|\n|  NOTFOUND = <HTTPStatus.NOTFOUND: 404>\n|\n|  NOTIMPLEMENTED = <HTTPStatus.NOTIMPLEMENTED: 501>\n|\n|  NOTMODIFIED = <HTTPStatus.NOTMODIFIED: 304>\n|\n|  NOCONTENT = <HTTPStatus.NOCONTENT: 204>\n|\n|  OK = <HTTPStatus.OK: 200>\n|\n|  PARTIALCONTENT = <HTTPStatus.PARTIALCONTENT: 206>\n|\n|  PAYMENTREQUIRED = <HTTPStatus.PAYMENTREQUIRED: 402>\n|\n|  PERMANENTREDIRECT = <HTTPStatus.PERMANENTREDIRECT: 308>\n|\n|  PRECONDITIONFAILED = <HTTPStatus.PRECONDITIONFAILED: 412>\n|\n|  PRECONDITIONREQUIRED = <HTTPStatus.PRECONDITIONREQUIRED: 428>\n|\n|  PROCESSING = <HTTPStatus.PROCESSING: 102>\n|\n|  PROXYAUTHENTICATIONREQUIRED = <HTTPStatus.PROXYAUTHENTICATIONREQUI...\n|\n|  REQUESTEDRANGENOTSATISFIABLE = <HTTPStatus.REQUESTEDRANGENOTSATI...\n|\n|  REQUESTENTITYTOOLARGE = <HTTPStatus.REQUESTENTITYTOOLARGE: 413>\n|\n|  REQUESTHEADERFIELDSTOOLARGE = <HTTPStatus.REQUESTHEADERFIELDSTO...\n|\n|  REQUESTTIMEOUT = <HTTPStatus.REQUESTTIMEOUT: 408>\n|\n|  REQUESTURITOOLONG = <HTTPStatus.REQUESTURITOOLONG: 414>\n|\n|  RESETCONTENT = <HTTPStatus.RESETCONTENT: 205>\n|\n|  SEEOTHER = <HTTPStatus.SEEOTHER: 303>\n|\n|  SERVICEUNAVAILABLE = <HTTPStatus.SERVICEUNAVAILABLE: 503>\n|\n|  SWITCHINGPROTOCOLS = <HTTPStatus.SWITCHINGPROTOCOLS: 101>\n|\n|  TEMPORARYREDIRECT = <HTTPStatus.TEMPORARYREDIRECT: 307>\n|\n|  TOOEARLY = <HTTPStatus.TOOEARLY: 425>\n|\n|  TOOMANYREQUESTS = <HTTPStatus.TOOMANYREQUESTS: 429>\n|\n|  UNAUTHORIZED = <HTTPStatus.UNAUTHORIZED: 401>\n|\n|  UNAVAILABLEFORLEGALREASONS = <HTTPStatus.UNAVAILABLEFORLEGALREAS...\n|\n|  UNPROCESSABLEENTITY = <HTTPStatus.UNPROCESSABLEENTITY: 422>\n|\n|  UNSUPPORTEDMEDIATYPE = <HTTPStatus.UNSUPPORTEDMEDIATYPE: 415>\n|\n|  UPGRADEREQUIRED = <HTTPStatus.UPGRADEREQUIRED: 426>\n|\n|  USEPROXY = <HTTPStatus.USEPROXY: 305>\n|\n|  VARIANTALSONEGOTIATES = <HTTPStatus.VARIANTALSONEGOTIATES: 506>\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from enum.Enum:\n|\n|  name\n|      The name of the Enum member.\n|\n|  value\n|      The value of the Enum member.\n|\n|  ----------------------------------------------------------------------\n|  Readonly properties inherited from enum.EnumMeta:\n|\n|  members\n|      Returns a mapping of member name->value.\n|\n|      This mapping lists all enum members, including aliases. Note that this\n|      is a read-only view of the internal mapping.\n\n### DATA\n\nall = ['HTTPStatus']\n\n### FILE\n\n/usr/lib/python3.10/http/init.py\n\n"
        }
    ],
    "structuredContent": {
        "command": "http",
        "section": "",
        "mode": "pydoc",
        "summary": "http",
        "synopsis": null,
        "tldr_summary": "HTTPie: an HTTP client designed for testing, debugging, and generally interacting with APIs and HTTP servers.",
        "tldr_examples": [
            {
                "description": "Make a simple GET request (shows response headers and content)",
                "command": "http {{https://example.com}}"
            },
            {
                "description": "Print specific parts of the content (`H`: request headers, `B`: request body, `h`: response headers, `b`: response body, `m`: response metadata)",
                "command": "http {{-p|--print}} {{H|B|h|b|m|Hh|Hhb|...}} {{https://example.com}}"
            },
            {
                "description": "Specify the HTTP method when sending a request and use a proxy to intercept the request",
                "command": "http {{GET|POST|HEAD|PUT|PATCH|DELETE|...}} --proxy {{http|https}}:{{http://localhost:8080|socks5://localhost:9050|...}} {{https://example.com}}"
            },
            {
                "description": "Follow any `3xx` redirects and specify additional headers in a request",
                "command": "http {{-F|--follow}} {{https://example.com}} {{'User-Agent: Mozilla/5.0' 'Accept-Encoding: gzip'}}"
            },
            {
                "description": "Authenticate to a server using different authentication methods",
                "command": "http {{-a|--auth}} {{username:password|token}} {{-A|--auth-type}} {{basic|digest|bearer}} {{GET|POST|...}} {{https://example.com/auth}}"
            },
            {
                "description": "Construct a request but do not send it (similar to a dry-run)",
                "command": "http --offline {{GET|DELETE|...}} {{https://example.com}}"
            },
            {
                "description": "Use named sessions for persistent custom headers, auth credentials and cookies",
                "command": "http --session {{session_name|path/to/session.json}} {{-a|--auth}} {{username}}:{{password}} {{https://example.com/auth}} {{API-KEY:xxx}}"
            },
            {
                "description": "Upload a file to a form (the example below assumes that the form field is `<input type=\"file\" name=\"cv\" />`)",
                "command": "http {{-f|--form}} {{POST}} {{https://example.com/upload}} {{cv@path/to/file}}"
            }
        ],
        "tldr_source": "official",
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "MODULE REFERENCE",
                "lines": 8,
                "subsections": []
            },
            {
                "name": "PACKAGE CONTENTS",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "CLASSES",
                "lines": 3,
                "subsections": [
                    {
                        "name": "class HTTPStatus",
                        "lines": 171
                    }
                ]
            },
            {
                "name": "DATA",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "FILE",
                "lines": 3,
                "subsections": []
            }
        ]
    }
}