receipts

GET /v1/schedules/schedule_a/

Changed on

This description is for both ​/schedules​/schedule_a​/ and ​ /schedules​/schedule_a​/{sub_id}​/.

This endpoint provides itemized receipts. Schedule A records describe itemized receipts, including contributions from individuals. If you are interested in contributions from an individual, use the /schedules/schedule_a/ endpoint. For a more complete description of all Schedule A records visit About receipts data. If you are interested in our "is_individual" methodology visit our methodology page. ​The /schedules​/schedule_a​/ endpoint is not paginated by page number. This endpoint uses keyset pagination to improve query performance and these indices are required to properly page through this large dataset. To request the next page, you should append the values found in the last_indexes object from pagination to the URL of your last request as additional parameters. For example, when sorting by contribution_receipt_date, you might receive a page of results with the two scenarios of following pagination information:

case #1:

pagination: {
    pages: 2152643,
    per_page: 20,
    is_count_exact: False,
    count: 43052850,
    last_indexes: {
        last_index: "230880619",
        last_contribution_receipt_date: "2014-01-01"
    }
}
<br/> case #2 (results which include contribution_receipt_date = NULL):
pagination: {
    pages: 2152644,
    per_page: 20,
    count: 43052850,
    is_count_exact: False,
    last_indexes: {
        last_index: "230880639",
        sort_null_only: True
    }
}

To fetch the next page of sorted results, append last_index=230880619 and last_contribution_receipt_date=2014-01-01 to the URL and when reaching contribution_receipt_date=NULL, append last_index=230880639 and sort_null_only=True. We strongly advise paging through these results using sort indices. The default sort is acending by contribution_receipt_date (deprecated, will be descending). If you do not page using sort indices, some transactions may be unintentionally filtered out.

Calls to ​/schedules​/schedule_a​/ may return many records. For large result sets, the record counts found in the pagination object are approximate; you will need to page through the records until no records are returned.

To avoid throwing the "out of range" exception on the last page, one recommandation is to use total count and per_page to control the traverse loop of results.

​The /schedules​/schedule_a​/{sub_id}​/ endpoint returns a single transaction, but it does include a pagination object class. Please ignore the information in that object class.

Request

  • Base URL
    https://api.open.fec.gov (the document declares no server; this is the origin it was published from)
  • Auth
    API key in header X-Api-Key and API key in query parameter api_key and API key in query parameter api_key
  • TypeScript
    A function with typed inputs. Its response is checked against the schema.

Query parameters

image_numberstring[]

An unique identifier for each page where the electronic or paper filing is reported.

min_image_numberstring

Minium image number of the page where the schedule item is reported

max_image_numberstring

Maxium image number of the page where the schedule item is reported

min_amountnumber

Filter for all amounts greater than a value.

max_amountnumber

Filter for all amounts less than a value.

min_datestring

The earliest date used to filter reported activity. Only records with an applicable reporting date after this date are returned.

max_datestring

The latest date used to filter reported activity. Only records with an applicable reporting date before this date are returned.

committee_idstring[]

A unique identifier assigned to each committee or filer registered with the FEC. In general a committee id begins with the letter C which is followed by eight digits.

contributor_idstring[]

The FEC identifier should be represented here if the contributor is registered with the FEC.

contributor_namestring[]

Name of contributor

contributor_citystring[]

City of contributor

contributor_statestring[]

State of contributor. A valid two-letter U.S. state or territory code. Use ZZ for foreign countries, or other for foreign countries and any invalid or missing values.

contributor_zipstring[]

Zip code of contributor

contributor_employerstring[]

Employer of contributor, filers need to make an effort to gather this information

contributor_occupationstring[]

Occupation of contributor, filers need to make an effort to gather this information

last_contribution_receipt_datestring

When sorting by contribution_receipt_date, this is populated with the contribution_receipt_dateof the last result. However, you will need to pass the index of that last result tolast_index` to get the next page.

last_contribution_receipt_amountnumber

When sorting by contribution_receipt_amount, this is populated with the contribution_receipt_amountof the last result. However, you will need to pass the index of that last result tolast_index` to get the next page.

line_numberstring

Filter for form and line number using the following format: FORM-LINENUMBER. For example an argument such as F3X-16 would filter down to all entries from form F3X line number 16.

is_individualboolean

Restrict to non-earmarked individual contributions where memo code is true. Filtering individuals is useful to make sure contributions are not double reported and in creating breakdowns of the amount of money coming from individuals.

contributor_typestring[]

Filters individual or committee contributions based on line number

two_year_transaction_periodinteger[]

This is a two-year period that is derived from the year a transaction took place in the Itemized Schedule A and Schedule B tables. In cases where we have the date of the transaction (contribution_receipt_date in schedules/schedule_a, disbursement_date in schedules/schedule_b) the two_year_transaction_period is named after the ending, even-numbered year. If we do not have the date of the transaction, we fall back to using the report year (report_year in both tables) instead, making the same cycle adjustment as necessary. If no transaction year is specified, the results default to the most current cycle.

recipient_committee_typestring[]

The one-letter type code of the organization: - C communication cost - D delegate - E electioneering communication - H house - I independent expenditure filer (not a committee) - N PAC - nonqualified - O independent expenditure-only (super PACs) - P presidential - Q PAC - qualified - S senate - U single candidate independent expenditure - V PAC with non-contribution account, nonqualified - W PAC with non-contribution account, qualified - X party, nonqualified - Y party, qualified - Z national party non-federal account

recipient_committee_org_typestring[]

The one-letter code for the kind for organization: - C corporation - L labor organization - M membership organization - T trade association - V cooperative - W corporation without capital stock - H host committee - I inaugural committee

recipient_committee_designationstring[]

The one-letter designation code of the organization: - A authorized by a candidate - J joint fundraising committee - P principal campaign committee of a candidate - U unauthorized - B lobbyist/registrant PAC - D leadership PAC

min_load_datestring

Minimum load date

max_load_datestring

Maximum load date

per_pageinteger

The number of results returned per page. Defaults to 20.

last_indexinteger

Index of last result from previous page

sortstring

Provide a field to sort by. Use - for descending order.

sort_hide_nullboolean

Hide null values on sorted column(s).

sort_null_onlyboolean

Toggle that filters out all rows having sort column that is non-null

sort_nulls_lastboolean

Toggle that sorts null values last

api_keystring

Response

Default response

Changes