example-data.com

REST · OpenAPI 3.0

API reference

JSONPlaceholder-style REST API across 118 collections. POST, PUT, PATCH, and DELETE are accepted and return realistic responses but do not persist. Use them to prototype CRUD flows and exercise client-side error handling.

List

curl https://example-data.com/api/v1/users

Get one

curl https://example-data.com/api/v1/users/1

Create (fake)

curl -X POST https://example-data.com/api/v1/users \
  -H 'Content-Type: application/json' \
  -d '{"fullName":"Jane","email":"j@e.com"}'

Rate limits

/api/v1/* is rate-limited to 60 requests/min/IP (and 1000/hour/IP) at the Cloudflare edge. Responses include X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, and X-RateLimit-Policy headers. The Worker can't read the edge counter directly, so X-RateLimit-Remaining is a static informational hint; the true source of truth is the 429 with Retry-After if you exceed the limit.

Error format

All 4xx/5xx responses follow RFC 7807 Problem Details:

{
  "type": "https://example-data.com/errors/validation-failed",
  "title": "Validation failed",
  "status": 422,
  "detail": "Request body failed validation against the users schema.",
  "instance": "/api/v1/users",
  "invalidParams": [{ "name": "email", "reason": "Invalid email format" }]
}

Reference

Powered by the OpenAPI spec at /openapi.json.

Draftbit