Discover/httpbin API
live

httpbin APIhttpbin.org

Inspect incoming HTTP requests via 5 endpoints. Get origin IP, headers, user agent, generated UUIDs, and full request echoes with query parameters.

Endpoint health
verified 4h ago
get_ip
get_headers
get_user_agent
get_uuid
inspect_request
5/5 passing latest checkself-healing
Endpoints
5
Updated
5h ago

What is the httpbin API?

The httpbin.org API provides 5 endpoints for inspecting HTTP request data as seen by a server, making it straightforward to verify what your client is actually sending. The inspect_request endpoint echoes back the full request including parsed query parameters, origin IP, headers, and the constructed URL. The remaining endpoints isolate specific request properties — IP address, headers, user agent string, and randomly generated UUID4 values — useful during development and integration testing.

Try it

No input parameters required.

api.parse.bot/scraper/61b4a59b-122f-43e5-bd21-94ecacb424d2/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/61b4a59b-122f-43e5-bd21-94ecacb424d2/get_ip' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace httpbin-org-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.


"""Walkthrough: httpbin SDK — inspect requests, get IP, headers, user-agent, generate UUIDs."""
from parse_apis.httpbin_org_api import Httpbin, ParseError

client = Httpbin()

# Get the origin IP address
ip_info = client.ip_addresses.get()
print(f"Origin IP: {ip_info.origin}")

# Get all request headers
headers_info = client.headers.get()
print(f"Request headers: {headers_info.headers}")

# Get the User-Agent string
ua_info = client.user_agents.get()
print(f"User-Agent: {ua_info.user_agent}")

# Generate a UUID
uuid_info = client.uuids.generate()
print(f"Generated UUID: {uuid_info.uuid}")

# Inspect a request with custom query params
try:
    req = client.request_infos.inspect(params="color=blue,size=large")
    print(f"Request URL: {req.url}")
    print(f"Parsed args: {req.args}")
    print(f"Origin: {req.origin}")
except ParseError as e:
    print(f"Request inspection failed: {e}")

print("exercised: ip_addresses.get / headers.get / user_agents.get / uuids.generate / request_infos.inspect")
All endpoints · 5 totalmissing one? ·

Returns the origin IP address of the incoming request as seen by the server.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "origin": "string"
  },
  "sample": {
    "data": {
      "origin": "142.111.191.5"
    },
    "status": "success"
  }
}

About the httpbin API

What the API Returns

The httpbin.org API exposes five GET endpoints, each returning a focused slice of HTTP request metadata. get_ip returns the origin field — the IP address the server sees for the incoming connection. get_user_agent returns the user_agent string from the request. get_headers returns a headers object containing all request headers as key-value pairs, which lets you confirm what headers your HTTP client is actually attaching.

Request Inspection and Query Parameters

inspect_request is the most complete endpoint: it returns url (the full constructed URL), args (an object of parsed query parameters), origin (IP address), and headers (all request headers). It accepts an optional params input as a comma-separated list of key=value pairs — for example, foo=bar,name=test — which are forwarded as query string parameters and reflected back in the args field. This makes it straightforward to verify that query parameters are encoded and received correctly.

UUID Generation

get_uuid returns a freshly generated random UUID4 string on every call. It takes no inputs and returns a single uuid field. This is useful for generating unique identifiers in test fixtures or verifying that downstream services can handle UUID-formatted values.

Typical Usage Patterns

Because every endpoint reflects data from the calling request, the API is primarily useful during development: confirming IP addresses as seen externally, auditing headers attached by an HTTP client library, validating query parameter encoding, and generating test UUIDs on demand. No authentication or session state is required on the caller's side.

Reliability & maintenanceVerified

The httpbin API is a managed, monitored endpoint for httpbin.org — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when httpbin.org changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official httpbin.org API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
4h ago
Latest check
5/5 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Confirm the external IP address your application server presents to third-party services using get_ip.
  • Audit which headers an HTTP client library attaches by default using get_headers.
  • Verify that a proxy or load balancer is forwarding the correct User-Agent with get_user_agent.
  • Test that query parameters are correctly encoded and received by a server using inspect_request with the params input.
  • Generate random UUID4 values for test data seeding or fixture generation via get_uuid.
  • Debug API gateway or middleware configurations by inspecting the full request echo from inspect_request.
  • Validate that custom request headers survive transit through a reverse proxy using get_headers.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does httpbin.org have an official developer API?+
Yes. httpbin.org is itself an open HTTP testing service. The canonical project is open source and documented at https://httpbin.org/. The source code is available on GitHub under the kennethreitz/httpbin repository.
What does `inspect_request` return for the `args` field when no `params` are provided?+
When no params input is supplied, the args object is returned empty. Query parameters only appear in args when key=value pairs are passed via the params input, which are forwarded to the server as a URL query string.
Does the `get_headers` endpoint filter or redact any headers?+
No headers are filtered — the endpoint returns all request headers as received, including any custom or forwarded headers your client sends. The response is a flat key-value object with header names as keys.
Does the API support POST, PUT, or DELETE request inspection?+
Not currently. All five endpoints use GET and reflect GET request data including query parameters and headers. You can fork this API on Parse and revise it to add endpoints that echo POST bodies or other HTTP method data.
Can the API return geolocation data for the origin IP address?+
Not currently. get_ip returns only the raw IP string with no geolocation, ASN, or ISP enrichment. You can fork this API on Parse and revise it to add a geolocation lookup endpoint built on top of the returned origin IP.
Page content last updated . Spec covers 5 endpoints from httpbin.org.
Related APIs in Developer ToolsSee all →
crt.sh API
Search for SSL/TLS certificates across public transparency logs by domain, fingerprint, serial number, or public key, and retrieve detailed certificate information including issuer, validity dates, and certificate chain details. Monitor certificate issuance for domains you care about to track security changes and detect unauthorized certificates.
artificialanalysis.ai API
Compare and rank LLM models and providers across performance benchmarks, then dive into detailed specifications for any model to find the best fit for your needs. Discover performance metrics for specialized AI systems handling speech, images, and video, plus benchmark data for different hardware configurations.
python.org API
Access comprehensive Python release information including downloads, versions, and supported operating systems, plus stay updated with the latest Python news and events. Search across Python.org's resources and browse release files, details, and the FTP index all in one place.
nvidia.com API
nvidia.com API
lucide.dev API
Browse and download thousands of Lucide icons with instant search and category filtering to find exactly what you need. Get SVG files and metadata for each icon to integrate them seamlessly into your projects.
alienvault.com API
Search and analyze global threat intelligence data including indicators of compromise, threat pulses, and adversary profiles from the Open Threat Exchange community. Monitor recent security alerts and access detailed information about threats and adversaries to strengthen your cybersecurity defenses.
namecheap.com API
Search for available domain names, check their registration status, and browse TLD pricing across different extensions. Discover discounted domains on the marketplace and explore hosting bundles to find the perfect combination for your website needs.
dummyjson.com API
Get realistic fake data for products, users, and shopping carts to test your application without needing a real backend. Search for specific products, retrieve individual product details, browse user profiles, and access shopping cart information—all perfect for prototyping and development.