API Request Builder
An online REST client: set the method, URL, headers, body and auth, send the request from your browser and inspect the response, then copy it as curl, fetch or Python.
Requests go directly from your browser to the address you enter. TabBench does not see or store them.
What the API Request Builder does
An API request is more than a URL: a method, headers, a body in the right format and credentials all have to be correct before the server will answer. This builder lets you assemble a request with a form instead of remembering syntax, send it straight from your browser and read the response, then take it with you as a curl command or as code. When a request fails it tells you why, separating a server that cannot be reached from one that answered but does not allow this page to read the reply.
How to build and send an API request
- Choose the method and type the URL. Try one of the public test APIs if you want to see it work first.
- Add query parameters and headers, then set the body type (JSON, form, multipart, text or a file) and, if needed, authentication.
- Press Send request. The response shows its status, time, size, headers and body, with JSON pretty-printed and images displayed.
- If the request fails, read the explanation: it says whether the server could not be reached or whether the browser blocked the response because of CORS.
- Copy the request as curl, fetch, Axios or Python from the section at the bottom, or import an existing curl command to start from it.
Requests go directly from your browser to the address you enter. TabBench does not see or store them.
When to use it
Trying an endpoint before writing code
Check that an API key works, see the exact shape of a response and confirm the status codes before you write a single line of integration code.
Reproducing a bug report
Import the curl command from a bug report, run it, change one header and see what changes, then copy the fixed request back out.
Generating the code for a request
Build the request visually and export it as fetch, Axios or Python, with headers and body already correct.
Good to know
- Browsers will not send certain headers, such as Cookie, Host and Referer. The tool tells you which were dropped. curl does not have this limit.
- A request that needs a CORS preflight (non-simple methods, custom headers such as Authorization, or JSON bodies) fails if the API does not answer OPTIONS with the right headers.
- Use test or sandbox credentials when you can. Anything you type is sent to the server you name.
- Bodies of GET and HEAD requests are not sent by browsers.
- If you only see a generic error, try the same request with curl in a terminal, which is not subject to CORS.
Frequently asked questions
Why does my request fail with a network error?
Can I call localhost or a private network?
Is it safe to put real tokens here?
Why can't I read some response headers?
Does this replace Postman?
What happens with file uploads?
Related tools
cURL to Fetch Converter
Convert a curl command to JavaScript fetch code.
HTTP Header Generator
Generate security, CORS, cache and CSP headers for your server.
User-Agent Parser
Identify the browser, OS, device or bot behind a User-Agent.
URL Parser
Break a URL into scheme, host, port, path, query and fragment.