-
Notifications
You must be signed in to change notification settings - Fork 6
Campaign Disclosure Data for City of San Diego
City of San Diego Electronic Filing System @ https://efile.sandiego.gov/
The Search By Election page shows an expandable list of Primary and General Elections with election dates.
For example
- 11/03/2020 General Election
Refresh the page with the Chrome DevTools open to the Network tab and look for an item named list. Then check the Headers tab for the Request URL and the Preview tab to view the returned data.
Request URL: https://efile.sandiego.gov/api/v1/public/campaign-search/election/list
The 'election/list' request returns a list of items containing the following fields
- election_date: string
- election_id: string
- election_type: string
- internal: boolean
Example:
- election_date: "11/03/2020"
- election_id: "c0cd8d33-f9d7-0ab4-1dab-d1a37216b7b3"
- election_type: "General"
- internal: false
If one of the elections is expanded with the DevTools open the name of the request will match the election_id and will be appended to the end of the following request URL https://efile.sandiego.gov/api/v1/public/campaign-search/candidate/list/<election_id>
Example for the 11/03/2020 General election:
Request URL: https://efile.sandiego.gov/api/v1/public/campaign-search/candidate/list/c0cd8d33-f9d7-0ab4-1dab-d1a37216b7b3
The 'candidate/list' request for the example above returns a list of items containing the following fields
- City Attorney San Diego: array
- City Council San Diego - Dist 1: array
- City Council San Diego - Dist 3: array
- City Council San Diego - Dist 5: array
- City Council San Diego - Dist 7: array
- City Council San Diego - Dist 9: array
- Mayor San Diego: array
- success: boolean
The 'City Council San Diego - Dist 9' array contains the following fields:
- agency: "City of San Diego"
- candidate_name: "Kelvin Barrios"
- coe_id: "5a259372-ba59-4c89-b005-02950bd545a7"
- district: "9"
- election_id: "c0cd8d33-f9d7-0ab4-1dab-d1a37216b7b3"
- filer_id: "e0a65f4c-6b7d-0332-39c6-14cb3ec58699"
- first_name: "Kelvin"
- jurisdiction_code: "CIT"
- jurisdiction_id: "a57cdd5a-9f1a-4d7f-9b9c-d11ce178726f"
- jurisdiction_name: "San Diego"
- jurisdiction_type: "City"
- last_name: "Barrios"
- middle_name: null
- office: "City Council"
- office_code: "CCM"
- office_id: "42174fe9-614f-4530-88ac-d1cd7167f779"
- suffix: null
- title: null
If a link to a candidate from the list under the office is clicked you will go to a URL similar to: https://efile.sandiego.gov/public/search/campaign/filings/5a259372-ba59-4c89-b005-02950bd545a7?type=candidate&entity_name=Kelvin%20Barrios
The 'entity_name=' field is optional. The candidates 'coe_id' field is part of the request URL.
This page will show a list of the filings for a candidate. The DevTools shows the data is returned from a request to: https://efile.sandiego.gov/api/v1/public/campaign-search/candidate/filing/list/5a259372-ba59-4c89-b005-02950bd545a7?type=candidate
The candidates 'coe_id' field is also part of this request URL. The response from the request is:
- data: array
- success: bolean
In one example the array contained 66 items while the html page showed 10 results per page.
An example item in the data array:
- amendment: false
- amendment_number: 0
- amends_orig_id: null
- amends_prev_id: null
- coe_id: "5a259372-ba59-4c89-b005-02950bd545a7"
- doc_public: "Ext_d7a7c571-438d-45d8-a3bd-499c9d274df8"
- e_filing_id: "300050320"
- entity_id: "50c9d9ce-36c2-c082-b829-38fec7fba953"
- entity_name: "Kelvin Barrios for San Diego City Council 2020"
- filing_date: "06/23/2021"
- filing_id: "d7a7c571-438d-45d8-a3bd-499c9d274df8"
- filing_subtypes: "termination"
- filing_type: "FPPC 460; termination"
- form_name: "fppc460_220"
- name: "Kelvin Barrios for San Diego City Council 2020"
- name_first: null
- name_suffix: null
- name_title: null
- period_end: "05/02/2021"
- period_start: "01/01/2021"
Another example with an amending filling:
- amendment: true
- amendment_number: 1
- amends_orig_id: {orig_id: "7d196bf5-2901-4ac1-06a1-5c587cf6a89e", human_id: "7d196bf5"}
- amends_prev_id: {prev_id: "7d196bf5-2901-4ac1-06a1-5c587cf6a89e", human_id: "7d196bf5"}
- coe_id: "42fa38d6-bfc3-4c9f-8f94-e111084accfa"
- doc_public: "Ext_3feaebfd-4f30-4e2d-935d-d51016fcde99"
- e_filing_id: "300050260"
- entity_id: "50c9d9ce-36c2-c082-b829-38fec7fba953"
- entity_name: "Kelvin Barrios for San Diego City Council 2020"
- filing_date: "05/11/2021"
- filing_id: "3feaebfd-4f30-4e2d-935d-d51016fcde99"
- filing_subtypes: "termination"
- filing_type: "FPPC 410; termination"
- form_name: null
- name: "Kelvin Barrios for San Diego City Council 2020"
- name_first: null
- name_suffix: null
- name_title: null
- period_end: "05/02/2021"
- period_start: "09/19/2019"
The amends_orig_id and amends_prev_id fields contain an object with an orig_id field that refers to another filings filing_id field.
The following request URL with a filing_id returns: {"success":true,"data":[]} but does not contain any items within the data array. https://efile.sandiego.gov/api/v1/public/campaign-search/candidate/filing/list/3feaebfd-4f30-4e2d-935d-d51016fcde99