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, 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, 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.
Usage
fec_get_schedules_schedule_a(
max_load_date,
max_amount,
max_image_number,
contributor_occupation,
recipient_committee_designation,
sort_hide_null,
is_individual,
line_number,
contributor_type,
recipient_committee_type,
per_page,
contributor_zip,
contributor_city,
last_index,
last_contribution_receipt_amount,
contributor_id,
recipient_committee_org_type,
contributor_state,
sort,
two_year_transaction_period,
min_date,
committee_id,
contributor_employer,
min_load_date,
last_contribution_receipt_date,
min_image_number,
contributor_name,
sort_null_only,
image_number,
min_amount,
max_date,
api_key = Sys.getenv("FEC_API_KEY", unset = "DEMO_KEY")
)
Arguments
- max_load_date
Maximum load date
- max_amount
Filter for all amounts less than a value.
- max_image_number
Maxium image number of the page where the schedule item is reported
- contributor_occupation
Occupation of contributor, filers need to make an effort to gather this information
- recipient_committee_designation
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
- sort_hide_null
Hide null values on sorted column(s).
- is_individual
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.
- line_number
Filter for form and line number using the following format:
FORM-LINENUMBER
. For example an argument such asF3X-16
would filter down to all entries from formF3X
line number16
.- contributor_type
Filters individual or committee contributions based on line number
- recipient_committee_type
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
- per_page
The number of results returned per page. Defaults to 20.
- contributor_zip
Zip code of contributor
- contributor_city
City of contributor
- last_index
Index of last result from previous page
- last_contribution_receipt_amount
When sorting by
contribution_receipt_amount
, this is populated with thecontribution_receipt_amount
of the last result. However, you will need to pass the index of that last result tolast_index
to get the next page.- contributor_id
The FEC identifier should be represented here if the contributor is registered with the FEC.
- recipient_committee_org_type
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
- contributor_state
State of contributor
- sort
Provide a field to sort by. Use
-
for descending order.- two_year_transaction_period
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.
- min_date
Minimum date
- committee_id
A unique identifier assigned to each committee or filer registered with the FEC. In general committee id's begin with the letter C which is followed by eight digits.
- contributor_employer
Employer of contributor, filers need to make an effort to gather this information
- min_load_date
Minimum load date
- last_contribution_receipt_date
When sorting by
contribution_receipt_date
, this is populated with thecontribution_receipt_date
of the last result. However, you will need to pass the index of that last result tolast_index
to get the next page.- min_image_number
Minium image number of the page where the schedule item is reported
- contributor_name
Name of contributor
- sort_null_only
Toggle that filters out all rows having sort column that is non-null
- image_number
An unique identifier for each page where the electronic or paper filing is reported.
- min_amount
Filter for all amounts greater than a value.
- max_date
Maximum date
- api_key
An API key provided by the API provider. This key is not clearly documented in the API description. Check the API documentation for details.