Health Canada Recalls & Safety Alerts Scraper
Pricing
from $3.00 / 1,000 results
Health Canada Recalls & Safety Alerts Scraper
Scrape Health Canada's official Recalls and Safety Alerts database (recalls-rappels.canada.ca) - food, health product, consumer product and vehicle recalls. Search by keyword, filter by organization/category/recall class, or fetch full recall detail by ID or URL.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Scrape Health Canada's official Recalls and Safety Alerts database — the single government feed covering food recalls (CFIA), health product recalls (drugs, medical devices, natural health products, vaccines, veterinary drugs), consumer product recalls and vehicle recalls (Transport Canada). Search by keyword, browse the latest recalls, or pull the full detail of a specific recall by its ID or URL — hazard classification, affected products, companies, and the full issue/action text included.
No login, no API key, no cookies required. Works out of the box on the Apify free plan.
What this actor does
- Three modes:
search(keyword search or browse the latest recalls),byIds(exact lookup by recall ID),byUrls(direct fetch of recall URLs you already have) - Full coverage: food recalls (CFIA), health product recalls (drugs, medical devices, natural health products, vaccines, veterinary drugs), consumer product recalls, and vehicle recalls (Transport Canada)
- Filters: issuing organization, category, recall class/severity, archived status, and date range
- Bilingual: fetch either the English or French official-language edition
- Empty fields are omitted — you'll never see empty strings or
nullvalues in the output
Output per recall
Each dataset item is one recall/safety alert:
recallId— Health Canada's numeric recall node IDtitle— recall/advisory titlealertType— e.g.Food recall warning,Vehicle recall,Consumer product recall,Health product recallproduct— affected product summaryissueSummary/issueDetails— short and full description of the hazardaction/actionDetails— short and full "what to do" guidance for consumerscategory/categoryTop/categorySub— recall category and its top-level/sub-category splitorganization— issuing organization (e.g.Canadian Food Inspection Agency,Health Canada,Transport Canada)recallClass— hazard classification (Type I-IIIorClass 1-3)audience— who the recall is intended forcompanies— recalling firm(s), manufacturer(s), distributor(s)brands— brand name(s) affecteddistributionRegions— Canadian province(s)/region(s) where the product was distributeddistributionScope— depth of distribution (e.g. retail, wholesale), populated only for older pre-migration recall pages that don't carry a structureddistributionRegionslistaffectedProducts— structured table of affected SKUs (brand, product, size, UPC, lot/codes) when the source publishes oneaffectedProductsText— plain-text affected-products list when no structured table is published (common for vehicle recalls)images— product image URL(s)identificationNumber— Health Canada's public reference number (e.g.RA-81929)agencyReferenceId/agencyReferenceIdLabel— the issuing agency's own internal recall number (e.g. CFIA ID, Transport Canada recall number)safetyRisk/correctiveActions/background— extended sections published for some recalls (notably vehicle recalls)additionalDetails— any further named sections the source publishes beyond the standard setlastUpdated— date the recall was last updated (YYYY-MM-DD)recallDate— date the recall was originally issued (YYYY-MM-DD), when published separately fromlastUpdatedoriginalPublishedDate— the recall's original publish date (YYYY-MM-DD) from the source's revision history, distinct from bothlastUpdated(most recent edit) andrecallDatesourceUrl— canonical URL of the recall on recalls-rappels.canada.calanguage—enorfr, the official-language edition the record was fetched fromrecordType— alwaysrecallscrapedAt— UTC timestamp of when the record was scraped
Fields that don't apply to a given recall (e.g. affectedProducts for a recall with no product table) are simply omitted.
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | select | search | search / byIds / byUrls |
searchQuery | string | food | Free-text keyword search (mode=search). Leave blank to browse the latest recalls. |
organization | select | – | Restrict to a specific issuing organization/branch (mode=search) |
category | select | – | Restrict to a curated recall category/sub-category (mode=search) |
categoryFreeText | string | – | Advanced: exact numeric category ID, overrides category (mode=search) |
recallClass | select | – | Type I/Type II/Type III (health products) or Class 1/Class 2/Class 3 (food/consumer products) |
archived | boolean | false | Include archived (closed-out) recalls in addition to active ones |
dateFrom | date | – | Only recalls last updated on/after this date |
dateTo | date | – | Only recalls last updated on/before this date |
sortBy | select | latest | latest or oldest updated first (mode=search) |
language | select | en | en or fr — official-language edition of the database to search/fetch (mode=search, mode=byIds). byUrls always uses whichever language the given URL points to. |
ids | array | – | Recall node IDs (mode=byIds), e.g. ["82414"] |
urls | array | – | Direct recall URLs (mode=byUrls) |
maxItems | integer | 20 | Hard cap on emitted records (1-500) |
Example: browse the latest food recalls
{"mode": "search","searchQuery": "food","maxItems": 20}
Example: search for a specific hazard, filtered by class
{"mode": "search","searchQuery": "salmonella","category": "144","recallClass": "Class 1","maxItems": 50}
Example: lookup by recall ID
{"mode": "byIds","ids": ["81929", "82204"]}
Example: lookup by recall URL
{"mode": "byUrls","urls": ["https://recalls-rappels.canada.ca/en/alert-recall/heeva-fine-foods-brand-pistachio-nuts-recalled-due-salmonella"]}
Use cases
- Product safety monitoring — watch for recalls affecting a brand, ingredient, or product category.
- Compliance dashboards — track recall class (Type I-III / Class 1-3) severity trends over time.
- Consumer safety alerts — feed a notification pipeline for recalls matching your customers' products.
- Research & journalism — analyze recall volume by organization, category, or region over the years.
- Import/export compliance — cross-check shipments and inventory against active vehicle, food, and consumer product recalls.
FAQ
Does this cover food, drug, medical device, consumer product AND vehicle recalls? Yes — recalls-rappels.canada.ca is Health Canada's unified feed across all of these categories, and this actor scrapes all of them.
How far back does the data go?
The source publishes recalls going back over a decade, including archived/closed-out recalls (set archived: true to include them).
Can I filter by organization (e.g. only Transport Canada recalls)?
Yes, use the organization input field.
What does recallClass mean?
It's Health Canada's severity classification — Type I (most serious) through Type III for health products, and Class 1 (most serious) through Class 3 for food and consumer products.
Do I need a proxy or cookies? No. The source is a public government website with no anti-bot protection, so this actor runs reliably on the Apify free plan with no proxy configuration required.
Can I look up a recall I already have a link to?
Yes — use mode: "byUrls" with the recall's URL, or mode: "byIds" if you only have its numeric ID.
Why did I get fewer records than my maxItems?
Two possible reasons: your filter combination genuinely has fewer matches than requested, or (for very broad, unfiltered/lightly-filtered searches) the source site's own search pages only let you page a few hundred results deep even though it reports a much larger total match count. Narrow the search with a keyword, organization, category, or date range to reach specific results beyond that depth.
Is this affiliated with Health Canada? No, this is a third-party actor that scrapes the public recalls-rappels.canada.ca website. It is not affiliated with, endorsed by, or operated by Health Canada or the Government of Canada.