Developer portal · REST API /v1 · MCP

getJSON for developers.

Send a PDF, an image, plain text, CSV, an X post or any web link to one endpoint and get back JSON that is checked against your JSON Schema before it reaches your code. Get a key, run the quickstart, and read the reference below.

01

Get an API key

Trial key: the sandbox

No account and no email. Solve a one-second proof-of-work with POST /api/agent/trial/challenge and POST /api/agent/trial. The key has 2 credits, runs the budget mode, takes files up to 5 MB and expires after 24 hours unless a human claims it.

Full account by email code

POST /api/agent/signup sends a 6-digit code, POST /api/agent/verify returns a key. A new account starts with 5 free credits. The same flow mints more keys for an existing account.

In the browser

Sign in, open Settings → API keys and create a key. A key starts with gj_, is shown once and goes in every request as Authorization: Bearer gj_….

Signed in already? Go to API keys.

02

Quickstart

# 1. Start an extraction (202 → jobId)
curl https://getjson.de/v1/extract \
  -H "Authorization: Bearer $GETJSON_API_KEY" \
  -F "file=@invoice.pdf"

# 2. Poll until status is "completed" or "failed"
curl https://getjson.de/v1/jobs/<jobId> \
  -H "Authorization: Bearer $GETJSON_API_KEY"

Extraction is asynchronous. Poll every 1–2 seconds. Add schema (a JSON Schema as a string) to fix the output shape, or model to pick a mode such as auto, budget or premium. A link job in auto mode without a schema returns the source as JSON (an article, a post, a file's text) for 0 credits. To read a link without a key, call GET https://getjson.de/<url>.

03

Reference

API reference

Every endpoint with examples. Also as markdown at /docs.md.

OpenAPI 3.1 spec

The machine-readable description of the REST API.

llms.txt

The guide for AI agents: when to use getJSON and how to call it.

Agent skill

A drop-in SKILL.md for Claude Code and other skill-aware agents.

MCP server

Streamable HTTP at https://getjson.de/mcp. The link opens its Server Card.

TypeScript SDK

npm install @getjson/sdk — typed client for the /v1 API.

04

Limits and versioning

Rate limits

100 requests per minute per API key, 30 for /v1/sources. Every API response carries RateLimit-Policy and RateLimit headers (IETF draft 11) plus RateLimit-Limit, -Remaining and -Reset. A 429 adds Retry-After in seconds.

Versioning

The version is in the path: /v1. Inside /v1 we only add: new endpoints, new optional fields and new values. A breaking change ships as /v2 next to /v1.

Deprecation

A /v1 endpoint that will go away first sends a Deprecation header (RFC 9745), a Sunset header (RFC 8594) and a Link with rel="deprecation", at least 6 months before the sunset date.