Docs menu

Docs / Recalls by company

Recalls by company

Last updated 2026-11-13

All recalls filed under one company name, across agencies.

GET/v1/companies/{id} · API key required

The id is the company address on checkrecalls.org (/company/ford-motor). Companies need at least two recalls. Names are matched as the agencies wrote them (case, punctuation and endings like Inc or LLC are ignored); companies with similar names can be listed separately.

A listing is a notice that names the company. It does not say whether an item is or is not affected.

Parameters

NameInRequiredDescription
idpathyesThe company id from its checkrecalls.org address. Example: ford-motor

Request

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

r = requests.get("https://recalldb.app/v1/companies/ford-motor", headers={"Authorization": f"Bearer {os.environ['RECALLDB_KEY']}"})
r.raise_for_status()
body = r.json()
print(body["data"], body["source"]["official_url"])

Try it

Runs a real request with no signup (20 a day per network, read-only). VINs you try are used only for this call and never stored.

Response

200 OK
{
  "data": {
    "id": "ford-motor",
    "name": "Ford Motor Company",
    "total_recalls": 412,
    "by_agency": [
      {
        "agency": "NHTSA",
        "recalls": 405
      },
      {
        "agency": "CPSC",
        "recalls": 7
      }
    ],
    "older_not_listed": 312,
    "page_url": "https://checkrecalls.org/company/ford-motor",
    "recalls": [
      {
        "id": "26V120000",
        "title": "Recall 26V120000: Ford Motor Company Brakes (NHTSA)",
        "agency": "NHTSA",
        "date": "2026-10-05",
        "page_url": "https://checkrecalls.org/recall/26v120000",
        "source": {
          "agency": "NHTSA",
          "official_id": "26V120000",
          "last_updated": "2026-11-13"
        }
      }
    ]
  },
  "meta": {
    "note": "Matched by the company name the agency wrote. Similar names can be listed separately."
  },
  "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

  • Counts as one request. A company with fewer than two recalls returns 404.

Errors: error codes. Limits: rate limits.