# FDA MAUDE Medical Device Adverse Events Scraper API (`pink_comic/fda-maude-device-events`) Actor

Search FDA MAUDE adverse-event reports by report, manufacturer, device, product code, event, dates, patient outcome, and device problem. Returns source-linked nested device and patient evidence with mandatory non-causation limits.

- **URL**: https://apify.com/pink\_comic/fda-maude-device-events.md
- **Developed by:** [Ava Torres](https://apify.com/pink_comic) (community)
- **Categories:** Business, Automation, AI
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 fda maude medical device adverse events scraper ap evidence items

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## FDA MAUDE Medical Device Adverse Events Scraper API

Search the **FDA MAUDE** report collection through the official, no-key openFDA Device Event API. This paid actor returns normalized, source-linked event records with stable nested device, patient, product-problem, and narrative evidence.

### Fast default and price

The default searches `genericName: "Infusion Pump"` plus `eventType: "Malfunction"`, sorts by FDA received date descending, and returns **one report**. Maximum first-run charge is **$0.0021**: $0.0001 start + $0.002 for one dataset item. `maxResults` is a total response cap (1–1,000), and an Apify maximum-charge budget can lower it before source pagination.

```json
{"genericName":"Infusion Pump","eventType":"Malfunction","maxResults":1}
```

Manufacturer/device-problem example:

```json
{"manufacturer":"Medtronic","deviceProblem":"Failure to Deliver","dateFrom":"2024-01-01","dateTo":"2025-12-31","maxResults":25}
```

Exact report lookup:

```json
{"reportNumber":"3013756811-2020-40786","maxResults":1}
```

### Filters

Report number, manufacturer, brand name, FDA device name, generic name, FDA product code, event type, FDA received-date range, reported patient outcome, and reported device/product problem. Populated filters are combined with AND. Results are newest-first, paginated within explicit bounds, and capped by total `maxResults`.

### Output

Each found item includes report/MDR identifiers, report and event dates, event/report types, manufacturer, product problems, nested devices (brand, generic name, manufacturer, product code, model/catalog/lot, UDI and FDA classification), nested patient outcomes/problems/treatments, narratives, retrieval time, exact API record URL, query bounds, and evidence notices. `NO_MATCH`, `INVALID_INPUT`, and `SOURCE_UNAVAILABLE` are explicit evidence records instead of silent empty runs (except when a buyer charge cap affords zero paid items).

### Required interpretation limits

MAUDE includes mandatory and voluntary reports submitted to FDA. A report **does not establish causation, incidence rates, a device defect, recall status, or clinical risk**. Reports can be incomplete, duplicated, corrected, delayed, or unverified. A missing result does not prove no report exists. MAUDE is not a complete denominator, real-time safety feed, recall database, clinical recommendation, or FDA endorsement. Review the linked FDA record and relevant FDA recall/safety sources before making decisions.

# Actor input Schema

## `reportNumber` (type: `string`):

Optional report number filter or result-control setting. See the README for source semantics and examples.

## `manufacturer` (type: `string`):

Optional manufacturer filter or result-control setting. See the README for source semantics and examples.

## `brandName` (type: `string`):

Optional brand name filter or result-control setting. See the README for source semantics and examples.

## `deviceName` (type: `string`):

Optional fda device name filter or result-control setting. See the README for source semantics and examples.

## `genericName` (type: `string`):

Optional generic device name filter or result-control setting. See the README for source semantics and examples.

## `productCode` (type: `string`):

Optional fda product code filter or result-control setting. See the README for source semantics and examples.

## `eventType` (type: `string`):

Optional event type filter or result-control setting. See the README for source semantics and examples.

## `dateFrom` (type: `string`):

YYYY-MM-DD

## `dateTo` (type: `string`):

YYYY-MM-DD

## `patientOutcome` (type: `string`):

Optional patient outcome filter or result-control setting. See the README for source semantics and examples.

## `deviceProblem` (type: `string`):

Optional device/product problem filter or result-control setting. See the README for source semantics and examples.

## `maxResults` (type: `integer`):

Total paid item cap. Default one item costs at most $0.0021 including the $0.0001 start.

## Actor input object example

```json
{
  "reportNumber": "",
  "manufacturer": "",
  "brandName": "",
  "deviceName": "",
  "genericName": "Infusion Pump",
  "productCode": "",
  "eventType": "Malfunction",
  "dateFrom": "",
  "dateTo": "",
  "patientOutcome": "",
  "deviceProblem": "",
  "maxResults": 1
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "genericName": "Infusion Pump",
    "maxResults": 1
};

// Run the Actor and wait for it to finish
const run = await client.actor("pink_comic/fda-maude-device-events").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "genericName": "Infusion Pump",
    "maxResults": 1,
}

# Run the Actor and wait for it to finish
run = client.actor("pink_comic/fda-maude-device-events").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "genericName": "Infusion Pump",
  "maxResults": 1
}' |
apify call pink_comic/fda-maude-device-events --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=pink_comic/fda-maude-device-events",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/dpqEgGos1qJ5MGFGg/builds/bC5EpsTKc99XNo7bd/openapi.json
