# OpenFEC committee disbursements

Itemized spending (Schedule B) of FEC-registered committees: payee, amount, date, purpose and category (advertising, polling, fundraising...). Takes committee id, recipient name, description and more, all optional.

Itemized spending (Schedule B) of FEC-registered committees: payee, amount, date, purpose and category (advertising, polling, fundraising...). Filter by committee id, payee name, description, category, state, amounts, dates and two-year period; page with last_index and last_disbursement_date from the previous response.

- Tool ID: `openfec/disbursements`
- Provider: [OpenFEC](/providers/openfec.md)
- Capability: [Knowledge & research](/tools/knowledge.md)
- Price: no charge per call
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

No charge per call. A workspace is still needed so your agent can call it.


```json
{
  "model": "per_call",
  "amountUsd": 0
}
```

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "committee_id": {
      "type": "string",
      "pattern": "^C[0-9]{8}$",
      "description": "Spending committee id, e.g. 'C00703975'"
    },
    "recipient_name": {
      "type": "string",
      "minLength": 2,
      "maxLength": 100,
      "description": "Payee name, e.g. 'Google'"
    },
    "description": {
      "type": "string",
      "minLength": 2,
      "maxLength": 100,
      "description": "Words in the disbursement description, e.g. 'digital advertising'"
    },
    "purpose_category": {
      "type": "string",
      "enum": [
        "ADMINISTRATIVE",
        "ADVERTISING",
        "CONTRIBUTIONS",
        "EVENTS",
        "FUNDRAISING",
        "LOAN-REPAYMENTS",
        "MATERIALS",
        "OTHER",
        "POLLING",
        "REFUNDS",
        "TRANSFERS",
        "TRAVEL"
      ],
      "description": "Disbursement purpose category, e.g. 'ADVERTISING'"
    },
    "recipient_state": {
      "type": "string",
      "pattern": "^[A-Z]{2}$",
      "description": "Payee state, e.g. 'CA'"
    },
    "two_year_transaction_period": {
      "type": "integer",
      "minimum": 1980,
      "maximum": 2100,
      "multipleOf": 2,
      "description": "Two-year period (even year), e.g. 2024; defaults to the current period"
    },
    "min_amount": {
      "type": "number",
      "minimum": 0,
      "description": "Minimum amount in USD, e.g. 10000"
    },
    "max_amount": {
      "type": "number",
      "minimum": 0,
      "description": "Maximum amount in USD, e.g. 1000000"
    },
    "min_date": {
      "type": "string",
      "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
      "description": "Disbursed on or after (YYYY-MM-DD), e.g. '2024-01-01'"
    },
    "max_date": {
      "type": "string",
      "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
      "description": "Disbursed on or before (YYYY-MM-DD), e.g. '2024-06-30'"
    },
    "sort": {
      "type": "string",
      "enum": [
        "-disbursement_date",
        "disbursement_date",
        "-disbursement_amount",
        "disbursement_amount"
      ],
      "default": "-disbursement_date",
      "description": "Sort, e.g. '-disbursement_amount'"
    },
    "per_page": {
      "type": "integer",
      "minimum": 1,
      "maximum": 25,
      "default": 10,
      "description": "Results per page (1-25), e.g. 10"
    },
    "last_index": {
      "type": "string",
      "pattern": "^[0-9]{1,25}$",
      "description": "Paging key from pagination.last_indexes.last_index of the previous page"
    },
    "last_disbursement_date": {
      "type": "string",
      "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
      "description": "Paging key from pagination.last_indexes when sorting by date"
    },
    "last_disbursement_amount": {
      "type": "number",
      "description": "Paging key from pagination.last_indexes when sorting by amount"
    }
  },
  "additionalProperties": false
}
```

## Published example

This is the provider tool’s published example. Replace example values with the user’s requested inputs, respecting the schema; do not execute an example merely to test a connection.


```json
{
  "tool_id": "openfec/disbursements",
  "input": {
    "committee_id": "C00703975",
    "purpose_category": "ADVERTISING",
    "two_year_transaction_period": 2020,
    "per_page": 2
  }
}
```

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

Licence: Public domain (U.S. Government work).

Attribution: Data from the Federal Election Commission (openFEC).

[Provider documentation](https://api.open.fec.gov/developers/)

[REST inspection](https://api.agentik.cc/v1/tools/openfec/disbursements) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/openfec/disbursements) · [Agent index](/llms.txt)
