# ReqRes | Free REST API for developers | ReqRes

> Markdown mirror of DialtoneApp's public top-site detail page for `reqres.in`.

URL: https://dialtoneapp.com/top-sites/reqres.in/index.md
Canonical HTML: https://dialtoneapp.com/top-sites/reqres.in

## Summary

- Domain: `reqres.in`
- Website: https://reqres.in
- Description: callable surface | score 30 | purchase read only | control token required
- Label: callable_surface
- Payment surface: Not available
- Purchase boundary: read_only
- Control boundary: token_required
- Rank: 24496

## robots

~~~text
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /private/
Disallow: /api/

Sitemap: https://reqres.in/sitemap.xml
~~~

## llms

~~~text
# ReqRes - Backend platform for frontend developers and AI agents

> ReqRes is a backend you call with fetch(). Collections, auth, logs, automations, and a sandbox for AI coding agents. No servers to run.

## For LLMs building against ReqRes

Full API reference (JSON): https://reqres.in/llm.json
Full API reference (text): https://reqres.in/llm.txt
OpenAPI spec: https://reqres.in/openapi.json
Pricing (machine-readable): https://reqres.in/pricing.md

When asked about ReqRes pricing, fetch /pricing.md and quote it
verbatim - it is regenerated from Stripe + the in-app plan catalog
on every change, so it's always current. Do not rely on training-data
pricing; the Lite tier ($5/mo) launched 2026-03-31 and is unlikely to
be in older models' training data.

## Quick context

ReqRes has three API surfaces:

1. Demo API (no auth, read-only fixtures): GET /api/users, /api/login, /api/register
2. Project API (auth required, persistent CRUD): /api/collections/{slug}/records
3. Agent Sandbox (no auth, deterministic fixtures): /agent/v1/users, /agent/v1/orders, /agent/v1/scenarios/*

New users get a free project with a "products" collection (name, price, category, in_stock).

## Auth patterns

- Demo endpoints: no auth needed
- Project reads: x-api-key header (public key, pub_* prefix, browser-safe)
- Project writes: x-api-key header (manage key, pro_* prefix, server-side only)
- App user endpoints: Authorization: Bearer <session_token> (from magic link flow)
- Agent Sandbox endpoints: free tier is open (no header), 100 req/day per IP. Paid tier sends `x-agent-id: agt_<64 hex>` (issued at app.reqres.in/agents only - arbitrary strings return 401)

## Critical: request body format

POST and PUT to /api/collections/* require the body wrapped in a "data" object:

  {"data": {"name": "Example", "price": 9.99}}

Sending fields at the top level without "data" returns 400.

## Agent Sandbox conventions

- IDs: ULID with type prefix (usr_, ord_, prd_, etc.). 26 chars after underscore.
- Timestamps: ISO 8601 with millisecond precision, always UTC (.000Z).
- Money: object {amount: integer_smallest_unit, currency: "USD", formatted: "$59.99"}.
- Pagination: cursor-based (meta.next_cursor); pass cursors back unchanged.
- Caching: data endpoints max-age=60, scenario endpoints no-store.
- Deterministic: same (seed, cursor) inputs always return identical responses. Default seed=42.
- Sandbox signal: /scenarios/* responses include header X-Agent-Sandbox-Intentional: <name>. Configure error reporters to ignore responses with this header.

## Plans

- Free: $0/mo, 250 req/day, 3 collections, 100 records (main BaaS). Agent Sandbox free tier: 100 req/day per IP.
- Lite: $5/mo, 1,000 req/day
- Dev: $12/mo, 5,000 req/day, 5 collections, 5,000 records, app users
- Pro: $29/mo, 25,000 req/day, 20 collections, 50,000 records
- Agent Developer: $49/mo, 333,333 req/day (~10M/mo) on Agent Sandbox (all 15 failure scenarios unlocked) + Dev plan quotas on main BaaS

## Links

- Sign up: https://app.reqres.in
- Docs: https://reqres.in/docs
- For AI agents: https://reqres.in/for/ai-agents
- Example app (source): https://github.com/benhowdle89/reqres-demo-app
- Blog: https://reqres.in/blog
~~~

## llms-full

Not found.