API Reference

Extract structured JSON from any URL using your schema.

Base URL

https://api.jsonit.io

Authentication

Pass your API key as a Bearer token in the Authorization header.

Authorization: Bearer sk_live_your_api_key
POST/v1/extract

Extract structured data from a URL using a JSON Schema definition.

Request body

{
  "url": "string (required) — the page to scrape",
  "schema": "object (required) — JSON Schema for the data shape you want"
}

Example request

curl -X POST https://api.jsonit.io/v1/extract \
  -H "Authorization: Bearer sk_live_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://github.com/trending",
    "schema": {
      "type": "object",
      "properties": {
        "repos": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": { "type": "string" },
              "description": { "type": "string" },
              "stars": { "type": "number" },
              "language": { "type": "string" }
            }
          }
        }
      }
    }
  }'

Example response

{
  "success": true,
  "url": "https://github.com/trending",
  "data": {
    "repos": [
      {
        "name": "anthropics/claude-code",
        "description": "Claude Code CLI",
        "stars": 12400,
        "language": "TypeScript"
      }
    ]
  },
  "extracted_at": "2026-07-16T00:00:00.000Z"
}

Rate limits

PlanRequests / hourMonthly cap
Free10100
Starter1002,500
Growth50010,000
Pro2,00050,000

Rate limit headers are returned on every response: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.

Error codes

CodeMeaning
400Bad request — missing or invalid parameters
401Invalid or missing API key
429Rate limit exceeded — upgrade plan for more
500Extraction failed — not billed