List recalls affecting a specific batch/lot
Retrieve every open recall affecting a specific (GTIN, batch) pair, sourced from FDA, USDA FSIS, CPSC, and Health Canada. Where GET /products/{gtin}/recalls returns every open recall for the GTIN, this endpoint filters to recalls whose lot_codes field matches the supplied batch value — by exact match, by inclusion in a numeric range ("lots 20261001 through 20261015"), or by wildcard prefix ("LOT-2026-*"). Recalls that do not restrict to specific lots are always included (regulator did not narrow the scope, so every batch is considered affected). Same filter / ordering / pagination contract as the GTIN-only endpoint. Designed for consumer scans of GS1 Digital Link URIs encoding batch identity in AI 10: /01/{gtin}/10/{batch} — call this endpoint with the scanned GTIN and batch to answer ‘is this lot under recall?’ rather than ‘are any batches of this GTIN recalled?’.
Authorizations
Path Parameters
GTIN-8, GTIN-12, GTIN-13, or GTIN-14 barcode digits (no spaces, no hyphens). Shorter forms are zero-left-padded to GTIN-14 server-side. Returns 404 if no product matches the normalized GTIN; 422 if the value is not a valid GTIN.
8 - 14^\d{8,14}$Batch / lot identifier from GS1 AI 10 (e.g. BATCH-2026-042, LOT-A123). Matched case-insensitively against each recall's lot_codes field with three pattern kinds: exact, range (20261001-20261015), and wildcard suffix (LOT-2026-*). If a recall does not restrict to specific lots (empty lot_codes), every batch of the GTIN is considered affected and the recall is always returned. Maximum length 64 characters.
1 - 64Query Parameters
Optional filter on the recall lifecycle state. Only ONGOING and UNKNOWN will ever return rows from this endpoint (others are excluded upstream); the parameter is exposed for completeness and forward compatibility.
ONGOING, COMPLETED, TERMINATED, UNKNOWN Optional filter on risk class. CLASS_I = highest risk (serious adverse health consequences or death). Useful for surfacing only the most dangerous open recalls.
CLASS_I, CLASS_II, CLASS_III, UNKNOWN Optional filter on the regulator that issued the recall. One of FDA, FSIS, CPSC, or HEALTH_CANADA.
FDA, FSIS, CPSC, HEALTH_CANADA Sort key. Allowed values: recall_date, -recall_date, severity, -severity. Prefix with - for descending. Omit to use the default -recall_date, -created ordering. Returns 400 for any other value.
^-?(recall_date|severity)$Page number (1-indexed).
x >= 1Number of items per page (max 100).
1 <= x <= 100