FDA Device Establishment Lookup
Pricing
from $10.00 / 1,000 establishment-records
FDA Device Establishment Lookup
One record per FDA-registered medical device establishment matching your firm, number, product code, device or country search, with its listed devices and their 510(k)/De Novo/PMA numbers. Public openFDA source.
Pricing
from $10.00 / 1,000 establishment-records
Rating
0.0
(0)
Developer
Chase Mariano
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
One record per FDA-registered medical device establishment that matches your search: firm name, registration or FEI number, product code, device class, brand name, 510(k)/De Novo/PMA number, country, state or the operations the facility performs (manufacturer, contract manufacturer, sterilizer…). Each record joins the facility's registration (status, address, owner/operator, US agent) to the device listings that matched, with each listing's product codes, device names, classes, regulation numbers and the premarket numbers it cites, linked to FDA's own databases. Built for medtech QA, supplier-qualification, regulatory and sales teams who need "every contract sterilizer in California" or "who manufactures under product code DXY", not the raw listing download.
Pricing: pay per event. establishment-record: one event per
establishment returned (not per listing). A search with no matches costs
you nothing.
A search is required: at least one of firm names, registration / FEI numbers, product codes, proprietary names, premarket numbers, states, countries or a listing-date window. Operations and device classes only narrow another filter. Different fields combine with AND; entries within one field combine with OR.
Product filters apply to one device. "Product code JJE, class III" means one listed device that is both. openFDA's own search matches those conditions across different devices of a listing: in a live check, all 3 hits for that query were near-misses. This Actor re-checks every hit and never charges for one.
Input
{"states": ["CA"], "establishment_types": ["contract_sterilizer"]}
Who makes devices under a product code, class III only:
{"product_codes": ["DXY"], "device_classes": ["3"]}
Which establishments cite a clearance or approval:
{"premarket_numbers": ["K103680", "DEN220039", "P990040"]}
Firm names are whole-word phrases matched against both the facility
name and its owner/operator (steris finds STERIS-owned Isomedix
sites).
Scheduled watches: turn on Changes only. The first run records a
baseline of the search and charges nothing. Later runs return only
establishments that are new, changed (device listings added or removed,
registration status, operations, registration year) or gone, each with
change_type and change_details. A change is reported exactly once.
openFDA refreshes this data monthly, and a run on unchanged data stops
after one request. A watch can cover up to 15,000 listings.
Example output (one dataset item per establishment)
{"establishment_key": "reg:3007904765","registration_number": "3007904765","fei_number": "3007904765","name": "ABIOMED EUROPE GMBH","status": "Active","registration_expiry_year": "2026","city": "Aachen North Rhine-Westphalia","country": "DE","owner_operator_name": "Abiomed Europe GmbH","us_agent_business_name": "Abiomed, Inc.","establishment_types": ["Manufacture Medical Device"],"product_codes": ["PYX","OZD"],"device_classes": ["3"],"pma_numbers": ["P170011","P140003"],"listing_count": 2,"listings": [{"product_codes": ["PYX"],"device_names": ["Temporary Non-Roller Type Right Heart Support Blood Pump"],"device_classes": ["3"],"regulation_numbers": ["870.4360"],"proprietary_names": ["Impella RP","Impella RP Flex with SmartAssist","Impella RP with SmartAssist"],"pma_number": "P170011","premarket_type": "PMA","premarket_url": "https://www.accessdata.fda.gov/scripts/cdrh/cfdocs/cfpma/pma.cfm?id=P170011","listed_dates": ["2017-11-09"]}],"fda_registration_url": "https://www.accessdata.fda.gov/scripts/cdrh/cfdocs/cfRL/rl.cfm?start_search=1&RegistrationNumber=3007904765","change_type": null,"data_last_updated": "2026-09-14"}
(Abridged: every field in the table below is always present, empty or null when the source has no value.)
Output fields
One dataset item per establishment; every field is always present
(empty or null when the source has no value). Defined in
.actor/dataset_schema.json.
| Field | Type | Description |
|---|---|---|
establishment_key | string | Stable id: reg: |
registration_number | string | FDA establishment registration number (null while awaiting assignment) |
fei_number | string | FDA Establishment Identifier (FEI) |
name | string | Establishment (facility) name |
status | string | Registration status: Active, or Active awaiting assignment of registration number |
status_code | string | Registration status code (1 or 5) |
registration_expiry_year | string | Year the registration expires (on 31 December) |
initial_importer | boolean | Whether the facility is an initial importer |
address_line_1 | string | Facility address line 1 |
address_line_2 | string | Facility address line 2 |
city | string | Facility city |
state | string | Facility US state code |
postal_code | string | Facility ZIP or postal code |
country | string | Facility ISO country code |
owner_operator_name | string | Owner/operator firm name |
owner_operator_number | string | Owner/operator number assigned by CDRH |
owner_operator_country | string | Owner/operator contact country |
us_agent_business_name | string | US agent business name (foreign establishments) |
us_agent_country | string | US agent country |
establishment_types | array | Operations performed, across the returned listings |
product_codes | array | Product codes across the returned listings |
device_classes | array | Device classes across the returned listings (1, 2, 3, U, N, F = HDE) |
k_numbers | array | 510(k) numbers cited by the returned listings |
de_novo_numbers | array | De Novo numbers cited by the returned listings |
pma_numbers | array | PMA numbers cited by the returned listings |
listing_count | integer | Number of returned (matching) device listings |
listings_truncated | boolean | True when more than 300 listings matched and only the first 300 are carried |
listings | array | The matching device listings: product codes, device names, classes, regulation numbers, specialties, proprietary names, operations, 510(k)/De Novo/PMA number with type and FDA database link, exempt flag, listing dates |
fda_registration_url | string | FDA Establishment Registration & Device Listing page for this registration number |
change_type | string | Changes-only mode: new_establishment, updated or removed; null in lookup mode |
change_details | object | Changes-only mode: added_listings, removed_listings and changed_fields (old/new); null in lookup mode |
data_last_updated | string | openFDA dataset refresh date (openFDA refreshes this data monthly) |
Coverage and limits
- Premarket links are partial, as in FDA's data. 38% of listings cite a 510(k) or De Novo number and 0.7% a PMA number; exempt and class I devices usually cite none. Links go only to FDA database pages verified to resolve (510(k), De Novo, PMA).
- Counts are openFDA's. FDA's live Establishment Registration & Device Listing site can show more listings for a facility than openFDA carries. Each record links the FDA page for the registration.
- Freshness: openFDA refreshes this dataset monthly. On 2026-09-23 the data was dated 2026-09-14, with listings created through 2026-09-13. openFDA notes listing dates "may be unreliable".
- Registrations awaiting a number (status 5) have no registration or FEI number and are keyed by owner/operator number and name.
- A lookup reads at most 20,000 listings per run; the status message says when a search has more.
Runs stop cleanly at your max-charge limit: nothing is pushed past what you agreed to pay for.
Source and terms
Source: the openFDA device registration & listing API
(api.fda.gov/device/registrationlisting.json). The data is public domain
(CC0 1.0). openFDA's disclaimer: "Do not rely on openFDA to make decisions
regarding medical care. While we make every effort to ensure that data is
accurate, you should assume all results are unvalidated." This Actor is not
affiliated with or endorsed by the FDA. An optional free openFDA API key
lifts the unkeyed limit of 1,000 requests per day per IP (Apify IPs are
shared).
Related: the FDA 510(k) / PMA Clearance Monitor for new clearance decisions, the FDA Drugs@FDA Application Lookup for drug applications, and the FDA Recall Monitor for enforcement recalls.