AU Food Recalls API
Base URL: https://api.techcompass.com.au. FSANZ food recall notices with structured JSON. Updated every 2 hours. Free tier.
About this Dataset
The AU Food Recalls API exposes food recall notices published by Food Standards Australia New Zealand (FSANZ), the joint AU/NZ government authority responsible for food safety regulation under the Food Standards Australia New Zealand Act 1991. Recall data is also published on the productsafety.gov.au consumer product safety portal. The Tech Compass API returns the same notices as structured JSON, with 2-hourly updates and historical accumulation, including product category, hazard type, supplier ABN, and distribution states on every record.
What is a food recall?
A food recall is issued when a food product is found to pose a health or safety risk and must be removed from sale. FSANZ coordinates recalls across all Australian states and territories. Each recall notice includes the product name, the responsible supplier (often identified by ABN), the reason for recall (e.g. undeclared allergen, microbial contamination, foreign matter), the distribution states, and the issuing authority.
Update frequency
The Tech Compass pipeline polls the FSANZ recall feed every 2 hours. New recalls are typically available within 2 hours of FSANZ publication. The pipeline accumulates all recalls over time via unique recall_id — historical data is preserved even after a product recall is resolved.
Data lineage
Every response includes a data_lineage block with source, source_attribution, license, and retrieved_at for audit purposes.
Licensing
FSANZ recall data is published under Creative Commons Attribution 4.0 International (CC BY 4.0). Commercial use is permitted with attribution. The data_lineage.license field in every response carries the attribution string.
Authentication & Tiers
All endpoints require an API key:
Authorization: ApiKey tc_live_<your_key>
| Endpoint | Free tier | Pro tier |
|---|---|---|
| List, Search, Detail | Yes | Yes |
Batch ABN Screen (/screen) | No | Yes |
Recall Object
All endpoints return recall objects with the following fields:
| Field | Type | Description |
|---|---|---|
recall_id | string | Unique FSANZ recall identifier |
product_name | string | Full product name as published by FSANZ |
recall_type | string|null | Type of recall (e.g. Trade Level, Consumer Level) |
hazard_description | string|null | Full description of the hazard or reason for recall |
hazard_type | string|null | Hazard category (e.g. undeclared_allergen, microbial_contamination, foreign_matter) |
recall_initiator | string|null | Name of the responsible supplier or initiating entity |
initiator_abn | string|null | ABN of the responsible supplier (11 digits, no spaces) |
states_affected | array|null | Australian states/territories where the product was distributed (e.g. ["NSW", "VIC", "QLD"]) |
recall_date | ISO 8601 date|null | Date the recall was issued |
recall_status | string | active or completed |
fsanz_url | string|null | Link to the original FSANZ recall notice |
first_ingested_at | ISO 8601 datetime | When Tech Compass first ingested this recall |
last_updated_at | ISO 8601 datetime | When this recall record was last updated |
Endpoints
GET /v1/au/recalls/food
List food recalls. Returns active recalls by default, newest first.
| Parameter | Type | Default | Description |
|---|---|---|---|
status | string | active | active or completed or all |
hazard_type | string | — | Filter by hazard category |
state | string | — | Filter by distribution state (e.g. NSW, VIC) |
from_date | ISO 8601 date | — | Recalls issued on or after this date |
limit | int | 50 | Max results to return (1–200) |
offset | int | 0 | Pagination offset |
curl "https://api.techcompass.com.au/v1/au/recalls/food?status=active&state=NSW&limit=20" \
-H "Authorization: ApiKey tc_live_<your_key>"
{
"recalls": [
{
"recall_id": "FSANZ-2026-0142",
"product_name": "Organic Cashew Butter 250g",
"recall_type": "Consumer Level",
"hazard_description": "May contain undeclared peanuts — risk to peanut-allergic consumers",
"hazard_type": "undeclared_allergen",
"recall_initiator": "Nut Co Pty Ltd",
"initiator_abn": "51824753556",
"states_affected": ["NSW", "VIC", "QLD"],
"recall_date": "2026-07-04",
"recall_status": "active",
"fsanz_url": "https://www.foodstandards.gov.au/food-recalls/...",
"first_ingested_at": "2026-07-04T08:12:00Z",
"last_updated_at": "2026-07-04T08:12:00Z"
}
],
"limit": 20,
"offset": 0,
"data_lineage": {
"request_id": "a1b2c3...",
"source": "fsanz_recalls",
"source_url": "https://www.foodstandards.gov.au/food-recalls",
"source_attribution": "Food Standards Australia New Zealand (FSANZ)",
"license": "Creative Commons Attribution 4.0 International (CC BY 4.0). Source: Food Standards Australia New Zealand.",
"retrieved_at": "2026-07-07T10:00:00Z"
}
}
GET /v1/au/recalls/food/search
Search by product name or exact ABN. The endpoint auto-detects ABN input (11 digits, with or without spaces/hyphens).
| Parameter | Required | Description |
|---|---|---|
q | Yes | Search term. If 11 digits (after stripping spaces): exact ABN match. Otherwise: case-insensitive product name substring match. |
# Search by product name
curl "https://api.techcompass.com.au/v1/au/recalls/food/search?q=cashew" \
-H "Authorization: ApiKey tc_live_<your_key>"
# Search by ABN
curl "https://api.techcompass.com.au/v1/au/recalls/food/search?q=51824753556" \
-H "Authorization: ApiKey tc_live_<your_key>"
q is an 11-digit string, the search returns all recalls where initiator_abn matches exactly. This is the recommended way to check a specific supplier for any active recalls before onboarding or purchasing.
GET /v1/au/recalls/food/{recall_id}
Retrieve the full detail for a single recall by its FSANZ recall ID. Returns HTTP 404 if the recall ID is not in the database.
curl "https://api.techcompass.com.au/v1/au/recalls/food/FSANZ-2026-0142" \
-H "Authorization: ApiKey tc_live_<your_key>"
POST /v1/au/recalls/food/screen
Batch screen multiple ABNs for active food recalls. Returns a per-ABN results dict. Useful for periodic supplier audits.
| Field | Type | Description |
|---|---|---|
identifiers | array of strings | List of ABNs to screen (11 digits each, spaces optional). Max 100 per call. |
curl -X POST "https://api.techcompass.com.au/v1/au/recalls/food/screen" \
-H "Authorization: ApiKey tc_live_<your_key>" \
-H "Content-Type: application/json" \
-d '{"identifiers": ["51824753556", "88123456789", "31632578342"]}'
{
"results": {
"51824753556": [
{
"recall_id": "FSANZ-2026-0142",
"product_name": "Organic Cashew Butter 250g",
"recall_type": "Consumer Level",
"hazard_description": "May contain undeclared peanuts",
"hazard_type": "undeclared_allergen",
"recall_initiator": "Nut Co Pty Ltd",
"initiator_abn": "51824753556",
"states_affected": ["NSW", "VIC", "QLD"],
"recall_date": "2026-07-04",
"recall_status": "active",
"fsanz_url": "https://www.foodstandards.gov.au/food-recalls/...",
"first_ingested_at": "2026-07-04T08:12:00Z",
"last_updated_at": "2026-07-04T08:12:00Z"
}
],
"88123456789": [],
"31632578342": []
},
"data_lineage": { ... }
}
Error Reference
| Status | Meaning |
|---|---|
| 400 | Invalid parameters (e.g. invalid ABN format in /screen) |
| 401 | Missing or invalid API key |
| 403 | /screen endpoint requires Pro tier |
| 404 | Recall ID not found |
| 429 | Monthly API call quota exhausted |
Common Use Cases
1. Monitor for active recalls in a state
Who uses this: State health authorities, supermarket chains, and food distributors tracking active recalls in their region.
curl "https://api.techcompass.com.au/v1/au/recalls/food?status=active&state=VIC" \
-H "Authorization: ApiKey YOUR_KEY"
states_affected is an array — a recall distributed nationally appears in every state query. Omit the state filter to see all active recalls.2. Screen a new food supplier by ABN before onboarding
Who uses this: Procurement teams, supermarkets, and food service businesses conducting supplier due diligence.
curl "https://api.techcompass.com.au/v1/au/recalls/food/search?q=51824753556" \
-H "Authorization: ApiKey YOUR_KEY"
status: "active" is a live risk. Check hazard_type to assess severity. undeclared_allergen and microbial_contamination carry higher regulatory risk than foreign_matter.3. Filter by hazard type for allergen compliance
Who uses this: Food manufacturers, hospitality operators, and school food programs managing allergen risk.
curl "https://api.techcompass.com.au/v1/au/recalls/food?hazard_type=undeclared_allergen&status=active" \
-H "Authorization: ApiKey YOUR_KEY"
4. Weekly batch supplier audit (Pro)
Who uses this: Supermarket chains and food distributors with a known supplier list, running weekly compliance checks.
curl -X POST "https://api.techcompass.com.au/v1/au/recalls/food/screen" \
-H "Authorization: ApiKey YOUR_KEY" \
-d '{"abns": ["51824753556", "88123456789", ...]}'
About this API
What this API does
The Tech Compass AU Food Recalls API provides structured access to Food Standards Australia New Zealand (FSANZ) food recall notices — product name, hazard type, distribution states, supplier ABN, and issuing authority. The pipeline polls FSANZ every 2 hours and accumulates recall history indefinitely. All responses include data lineage and CC BY 4.0 attribution for audit purposes.
Who uses this API
- Supermarket chains and food distributors screening supplier ABNs for active recalls
- Food manufacturers monitoring the market for competitor or ingredient-supplier recalls
- State and territory health authorities automating recall notification workflows
- Insurers assessing food product liability exposure by supplier ABN
- Procurement teams conducting pre-onboarding supplier due diligence
- RegTech platforms embedding food safety data into compliance workflows
Applicable compliance frameworks
- Food Standards Australia New Zealand Act 1991 — recall notification obligations
- Australian Consumer Law (ACL) — product safety and recall response requirements
- HACCP (Hazard Analysis and Critical Control Points) — food safety management
- ISO 22000 — food safety management system standard
- APRA CPS 234 — third-party risk management (for insurers with food product exposure)
Data source
- Food Standards Australia New Zealand (FSANZ) — foodstandards.gov.au/food-recalls — CC BY 4.0 International
Frequently asked questions
- How current is the recall data?
- The pipeline polls FSANZ every 2 hours. New recalls are typically available in the API within 2 hours of FSANZ publication.
- Does the API include historical recalls?
- Yes. The pipeline accumulates all recalls via unique
recall_idupsert. Completed recalls remain in the database withstatus: "completed". Usestatus=allto query both active and completed recalls. - Why is the supplier ABN sometimes null?
- Not all FSANZ recall notices include an ABN for the responsible supplier. When ABN is absent,
initiator_abnisnullandrecall_initiatorcontains the name as published by FSANZ. - How do I get notified automatically when a supplier is recalled?
- Add the supplier's ABN to a CMaaS watchlist with
products_monitored: ["fsanz_recall"]. You'll receive a signed webhook POST within 2 hours of any new recall for that supplier.
Related APIs
- Compliance Monitoring API (CMaaS) — automated watchlist-based recall alerts
- AU Entity Intelligence API — ASIC and ABR status for supplier due diligence
- AU Financial Advisers API — ASIC Financial Advisers Register