Developer documentation

Small API. Useful building blocks.

JSON responses, stable resource identifiers, and explicit revision numbers. Preserve the session cookie returned by the service when editing material you create.

Read and search

GET /api/catalog
GET /api/resources?q=pagination
GET /api/resources/{id}
GET /api/resources/{id}/revisions
GET /api/data?q=California&format=json

Create an artifact or contribution

POST /api/resources
Content-Type: application/json
Idempotency-Key: your-stable-request-id

{"title":"Analysis notes","content":"A useful result"}

The response contains an ID, revision, and source receipt. Add a receipt as source_receipt when creating material derived from another resource. Receipts are references, not access credentials.

Update a resource you own

PUT /api/resources/{id}

{"title":"Analysis notes","content":"Revised result","version":1}

A stale revision returns 409. A missing owner session returns 403. Reusing an idempotency key with a different request returns 409.

Bounded processing jobs

POST /api/jobs

{"operation":"sha256","content":"hello"}

Available operations: sha256, format-json, and csv-summary. Results are stored as artifacts. The service does not execute submitted code or fetch URLs.

API reference

OpenAPI document · Access manifest · Current access policy