# FEC Campaign Finance Data Scraper (`crawlerbros/fec-campaign-finance-scraper`) Actor

Scrape US campaign finance data from the Federal Election Commission (FEC) - candidates, committees, contributions, and expenditures. Replaces OpenSecrets (API discontinued April 2025). Free official FEC API, no registration required.

- **URL**: https://apify.com/crawlerbros/fec-campaign-finance-scraper.md
- **Developed by:** [Crawler Bros](https://apify.com/crawlerbros) (community)
- **Categories:** Developer tools, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
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

## FEC Campaign Finance Data Scraper

Extract US campaign finance data from the **Federal Election Commission (FEC)** — the official source for candidate filings, committee disclosures, contribution receipts, and expenditure data. This actor replaces OpenSecrets (API discontinued April 2025) and uses the free official FEC public REST API.

### What You Get

- **Candidates** — name, party, office, state, election years, incumbent status, and FEC profile URL
- **Committees** — PACs, party committees, Super PACs with treasurer, type, designation, and filing info
- **Receipts** — individual and PAC contributions with contributor info, amounts, dates, and election type
- **Disbursements** — campaign expenditures with recipient, amount, date, and description
- **Candidate Totals** — aggregated financial summaries: total raised, total spent, cash on hand per candidate

### Data Source

All data is sourced from the **official FEC REST API** (`api.open.fec.gov/v1`) maintained by the Federal Election Commission. The API is free to use without registration using the built-in `DEMO_KEY` (30 requests/hour). Register a free key at [api.data.gov](https://api.data.gov/) for higher rate limits.

---

### Input

| Field | Type | Description |
|-------|------|-------------|
| `mode` | Select | What to fetch: `searchCandidates`, `searchCommittees`, `receipts`, `disbursements`, `candidateTotals` |
| `office` | Select | Filter by office: `P` (President), `S` (Senate), `H` (House) |
| `electionYear` | Select | Filter by election cycle: 2016–2024 |
| `party` | Select | Filter by party: DEM, REP, IND, LIB, GRN |
| `state` | Select | Filter by 2-letter US state abbreviation |
| `contributorState` | Select | Filter receipts by contributor's state (mode=receipts only) |
| `committeeType` | Select | Filter committees by type — PAC, Super PAC, Party, etc. |
| `apiKey` | Text | FEC API key — uses `DEMO_KEY` by default (30 req/hr). Register at api.data.gov for higher limits. |
| `maxItems` | Integer | Maximum records to return (1–2000, default 50) |

---

### Modes

#### `searchCandidates` — Search and list candidates
Returns candidates filtered by office, year, party, and state.

```json
{
  "mode": "searchCandidates",
  "office": "P",
  "electionYear": "2024",
  "maxItems": 50
}
````

#### `searchCommittees` — Search political committees

Returns PACs, party committees, Super PACs, and candidate campaign committees.

```json
{
  "mode": "searchCommittees",
  "committeeType": "U",
  "state": "CA",
  "maxItems": 50
}
```

#### `receipts` — Get campaign contribution receipts

Returns individual contributions and PAC receipts with contributor details.

```json
{
  "mode": "receipts",
  "electionYear": "2024",
  "contributorState": "TX",
  "maxItems": 100
}
```

#### `disbursements` — Get campaign expenditures

Returns money spent by campaigns with recipient details and descriptions.

```json
{
  "mode": "disbursements",
  "electionYear": "2024",
  "maxItems": 100
}
```

#### `candidateTotals` — Get campaign finance summaries

Returns aggregated financial totals per candidate including money raised, spent, and cash on hand.

```json
{
  "mode": "candidateTotals",
  "office": "P",
  "electionYear": "2024",
  "maxItems": 50
}
```

***

### Output Fields

#### Candidates

| Field | Description |
|-------|-------------|
| `name` | Candidate's full name |
| `candidateId` | FEC candidate ID (e.g., P80001571) |
| `party` | Party code (DEM, REP, IND, etc.) |
| `partyFull` | Full party name |
| `office` | Office sought (P/S/H) |
| `officeFull` | Full office name |
| `state` | State abbreviation |
| `district` | Congressional district (House candidates) |
| `electionYears` | List of election years active |
| `incumbentChallenge` | I (Incumbent), C (Challenger), O (Open Seat) |
| `incumbentChallengeFull` | Full incumbent/challenger designation |
| `candidateStatus` | C (statutory), N (non-statutory), P (pending) |
| `firstFileDate` | Date of first FEC filing |
| `url` | FEC candidate profile URL |

#### Committees

| Field | Description |
|-------|-------------|
| `name` | Committee name |
| `committeeId` | FEC committee ID (e.g., C00703975) |
| `committeeType` | Single-letter type code |
| `committeeTypeFull` | Full committee type description |
| `party` | Party affiliation |
| `state` | State of registration |
| `city` | City of registration |
| `zipCode` | ZIP code |
| `treasurerName` | Committee treasurer |
| `filingFrequency` | Filing frequency (M=Monthly, Q=Quarterly, etc.) |
| `designation` | Committee designation code |
| `designationFull` | Full designation description |
| `url` | FEC committee profile URL |

#### Receipts (Contributions)

| Field | Description |
|-------|-------------|
| `contributorName` | Full contributor name |
| `contributorFirstName` | First name |
| `contributorLastName` | Last name |
| `contributorCity` | City |
| `contributorState` | State |
| `contributorZip` | ZIP code |
| `contributorEmployer` | Employer name |
| `contributorOccupation` | Occupation |
| `contributionReceiptAmount` | Dollar amount |
| `contributionReceiptDate` | Date (YYYY-MM-DD) |
| `recipientName` | Receiving committee name |
| `recipientCommitteeId` | FEC committee ID of recipient |
| `fecElectionTypeDesc` | Election type (PRIMARY, GENERAL, etc.) |
| `reportYear` | Report year |
| `transactionId` | FEC transaction ID |
| `url` | Recipient committee FEC URL |

#### Disbursements (Expenditures)

| Field | Description |
|-------|-------------|
| `recipientName` | Who received the payment |
| `recipientCity` | Recipient city |
| `recipientState` | Recipient state |
| `disbursementAmount` | Dollar amount |
| `disbursementDate` | Date (YYYY-MM-DD) |
| `disbursementDescription` | Purpose description |
| `spenderName` | Spending committee name |
| `spenderCommitteeId` | FEC committee ID of spender |
| `transactionId` | FEC transaction ID |
| `url` | Spender committee FEC URL |

#### Candidate Totals

| Field | Description |
|-------|-------------|
| `name` | Candidate name |
| `candidateId` | FEC candidate ID |
| `party` | Party code |
| `office` | Office sought |
| `electionYear` | Election cycle year |
| `totalReceipts` | Total money raised |
| `totalDisbursements` | Total money spent |
| `cashOnHandEndPeriod` | Cash on hand at end of period |
| `individualItemizedContributions` | Total individual contributions |
| `incumbentChallenge` | Incumbent/Challenger/Open |
| `url` | FEC candidate profile URL |

***

### Example Output Record (Candidate Total)

```json
{
  "name": "BIDEN, JOSEPH R JR",
  "candidateId": "P80001571",
  "party": "DEM",
  "partyFull": "DEMOCRATIC PARTY",
  "office": "P",
  "officeFull": "President",
  "state": "US",
  "electionYear": 2024,
  "totalReceipts": 123456789.50,
  "totalDisbursements": 98765432.10,
  "cashOnHandEndPeriod": 24691357.40,
  "incumbentChallenge": "I",
  "incumbentChallengeFull": "Incumbent",
  "url": "https://www.fec.gov/data/candidate/P80001571/",
  "recordType": "candidateTotals",
  "scrapedAt": "2025-05-25T10:30:00+00:00"
}
```

***

### Use Cases

- **Political research** — Track campaign finance activity across elections and candidates
- **Journalism** — Investigate donor networks, PAC spending, and campaign war chests
- **Compliance monitoring** — Track competitor or allied committee spending
- **Academic research** — Analyze fundraising patterns, party spending, and donor geography
- **Civic tech** — Build donor lookup tools or campaign finance dashboards
- **Lobbying intelligence** — Monitor industry PAC contributions to key legislators

***

### Rate Limits

The default `DEMO_KEY` allows **30 requests per hour**. For higher throughput:

1. Register a free API key at [api.data.gov](https://api.data.gov/)
2. Enter your key in the `apiKey` field
3. The actor automatically slows requests when using `DEMO_KEY` to stay within limits

***

### FAQ

**Q: Is registration required?**
No. The `DEMO_KEY` works out of the box with no signup required.

**Q: How current is the data?**
FEC data is updated as committees submit filings. Major committees file monthly or quarterly; others file around election deadlines.

**Q: What do committee type codes mean?**

- `P` — Presidential campaign committee
- `H` — House campaign committee
- `S` — Senate campaign committee
- `Q` — Qualified PAC
- `U` — Super PAC (Independent Expenditure-Only)
- `X` / `Y` — Party committees (non-qualified / qualified)

**Q: What are incumbent challenge codes?**

- `I` — Incumbent
- `C` — Challenger
- `O` — Open seat (no incumbent running)

**Q: Can I filter receipts by contributor?**
Currently you can filter by contributor state. Additional filters may be added in future versions.

**Q: What years of data are available?**
The FEC API includes data back to the 1970s. Election years available: 2016, 2018, 2020, 2022, 2024.

# Actor input Schema

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

What to fetch from the FEC API.

## `office` (type: `string`):

Filter candidates by office sought.

## `electionYear` (type: `string`):

Filter by election cycle year.

## `party` (type: `string`):

Filter by political party.

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

Filter candidates or committees by US state abbreviation (e.g. CA, TX, NY).

## `contributorState` (type: `string`):

Filter receipts by contributor's state (mode=receipts only).

## `committeeType` (type: `string`):

Filter committees by type (mode=searchCommittees only).

## `apiKey` (type: `string`):

FEC API key — uses DEMO\_KEY (30 req/hr) by default. Get a free key at api.data.gov for higher rate limits.

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

Hard cap on emitted records.

## Actor input object example

```json
{
  "mode": "searchCandidates",
  "office": "P",
  "electionYear": "2024",
  "party": "",
  "state": "",
  "contributorState": "",
  "committeeType": "",
  "maxItems": 10
}
```

# Actor output Schema

## `records` (type: `string`):

Dataset containing all scraped FEC records.

# 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": "searchCandidates",
    "office": "P",
    "electionYear": "2024",
    "party": "",
    "state": "",
    "contributorState": "",
    "committeeType": "",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("crawlerbros/fec-campaign-finance-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 = {
    "mode": "searchCandidates",
    "office": "P",
    "electionYear": "2024",
    "party": "",
    "state": "",
    "contributorState": "",
    "committeeType": "",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("crawlerbros/fec-campaign-finance-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 '{
  "mode": "searchCandidates",
  "office": "P",
  "electionYear": "2024",
  "party": "",
  "state": "",
  "contributorState": "",
  "committeeType": "",
  "maxItems": 10
}' |
apify call crawlerbros/fec-campaign-finance-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "FEC Campaign Finance Data Scraper",
        "description": "Scrape US campaign finance data from the Federal Election Commission (FEC) - candidates, committees, contributions, and expenditures. Replaces OpenSecrets (API discontinued April 2025). Free official FEC API, no registration required.",
        "version": "1.0",
        "x-build-id": "FSX58mlOCxP9guaqr"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/crawlerbros~fec-campaign-finance-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-crawlerbros-fec-campaign-finance-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/crawlerbros~fec-campaign-finance-scraper/runs": {
            "post": {
                "operationId": "runs-sync-crawlerbros-fec-campaign-finance-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/crawlerbros~fec-campaign-finance-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-crawlerbros-fec-campaign-finance-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",
                "required": [
                    "mode"
                ],
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "searchCandidates",
                            "searchCommittees",
                            "receipts",
                            "disbursements",
                            "candidateTotals"
                        ],
                        "type": "string",
                        "description": "What to fetch from the FEC API.",
                        "default": "searchCandidates"
                    },
                    "office": {
                        "title": "Office",
                        "enum": [
                            "",
                            "P",
                            "S",
                            "H"
                        ],
                        "type": "string",
                        "description": "Filter candidates by office sought.",
                        "default": ""
                    },
                    "electionYear": {
                        "title": "Election year",
                        "enum": [
                            "",
                            "2024",
                            "2022",
                            "2020",
                            "2018",
                            "2016"
                        ],
                        "type": "string",
                        "description": "Filter by election cycle year.",
                        "default": ""
                    },
                    "party": {
                        "title": "Party",
                        "enum": [
                            "",
                            "DEM",
                            "REP",
                            "IND",
                            "LIB",
                            "GRN"
                        ],
                        "type": "string",
                        "description": "Filter by political party.",
                        "default": ""
                    },
                    "state": {
                        "title": "State (2-letter code)",
                        "enum": [
                            "",
                            "AL",
                            "AK",
                            "AZ",
                            "AR",
                            "CA",
                            "CO",
                            "CT",
                            "DE",
                            "DC",
                            "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"
                        ],
                        "type": "string",
                        "description": "Filter candidates or committees by US state abbreviation (e.g. CA, TX, NY).",
                        "default": ""
                    },
                    "contributorState": {
                        "title": "Contributor state (receipts mode)",
                        "enum": [
                            "",
                            "AL",
                            "AK",
                            "AZ",
                            "AR",
                            "CA",
                            "CO",
                            "CT",
                            "DE",
                            "DC",
                            "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"
                        ],
                        "type": "string",
                        "description": "Filter receipts by contributor's state (mode=receipts only).",
                        "default": ""
                    },
                    "committeeType": {
                        "title": "Committee type (committees mode)",
                        "enum": [
                            "",
                            "C",
                            "D",
                            "H",
                            "I",
                            "N",
                            "O",
                            "P",
                            "Q",
                            "S",
                            "U",
                            "V",
                            "W",
                            "X",
                            "Y",
                            "Z"
                        ],
                        "type": "string",
                        "description": "Filter committees by type (mode=searchCommittees only).",
                        "default": ""
                    },
                    "apiKey": {
                        "title": "FEC API Key (optional)",
                        "type": "string",
                        "description": "FEC API key — uses DEMO_KEY (30 req/hr) by default. Get a free key at api.data.gov for higher rate limits."
                    },
                    "maxItems": {
                        "title": "Max items",
                        "minimum": 1,
                        "maximum": 2000,
                        "type": "integer",
                        "description": "Hard cap on emitted records.",
                        "default": 50
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
