API reference
Create a temporary endpoint, send HTTP requests to it, then read them back as JSON. The same API powers the inspector page. No key is required.
https://edge.rooni.dev/api/v1
Create an endpoint
Optional body: {"response_status": 202}. Supported codes: 200, 201, 202, 204, 400, 401, 404, 409, 422, 500, 503.
{
"id": "k7m2xq9fh3ad",
"url": "https://edge.rooni.dev/h/k7m2xq9fh3ad",
"inspect_url": "https://edge.rooni.dev/b/k7m2xq9fh3ad",
"response_status": 200,
"expires_at": "2026-11-15T12:00:00Z"
}
Sending requests
Every method is accepted, including OPTIONS preflights from browsers. The endpoint answers with the configured status and a fixed JSON body, so it never echoes what you send. Bodies up to 256 KB are accepted; the first 16 KB are stored. Non-UTF-8 bodies are stored as base64.
List requests
Newest first, without headers and bodies. The response has an ETag; poll with If-None-Match to get 304 until something new arrives.
Get a request
Full headers and body.
Change the response
{"response_status": 500}
Useful for testing how a sender retries failed deliveries.
Delete
Clears captured requests. DELETE /v1/bins/{id} removes the endpoint itself.
Limits
| Endpoint lifetime | 24 hours |
| Stored requests | last 100 per endpoint |
| Incoming rate | 300 requests per 10 minutes per endpoint |
| New endpoints | 20 per hour per client |
Anyone who knows the endpoint ID can read its requests. Do not send production secrets.