# Electric vehicle recalls

**Use case:** 

Recalls for four electric models in one run. Battery and charging recalls are among the ones NHTSA marks park-it or park-outside, and both flags are returned as true or false values so the serious ones can be found without reading every summary.

## Input

```json
{
  "vehicles": [
    {
      "make": "Tesla",
      "model": "Model Y",
      "modelYear": 2022
    },
    {
      "make": "Volkswagen",
      "model": "ID.4",
      "modelYear": 2022
    },
    {
      "make": "Chevrolet",
      "model": "Bolt EV",
      "modelYear": 2021
    },
    {
      "make": "Kia",
      "model": "EV6",
      "modelYear": 2022
    }
  ],
  "datasets": [
    "recalls"
  ],
  "maxRecordsPerVehicle": 40,
  "onlyCrashOrFire": false,
  "onlyWithInjuriesOrDeaths": false,
  "componentContains": "",
  "maxRetries": 4
}
```

## Output

```json
{
  "recordType": {
    "label": "Record Type",
    "format": "string"
  },
  "make": {
    "label": "Make",
    "format": "string"
  },
  "model": {
    "label": "Model",
    "format": "string"
  },
  "modelYear": {
    "label": "Model Year",
    "format": "integer"
  },
  "campaignNumber": {
    "label": "Campaign Number",
    "format": "string"
  },
  "component": {
    "label": "Component",
    "format": "string"
  },
  "reportReceivedDate": {
    "label": "Report Received Date",
    "format": "string"
  },
  "summary": {
    "label": "Summary",
    "format": "string"
  },
  "remedy": {
    "label": "Remedy",
    "format": "string"
  },
  "parkItAway": {
    "label": "Park It Away",
    "format": "boolean"
  },
  "odiNumber": {
    "label": "Odi Number",
    "format": "integer"
  },
  "dateOfIncident": {
    "label": "Date Of Incident",
    "format": "string"
  },
  "components": {
    "label": "Components",
    "format": "string"
  },
  "crash": {
    "label": "Crash",
    "format": "boolean"
  },
  "fire": {
    "label": "Fire",
    "format": "boolean"
  },
  "numberOfInjuries": {
    "label": "Number Of Injuries",
    "format": "integer"
  },
  "numberOfDeaths": {
    "label": "Number Of Deaths",
    "format": "integer"
  },
  "vinPrefix": {
    "label": "Vin Prefix",
    "format": "string"
  },
  "overallRating": {
    "label": "Overall Rating",
    "format": "integer"
  },
  "status": {
    "label": "Status",
    "format": "string"
  },
  "note": {
    "label": "Note",
    "format": "string"
  },
  "source": {
    "label": "Source",
    "format": "string"
  },
  "checkedAt": {
    "label": "Checked At",
    "format": "string"
  },
  "manufacturer": {
    "label": "Manufacturer",
    "format": "string"
  },
  "reportReceivedDateRaw": {
    "label": "Report Received Date Raw",
    "format": "string"
  },
  "consequence": {
    "label": "Consequence",
    "format": "string"
  },
  "notes": {
    "label": "Notes",
    "format": "string"
  },
  "parkOutside": {
    "label": "Park Outside",
    "format": "boolean"
  },
  "fixedByOverTheAirUpdate": {
    "label": "Fixed By Over The Air Update",
    "format": "boolean"
  },
  "recallModelYear": {
    "label": "Recall Model Year",
    "format": "integer"
  },
  "recallMake": {
    "label": "Recall Make",
    "format": "string"
  },
  "recallModel": {
    "label": "Recall Model",
    "format": "string"
  },
  "dateComplaintFiled": {
    "label": "Date Complaint Filed",
    "format": "string"
  },
  "dateOfIncidentRaw": {
    "label": "Date Of Incident Raw",
    "format": "string"
  },
  "vehicleId": {
    "label": "Vehicle Id",
    "format": "integer"
  },
  "vehicleDescription": {
    "label": "Vehicle Description",
    "format": "string"
  },
  "overallFrontCrashRating": {
    "label": "Overall Front Crash Rating",
    "format": "integer"
  },
  "overallSideCrashRating": {
    "label": "Overall Side Crash Rating",
    "format": "integer"
  },
  "rolloverRating": {
    "label": "Rollover Rating",
    "format": "integer"
  },
  "overallRatingRaw": {
    "label": "Overall Rating Raw",
    "format": "string"
  },
  "complaintsCount": {
    "label": "Complaints Count",
    "format": "integer"
  },
  "recallsCount": {
    "label": "Recalls Count",
    "format": "integer"
  },
  "investigationCount": {
    "label": "Investigation Count",
    "format": "integer"
  }
}
```

## About this Actor

This example demonstrates how to use [NHTSA Vehicle Recalls, Complaints & Safety Ratings API](https://apify.com/neverempty/nhtsa-vehicle-recalls.md) with a specific input configuration. Visit the [Actor detail page](https://apify.com/neverempty/nhtsa-vehicle-recalls.md) to learn more, explore other use cases, and run it yourself.


## 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.
This Task's input is already configured above — use it as-is rather than inventing a new one.

- **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 full API examples (JavaScript, Python, CLI, MCP, OpenAPI), see this Task's Actor page: https://apify.com/neverempty/nhtsa-vehicle-recalls.md

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).
