Docs
API docs for QA automation and backend development
This hub is for QA, automation, and frontend teams who need a reliable API - for testing or production. It includes quickstart steps, OpenAPI reference, and practical guidance for Postman, Playwright, and CI runs.
Start here
What you will do in 2 minutes
Use the fastest path to get predictable responses, then decide whether you need per-user sessions for isolation testing.
Create a project + keys on app.reqres.in.
Use a manage key for setup and a public key for read-only testing.
Send your first request with
x-api-key.
Your starter project has a Products collection with sample data ready to query.
For per-user testing, mint a session token and
use
Authorization: Bearer.
App-user sessions isolate reads and writes to a single user.
curl "https://reqres.in/api/collections/products/records" \
-H "x-api-key: YOUR_API_KEY" \
-H "X-Reqres-Env: prod"
Paths
Choose a path
Need your changes to persist?
The classic demo endpoints, like /api/users, work without a key, with a
daily limit, but POST, PUT and DELETE don't save anything. For a demo or tutorial where data needs to stick,
a free account gives you an x-api-key and a project where records persist.
Try the classic endpoints live
Real responses from reqres.in, no key needed. Open any of them in your browser or curl, or import the ReqRes Postman collection (every classic endpoint, ready to run).
Loading when this comes into view…
Quickstart
First request with Postman or curl
After signup you get a project with a Products collection and sample data. Use your API key to read, create, update, and delete records. Changes persist.
For per-user isolation, start an app-user session and send the session token as a Bearer header.
Read the Postman setup guide →curl "https://reqres.in/api/collections/products/records" \
-H "x-api-key: YOUR_API_KEY" \
-H "X-Reqres-Env: prod"
curl -X POST "https://reqres.in/api/collections/products/records" \
-H "x-api-key: YOUR_API_KEY" \
-H "X-Reqres-Env: prod" \
-H "Content-Type: application/json" \
-d '{"data":{"name":"New Product","price":9.99}}'
curl "https://reqres.in/app/collections/products/records" \
-H "Authorization: Bearer YOUR_SESSION_TOKEN"
QA automation
Reliable runs without getting blocked
ReqRes is tuned for predictable payloads and stable status codes. Logs help explain failures fast, and guidance keeps CI runs from tripping rate limits or WAF rules.
What this helps with
- Stable payloads for Postman collections and Playwright suites.
- Predictable status codes to keep QA assertions consistent.
- Logs for auth, rate limits, and WAF-related failures.
API reference
API reference
Machine-readable specs for tooling, LLMs, and code generation.
Example app
Notes app flow with auth + CRUD
See how magic links, per-user data, and collections work together in a real UI.
Common issues
Common failure modes
Getting a 401 or 403?
Project endpoints (collections, records, app users) need an x-api-key header. The classic demo endpoints don't.
Get your key here.
Use Authorization: Bearer only for per-user sessions.
Environment header
If you see environment errors, set
X-Reqres-Env to
prod or
dev.
Rate limits in CI
CI runners can trigger rate limits or WAF rules. Add backoff and stable user agents, then review the QA guide.