# FMCSA New Authority Grants (scrubbed) (`shawndunn/fmcsa-new-authority-grants`) Actor

New FMCSA operating-authority grants from public FMCSA data. No phone numbers or emails included; names and street addresses of apparent individuals removed (automated). As-is; not a consumer report (no FCRA use). Terms: carrierdaily.com/terms. Removal: carrierdaily.com/removal.

- **URL**: https://apify.com/shawndunn/fmcsa-new-authority-grants.md
- **Developed by:** [CarrierDaily](https://apify.com/shawndunn) (community)
- **Categories:** Lead generation, Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$6.20 / 1,000 grant results

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/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

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

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## FMCSA New Authority Grants (scrubbed)

Motor carriers newly granted FMCSA operating authority (MC/FF/MX dockets), joined with business name,
address, insurance minimums and fleet size from public FMCSA data on data.transportation.gov.

### Privacy by design

- No phone numbers, no emails, no officer or contact names, ever. The run fails rather than push a row
  that looks like one.

- **Individuals:** We remove phone numbers, emails and officer names. When a carrier appears to be an
  individual rather than a registered company, we remove its name and street address. This screening is
  automated and may not catch every case; ask us at https://carrierdaily.com/removal and we'll remove any
  record. Only true legal-entity suffixes (LLC, INC, CORP, CO, COMPANY, LTD, LP, LLP, PLLC, PC and foreign
  equivalents) count as a registered company; trade words such as TRUCKING, EXPRESS or HAULING do not.
  Redacted rows have `is_individual_redacted` = `true`; USDOT number, docket, city, state and ZIP are kept.

- **Government data only:** every field comes from FMCSA/DOT datasets on data.transportation.gov. No
  third-party enrichment.

- **Removal list:** carriers that asked to be removed are excluded before anything is pushed or billed.
  Removal requests: https://carrierdaily.com/removal or removals@carrierdaily.com. We stop including the
  record right away and complete valid requests within 10 business days; you must stop using and delete
  removed records within 10 days of notice.
  If a docket or USDOT number appears on CarrierDaily's removal list, delete it from any copy of this data you
  hold within 10 days and stop using it to contact the carrier.

### Input

| field | default | meaning |
|---|---|---|
| `mode` | `latestDay` | `latestDay` = newest grant date in FMCSA's daily diff; `wholeDiff` = every grant in the diff (last few days) |
| `date` | empty | `YYYY-MM-DD`; overrides `mode` |
| `maxItems` | 200 | result cap (each result is one billed event); 0 = no limit |
| `includeMailingAddress` | true | include mailing address columns |
| `socrataAppToken` | empty | optional, raises Socrata rate limits |
| `suppressedDockets` | empty | extra docket numbers (or `USDOT 1234567`) to exclude, on top of the bundled removal list |

The default input finishes in well under a minute (about 40 grants on a typical day).

### Output

One dataset item per grant: `status_change_date, docket_number, usdot_number, op_auth_type,
op_auth_status, reason, legal_name, dba_name, is_individual_redacted, bus_street, bus_city, bus_state,
bus_zip, bus_country, mail_*, min_cov_amount, bipd_on_file, cargo_req, bond_req, power_units,
total_drivers, carrier_operation, dot_add_date, insurance_on_file, row_key, ...`.

### Pricing

$0.0062 per result (about $81/month for all states).

Pay per event: one `result` event per dataset item. No start fee. Your max-charge limit is respected:
the Actor stops pushing when it is reached.

### Terms of use

By running this Actor you agree to the CarrierDaily Terms of Service: https://carrierdaily.com/terms

- **As-is:** Data is compiled from public FMCSA records, provided as-is, without warranty of accuracy or
  completeness.
- **Not a consumer report (FCRA):** We are not a consumer reporting agency, and the data is not a "consumer
  report" under the Fair Credit Reporting Act (FCRA) or state law. You may use it to identify and market to
  businesses. You may not use it, in whole or in part, as a factor in deciding whether any individual is
  eligible for credit, insurance underwriting or rating, employment, housing, or any other purpose covered by
  the FCRA.
- **TCPA / outreach:** No phone numbers or emails included. Buyers are solely responsible for compliance
  with TCPA, Do-Not-Call, CAN-SPAM, and state telemarketing and privacy laws.
- **No resale** of the raw data.

Source: Federal Motor Carrier Safety Administration data published on data.transportation.gov.
CarrierDaily is not affiliated with or endorsed by FMCSA or the U.S. Department of Transportation.

### Changelog

- **0.5 (2026-10-16):** output column `insured` renamed to `insurance_on_file`. Same values: `yes` if BIPD
  insurance on file meets the FMCSA required minimum, `no` if short or missing, empty if no requirement. It is not a
  copy of `bipd_on_file` (that is the filed amount), so it was renamed, not dropped. Update any integration that
  reads `insured`.

# Actor input Schema

## `mode` (type: `string`):

latestDay = only the newest grant date in FMCSA's daily diff (fast default). wholeDiff = every grant in the diff (last few days). Ignored when Date is set.

## `date` (type: `string`):

Optional YYYY-MM-DD. Only grants with this date (FMCSA's diff keeps the last few days).

## `maxItems` (type: `integer`):

Cap on results (each result is one billed event). 0 = no limit.

## `includeMailingAddress` (type: `boolean`):

Business city/state/ZIP are always included; street lines only for businesses.

## `socrataAppToken` (type: `string`):

Raises data.transportation.gov rate limits. Not required.

## `suppressedDockets` (type: `array`):

Optional docket numbers (MC/FF/MX, prefix optional) or 'USDOT 1234567' entries to exclude, in addition to the bundled removal list.

## Actor input object example

```json
{
  "mode": "latestDay",
  "maxItems": 200,
  "includeMailingAddress": true,
  "suppressedDockets": []
}
```

# Actor output Schema

## `results` (type: `string`):

No description

## `resultsAll` (type: `string`):

No description

# 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 = {
    "mode": "latestDay",
    "maxItems": 200
};

// Run the Actor and wait for it to finish
const run = await client.actor("shawndunn/fmcsa-new-authority-grants").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 = {
    "mode": "latestDay",
    "maxItems": 200,
}

# Run the Actor and wait for it to finish
run = client.actor("shawndunn/fmcsa-new-authority-grants").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "mode": "latestDay",
  "maxItems": 200
}' |
apify call shawndunn/fmcsa-new-authority-grants --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,shawndunn/fmcsa-new-authority-grants"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

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