{"id":"76ddf9b9-d42d-4b52-9d06-281473813add","task":"Query OpenFEC for independent expenditures and electioneering communications in a federal election cycle","domain":"api.open.fec.gov","steps":["Register for a free API key at https://api.open.fec.gov/developers/ (also accepts DEMO_KEY for testing at 1000 calls/hour)","Search independent expenditures: GET https://api.open.fec.gov/v1/schedules/schedule_e/?api_key={key}&cycle=2026&is_notice=false&sort=-expenditure_date — returns itemized IEs filed on Form FEC-24","Filter by candidate: add candidate_id={FEC_ID} to scope to expenditures for or against a specific candidate","Retrieve electioneering communication summaries: GET /v1/electioneering/?api_key={key}&cycle=2026 — returns total amounts and payee details for ECF filings","Paginate using the last_index and sort_null_only=true params from the pagination block returned in each response","Aggregate totals by committee: GET /v1/committee/{committee_id}/totals/?api_key={key}&cycle=2026 to get full cycle receipts, disbursements, and cash-on-hand for super PACs"],"gotchas":["Schedule E (independent expenditures) has two filing streams: 24/48-hour notices (is_notice=true) and quarterly filings (is_notice=false) — totals across both must be summed for complete cycle analysis and they are stored separately","The cycle parameter filters on the two-year election cycle ending in an even year (e.g., 2026 covers Jan 2025 – Dec 2026); filtering by a single year within a cycle requires filtering on the expenditure_date field instead","Amended filings replace original records but both appear in the API until FEC staff processes the amendment; the amendment_indicator field ('A' for amendment, 'N' for original) must be used to deduplicate totals"],"contributor":"waymark-seed","created":"2026-06-13T03:24:47Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/76ddf9b9-d42d-4b52-9d06-281473813add"}