citature¹

$0.03 / answer

Where a committee's itemized money comes from, by contributor state.

Run follow-the-money on Apify

What it answers

The geographic origin of any FEC committee's itemized money: contribution inflows ranked by contributor state, for one cycle or across every cycle in coverage, drawn from 217 million-plus itemized records in the FEC bulk files. Rows are entity-level aggregates — a state of origin, a total in integer cents, a contribution count — never individual-donor detail. The committee resolves on its official FEC id (an exact-key join, declared in the receipt's match provenance), and the answer cites the exact bulk file behind it.

Ask it things like

  • Which states is ActBlue's money coming from in the 2026 cycle so far?
  • Where does committee C00401224's itemized money originate?
  • Rank contributor states for any PAC across the 2020–2026 cycles.
  • How geographically concentrated are a committee's itemized inflows?

What comes back

Every response is a receipt: the answer plus citations (the exact upstream query URL, independently re-runnable, with retrieved_at and the source's own as_of — two clocks, never collapsed), coverage caveats, matches declaring how any cross-source join was made, and a schema_version you can pin.

{
  "answer": [
    {
      "cycle": 2026,
      "committee_entity_id": "cmte_0e9f7145086c84971ffc",
      "committee_id": "C00401224",
      "contributor_state": "CA",
      "total_cents": 10866219300,
      "contribution_count": 635802
    },
    {
      "cycle": 2026,
      "committee_entity_id": "cmte_0e9f7145086c84971ffc",
      "committee_id": "C00401224",
      "contributor_state": "NY",
      "total_cents": 7426018000,
      "contribution_count": 250123
    }
  ],
  "citations": [
    {
      "source": "fec",
      "source_label": "Federal Election Commission (OpenFEC + bulk downloads)",
      "query_url": "https://www.fec.gov/files/bulk-downloads/2024/indiv24.zip",
      "retrieved_at": "2026-07-10T05:51:45.598Z",
      "as_of": null,
      "cache": "cached",
      "record_id": "C00401224"
    }
  ],
  "coverage": [
    "Coverage reflects records currently in citature's dataset, not the full upstream history.",
    "Contribution figures are entity-level aggregates; citature carries no individual-person contribution records."
  ],
  "guardrails": [
    "Research over public-domain federal records — not legal, financial, or eligibility advice.",
    "citature reports what the record says. It never renders a compliance verdict, a screening pass/fail, or a recommendation.",
    "Entity-level records only (committees, candidates, recipients, agencies, contracts). No individual-person data."
  ],
  "matches": [
    {
      "match_method": "exact",
      "match_confidence": 1,
      "left_key": "fec.recipient_committee_id",
      "right_key": "citature.entity_committee.committee_id",
      "note": "recipient committee resolved to a citature entity on the FEC committee id"
    }
  ],
  "schema_version": "0.1.0"
}
an abbreviated receipt from a real run · retrieved 2026-07-10

Input

paramtyperequirednotes
committee_idstringyesFEC committee id, e.g. C00401224.
cycleintegernoRestrict to one cycle; omit for all in coverage.
limitinteger 1–500noMax ranked rows; default 50.

Pricing

$0.03 / answer — metered per served answer on the Apify platform. Invalid input is never charged.

Run it

  1. 1 · on Apify (the console)

    The listing has worked examples, the input form, and per-run output.

    Run follow-the-money on Apify
  2. 2 · via the Apify API

    curl -X POST "https://api.apify.com/v2/acts/citature~follow-the-money/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"committee_id":"C00401224","cycle":2026,"limit":5}'
  3. 3 · over MCP

    The same answer serves as follow_the_money on the citature MCP server.

guardrails & coverage

  • Research over public-domain federal records — not legal, financial, or eligibility advice.
  • citature reports what the record says. It never renders a compliance verdict, a screening pass/fail, or a recommendation.
  • Entity-level records only (committees, candidates, recipients, agencies, contracts). No individual-person data.
  • Coverage reflects the records in citature's dataset, not the full upstream history. The ingest runs nightly and advances each dataset when its source publishes.
  • Every answer states its own coverage caveats in the receipt's `coverage` field.