# FCC Licenses Scraper | ULS 3650 Wireless Database Export (`parseforge/fcc-licenses-scraper`) Actor

Export FCC ULS 3650 MHz wireless license locations: call sign, licensee, FRN, application status, file number, location city and state, latitude and longitude, frequency band, EIRP, antenna make and model. Filter by state, status, call sign or licensee. CSV, Excel, JSON or XML.

- **URL**: https://apify.com/parseforge/fcc-licenses-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Other, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $19.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## 📡 FCC Licenses Scraper

> 🚀 **Export FCC ULS 3650 MHz wireless license locations in seconds. Call sign, licensee, coordinates, frequency, antenna details.**

> 🕒 **Last updated:** 2026-05-26 · **📊 24 fields** per record · **National scale** · **All FCC ULS 3650 licenses**

The FCC Universal Licensing System (ULS) 3650 dataset covers wireless broadband licenses in the 3650-3700 MHz band. This actor queries the official Socrata API on opendata.fcc.gov and outputs one row per license location.

Coverage spans every state, every status (Active, Pending, Deleted, Granted, Terminated), with full call sign, licensee, geographic coordinates, antenna specs, and frequency data.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Wireless ISPs | Compete in 3650 band |
| Spectrum analysts | Map licensed deployments |
| Real-estate developers | Identify nearby transmitters |
| Engineers | Locate interference sources |

### 📋 What the FCC Licenses Scraper does

- Pulls FCC ULS 3650 license locations from opendata.fcc.gov
- Filters by state, application status, call sign, licensee name
- Returns call sign, licensee, coordinates, frequency band, antenna, status
- Direct link to the official FCC ULS license page

> 💡 **Why it matters:** Spectrum licenses define competitive footprints. Querying them by state in seconds beats CSV downloads.

### 🎬 Full Demo (_🚧 Coming soon_)

### ⚙️ Input

<table>
<thead><tr><th>Field</th><th>Type</th><th>Description</th></tr></thead>
<tbody>
<tr><td>maxItems</td><td>integer</td><td>Cap on rows</td></tr>
<tr><td>state</td><td>enum</td><td>Two-letter state</td></tr>
<tr><td>applicationStatus</td><td>enum</td><td>Active, Pending, etc.</td></tr>
<tr><td>callSign</td><td>string</td><td>Exact call sign</td></tr>
<tr><td>licenseName</td><td>string</td><td>Licensee name substring</td></tr>
</tbody>
</table>

```json
{ "maxItems": 50, "state": "CA" }
````

```json
{ "maxItems": 100, "state": "TX", "applicationStatus": "Active" }
```

> ⚠️ **Good to Know:** This is the ULS 3650 Locations dataset (3650-3700 MHz). For other ULS bands, additional scrapers can be built on the same Socrata pattern.

### 📊 Output

| Field | Type | Description |
|---|---|---|
| 📌 callSign | string | FCC call sign |
| licenseId | string | License ID |
| 🏢 licenseName | string | Licensee |
| frns | string | FCC Registration Number |
| applicationStatus | string | Status |
| statusDate | string | Status date |
| fileNumber | string | File number |
| applicationReceiptDate | string | Receipt date |
| expiredDate | string | Expiry date |
| locationName | string | Site name |
| locationCity | string | City |
| 🌎 locationState | string | State |
| locationCounty | string | County |
| 📍 latitude | number | Latitude |
| 📍 longitude | number | Longitude |
| lowerFrequency | string | Lower band edge |
| upperFrequency | string | Upper band edge |
| eirp | string | EIRP (effective radiated power) |
| antennaMake | string | Antenna manufacturer |
| antennaModel | string | Antenna model |
| emissionDesignator | string | Emission designator |
| fccEquipmentDesignationType | string | Equipment type |
| 🔗 url | string | FCC ULS license page |
| 🕒 scrapedAt | string | ISO timestamp |

### ✨ Why choose this Actor

- Direct FCC Socrata API
- Real-time data
- Works with standard Apify integrations

### 📈 How it compares to alternatives

| Approach | Cost | Maintenance | Coverage |
|---|---|---|---|
| This actor | Pay per result | None | Full |
| Manual CSV download | Free | High | Bulk only |
| Commercial spectrum trackers | $$$ | None | Curated |

### 🚀 How to use

1. [Create a free account w/ $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp)
2. Open the actor page
3. Set inputs
4. Run
5. Download dataset as CSV, Excel, JSON, or XML

### 💼 Business use cases

#### Competitor and market monitoring

Map competitor 3650 MHz deployments by state and county.

#### Pipeline expansion

Identify licensees in your service area for partnership or roaming.

#### Compliance and due diligence

Verify license status before deploying equipment in a band.

#### Market sizing and research

Aggregate active licenses per state for capacity planning.

### 🔌 Automating FCC Licenses Scraper

Connects with Make, Zapier, Slack, Airbyte, GitHub Actions, and Google Drive via Apify's standard integrations.

### 🌟 Beyond business use cases

#### Research

Academic studies on spectrum allocation.

#### Personal

Hobbyists tracking nearby wireless deployments.

#### Non-profit

Non-profit and rural-broadband mapping.

#### Experimentation

Train models on spectrum-license metadata.

### 🤖 Ask an AI assistant about this scraper

ChatGPT, Claude, Perplexity, or Copilot can explain inputs, sample outputs, and integration patterns.

### ❓ Frequently Asked Questions

**Q: What is the 3650-3700 MHz band?** A: A US wireless broadband band used by fixed wireless ISPs and CBRS predecessors.
**Q: Are other ULS bands included?** A: This actor focuses on 3650. Other bands have separate datasets.
**Q: How current is the data?** A: FCC updates this dataset periodically.
**Q: Can I get the underlying FCC application?** A: Use the url field to open the official ULS page.
**Q: Are coordinates accurate?** A: They are as filed with the FCC.
**Q: Is amateur radio included?** A: No, amateur licenses are a separate ULS dataset.
**Q: Are deleted licenses returned?** A: Yes if you select Deleted status.
**Q: How many records exist?** A: Tens of thousands of locations.
**Q: Is there a free version of this data?** A: Yes, opendata.fcc.gov. This actor saves you the SQL.
**Q: Can I filter by frequency?** A: Future enhancement. Use state and licensee filters today.

### 🔌 Integrate with any app

Make, Zapier, Slack, Airbyte, GitHub Actions, Google Sheets, Webhooks.

### 🔗 Recommended Actors

| Actor | Description |
|---|---|
| [USAspending Contracts Scraper](https://apify.com/parseforge/usaspending-contracts-scraper) | Federal contract awards |
| [FDIC Bank Scraper](https://apify.com/parseforge/fdic-bank-scraper) | FDIC institution data |
| [SEC EDGAR Scraper](https://apify.com/parseforge/sec-edgar-scraper) | SEC company filings |

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge).

**🆘 Need Help?** [Open our contact form](https://tally.so/r/BzdKgA)

> **⚠️ Disclaimer:** independent tool, not affiliated with the source organization. Only publicly available data collected.

# Actor input Schema

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

Free users: 10. Paid: up to 1,000,000

## `state` (type: `string`):

Two-letter state code (e.g. CA, NY)

## `applicationStatus` (type: `string`):

Filter by status

## `callSign` (type: `string`):

Exact call sign (e.g. WQJW268)

## `licenseName` (type: `string`):

Match licensee name (substring)

## Actor input object example

```json
{
  "maxItems": 10
}
```

# Actor output Schema

## `results` (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 = {
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/fcc-licenses-scraper").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 = { "maxItems": 10 }

# Run the Actor and wait for it to finish
run = client.actor("parseforge/fcc-licenses-scraper").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 '{
  "maxItems": 10
}' |
apify call parseforge/fcc-licenses-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/fcc-licenses-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "FCC Licenses Scraper | ULS 3650 Wireless Database Export",
        "description": "Export FCC ULS 3650 MHz wireless license locations: call sign, licensee, FRN, application status, file number, location city and state, latitude and longitude, frequency band, EIRP, antenna make and model. Filter by state, status, call sign or licensee. CSV, Excel, JSON or XML.",
        "version": "0.1",
        "x-build-id": "dnZro0eV787Z5Jvud"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~fcc-licenses-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-fcc-licenses-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parseforge~fcc-licenses-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-fcc-licenses-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parseforge~fcc-licenses-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-fcc-licenses-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: 10. Paid: up to 1,000,000"
                    },
                    "state": {
                        "title": "State Code",
                        "enum": [
                            "AL",
                            "AK",
                            "AZ",
                            "AR",
                            "CA",
                            "CO",
                            "CT",
                            "DE",
                            "FL",
                            "GA",
                            "HI",
                            "ID",
                            "IL",
                            "IN",
                            "IA",
                            "KS",
                            "KY",
                            "LA",
                            "ME",
                            "MD",
                            "MA",
                            "MI",
                            "MN",
                            "MS",
                            "MO",
                            "MT",
                            "NE",
                            "NV",
                            "NH",
                            "NJ",
                            "NM",
                            "NY",
                            "NC",
                            "ND",
                            "OH",
                            "OK",
                            "OR",
                            "PA",
                            "RI",
                            "SC",
                            "SD",
                            "TN",
                            "TX",
                            "UT",
                            "VT",
                            "VA",
                            "WA",
                            "WV",
                            "WI",
                            "WY",
                            "PR"
                        ],
                        "type": "string",
                        "description": "Two-letter state code (e.g. CA, NY)"
                    },
                    "applicationStatus": {
                        "title": "Application Status",
                        "enum": [
                            "Active",
                            "Pending",
                            "Deleted",
                            "Granted",
                            "Terminated"
                        ],
                        "type": "string",
                        "description": "Filter by status"
                    },
                    "callSign": {
                        "title": "Call Sign",
                        "type": "string",
                        "description": "Exact call sign (e.g. WQJW268)"
                    },
                    "licenseName": {
                        "title": "Licensee Name Contains",
                        "type": "string",
                        "description": "Match licensee name (substring)"
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
