Discover/httpbun API
live

httpbun APIhttpbun.com

Inspect requests, headers, origin IPs, status codes, and custom response headers via the httpbun.com API. Five endpoints for debugging HTTP client behavior.

Endpoint health
verified 2h ago
inspect_request
get_status_code
get_ip
get_headers
get_response_headers
5/5 passing latest checkself-healing
Endpoints
5
Updated
3h ago

What is the httpbun API?

The httpbun.com API provides 5 endpoints for inspecting HTTP request and response behavior, covering everything from raw headers and origin IP to arbitrary status code responses. The inspect_request endpoint returns the method, parsed query arguments, all forwarded headers, origin IP, and full URL as seen server-side — making it useful for validating how proxies and middleware shape outbound requests.

Try it
Comma-separated key=value pairs to send as query parameters (e.g. 'foo=bar,baz=123'). Each pair is split on '=' and sent as a separate query parameter.
api.parse.bot/scraper/deca630b-b6ad-4b68-a070-0fe91eef112c/<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/deca630b-b6ad-4b68-a070-0fe91eef112c/inspect_request?query_params=test%3Dhello' \
  -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 httpbun-com-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: httpbun SDK — HTTP testing utility endpoints."""
from parse_apis.httpbun_com_api import Httpbun, InvalidStatusCode

client = Httpbun()

# Inspect a request with custom query parameters
info = client.request_infos.inspect(query_params="color=blue,size=large")
print(f"Method: {info.method}, Origin: {info.origin}")
print(f"URL: {info.url}")
print(f"Args: {info.args}")

# Get request headers as seen by the server
header_set = client.header_sets.get()
print(f"Headers seen by server: {header_set.headers}")

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

# Request a specific status code and inspect the response
status = client.status_responses.get(status_code="200")
print(f"Requested: {status.requested_code}, Got: {status.actual_status_code}")

# Typed error handling for invalid status code
try:
    bad = client.status_responses.get(status_code="999")
    print(f"Got: {bad.actual_status_code}")
except InvalidStatusCode as exc:
    print(f"Invalid status code: {exc}")

# Get custom response headers
resp_hdrs = client.custom_headers.get(headers_param="X-App=myapp,X-Version=2")
print(f"Response headers: {resp_hdrs.response_headers}")

print("exercised: request_infos.inspect / header_sets.get / ip_addresses.get / status_responses.get / custom_headers.get")
All endpoints · 5 totalmissing one? ·

Inspect how a GET request appears to the server. Returns the method, query arguments, headers, origin IP, and full URL as seen by the httpbun server. Useful for debugging HTTP client behavior and verifying how requests are shaped after proxies, load balancers, or middleware modify them.

Input
ParamTypeDescription
query_paramsstringComma-separated key=value pairs to send as query parameters (e.g. 'foo=bar,baz=123'). Each pair is split on '=' and sent as a separate query parameter.
Response
{
  "type": "object",
  "fields": {
    "url": "string",
    "args": "object of query parameter key-value pairs",
    "method": "string",
    "origin": "string",
    "headers": "object of request header key-value pairs"
  },
  "sample": {
    "data": {
      "url": "https://httpbun.com/get?test=hello",
      "args": {
        "test": "hello"
      },
      "method": "GET",
      "origin": "142.111.191.33",
      "headers": {
        "Host": "httpbun.com",
        "Accept": "text/html",
        "User-Agent": "Mozilla/5.0"
      }
    },
    "status": "success"
  }
}

About the httpbun API

What the API Covers

The httpbun.com API is an HTTP testing utility with five GET endpoints. Each endpoint targets a specific aspect of request or response inspection. inspect_request is the broadest: it accepts optional query_params (comma-separated key=value pairs) and returns url, args, method, origin, and headers — a full picture of how the server received the request. get_headers returns only the headers object, useful when you want a clean view of every header including those injected by proxies or TLS termination layers.

Status Code and Header Testing

get_status_code accepts a status_code integer (100–599) and responds with that actual HTTP status. The response shape includes requested_code, actual_status_code, response_body, and a json_response object (or null) with a code and description — useful for exercising client-side error handling, redirect logic, or retry behavior. get_response_headers takes a headers_param of comma-separated key=value pairs and sets those as response headers, returning the full set of response headers in the body. This lets you test how clients parse non-standard or edge-case header names and values.

Origin IP Endpoint

get_ip returns a single origin field containing the IP address as seen by the httpbun server after any forwarding. This is useful for confirming which IP a proxy or VPN presents to a remote server, or verifying that a specific egress IP is in use.

Reliability & maintenanceVerified

The httpbun API is a managed, monitored endpoint for httpbun.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when httpbun.com 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 httpbun.com 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
2h 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
  • Verify which headers a proxy or load balancer adds to outbound requests using get_headers.
  • Confirm the egress IP of a proxy configuration with get_ip.
  • Test client-side redirect and error handling by requesting specific 3xx, 4xx, or 5xx codes via get_status_code.
  • Validate that query parameters survive encoding and forwarding with inspect_request.
  • Check how an HTTP client parses non-standard response headers using get_response_headers.
  • Debug middleware behavior by comparing url, args, and headers from inspect_request before and after a middleware change.
  • Simulate custom response header scenarios for frontend or SDK integration testing.
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 httpbun.com have an official developer API?+
Yes. httpbun.com is itself an open HTTP testing service with documented endpoints at https://httpbun.com. This Parse API surfaces a structured subset of those endpoints with consistent JSON response shapes.
What does `inspect_request` return that `get_headers` does not?+
inspect_request returns the full url, args (parsed query parameters as a key-value object), method, and origin IP in addition to headers. get_headers returns only the headers object — nothing else.
Does `get_status_code` always respond with exactly the requested code?+
The endpoint returns both requested_code and actual_status_code as separate fields precisely because they can differ. Some status codes (for example, certain 1xx codes) may not be deliverable by the underlying HTTP stack, so the actual code received can differ from the one requested.
Can I test POST, PUT, or DELETE request inspection, not just GET?+
Not currently. All five endpoints use GET. The API covers request inspection, headers, origin IP, status code responses, and custom response headers for GET requests only. You can fork it on Parse and revise to add endpoints that reflect POST bodies or other HTTP methods.
Is request body or form data inspection exposed?+
Not currently. The API returns headers, query arguments, origin IP, and URL fields, but does not expose request body content, form fields, or multipart data. You can fork it on Parse and revise to add a body-inspection endpoint.
Page content last updated . Spec covers 5 endpoints from httpbun.com.
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.
httpbin.org API
Test HTTP requests and inspect what data your client is sending, including your IP address, headers, user agent, and generated UUIDs. Use it to verify how servers receive and process your requests during development and debugging.
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.