API archive entry · source-reported
OpenFEC
This application programming interface (API) allows you to explore the way candidates and committees fund their campaigns. The Federal Election Commission (FEC) API is a RESTful web service supporting full-text and field-specific searches on FEC data. Bulk downloads are available on the current site. Information is tied to the underlying forms by file ID and image ID. Data is updated nightly. There are a lot of data, and a good place to start is to use search to find interesting candidates and committees. Then, you can use their IDs to find report or line item details with the other endpoints. If you are interested in individual donors, check out contributor information in the `/schedule_a/` endpoints. Getting started with the openFEC API If you would like to use the FEC's API programmatically, you can sign up for your own API key using our form. Alternatively, you can still try out our API without an API key by using the web interface and using DEMO_KEY. Note that when you use the openFEC API you are subject to the Terms of Service and Acceptable Use policy. Signing up for an API key will enable you to place up to 1,000 calls an hour. Each call is limited to 100 results per page.
Plan the first integration safely
The access fields below come from the connected directory. Their likely implementation impact is explained without assuming provider-specific behavior.
Authentication
OAuth is reported. Confirm flows, scopes, consent, token lifetime, and refresh rules.
Transport
HTTPS is not confirmed. Do not send credentials or production data until secure transport is verified.
Browser access
CORS is unknown. Treat direct browser access as unconfirmed and test before choosing a client-only architecture.
First-request sequence
- Identify the current base URL, version, and endpoint for the use case.
- Confirm how credentials are issued and where they may be stored.
- Test success, invalid input, throttling, unavailable data, and timeouts.
- Record response fields, pagination, caching, and error shapes.
- Add monitoring, retries with backoff, and an appropriate fallback.
Questions to resolve before production
Pricing and quotas
Confirm current plans, free-tier limits, overages, and request ceilings.
Endpoint coverage
Check that the operations and response fields match the intended workload.
Reliability
Look for uptime history, a status page, support routes, and service commitments.
Data and privacy
Review retention, licensing, regional processing, and compliance requirements.
Versioning
Confirm the active version, change policy, deprecation window, and migration guidance.
Developer experience
Validate SDKs, examples, error formats, pagination, and test environments.
Source reference
This page separates source-reported facts from questions that need live provider verification.