Docs menu

Docs / Research snapshots

Research snapshots

Last updated 2026-11-13

The monthly snapshot files, for keys with approved research access.

GET/v1/downloads · API key required

Lists the monthly summary snapshots (gzipped CSV and JSON, one row per recall notice). Bulk downloads are not part of the free plan: a key gets them after its research and journalism access request at https://recalldb.app/data is approved (non-commercial, attribution required). Download a file with GET /v1/downloads/{name}, for example /v1/downloads/recalls-2026-11.csv.gz.

Other free keys get 403 plan_limit with a message that says how to request research access and that daily full-field snapshots with commercial use are planned for Pro.

Request

curl https://recalldb.app/v1/downloads \
  -H "Authorization: Bearer $RECALLDB_KEY"
const res = await fetch('https://recalldb.app/v1/downloads', {
  headers: { Authorization: `Bearer ${process.env.RECALLDB_KEY}` },
})
console.log(await res.json())
import os, requests

r = requests.get("https://recalldb.app/v1/downloads", headers={"Authorization": f"Bearer {os.environ['RECALLDB_KEY']}"})
r.raise_for_status()
body = r.json()
print(body)

Response

200 OK
{
  "data": [
    {
      "name": "recalls-2026-11.csv.gz",
      "size": 18234567,
      "uploaded": "2026-11-01T03:10:00.000Z"
    },
    {
      "name": "recalls-2026-11.json.gz",
      "size": 24456789,
      "uploaded": "2026-11-01T03:10:00.000Z"
    }
  ],
  "meta": {
    "how": "GET /v1/downloads/{name} with your key. Files are gzipped (CSV and JSON). One download counts as one request."
  },
  "attribution": {
    "text": "Data from RecallDB",
    "url": "https://recalldb.app"
  }
}

Every response includes source (agency, official ID, official URL, last updated) and attribution. Attribution rules.

Notes

  • Listing and each download count as one request. GET /v1/usage shows research_access (pending, approved or denied). Keys created before 2026-11-15 keep download access until 2026-12-15.

Errors: error codes. Limits: rate limits.