openFDA+API.SH

openFDA API

FDA drug, device and food data from openFDA as clean JSON, with named filters and counts.

The API.SH openFDA API covers the FDA's public drug, device and food datasets with simple named filters. Search drug adverse events (FAERS) and count them by reaction, drug or country, read full drug labels, look up products in the NDC directory, check drug shortages and Drugs@FDA approvals, and search recalls. For devices: 510(k) clearances, PMA approvals, classifications, MAUDE adverse events, detailed recalls and the GUDID identifier database. Food and supplement adverse events (CAERS) are covered too.

  • 15 endpoints
  • from $1 / 1,000 calls
  • 1,000 free credits / month
  • failed calls free
FDA drug label search
GET https://api.api.sh/openfda/v1/drug-labels
{ "success": true }
1 credit · $1 per 1,000 calls

What you can build with the openFDA API

Pharmacovigilance and drug safety

Search adverse event reports by drug, reaction or seriousness and count the top reactions or a timeline of reports.

Drug reference and label apps

Find a drug's label by brand, generic or NDC, then read every section as text: indications, dosage, warnings and interactions.

Recall and shortage alerts

Watch drug, device and food recalls and the FDA drug shortage list, filtered by firm, class, status or category.

Medical device regulatory research

Look up 510(k) clearances, PMA approvals and device classes by product code, applicant or device name.

Device safety and identifiers

Search MAUDE device event reports and match devices to their GUDID identifiers, brands and models.

Approvals and food safety

Track Drugs@FDA approvals by sponsor or ingredient and food or supplement adverse events by product and reaction.

openFDA data you get

Field names from real responses. Numbers come parsed, URLs absolute, dates in ISO 8601.

openFDA API endpoints and prices

Every openFDA endpoint costs 1 credit per call: credits are $1 per 1,000 on a monthly plan, $2 pay-as-you-go. Pricing

Search and discovery1
FDA drug label search
/openfda/v1/drug-labels
$1 · $2 PAYG
1 credit
Products, listings and places4
FDA drug adverse event reports
/openfda/v1/adverse-events
$1 · $2 PAYG
1 credit
FDA adverse event counts
/openfda/v1/adverse-events/stats
$1 · $2 PAYG
1 credit
FDA device adverse event reports
/openfda/v1/devices/events
$1 · $2 PAYG
1 credit
FDA food and supplement adverse events
/openfda/v1/food-events
$1 · $2 PAYG
1 credit
More data10
FDA 510(k) device clearances
/openfda/v1/devices/510k
$1 · $2 PAYG
1 credit
FDA device classification
/openfda/v1/devices/classification
$1 · $2 PAYG
1 credit
FDA PMA device approvals
/openfda/v1/devices/pma
$1 · $2 PAYG
1 credit
FDA device recalls (detailed)
/openfda/v1/devices/recalls
$1 · $2 PAYG
1 credit
FDA device identifiers (GUDID)
/openfda/v1/devices/udi
$1 · $2 PAYG
1 credit
FDA drug approvals (Drugs@FDA)
/openfda/v1/drug-approvals
$1 · $2 PAYG
1 credit
FDA drug label (full text)
/openfda/v1/drug-label
$1 · $2 PAYG
1 credit
FDA drug shortages
/openfda/v1/drug-shortages
$1 · $2 PAYG
1 credit
FDA National Drug Code directory
/openfda/v1/ndc
$1 · $2 PAYG
1 credit
FDA recalls (drugs, devices, food)
/openfda/v1/recalls
$1 · $2 PAYG
1 credit

Call the openFDA API

FDA drug label search: GET https://api.api.sh/openfda/v1/drug-labels

curl "https://api.api.sh/openfda/v1/drug-labels?brand=tylenol" \
  -H "x-api-key: $APISH_KEY"
  1. Create a free accountConfirm your email and get 1,000 free credits every month. No card needed.
  2. Create an API keyOne key works for all 483 platforms.
  3. Send the requestJSON back in one call. Add output=csv or output=ndjson for files.

Why API.SH for openFDA data

  • Public data only: no openFDA login, cookies or account needed
  • One key and one response shape for openFDA and 482 other platforms
  • Built and maintained by API.SH, not third-party publishers
  • Pay per call; errors on our side cost nothing
  • Live status for every endpoint

API.SH vs the official openFDA API

Yes. openFDA is the FDA's own free public API (open.fda.gov), with an optional API key for higher limits and Elasticsearch-style query syntax. API.SH builds on that public data and adds named filters, count endpoints and the same key and JSON shape you use for other sources; if you only need openFDA and are happy with its query syntax, the official API is a good choice.

Instead of writing openFDA query strings and bulk-download jobs yourself, or using an Apify openFDA actor, API.SH gives you named filters, paging and counts with one key across every dataset.

openFDA API questions

What openFDA data can I get?+

Drugs: adverse events and counts, label search and full labels, NDC directory, approvals and shortages. Devices: 510(k), PMA, classification, adverse events, recalls and GUDID identifiers. Plus recall enforcement reports for drugs, devices and food, and food and supplement adverse events.

How much does the openFDA API cost?+

Every openFDA endpoint costs 1 credit per call. On a monthly plan 1,000 credits cost $1 (Starter is $50/month for 50,000 credits). Pay-as-you-go is $2 per 1,000 credits, with top-ups from $15 that never expire.

Is there a free trial?+

Yes. Every account gets 1,000 free credits every month. That is 1,000 calls to /openfda/v1/adverse-events at 1 credit each.

Is there an official openFDA API, and is it free?+

Yes. openFDA is run by the FDA and is free, with an optional key for higher limits. API.SH is a paid convenience layer over the same public data: named filters instead of query syntax, count endpoints and one JSON format alongside other sources.

Do I need an openFDA API key?+

No. You only need your API.SH key. API.SH reads the public FDA data and needs no FDA account or key from you.

Can I still use openFDA search syntax?+

Yes. Most endpoints take a search parameter for a raw openFDA query, alongside named filters such as drug, reaction, firm or product_code, plus from and to dates, sort, limit and page.

How do I count adverse events by reaction or drug?+

Call /openfda/v1/adverse-events/stats with by set to a field such as reactions, drugs or countries, plus any filters. Most other endpoints accept count_by for the same kind of grouping.

How do I get started?+

1. Sign up at api.sh. 2. Copy your API key from the dashboard. 3. Call /openfda/v1/drug-labels with a brand or generic name, then pass the set_id to /openfda/v1/drug-label for the full text. Every parameter and request examples are in the docs at https://api.sh/docs. You can also use the JS or Python SDK, Google Sheets, Zapier, Make, n8n or the MCP server at https://api.sh/mcp.

More government & registries APIs all government & registry APIs →

Start with 1,000 free credits
Every month, on every account. One key works for all 483 platforms.
Get a free API key