Is my medication recalled? Checks the FDA enforcement databases (drug AND food — infant fo
Is my medication recalled? Checks the FDA enforcement databases (drug AND food — infant formula and supplements are filed under food) for active and past recalls, explains the recall class (I/II/III) in plain language, and lays out what to do. For patient, caregiver, pharmacy, and health-assistant agents.
100000 (raw units)
price
3
calls / 30d
2
unique payers
2026-08-26
updated
Provider
clinicalintelpulse.theaslangroupllc.com · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "100000",
"maxTimeoutSeconds": 604900
},
{
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "985iFjbnGQ3dJcwXnfRCMSrH4Jnc3kW1N6msR64B5KX1",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:137",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:42161",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:480",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x79A02482A880bCe3F13E09da970dC34dB4cD24D1",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:143",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x754704Bc059F8C67012fEd69BC8A327a5aafb603",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:196",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x779ded0c9e1022225f8e0630b35a9b54be713736",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:999",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0xb88339CB7199b77E23DB6E890353E22632Ba630f",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "algorand:wGHE2Pwdvd7S12BL5FaOP20EGYesN73k",
"payTo": "62A253YPATFNJCPRKID3FKD77MYJFNTVRYRP4B4JWG36EGLPY7UXFWGI7I",
"asset": "31566704",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "xrpl:0",
"payTo": "rMnHeutYALco8RYFVcmuU4BCgSzBpPEh32",
"asset": "XRP",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "xrpl:0",
"payTo": "rMnHeutYALco8RYFVcmuU4BCgSzBpPEh32",
"asset": "524C555344000000000000000000000000000000",
"amount": "0.1",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:56",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x8d0D000Ee44948FC98c9B98A4FA4921476f08B0d",
"amount": "100000000000000000",
"maxTimeoutSeconds": 300
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"method": "GET",
"queryParams": {
"drug": "Brand or generic medication name — e.g. \"metformin\" | \"valsartan\" | \"Zantac\" | \"ranitidine\"",
"lang": "en | es | fr | de | ja | zh | ko | pt | ar | hi (default: en)"
},
"type": "http"
},
"output": {
"errors": {
"400": {
"description": "Invalid or missing parameter(s). Returned before the payment gate on paid requests, so a malformed call is never charged. JSON body: { error: <what is wrong and how to fix it> } plus usage hints.",
"example": {
"error": "invalid request"
}
},
"402": {
"description": "Payment required — x402 v2 challenge; the accepts array lists scheme, network, and amount. Retry the same request with a PAYMENT-SIGNATURE (v2) or X-PAYMENT (v1) header. Verification is free."
},
"500": {
"description": "Unexpected server error. If a payment settled without a usable result, contact [email protected] with the settlement tx hash for a re-run or credit.",
"example": {
"error": "upstream_failed"
}
}
},
"example": {
"bottom_line": "There are active recalls for some valsartan lots over a trace impurity — check your specific bottle rather than assuming yours is affected.",
"disclaimer": "Recall records come from the FDA openFDA enforcement database. A recall of one lot does not mean every bottle of this drug is affected — check the specific product, lot number, and NDC against the recall notice, and ask your pharmacist.",
"has_active_recall": true,
"highest_severity": "Class II",
"query_summary": {
"drug": "valsartan",
"records_found": 6
},
"recalls": [
{
"classification": "Class II",
"date": "20251104",
"product": "Valsartan tablets, 160 mg",
"reason": "Detection of a trace nitrosamine impurity (NDMA) above the acceptable daily limit.",
"recalling_firm": "Example Pharma Inc.",
"status": "Ongoing",
"voluntary_or_mandated": "Voluntary",
"where_distributed": "Nationwide (US)"
}
],
"severity_meaning": "Class II means the product might cause temporary or medically reversible health problems, and the chance of serious harm is low.",
"what_to_do": [
"Find the NDC and lot number on your bottle and compare them to the recall notice.",
"Call your pharmacy — they can tell you if your specific lot is affected and provide a replacement.",
"Do not stop a blood-pressure medicine on your own; ask your pharmacist about a safe alternative first."
]
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET",
"HEAD",
"DELETE"
],
"type": "string"
},
"queryParams": {
"properties": {
"drug": {
"type": "string"
},
"lang": {
"type": "string"
}
},
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"errors": {
"additionalProperties": {
"properties": {
"description": {
"type": "string"
},
"example": {
"type": "object"
}
},
"required": [
"description"
],
"type": "object"
},
"description": "Documented error responses, keyed by HTTP status code",
"type": "object"
},
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
},
"builder-code": {
"info": {
"a": "bc_gxy6qn5p"
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"a": {
"description": "App builder code",
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
},
"s": {
"description": "Service builder codes",
"items": {
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
},
"type": "array"
},
"w": {
"description": "Wallet builder code",
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
}
},
"type": "object"
}
},
"reconciliation": {
"info": {
"category": "Software > Data & APIs",
"memo": "PulseNetwork ClinicalIntelPulse /api/clinical/recall-check: pay-per-call data API, 1 request, USD 0.1. Seller: The Aslan Group LLC.",
"receipt": {
"format": "ISO 20022 camt.054-style XML+JSON, Ed25519-signed, deterministic",
"obtain": "GET https://onchainpulse.theaslangroupllc.com/api/iso-receipt?tx=<transaction from PAYMENT-RESPONSE>&chain=<base|solana|ethereum|polygon|arbitrum|optimism|bsc|avalanche|robinhood> (x402, USD 0.05)",
"verify": "https://onchainpulse.theaslangroupllc.com/verify.html"
},
"seller": {
"brand": "PulseNetwork",
"catalog": "https://pulse.theaslangroupllc.com",
"legal_name": "The Aslan Group LLC"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"category": {
"type": "string"
},
"memo": {
"description": "Seller-provided reconciliation memo for this purchase. Pass it to your payment tool where one is accepted (e.g. the memo input of Ramp pay-with-x402).",
"type": "string"
},
"receipt": {
"properties": {
"format": {
"type": "string"
},
"obtain": {
"type": "string"
},
"verify": {
"type": "string"
}
},
"type": "object"
},
"seller": {
"properties": {
"brand": {
"type": "string"
},
"catalog": {
"type": "string"
},
"legal_name": {
"type": "string"
}
},
"type": "object"
}
},
"required": [
"memo"
],
"type": "object"
}
}
}Use it
curl
curl "https://clinicalintelpulse.theaslangroupllc.com/api/clinical/recall-check" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://clinicalintelpulse.theaslangroupllc.com/api/clinical/recall-check");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://clinicalintelpulse.theaslangroupllc.com/api/clinical/recall-check")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/4538.json, and this resource appears in /discovery/resources and /discovery/search.