Form N-PX Proxy Voting Records API

The Form N-PX API consists of two APIs: the N-PX Search API and the Voting Record API. The N-PX Search API enables filtering all N-PX filings published on the SEC EDGAR database since 2024. The API accepts search queries as JSON formatted payload and returns the matching N-PX filings in JSON format. The Voting Record API allows downloading the proxy voting records in structured JSON format for a specific filing by providing the filing's accession number.

Form N-PX filings (Proxy Voting Disclosures) are used by registered investment companies, such as mutual funds and ETFs, and certain institutional investment managers, such as hedge funds and pension funds, to disclose how they voted on shareholder proposals in proxy voting. Each filing reports the details, such as name, CUSIP and ISIN, of the company that held the shareholder meeting, date of the meeting, proposal description (e.g. executive compensation, coporate governance, etc.), whether the vote was cast for or against the proposal, the number of shares voted, and more. Submitted annually to the SEC by August 31st each year, Form N-PX filings cover proxy votes during the previous 12 months, from July 1st to June 30th of the current year.

Metadata of a Form N-PX filing in JSON format
1 {
2 "accessionNo": "0000005138-24-000043",
3 "formType": "N-PX",
4 "filedAt": "2024-07-22T16:05:55-04:00",
5 "periodOfReport": "2024-06-30",
6 "cik": "5138",
7 "companyName": "AMERICAN GROWTH FUND INC",
8 "headerData": {
9 "filerInfo": {
10 "registrantType": "RMIC",
11 "investmentCompanyType": "N-1A",
12 },
13 "seriesClass": {
14 "reportSeriesClass": {
15 "rptSeriesClassInfo": [
16 {
17 "seriesId": "S000012125",
18 "includeAllClassesFlag": true
19 }
20 ]
21 }
22 }
23 },
24 "formData": {
25 "coverPage": {
26 "yearOrQuarter": "YEAR",
27 "reportCalendarYear": "2024",
28 "reportingPerson": {
29 "name": "AMERICAN GROWTH FUND INC",
30 "phoneNumber": "303-626-0600",
31 "address": {
32 "street1": "1636 Logan Street",
33 "city": "Denver",
34 "stateOrCountry": "CO",
35 "zipCode": "80203"
36 }
37 },
38 "reportInfo": { "reportType": "FUND VOTING REPORT" },
39 "fileNumber": "811-00825",
40 "explanatoryInformation": { "explanatoryChoice": false }
41 },
42 "summaryPage": { "otherIncludedManagersCount": 0 },
43 "seriesPage": {
44 "seriesCount": 1,
45 "seriesDetails": {
46 "seriesReports": [
47 {
48 "idOfSeries": "S000012125",
49 "nameOfSeries": "American Growth Fund,Inc. Series One",
50 "leiOfSeries": "00000000000000000000"
51 }
52 ]
53 }
54 },
55 "signaturePage": {
56 "reportingPerson": "AMERICAN GROWTH FUND INC",
57 "txSignature": "Timothy E. Taggart",
58 "txPrintedSignature": "Timothy E. Taggart",
59 "txTitle": "President",
60 "txAsOfDate": "07/22/2024"
61 }
62 },
63 "proxyVotingRecordsAttached": true
64 }
Dataset size:
More than 10,000 Form N-PX filings originally filed in XML format since January 1, 2024 to present.
Data update frequency:
New filings are indexed and searchable within 300 milliseconds of being published on EDGAR. In rare cases of exceptionally large filings, this latency may be higher.
Survivorship bias free:
Yes. The dataset includes all Form N-PX filings, covering both active and inactive funds.

API Endpoints

Form N-PX Search API

The N-PX Search API allows searching and filtering all N-PX filings published on the SEC EDGAR database since 2024 to present. The API accepts search queries as JSON formatted payload and returns the matching N-PX filings in JSON format. The API endpoint is:

https://api.sec-api.io/form-npx

Supported HTTP methods: POST

Request and response content type: JSON

Voting Records API

Due to their size - sometimes exceeding 200MB and 420,000 records - proxy voting records are available for separate download via a GET request using the filing's accession number.

https://api.sec-api.io/form-npx/<accession-number>

Supported HTTP methods: GET

Response content type: JSON

Example: GET request to https://api.sec-api.io/form-npx/0001021408-24-007161 to download the proxy voting records in structured JSON format for the filing with accession number 0001021408-24-007161.

Authentication

To authenticate API requests, use the API key displayed in your user profile. Utilize the API key in one of two ways. Choose the method that best fits your use case:

  • Authorization Header: Set the API key as an Authorization header. For instance, before sending a POST request to https://api.sec-api.io/form-npx, ensure the header is set as follows: Authorization: YOUR_API_KEY. Do not include any prefix like Bearer.
  • Query Parameter: Alternatively, append the API key directly to the URL as a query parameter. For example, when making a GET request, use the URL https://api.sec-api.io/form-npx/0001021408-24-007161?token=YOUR_API_KEY instead of the base endpoint.

Form N-PX Search API

To search the Form N-PX database and find proxy voting records, send a POST request to https://api.sec-api.io/form-npx, providing the search criteria as a JSON payload. All Form N-PX filing properties are searchable and listed in the Response Structure section below. The Search API returns the metadata of matching N-PX filings in JSON format.

Request Structure - Search API

The following request parameters are supported:

  • query (string) - The search criteria in the format field:value defining thefield to search in and the value to search for in this field. The search expression is written in Lucene syntax and supports AND and OR operators. Examples: cik:4568 or filedAt:[2019-01-01 TO 2022-12-31].
  • from (integer) - Pagination control to specify the starting position of the results. Max: 10000. Default: 0.
  • size (integer) - The number of N-PX filings to be returned in one response. Default: 50. Max: 50.
  • sort (array) - Specifies the field by which results should be sorted. By default, results are sorted by filedAt in descending order, starting with the most recent filings: [{ "filedAt": { "order": "desc" } }]

Request Examples

Search N-PX filings by CIK: Find the two most recently submitted N-PX filings for the company with CIK 2110.

Open in Data Browser

Find all proxy voting records for the series 'Columbia Acorn International Select' of the mutual fund 'Columbia Acorn Trust' published on SEC EDGAR, starting with the most recent filing.

Open in Data Browser

Find all proxy voting records for which confidential treatment was requested and part of the proxy voting records are omitted.

Open in Data Browser

Response Structure - Search API

When the Search API locates matches within the Form N-PX database, it returns a JSON response including two fields: total and data. The value field inside the total object indicates the total number of N-PX filings that match the search criteria, while the data field contains an array of N-PX filing objects that match the query. The maximum number of metadata objects inside thedata array is determined by the size and limited to 50. Each N-PX filing object comprises the following fields:

  • id (string) - System-internal unique identifier of the filing record.
  • accessionNo (string) - Unique accession number of the Form N-PX filing, e.g. 0001021408-24-007161.
  • formType (string) - The form type of the SEC filing. Possible values: N-PX (Annual Report of Proxy Voting Record), or N-PX/A (Amendment to a previously filed Form N-PX).
  • filedAt (date) - The timestamp when the filing was accepted by SEC EDGAR, e.g. 2024-05-15T16:17:15-04:00.
  • periodOfReport (date) - The reporting period covered by this Form N-PX submission, typically the 12-month period ending on June 30 of the filing year. Format: YYYY-MM-DD, e.g. 2024-06-30.
  • cik (string) - Central Index Key (CIK) of the reporting entity, e.g. 1021408. This is a unique identifier assigned by the SEC to the filer. Leading zeros are omitted.
  • ticker (string) - If the filer represents a publicly traded company, the stock ticker symbol of the filer at the time of filing.
  • companyName (string) - The name of the filer of this proxy voting record, e.g. American Growth Fund Inc.
  • proxyVotingRecordsAttached (boolean) - true if the filing includes proxy voting records. The proxy voting records are available for download separately via the Voting Records API.
  • headerData (object)
    • filerInfo (object)
      • registrantType (string) - Classification of the filer. Possible values: RMIC or IM (which stand for "Registered Management Investment Company" or "Institutional Manager").
      • filer (object)
        • fileNumber (string) - The SEC-assigned file number associated with this filing.
      • flags (object) - Flags indicating specific processing instructions for the submission.
        • overrideInternetFlag (bool) - A boolean flag indicating whether the filer has chosen to override default internet submission rules. Typically used in cases where manual or alternative submission processing is needed.
        • confirmingCopyFlag (bool) - A boolean flag indicating whether this filing is a confirming copy. If true, this submission serves as an additional copy of a previously submitted filing.
      • investmentCompanyType (string) - Indicates the SEC registration form of the investment company, determining its structure and regulatory framework. Possible values: N-1A (open-end mutual fund), N-2 (closed-end fund),N-3, N-4, N-6 (variable annuities or insurance-related funds), S-1 or S-3, or S-6 (statutory investment companies).
    • seriesClass (object)
      • reportSeriesClass (object)
        • rptIncludeAllSeriesFlag (bool) - Indicates whether the filing includes all series of the investment company. If true, all series are reported, and individual series details may not be required.
        • rptSeriesClassInfo (array) - A list of specific series and their associated class details included in the report. Maximum length of 1000.
          • seriesId (string) - A unique identifier for the investment series within the fund.
          • includeAllClassesFlag (bool) - Indicates whether all classes within the specified series are included in the filing. If true, individual class details may not be provided.
          • classInfo (array) - A list of classes associated with the specified series. Maximum length of 1000.
            • classId (string) - A unique identifier for the class within the series.
      • reportClass (array) - Contains details about individual classes being reported in the filing, independent of the series structure.
        • rptIncludeAllClassesFlag (bool) - Indicates whether the filing includes all classes for the fund. If true, individual class details may not be required.
        • classInfo (array) - A list of individual classes included in the report.
          • classId (string) - A unique identifier for the reported class.
  • formData (object)
    • coverPage (object)
      • yearOrQuarter (string) - Indicates whether the report covers a full year or a specific quarter. Possible values: YEAR or QUARTER.
      • reportCalendarYear (string) - The calendar year associated with this report.
      • reportQuarterYear (string) - If applicable, the quarter being reported.
      • amendmentInfo (object)
        • isAmendment (boolean) - Indicates if the filing is an amendment to a previous report.
        • amendmentNo (number) - The number assigned to this amendment.
        • amendmentType (string) - The type of amendment. Possible values: RESTATEMENT or NEW PROXY.
        • confDeniedExpired (boolean) - Indicates whether a request for confidential treatment of certain proxy voting information was denied or if previously granted confidentiality has expired. A value of true means the confidentiality request was denied or has expired, making the information publicly accessible.
        • dateExpiredDenied (string) - The date on which the request for confidential treatment was either denied or expired. Format: original date string from the XML file, typically MM/DD/YYYY, e.g. 06/30/2024. See the Date String Format section for more details.
        • dateReported (string) - The date when the proxy voting information was reported in the Form N-PX filing. This represents when the data became part of the public record. Format: original date string from the XML file, typically MM/DD/YYYY, e.g. 06/30/2024. See the Date String Format section for more details.
        • reasonForNonConfidentiality (string) - Specifies the reason why a request for confidentiality was not granted or why the information is no longer confidential. Possible values:Denied or Confidential Treatment Expired (previously granted confidentiality period has expired).
      • reportingPerson (object)
        • name (string) - The name of the entity responsible for this filing.
        • phoneNumber (string) - The phone number of the reporting entity.
        • address (object)
          • street1 (string) - Street address line 1.
          • street2 (string) - Street address line 2 (optional).
          • city (string) - City of the reporting entity.
          • stateOrCountry (string) - U.S. State or country of the reporting entity. This field supersedes the fields "state" and "country" from previous versions of form N-PX.
          • zipCode (string) - Postal code of the reporting entity.
      • agentForService (object) - Information about the designated agent responsible for receiving legal and administrative correspondence on behalf of the filer.
        • name (string) - The full name of the agent for service.
        • address (object) - The mailing address of the agent for service.
          • street1 (string) - Primary street address line.
          • street2 (string) - Additional street address information (optional).
          • city (string) - City where the agent is located.
          • state (string) - State or province where the agent is located.
          • country (string) - Country where the agent is located.
          • stateOrCountry (string) - U.S. State or country of the reporting entity. This field supersedes the fields "state" and "country" from previous versions of form N-PX.
          • zipCode (string) - Postal or ZIP code of the agent’s address.
      • reportInfo (object)
        • reportType (string) - Specifies the type of report being filed. Possible values:FUND VOTING REPORT (full proxy voting record filed by an investment company), FUND NOTICE REPORT (indicates that no securities were held for voting), INSTITUTIONAL MANAGER VOTING REPORT (full proxy voting report filed by an institutional manager), INSTITUTIONAL MANAGER NOTICE REPORT (indicates that no votes were cast), INSTITUTIONAL MANAGER COMBINATION REPORT (partial voting report where some votes are reported elsewhere).
        • noticeExplanation (string) - Explanation for why a notice report is being filed instead of a full voting record. Possible values: ALL VOTES BY OTHER PERSONS, REPORTING PERSON DID NOT EXERCISE VOTING, or REPORTING PERSON HAS POLICY TO NOT VOTE.
        • confidentialTreatment (boolean) - Indicates whether a portion of the filing has been granted confidential treatment by the SEC. If true, certain proxy votes are omitted from public disclosure.
      • fileNumber (string) - SEC-assigned file number for the registrant or institutional manager, used for identification in regulatory filings.
      • reportingCrdNumber (string) - The Central Registration Depository (CRD) number assigned by the Financial Industry Regulatory Authority (FINRA) or Investment Adviser Registration Depository (IARD).
      • reportingSecFileNumber (string) - The SEC file number assigned to the reporting entity, such as an investment company or investment adviser.
      • leiNumber (string) - The Legal Entity Identifier (LEI) assigned to the reporting entity by a globally accredited LEI issuer.
      • otherManagersInfo (object) - Information about other managers whose votes are included in this report.
        • otherManager (array) - A list of additional managers whose proxy votes are reported. Maximum length of 999.
          • icaOr13FFileNumber (string) - The Investment Company Act (ICA) or Form 13F file number associated with the manager.
          • crdNumber (string) - The Central Registration Depository (CRD) number of the manager.
          • otherFileNumber (string) - An alternative file number assigned by the SEC.
          • leiNumberOM (string) - The Legal Entity Identifier (LEI) of the manager.
          • managerName (string) - The name of the other investment manager.
      • explanatoryInformation (object) - Additional details provided by the filer regarding the submission.
        • explanatoryChoice (boolean) - Indicates whether explanatory information has been provided. If true, the filing includes additional notes.
        • explanatoryNotes (string) - Detailed explanation or comments regarding the filing.
    • summaryPage (object) - Summary of included managers and their votes.
      • otherIncludedManagersCount (number) - The number of additional managers whose votes are included in the report.
      • otherManagers2 (object) - Details of included investment managers.
        • investmentManagers (array) - A list of investment managers included in the filing. Maximum length of 999.
          • serialNo (number) - A sequential number identifying the manager.
          • form13FFileNumber (string) - The SEC Form 13F file number assigned to the manager.
          • crdNumber (string) - The CRD number of the investment manager.
          • secFileNumber (string) - The SEC file number assigned to the manager.
          • leiNumber (string) - The LEI of the manager.
          • name (string) - The name of the investment manager.
    • seriesPage (object) - Contains information about the series of an investment company, including the number of series and specific details for each series included in the report.
      • seriesCount (number) - The total number of investment series reported in this Form N-PX filing.
      • seriesDetails (object) - Details of each investment series included in the report, such as its identifier, name, and Legal Entity Identifier (LEI).
        • seriesReports (array) - A list of series included in the report, each representing a distinct investment series within the investment company. Maximum length of 999.
          • idOfSeries (string) - A unique identifier assigned to the series, typically an SEC-assigned number used to track the series within an investment company.
          • nameOfSeries (string) - The official name of the investment series as registered with the SEC.
          • leiOfSeries (string) - The Legal Entity Identifier (LEI) assigned to the investment series, which is used for global financial transactions and entity identification.
    • signaturePage (object) - Contains information about the authorized signatory of the Form N-PX filing, including their name, signature, title, and the date of signing.
      • reportingPerson (string) - The name of the individual or entity responsible for signing the Form N-PX filing on behalf of the reporting entity.
      • txSignature (string) - The signature of the individual authorized to sign the filing on behalf of the reporting entity.
      • txPrintedSignature (string) - The printed or typed name of the authorized signatory, appearing below their signature for verification.
      • txTitle (string) - The official title or position of the signatory within the reporting entity, e.g., "Chief Compliance Officer" or "Fund Manager."
      • txAsOfDate (string) - The date on which the Form N-PX filing was signed. Format: original date string from the XML file, typically MM/DD/YYYY, e.g. 06/30/2024. See the Date String Format section for more details.
      • secondaryRecords (object) - Contains additional signature records if multiple signatories are required or secondary authorizations are necessary for the filing.
        • secondaryRecord (array) - A list of additional authorized signatories for the filing.
          • txSignature (string) - The signature of a secondary authorized individual, if required.
          • printedSign (string) - The printed or typed name of the secondary signatory.
          • txTitle (string) - The title or role of the secondary signatory within the organization.
          • txAsOfDate (string) - The date on which the secondary signatory signed the filing. Format: original date string from the XML file, typically MM/DD/YYYY, e.g. 06/30/2024. See the Date String Format section for more details.

Response Example - Search API

JSON
1 {
2 "total": {
3 "value": 10000,
4 "relation": "gte"
5 },
6 "data": [
7 {
8 "id": "a0b096168b013ae3960f4b9b71a569c7",
9 "accessionNo": "0001021408-24-007161",
10 "formType": "N-PX",
11 "filedAt": "2024-09-03T09:32:03-04:00",
12 "periodOfReport": "2024-06-30",
13 "cik": "2110",
14 "ticker": "",
15 "companyName": "COLUMBIA ACORN TRUST",
16 "proxyVotingRecordsAttached": true,
17 "headerData": {
18 "submissionType": "N-PX",
19 "filerInfo": {
20 "registrantType": "RMIC",
21 "filer": {
22 "issuerCredentials": {
23 "cik": "0000002110"
24 }
25 },
26 "flags": {
27 "overrideInternetFlag": false,
28 "confirmingCopyFlag": false
29 },
30 "investmentCompanyType": "N-1A",
31 "periodOfReport": "06/30/2024"
32 },
33 "seriesClass": {
34 "reportSeriesClass": {
35 "rptIncludeAllSeriesFlag": true
36 }
37 }
38 },
39 "formData": {
40 "coverPage": {
41 "yearOrQuarter": "YEAR",
42 "reportCalendarYear": "2024",
43 "reportingPerson": {
44 "name": "Columbia Acorn Trust",
45 "phoneNumber": "202.654.6254",
46 "address": {
47 "street1": "71 S. Wacker Drive, Suite 2500",
48 "city": "Chicago",
49 "stateOrCountry": "IL",
50 "zipCode": "60606"
51 }
52 },
53 "agentForService": {
54 "name": "Mary C. Moynihan",
55 "address": {
56 "street1": "700 13th Street, N.W.,Suite 800",
57 "city": "Washington, D.C.",
58 "stateOrCountry": "DC",
59 "zipCode": "20005"
60 }
61 },
62 "reportInfo": {
63 "reportType": "FUND VOTING REPORT"
64 },
65 "fileNumber": "811-01829",
66 "leiNumber": "549300DX0CWIN8VE1908",
67 "explanatoryInformation": {
68 "explanatoryChoice": false
69 }
70 },
71 "summaryPage": {
72 "otherIncludedManagersCount": 0
73 },
74 "seriesPage": {
75 "seriesCount": 5,
76 "seriesDetails": {
77 "seriesReports": [
78 {
79 "idOfSeries": "S000009184",
80 "nameOfSeries": "Columbia Acorn Fund",
81 "leiOfSeries": "549300X3KJ5X2R54O387"
82 },
83 {
84 "idOfSeries": "S000009185",
85 "nameOfSeries": "Columbia Acorn International",
86 "leiOfSeries": "5493004K6O04MY5NT292"
87 },
88 {
89 "idOfSeries": "S000009188",
90 "nameOfSeries": "Columbia Acorn International Select",
91 "leiOfSeries": "549300KTP8INZROJV026"
92 },
93 {
94 "idOfSeries": "S000009189",
95 "nameOfSeries": "Columbia Thermostat Fund",
96 "leiOfSeries": "549300EN4NJA2NPKY702"
97 },
98 {
99 "idOfSeries": "S000033621",
100 "nameOfSeries": "Columbia Acorn European Fund",
101 "leiOfSeries": "5493000YCDHFU2BTMI80"
102 }
103 ]
104 }
105 },
106 "signaturePage": {
107 "reportingPerson": "Columbia Acorn Trust",
108 "txSignature": "/s/ Daniel J. Beckman",
109 "txPrintedSignature": "/s/ Daniel J. Beckman",
110 "txTitle": "President and Principal Executive Officer",
111 "txAsOfDate": "08/29/2024"
112 }
113 }
114 },
115 // cut off for brevity
116 ]
117 }
118

Voting Records API

The full proxy voting records are available for download separately via a GET request by providing the filing's accession number as a URL parameter. The API endpoint is:

https://api.sec-api.io/form-npx/<accession-number>

Response Structure

The response records are formatted in JSON and include all fields from the Search API, along with the following field:

  • proxyVotingRecords (array) - Contains information about individual proxy votes. Maximum length of 500,000.
    • issuerName (string) - The name of the company or entity issuing the security being voted on.
    • cusip (string) - The CUSIP (Committee on Uniform Securities Identification Procedures) identifier assigned to the security being voted on. CUSIPs are used primarily in North America to uniquely identify financial instruments.
    • isin (string) - The International Securities Identification Number (ISIN) assigned to the security. ISINs are used globally for uniquely identifying securities.
    • figi (string) - The Financial Instrument Global Identifier (FIGI) assigned to the security. FIGI provides an open and universal identifier for financial instruments.
    • meetingDate (string) - The date of the shareholder meeting where the proxy vote took place. Format: original date string from the XML file, typically MM/DD/YYYY, e.g. 06/30/2024. See the Date String Format section for more details.
    • voteDescription (string) - A textual description of the proposal being voted on.
    • voteCategories (object) - Categorization of the proposal based on predefined SEC vote categories.
      • voteCategory (array) - List containing the specific categories. Maximum length of 14.
        • categoryType (string) - Specific category the vote falls under. Possible values are:DIRECTOR ELECTIONS, SECTION 14A SAY-ON-PAY VOTES, AUDIT-RELATED, INVESTMENT COMPANY MATTERS, SHAREHOLDER RIGHTS AND DEFENSES, EXTRAORDINARY TRANSACTIONS, CAPITAL STRUCTURE,COMPENSATION, CORPORATE GOVERNANCE, ENVIRONMENT OR CLIMATE, HUMAN RIGHTS OR HUMAN CAPITAL/WORKFORCE, DIVERSITY, EQUITY, AND INCLUSION, OTHER SOCIAL ISSUES, or OTHER.
    • otherVoteDescription (string) - Additional descriptive text for the proposal if it does not fall into predefined categories or requires further explanation.
    • voteSource (string) - Indicates the origin of the voting decision. Possible values are: ISSUER (vote was proposed by the company) or SECURITY HOLDER (vote was proposed by shareholders).
    • sharesVoted (number) - The total number of shares that were voted on the proposal.
    • sharesOnLoan (number) - The number of shares that were on loan and not recalled for voting purposes.
    • vote (object) - Contains information about how votes were cast on the proposal.
      • voteRecord (array) - A list of how shares were voted for a given proposal. Maximum length of 999.
        • howVoted (string) - The direction of the vote. Possible values are: FOR, AGAINST, ABSTAIN, or WITHHOLD (used in director elections when votes are withheld).
        • sharesVoted (number) - The number of shares that were voted in the specified manner.
        • managementRecommendation (string) - Indicates the recommendation made by the company's management regarding the proposal. Possible values:FOR, AGAINST, or NONE
    • voteManager (object) - Information about the investment managers responsible for casting the vote.
      • otherManagers (array) - List of other managers that participated in the voting decision. Maximum length of 25.
        • otherManager (number) - Integer ID for another investment manager who contributed to the voting decision. See formData.summaryPage.otherManagers2.investmentManagers.serialNo.
    • voteSeries (string) - The unique identifier for the series of the fund that cast the vote.
    • voteOtherInfo (string) - Additional explanatory text or remarks regarding the voting decision.

Response Example - Proxy Voting Records API

JSON
1 {
2 "id": "a0b096168b013ae3960f4b9b71a569c7",
3 "accessionNo": "0001021408-24-007161",
4 "formType": "N-PX",
5 "filedAt": "2024-09-03T09:32:03-04:00",
6 "periodOfReport": "2024-06-30",
7 "cik": "2110",
8 "ticker": "",
9 "companyName": "COLUMBIA ACORN TRUST",
10 "proxyVotingRecordsAttached": true,
11 "headerData": {
12 "submissionType": "N-PX",
13 "filerInfo": {
14 "registrantType": "RMIC",
15 "filer": {
16 "issuerCredentials": {
17 "cik": "0000002110"
18 }
19 },
20 "flags": {
21 "overrideInternetFlag": false,
22 "confirmingCopyFlag": false
23 },
24 "investmentCompanyType": "N-1A",
25 "periodOfReport": "06/30/2024"
26 },
27 "seriesClass": {
28 "reportSeriesClass": {
29 "rptIncludeAllSeriesFlag": true
30 }
31 }
32 },
33 "formData": {
34 "coverPage": {
35 "yearOrQuarter": "YEAR",
36 "reportCalendarYear": "2024",
37 "reportingPerson": {
38 "name": "Columbia Acorn Trust",
39 "phoneNumber": "202.654.6254",
40 "address": {
41 "street1": "71 S. Wacker Drive, Suite 2500",
42 "city": "Chicago",
43 "stateOrCountry": "IL",
44 "zipCode": "60606"
45 }
46 },
47 "agentForService": {
48 "name": "Mary C. Moynihan",
49 "address": {
50 "street1": "700 13th Street, N.W.,Suite 800",
51 "city": "Washington, D.C.",
52 "stateOrCountry": "DC",
53 "zipCode": "20005"
54 }
55 },
56 "reportInfo": {
57 "reportType": "FUND VOTING REPORT"
58 },
59 "fileNumber": "811-01829",
60 "leiNumber": "549300DX0CWIN8VE1908",
61 "explanatoryInformation": {
62 "explanatoryChoice": false
63 }
64 },
65 "summaryPage": {
66 "otherIncludedManagersCount": 0
67 },
68 "seriesPage": {
69 "seriesCount": 5,
70 "seriesDetails": {
71 "seriesReports": [
72 {
73 "idOfSeries": "S000009184",
74 "nameOfSeries": "Columbia Acorn Fund",
75 "leiOfSeries": "549300X3KJ5X2R54O387"
76 },
77 {
78 "idOfSeries": "S000009185",
79 "nameOfSeries": "Columbia Acorn International",
80 "leiOfSeries": "5493004K6O04MY5NT292"
81 },
82 {
83 "idOfSeries": "S000009188",
84 "nameOfSeries": "Columbia Acorn International Select",
85 "leiOfSeries": "549300KTP8INZROJV026"
86 },
87 {
88 "idOfSeries": "S000009189",
89 "nameOfSeries": "Columbia Thermostat Fund",
90 "leiOfSeries": "549300EN4NJA2NPKY702"
91 },
92 {
93 "idOfSeries": "S000033621",
94 "nameOfSeries": "Columbia Acorn European Fund",
95 "leiOfSeries": "5493000YCDHFU2BTMI80"
96 }
97 ]
98 }
99 },
100 "signaturePage": {
101 "reportingPerson": "Columbia Acorn Trust",
102 "txSignature": "/s/ Daniel J. Beckman",
103 "txPrintedSignature": "/s/ Daniel J. Beckman",
104 "txTitle": "President and Principal Executive Officer",
105 "txAsOfDate": "08/29/2024"
106 }
107 },
108 "proxyVotingRecords": [
109 {
110 "issuerName": "Kyndryl Holdings, Inc.",
111 "cusip": "50155Q100",
112 "isin": "US50155Q1004",
113 "meetingDate": "07/27/2023",
114 "voteDescription": "Election of three Class Il Directors for a three-year term: John D. Harris II",
115 "voteCategories": {
116 "voteCategory": [
117 {
118 "categoryType": "DIRECTOR ELECTIONS"
119 }
120 ]
121 },
122 "voteSource": "ISSUER",
123 "sharesVoted": 1618,
124 "sharesOnLoan": 0,
125 "vote": {
126 "voteRecord": [
127 {
128 "howVoted": "FOR",
129 "sharesVoted": 1618,
130 "managementRecommendation": "FOR"
131 }
132 ]
133 },
134 "voteSeries": "S000012144"
135 },
136 {
137 "issuerName": "Kyndryl Holdings, Inc.",
138 "cusip": "50155Q100",
139 "isin": "US50155Q1004",
140 "meetingDate": "07/27/2023",
141 "voteDescription": "Election of three Class Il Directors for a three-year term: Jana Schreuder",
142 "voteCategories": {
143 "voteCategory": [
144 {
145 "categoryType": "DIRECTOR ELECTIONS"
146 }
147 ]
148 },
149 "voteSource": "ISSUER",
150 "sharesVoted": 1618,
151 "sharesOnLoan": 0,
152 "vote": {
153 "voteRecord": [
154 {
155 "howVoted": "FOR",
156 "sharesVoted": 1618,
157 "managementRecommendation": "FOR"
158 }
159 ]
160 },
161 "voteSeries": "S000012144"
162 }
163 ]
164 }

Date String Format

The technical specification of form N-PX asks filers to provide dates in the format MM/DD/YYYY. 98% of the filings adhere to this format. The remaining 2% of filings use different formats. We encountered formats such as DD/MM/YYYY, MM/DD/YY and even numbers such as45447, which are most likely Excel date serial numbers, representing the days elapsed since January 1, 1900. 45447 then represents June 4, 2024. To not alter the original data and modify it in an ambiguous way, we return the date strings as they are provided in the filings.

FAQ

Common questions about querying the Form N-PX Proxy Voting Records API, the response shape, and the bulk archives.

How do I find the most recent proxy voting disclosures filed by a specific fund company using its CIK?

To find a fund company's most recent N-PX proxy voting disclosures, search the N-PX Search API at /form-npx for filings whose reporting entity matches the company you are interested in, identified by its Central Index Key (cik). For example, the asset manager Columbia Acorn Trust carries CIK 2110. The CIK on the filing has its leading zeros omitted, so search for the numeric value without padding.

To get the latest filings first, sort the results by the EDGAR acceptance timestamp (filedAt) in descending order. This is also the default sort order of the endpoint. Each returned filing object includes the form type (formType), the reporting period (periodOfReport), and the filer name (companyName), so you can confirm you have the most recent annual submission.

Open in Data Browser

How can I retrieve a specific proxy voting filing if I already know its accession number?

If you already know the accession number of an N-PX filing, search the N-PX Search API at /form-npx for the filing whose unique accession number (accessionNo) matches the value you have, for example 0001021408-24-007161. This returns the filing metadata, including form type, filer, reporting period, and the flag indicating whether proxy voting records are attached.

To download the full set of individual proxy votes for that same accession number, use the Voting Records API at /form-npx/<accession-number> instead, supplying the accession number directly in the path. That endpoint returns the same metadata plus the proxyVotingRecords array of individual votes.

Open in Data Browser

How do I look up all proxy voting filings submitted within a particular date range?

To list proxy voting filings submitted during a specific window, search the N-PX Search API at /form-npx and filter on the EDGAR acceptance timestamp (filedAt). The value of filedAt should fall between your start and end dates, for example between 2024-01-01 and 2024-12-31. The dataset covers N-PX filings published on EDGAR since January 1, 2024.

Because N-PX filings are submitted annually and most are accepted around the August 31 deadline, filtering on filedAt is the way to capture everything filed in a calendar window. Sort the results by filedAt in descending order to see the newest submissions first, and page through the results if there are more than 50 matches.

Open in Data Browser

How can I find proxy voting filings that cover a specific 12-month reporting period?

To find filings that cover a specific reporting period, search the N-PX Search API at /form-npx and filter on the reporting period field (periodOfReport). N-PX filings report proxy votes for the 12 months ending June 30, so a period such as 2024-06-30 covers votes cast from July 1, 2023 through June 30, 2024.

Note that periodOfReport differs from filedAt: the reporting period describes the votes covered, while filedAt is when EDGAR accepted the submission. Filtering on periodOfReport is the correct choice when you want every fund's votes for the same annual cycle regardless of the exact day each filer submitted.

Open in Data Browser

How do I download the full list of individual proxy votes cast in a particular filing?

To download every individual proxy vote cast in a filing, use the Voting Records API at /form-npx/<accession-number>, supplying the filing's accession number in the path, for example 0001021408-24-007161. Because these record sets can be very large — sometimes hundreds of thousands of votes — they are served separately from the search metadata.

The response includes all the filing metadata plus an array of individual votes (proxyVotingRecords). Each entry names the portfolio company voted on (proxyVotingRecords.issuerName), its security identifiers (proxyVotingRecords.cusip, proxyVotingRecords.isin), the meeting date (proxyVotingRecords.meetingDate), a description of the proposal (proxyVotingRecords.voteDescription), and how the shares were voted (proxyVotingRecords.vote.voteRecord).

Open in Data Browser

How can I tell whether a given proxy voting filing actually contains detailed vote records before trying to download them?

To check whether a filing carries detailed vote records before downloading them, look at the records-attached flag on the filing metadata returned by the N-PX Search API at /form-npx. The boolean field proxyVotingRecordsAttached is true when the filing includes individual proxy votes and false when it does not.

Notice reports, where a filer reports that no securities were held for voting or that it did not vote any proxies, typically have proxyVotingRecordsAttached set to false. Filtering on this flag lets you skip filings that would return an empty record set before calling the Voting Records API at /form-npx/<accession-number>.

Open in Data Browser

How do I distinguish proxy voting filings submitted by mutual funds and ETFs from those submitted by hedge funds and other institutional managers?

To separate filings by the type of entity that submitted them, filter the N-PX Search API at /form-npx on the filer classification field (headerData.filerInfo.registrantType). The value RMIC marks a Registered Management Investment Company, which covers mutual funds and ETFs, while the value IM marks an Institutional Manager, which covers hedge funds, pension funds, and other institutional investment managers.

For mutual funds and ETFs, set headerData.filerInfo.registrantType to RMIC; for hedge funds and other institutional managers, set it to IM. The report type field (formData.coverPage.reportInfo.reportType) reinforces this distinction, since fund filers use values like FUND VOTING REPORT while institutional managers use values like INSTITUTIONAL MANAGER VOTING REPORT.

Open in Data Browser

How can I find proxy voting filings only from open-end mutual funds versus closed-end funds or variable annuity products?

To restrict results to a particular kind of investment company, filter the N-PX Search API at /form-npx on the investment company type field (headerData.filerInfo.investmentCompanyType). This field records the SEC registration form of the fund, which determines its structure.

For open-end mutual funds, the value of headerData.filerInfo.investmentCompanyType is N-1A; for closed-end funds it is N-2; and for variable annuity or insurance-related products it is N-3, N-4, or N-6. Statutory investment companies use S-1 or S-3 or S-6. This field is populated for Registered Management Investment Company filers, so it pairs naturally with a filter on headerData.filerInfo.registrantType set to RMIC.

Open in Data Browser

How do I identify funds that hold no voting securities or chose not to vote any proxies during the year?

To identify filers that held no voting securities or did not vote any proxies, filter the N-PX Search API at /form-npx on the report type field (formData.coverPage.reportInfo.reportType). A notice report indicates the filer did not cast votes: the value FUND NOTICE REPORT is used by an investment company that held no securities for voting, and the value INSTITUTIONAL MANAGER NOTICE REPORT is used by an institutional manager that cast no votes.

Notice reports do not carry detailed votes, so the records-attached flag (proxyVotingRecordsAttached) is false on these filings. To understand why a notice report was filed, read the explanation field (formData.coverPage.reportInfo.noticeExplanation), which states the reason no votes were reported.

Open in Data Browser

How can I tell why a filer submitted a notice instead of a full voting record?

To learn why a filer submitted a notice report rather than a full voting record, read the notice explanation field (formData.coverPage.reportInfo.noticeExplanation) on the filing metadata returned by the N-PX Search API at /form-npx. This field is present on notice reports and states the reason no votes were reported.

The explanation takes one of three values. The value REPORTING PERSON HAS POLICY TO NOT VOTE means the filer has a standing policy not to vote proxies. The value ALL VOTES BY OTHER PERSONS means the votes were cast and reported by another manager. The value REPORTING PERSON DID NOT EXERCISE VOTING means the filer held voting authority but did not exercise it. To find filings with a particular reason, filter formData.coverPage.reportInfo.noticeExplanation to the value you want.

Open in Data Browser

How do I find amendments to previously filed proxy voting reports?

To find amendments to previously filed N-PX reports, search the N-PX Search API at /form-npx for filings whose form type (formType) is N-PX/A, which designates an amendment to a previously filed Form N-PX. The unamended original filings carry the form type N-PX.

You can also identify amendments through the amendment flag on the cover page: the boolean field formData.coverPage.amendmentInfo.isAmendment should be true for an amendment. The amendment number (formData.coverPage.amendmentInfo.amendmentNo) records which amendment in sequence the filing represents.

Open in Data Browser

How can I separate amendments that restate prior data from those that add brand-new voting information?

To distinguish the kind of amendment, filter the N-PX Search API at /form-npx on the amendment type field (formData.coverPage.amendmentInfo.amendmentType) within filings that are amendments. This field describes what the amendment does.

The value RESTATEMENT marks an amendment that corrects or restates data already reported in a prior filing, while the value NEW PROXY marks an amendment that adds proxy voting information not previously reported. Combine this with a filter on the form type (formType) set to N-PX/A, or on the amendment flag (formData.coverPage.amendmentInfo.isAmendment) set to true, to scope the search to amendments only.

Open in Data Browser

How do I find proxy voting filings where part of the votes were kept confidential and omitted from public disclosure?

To find filings where some votes were withheld from public disclosure, filter the N-PX Search API at /form-npx on the confidential treatment flag (formData.coverPage.reportInfo.confidentialTreatment). When this boolean field is true, the SEC has granted confidential treatment to a portion of the filing and certain proxy votes are omitted from public disclosure.

Filings with formData.coverPage.reportInfo.confidentialTreatment set to false disclose all of their votes. Keep in mind that even on a filing with confidential treatment, the votes that were not granted confidentiality are still present in the proxyVotingRecords array available through the Voting Records API at /form-npx/<accession-number>.

Open in Data Browser

How can I find filings where a previously granted confidentiality request was denied or has since expired?

To find filings where a confidentiality request was denied or has lapsed, filter the N-PX Search API at /form-npx on the confidentiality-denied-or-expired flag (formData.coverPage.amendmentInfo.confDeniedExpired). When this boolean field is true, a request for confidential treatment was either denied or a previously granted confidentiality period has expired, making the information publicly accessible.

The specific reason is recorded in the non-confidentiality reason field (formData.coverPage.amendmentInfo.reasonForNonConfidentiality), which takes the value Denied or Confidential Treatment Expired. The date the request was denied or expired is in the date field (formData.coverPage.amendmentInfo.dateExpiredDenied). These fields appear on amendment filings, since previously confidential votes are disclosed by amending the original report.

Open in Data Browser

How do I locate all proxy voting filings for a specific mutual fund series by the series name?

To locate filings for a specific mutual fund series, search the N-PX Search API at /form-npx on the series name field (formData.seriesPage.seriesDetails.seriesReports.nameOfSeries). A single N-PX filing from a fund company can report on multiple series, and each series is listed in the series reports array with its name, for example Columbia Acorn International Select.

Search this field with the exact series name as a phrase. The matching filings carry the full series list, so you can also read the series identifier (formData.seriesPage.seriesDetails.seriesReports.idOfSeries) and the series Legal Entity Identifier (formData.seriesPage.seriesDetails.seriesReports.leiOfSeries) for the series you are interested in.

Open in Data Browser

How can I search for a fund family's filings using a series identifier rather than a name?

To search by series identifier instead of name, filter the N-PX Search API at /form-npx on the series identifier field (formData.seriesPage.seriesDetails.seriesReports.idOfSeries). This is the SEC-assigned series number, such as S000009184, which uniquely tracks a series within an investment company and avoids ambiguity from name variations.

The matching filings list every series the fund company reported on, each with its identifier (formData.seriesPage.seriesDetails.seriesReports.idOfSeries), name (formData.seriesPage.seriesDetails.seriesReports.nameOfSeries), and Legal Entity Identifier (formData.seriesPage.seriesDetails.seriesReports.leiOfSeries). The total number of series in a filing is recorded in the series count field (formData.seriesPage.seriesCount).

Open in Data Browser

To find a filing by the reporting entity's Legal Entity Identifier, search the N-PX Search API at /form-npx on the LEI field on the cover page (formData.coverPage.leiNumber). This is the globally accredited LEI assigned to the filer, for example 549300DX0CWIN8VE1908.

If you are looking for a specific fund series rather than the filing entity as a whole, note that each series carries its own LEI in the series reports array (formData.seriesPage.seriesDetails.seriesReports.leiOfSeries), and other managers bundled into the report carry their LEIs in their own fields (formData.summaryPage.otherManagers2.investmentManagers.leiNumber).

Open in Data Browser

How can I find proxy voting filings from investment managers registered under a particular CRD number?

To find filings from an investment manager registered under a particular CRD number, search the N-PX Search API at /form-npx on the reporting CRD number field (formData.coverPage.reportingCrdNumber). The CRD number is the Central Registration Depository identifier assigned by FINRA or through the Investment Adviser Registration Depository, for example 283549.

This field is generally populated on filings from institutional manager filers, so it pairs naturally with a filter on the filer classification (headerData.filerInfo.registrantType) set to IM. If a report bundles in other managers, those managers carry their own CRD numbers (formData.summaryPage.otherManagers2.investmentManagers.crdNumber).

Open in Data Browser

How do I find filings that bundle in the proxy votes of additional managers beyond the main filer?

To find filings that include votes from managers beyond the primary filer, filter the N-PX Search API at /form-npx on the included managers count field (formData.summaryPage.otherIncludedManagersCount). When this number is greater than 0, the filing bundles in the proxy votes of additional managers.

The details of those managers are listed in the investment managers array (formData.summaryPage.otherManagers2.investmentManagers), where each entry carries a sequential identifier (formData.summaryPage.otherManagers2.investmentManagers.serialNo), a name (formData.summaryPage.otherManagers2.investmentManagers.name), and file numbers such as the Form 13F file number (formData.summaryPage.otherManagers2.investmentManagers.form13FFileNumber). Inside the downloaded voting records, each vote ties back to a bundled manager through the manager reference (proxyVotingRecords.voteManager.otherManagers.otherManager), which matches a serial number.

Open in Data Browser

How can I see how a fund voted on executive compensation or say-on-pay proposals?

To see how a fund voted on compensation matters, download the filing's votes through the Voting Records API at /form-npx/<accession-number> and look at the vote category field on each record (proxyVotingRecords.voteCategories.voteCategory.categoryType). Compensation-related proposals carry the category COMPENSATION, while advisory votes on executive pay required under Section 14A carry the category SECTION 14A SAY-ON-PAY VOTES.

Filter the records to those whose category type equals COMPENSATION or SECTION 14A SAY-ON-PAY VOTES. For each matching record, the proposal text is in the vote description (proxyVotingRecords.voteDescription), and how the shares were cast — FOR, AGAINST, ABSTAIN, or WITHHOLD — is in the vote record (proxyVotingRecords.vote.voteRecord.howVoted).

Open in Data Browser

To find a fund's votes on environmental or climate proposals, download the filing's votes through the Voting Records API at /form-npx/<accession-number> and filter on the vote category field (proxyVotingRecords.voteCategories.voteCategory.categoryType). Climate and environmental proposals carry the category ENVIRONMENT OR CLIMATE.

To narrow this to shareholder-raised proposals specifically, also check the vote source field (proxyVotingRecords.voteSource), where the value SECURITY HOLDER marks proposals put forward by shareholders rather than company management. For each matching record, the proposal text is in the vote description (proxyVotingRecords.voteDescription), and the direction of the vote is in the vote record (proxyVotingRecords.vote.voteRecord.howVoted).

Open in Data Browser

How can I identify cases where a fund voted against the board's recommendation on a proposal?

To identify votes that went against the board, download the filing's votes through the Voting Records API at /form-npx/<accession-number> and compare two fields on each vote record: the direction the fund voted (proxyVotingRecords.vote.voteRecord.howVoted) against management's recommendation (proxyVotingRecords.vote.voteRecord.managementRecommendation).

The fund voted against the board whenever these two values differ — for example when proxyVotingRecords.vote.voteRecord.howVoted is AGAINST while proxyVotingRecords.vote.voteRecord.managementRecommendation is FOR, or the reverse. Management's recommendation takes the values FOR, AGAINST, or NONE, and the fund's direction takes FOR, AGAINST, ABSTAIN, or WITHHOLD. The proposal voted on is described in the vote description (proxyVotingRecords.voteDescription).

Open in Data Browser

How do I find all the votes a fund cast on the election of company directors?

To find a fund's votes on director elections, download the filing's votes through the Voting Records API at /form-npx/<accession-number> and filter on the vote category field (proxyVotingRecords.voteCategories.voteCategory.categoryType). Director election proposals carry the category DIRECTOR ELECTIONS.

Each matching record names the proposal, typically naming the director nominee, in the vote description (proxyVotingRecords.voteDescription). How the shares were cast is in the vote record direction field (proxyVotingRecords.vote.voteRecord.howVoted), which for director elections takes the values FOR, AGAINST, or WITHHOLD, where WITHHOLD is used specifically when votes are withheld from a nominee.

Open in Data Browser

How can I see how a fund voted on proposals raised by shareholders versus those put forward by company management?

To distinguish who raised a proposal, download the filing's votes through the Voting Records API at /form-npx/<accession-number> and read the vote source field on each record (proxyVotingRecords.voteSource). The value ISSUER marks a proposal put forward by company management, and the value SECURITY HOLDER marks a proposal raised by shareholders.

Filter the records to the value you want — SECURITY HOLDER for shareholder proposals or ISSUER for management proposals — and then read how the fund voted in the vote record (proxyVotingRecords.vote.voteRecord.howVoted). Comparing the fund's direction against management's recommendation (proxyVotingRecords.vote.voteRecord.managementRecommendation) shows whether the fund supported each side.

Open in Data Browser

How do I find all of a fund's proxy votes on a particular portfolio company by its security identifier?

To find every vote a fund cast on a particular portfolio company, download the filing's votes through the Voting Records API at /form-npx/<accession-number> and filter on the security identifier fields of each record. Each vote carries the CUSIP of the security voted on (proxyVotingRecords.cusip) and its ISIN (proxyVotingRecords.isin), for example CUSIP 50155Q100 or ISIN US50155Q1004 for Kyndryl Holdings.

Filtering on proxyVotingRecords.cusip or proxyVotingRecords.isin returns all proposals voted at that company's meetings. The company name is also recorded in the issuer name field (proxyVotingRecords.issuerName), and where available a FIGI is in proxyVotingRecords.figi. Using a security identifier rather than the name avoids missing votes due to spelling differences in the issuer name.

Open in Data Browser

How can I measure how many shares a fund had out on loan and therefore could not vote at a given meeting?

To measure how many shares a fund could not vote because they were on loan, download the filing's votes through the Voting Records API at /form-npx/<accession-number> and read the shares-on-loan field on each record (proxyVotingRecords.sharesOnLoan). This field reports the number of shares that were on loan and not recalled for voting purposes.

Compare this against the shares actually voted on the proposal (proxyVotingRecords.sharesVoted). A non-zero value in proxyVotingRecords.sharesOnLoan indicates the fund held additional shares it did not vote at that meeting because they were lent out. Each record corresponds to a specific company and meeting, identified by the issuer name (proxyVotingRecords.issuerName) and meeting date (proxyVotingRecords.meetingDate).

Open in Data Browser

How do I total the number of shares a fund voted for versus against a specific proposal?

To total the shares a fund voted for and against a proposal, download the filing's votes through the Voting Records API at /form-npx/<accession-number> and look at the vote record array on the proposal (proxyVotingRecords.vote.voteRecord). Each entry in that array reports a direction (proxyVotingRecords.vote.voteRecord.howVoted) and the number of shares cast that way (proxyVotingRecords.vote.voteRecord.sharesVoted).

Sum the share counts (proxyVotingRecords.vote.voteRecord.sharesVoted) grouped by the direction value (proxyVotingRecords.vote.voteRecord.howVoted) — totalling the FOR entries separately from the AGAINST entries. The proposal-level total across all directions is also available in the record's own shares-voted field (proxyVotingRecords.sharesVoted).

Open in Data Browser

How can I determine who signed a fund's proxy voting report and in what role?

To determine who signed a fund's N-PX report, read the signature page on the filing metadata returned by the N-PX Search API at /form-npx. The signatory's printed name is in the printed signature field (formData.signaturePage.txPrintedSignature), and their role within the reporting entity is in the title field (formData.signaturePage.txTitle), for example Chief Compliance Officer or President.

The date the filing was signed is in the as-of date field (formData.signaturePage.txAsOfDate), and the entity on whose behalf it was signed is in the reporting person field (formData.signaturePage.reportingPerson). If a filing required more than one signatory, additional signers are listed in the secondary records array (formData.signaturePage.secondaryRecords.secondaryRecord).

Open in Data Browser

To retrieve more than 50 matching filings from the N-PX Search API at /form-npx, page through the result set using the pagination controls. Each response returns at most 50 filings, set by the size parameter, which cannot exceed 50, and the starting position is set by the from parameter.

Request the first 50 results with from at 0, then the next 50 with from at 50, and so on, keeping size at 50. The from value can go up to a maximum of 10000. The response includes a total count (total.value) of how many filings match, so you know how many pages to retrieve. Keep a stable sort, such as filedAt descending, so results do not shift between pages.

Open in Data Browser

How can I find proxy voting filings from a particular fund family by searching the filer's company name?

To find filings from a particular fund family by name, search the N-PX Search API at /form-npx on the filer name field (companyName). This is the name of the entity that filed the proxy voting record, for example Franklin Templeton ETF Trust. Search it as a phrase so the words are matched in order.

Because company names can vary in spelling and punctuation across filings, a name search is best used for exploration; once you have identified the filer, its CIK (cik) gives a more precise way to retrieve all of its filings. Each matching filing also carries the reporting entity name on the cover page (formData.coverPage.reportingPerson.name).

Open in Data Browser

References

For more information about N-PX filings, visit the SEC websites here: