# New Trucking Companies: FMCSA New Authority & USDOT Leads (`chaucerlabs/fmcsa-new-trucking-companies`) Actor

Newly licensed trucking companies from official FMCSA data: new MC authority grants or new USDOT registrations, with phone, email, address, fleet size, drivers, cargo types and insurance. Filter by state, date and fleet size.

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

## Pricing

$5.00 / 1,000 carrier 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

## New Trucking Companies: FMCSA New Authority & USDOT Leads

Get a fresh list of **trucking companies that just got licensed**, straight from official FMCSA data, with the contact details, fleet size and cargo info you need to reach them first.

Every week, more than a thousand carriers and brokers get new operating authority (an MC number), and a few thousand companies register a new USDOT number. They all need insurance, factoring, ELDs, fuel cards, dispatch, load boards, trucks, trailers and compliance help, and they're shopping right now.

### Two modes

| Mode | What you get | Typical volume |
|---|---|---|
| **Newly granted operating authority (MC)** (default) | For-hire carriers, brokers and freight forwarders whose FMCSA authority was **granted** in your date range | ~150–300 per business day |
| **New USDOT registrations** | Every company that registered a new USDOT number in your date range, including private and intrastate fleets without MC authority | ~350–600 per business day |

### What you get for each carrier

| Field | Example |
|---|---|
| Legal name, DBA | QX LOGISTIX LLC |
| USDOT and MC/docket number | 3279824 / MC1036799 |
| Authority types and status | Motor Carrier of Property: Active; Broker of Property: Active |
| Authority granted date, USDOT added date | 2026-10-15 / 2019-04-29 |
| `isNewCompany` | true when the USDOT number is under a year old at grant time |
| Phone, email, company officers | 310-526-3711, chris@..., Christopher Carey |
| Business address | 5685 Alcoa Ave, Vernon, CA 90058 |
| Fleet | 46 power units, 66 drivers |
| Cargo types, hazmat, operation | General Freight, Building Materials, Intermodal; Interstate |
| Insurance | BIPD on file $1,000,000; cargo insurance / bond required |
| Link | FMCSA SAFER company snapshot |

### Filters

- **Date range:** days back (default 7) or start and end dates, up to 92 days per run
- **States:** e.g. `TX`, `CA`, `FL`
- **Authority type:** motor carrier of property, broker, household goods, passenger, freight forwarder
- **Fleet size:** minimum and maximum power units (set max = 1 for owner-operators)
- **Cargo types:** e.g. `Refrigerated Food`, `Building Materials`, `Motor Vehicles`
- **Only brand-new companies:** drop established carriers that just added another authority
- **Only active**, **require phone**, **require email**
- **Monitor mode:** only carriers you haven't received before. Schedule it daily for a no-repeat lead feed.

### Use cases

- **Trucking insurance agents:** new authorities must have insurance on file to operate. Reach them before the policy is bound.
- **Freight factoring and fuel cards:** new carriers need cash flow from the first load.
- **ELD, dispatch, TMS and load-board software:** onboard carriers on day one.
- **Truck and trailer dealers, leasing and financing.**
- **Compliance services:** drug and alcohol consortiums, BOC-3, IFTA, UCR, MCS-150 updates.
- **Freight brokers:** recruit new capacity in your lanes.

### Input example

```json
{
  "mode": "newAuthority",
  "daysBack": 7,
  "states": ["TX", "OK", "LA"],
  "authorityTypes": ["property"],
  "maxPowerUnits": 5,
  "onlyUsdotAddedWithinDays": 365,
  "requirePhone": true
}
```

### Output example (trimmed)

```json
{
  "legalName": "QX LOGISTIX LLC",
  "usdotNumber": "3279824",
  "docketNumber": "MC1036799",
  "authorityTypes": ["Motor Carrier of Property (Except Household Goods)"],
  "authorityGrantedDate": "2026-10-15",
  "phone": "3105263711",
  "city": "VERNON",
  "state": "CA",
  "powerUnits": 46,
  "tractors": 46,
  "totalDrivers": 66,
  "cargoTypes": ["General Freight", "Building Materials", "Intermodal Containers"],
  "bipdInsuranceOnFileUsd": 1000000,
  "usdotAddedDate": "2019-04-29",
  "isNewCompany": false,
  "saferSnapshotUrl": "https://safer.fmcsa.dot.gov/query.asp?searchtype=ANY&query_type=queryCarrierSnapshot&query_param=USDOT&query_string=3279824"
}
```

Each run also saves a `RUN_STATS` record: records in range, how many each filter dropped, and how many carriers were returned.

### Data source

Official U.S. Department of Transportation open data published on data.transportation.gov: FMCSA's Motus authority history and carrier files, plus the FMCSA Company Census File. No login, no scraping of the SAFER website, no third-party databases. Authority data updates daily. Census details (fleet, cargo, email) come from the carrier's own MCS-150 filing.

### Pricing

You pay per carrier returned. Records removed by your filters are never charged. See the Pricing tab for the current rate.

### Notes and limits

- Fleet size, cargo, email and officer names are self-reported on the MCS-150 and can be blank or out of date.
- Some "granted" records belong to established companies adding a new authority type. Use `isNewCompany` or the "only brand-new companies" filter if you want first-time carriers only.
- In New USDOT mode, many companies haven't applied for MC authority yet, so the docket and authority fields may be empty or "Pending".
- **Contact compliance:** this data is public, but your outreach must follow the laws that apply to you (for example CAN-SPAM for email and TCPA rules for calls and texts).

### FAQ

**How fresh is it?** FMCSA publishes authority changes daily, and today's grants usually appear the same day or the next.

**Can I get only owner-operators?** Yes. Set Maximum power units to 1.

**Do you include brokers?** Yes. Set Authority types to Broker, or leave it empty for everything.

# Actor input Schema

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

New authority = carriers/brokers whose FMCSA operating authority (MC) was granted in the date range. New USDOT = companies that registered a new USDOT number in the date range (includes private and intrastate carriers without MC authority).

## `daysBack` (type: `integer`):

Calendar days to look back from the end date (today by default). Ignored when Start date is set.

## `startDate` (type: `string`):

Optional, YYYY-MM-DD. Overrides Days back.

## `endDate` (type: `string`):

Optional, YYYY-MM-DD. Defaults to today. Max range 92 days.

## `states` (type: `array`):

Two-letter state codes (business or physical address), e.g. TX, CA, FL. Empty = all.

## `authorityTypes` (type: `array`):

Keep only these authority types. Empty = all.

## `minPowerUnits` (type: `integer`):

Fleet size floor from the carrier's MCS-150 filing.

## `maxPowerUnits` (type: `integer`):

0 = no maximum. Use 1 to target owner-operators.

## `cargoTypes` (type: `array`):

Keep carriers hauling any of these (partial match), e.g. General Freight, Refrigerated Food, Building Materials, Motor Vehicles, Livestock. Empty = all.

## `onlyUsdotAddedWithinDays` (type: `integer`):

Drop established companies that just added another authority. 365 keeps companies registered in the last year. 0 = off.

## `onlyActive` (type: `boolean`):

Drop records that are already inactive, suspended or revoked.

## `requirePhone` (type: `boolean`):

Only return carriers with a phone number on file.

## `requireEmail` (type: `boolean`):

Only return carriers with an email address on file.

## `includeEmail` (type: `boolean`):

Include the email the carrier filed with FMCSA. Turn off if you don't need it.

## `onlyNewSinceLastRun` (type: `boolean`):

Schedule daily with Days back = 3 for a fresh-leads feed with no repeats.

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

0 = no limit.

## Actor input object example

```json
{
  "mode": "newAuthority",
  "daysBack": 7,
  "minPowerUnits": 0,
  "maxPowerUnits": 0,
  "onlyUsdotAddedWithinDays": 0,
  "onlyActive": true,
  "requirePhone": false,
  "requireEmail": false,
  "includeEmail": true,
  "onlyNewSinceLastRun": false,
  "maxResults": 0
}
```

# Actor output Schema

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

Carriers with USDOT/MC, contact details, address, fleet size, drivers, cargo types and insurance.

## `runStats` (type: `string`):

Records in range, records dropped by each filter, carriers returned.

# 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": "newAuthority",
    "daysBack": 7
};

// Run the Actor and wait for it to finish
const run = await client.actor("chaucerlabs/fmcsa-new-trucking-companies").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": "newAuthority",
    "daysBack": 7,
}

# Run the Actor and wait for it to finish
run = client.actor("chaucerlabs/fmcsa-new-trucking-companies").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": "newAuthority",
  "daysBack": 7
}' |
apify call chaucerlabs/fmcsa-new-trucking-companies --silent --output-dataset

```

## MCP server setup

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

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/pJMmMrBzuL02BjwQg/builds/XUnSl063u61OiNkXI/openapi.json
