Skip to content

Campaign Disclosure Data for City of San Diego

Robert edited this page Aug 5, 2021 · 3 revisions

City of San Diego Electronic Filing System @ https://efile.sandiego.gov/

List of Elections

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

List of Offices for an election

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

List of Candidates for an Office in an election

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

List of Filings for a Candidate

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.

Transactions within a filing

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

Request URL patterns: