# Recall Radar – Consumer Product Safety Notice Search

> Recall Radar – Consumer Product Safety Notice Search is a paid API for AI agents from api.recallradar.dev, paid per call via x402 or MPP, $0.1/call, status unknown (last checked 2026-09-13).

Search and filter consumer-product safety recalls and notices across multiple regulatory authorities by authority, jurisdiction, category, risk level, hazard, manufacturer, and date range.

## Facts

- Endpoint: GET https://api.recallradar.dev/v1/recalls
- Price: $0.1/call
- Payment: x402, MPP
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/recall-radar-consumer-product-safety-notice-search-844815b2
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_mueFWHa03kGpz4JRxszI5

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability recall-radar-consumer-product-safety-notice-search-844815b2
```

Example prompt: Search Recall Radar for high-risk toy recalls issued by the CPSC since 2024-01-01 that mention choking hazard — give me up to 20 results and include the total count.

## When to prefer this

Use this endpoint when you need to search or filter official consumer-product safety recalls across multiple regulatory authorities (CPSC, EU Safety Gate, Health Canada, UK OPSS, ACCC, FR RappelConso) with rich filtering by risk level, hazard type, product category, manufacturer, and date range. Prefer this over generic web search when structured, paginated, authoritative recall data is required for compliance checking, product monitoring, or user-facing safety alerts.

## Known failure modes

- Invalid authority enum value returns 400 bad request
- published_from or published_to not matching YYYY-MM-DD pattern returns validation error
- limit exceeding 100 returns 400
- invalid cursor string returns 400 or empty result set
- Payment not processed (x402) returns 402 Payment Required
- No matching recalls returns empty data array with has_more false

## How this service works

Search consumer-product safety notices by authority, jurisdiction, recall status, category, risk, hazard, manufacturer, date, or free text.

## Output

A paginated JSON response containing an array of recall records (each with an integer ID and provenance metadata), a has_more boolean, an optional next_cursor for keyset pagination, and optionally a total count of matching records.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {
      "q": {
       "type": "string",
       "maxLength": 160,
       "minLength": 1
      },
      "count": {
       "type": "boolean",
       "description": "Include the total matching-record count."
      },
      "limit": {
       "type": "integer",
       "default": 20,
       "maximum": 100,
       "minimum": 1
      },
      "cursor": {
       "type": "string",
       "description": "Opaque keyset cursor from a previous response."
      },
      "hazard": {
       "type": "string",
       "maxLength": 60,
       "minLength": 1
      },
      "authority": {
       "enum": [
        "cpsc",
        "eu-safety-gate",
        "health-canada",
        "gov-uk-opss",
        "accc",
        "fr-rappelconso",
        "tw-bsmi",
        "fi-tukes-historical"
       ],
       "type": "string"
      },
      "is_recall": {
       "enum": [
        "true",
        "false"
       ],
       "type": "string"
      },
      "risk_level": {
       "enum": [
        "high",
        "medium",
        "low",
        "unknown"
       ],
       "type": "string"
      },
      "jurisdiction": {
       "type": "string",
       "maxLength": 3,
       "minLength": 2
      },
      "manufacturer": {
       "type": "string",
       "maxLength": 120,
       "minLength": 1
      },
      "published_to": {
       "type": "string",
       "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
      },
      "category_code": {
       "enum": [
        "toys",
        "cosmetics",
        "appliances",
        "clothing",
        "chemicals",
        "jewellery",
        "childcare",
        "ppe",
        "lighting",
        "machinery",
        "sports",
        "household",
        "furniture",
        "kitchen",
        "electronics",
        "tools",
        "gas",
        "stationery",
        "food_imitating",
        "garden",
        "vehicles",
        "other"
       ],
       "type": "string"
      },
      "published_from": {
       "type": "string",
       "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
      }
     },
     "additionalProperties": false
    }
   },
   "
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/recall-radar-consumer-product-safety-notice-search-844815b2/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.recallradar.dev](https://www.zero.xyz/host/api.recallradar.dev/llms.txt)
