Pharma & Controlled Substances
FDA Drug Search
GET
/v1/pharma/fda/drug/search$0.01 per callSearch the FDA drug database via openFDA.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| qrequired | query | string | Brand name, generic name, or manufacturer |
Response fields
| Field | Type | Description |
|---|---|---|
| success | boolean | e.g. true |
| query | string | e.g. ibuprofen |
| results | array | |
| results[].productNdc | string | e.g. 69135-0002 |
| results[].genericName | string | e.g. Ibuprofen |
| results[].brandName | string | e.g. |
| results[].labelerName | string | e.g. SI Group, Inc. |
| results[].dosageForm | string | e.g. POWDER |
| results[].route | array | |
| results[].marketingCategory | string | e.g. BULK INGREDIENT |
| results[].applicationNumber | string | e.g. |
| results[].productType | string | e.g. BULK INGREDIENT |
| results[].activeIngredients | array | |
| results[].packaging | array | |
| results[].listingExpirationDate | string | e.g. 20261231 |
| totalResults | number | e.g. 10 |
| limit | number | e.g. 10 |
| offset | number | e.g. 0 |
| dataSource | object | |
| dataSource.name | string | e.g. openFDA Drug NDC Directory (PostgreSQL) |
| dataSource.apiUrl | string | e.g. database |
| dataSource.totalRecords | number | e.g. 25711 |
| meta | object | |
| meta.dataSource | object | |
| meta.dataSource.name | string | e.g. openFDA Drug NDC Directory (PostgreSQL) |
| meta.dataSource.provenance | string | e.g. database |
Fields are read from a real response captured 2026-11-04, shortened. Optional fields may be absent in other responses.
Errors
- 400 invalid request
- 401 missing or bad key
- 403 not in your plan
- 429 rate limited, see Retry-After
- 402 payment required
- 5xx retry with backoff
Error bodies and codes are described in Error codes and troubleshooting.