Home / Developers / Annual Meetings API
API reference

Annual Meetings API

The basics of a company's latest shareholder meeting from its proxy statement: meeting date, record date and the numbered ballot items, plus links to the 8-K Item 5.07 filings that report how the votes went. Product overview →

Endpoints

/v1/shareholder-meetings

GEThttps://secfeedapi.com/v1/shareholder-meetings

Annual meeting date, record date, ballot items, and the 8-K 5.07 vote results.

ParameterTypeDescriptionExample
tickerstringCompany ticker. Use either ticker or cik.AAPL
cikstringCompany CIK. Takes precedence over ticker.320193
accessionNostringA specific DEF 14A. Defaults to the latest one.0001308179-26-000008

Request examples

Every response below is real output from the API, trimmed to the first records.

Apple's latest annual meeting

Meeting and record dates, ballot items and the vote result filings.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/shareholder-meetings?ticker=AAPL"
import os, requests

r = requests.get(
    "https://secfeedapi.com/v1/shareholder-meetings",
    params={'ticker': 'AAPL'},
    headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
    timeout=60,
)
r.raise_for_status()
print(r.json())
{
  "cik": 320193,
  "accessionNo": "0001308179-26-000008",
  "meetingDate": "February 24, 2026",
  "recordDate": "January 2, 2026",
  "ballotItems": [
    {
      "number": 1,
      "description": "Election of Directors"
    },
    {
      "number": 3,
      "description": "Advisory Vote to Approve Executive Compensation"
    }
  ],
  "voteResults8K": [
    {
      "accessionNo": "0001140361-26-006577",
      "filedAt": "2026-02-24",
      "url": "https://www.sec.gov/Archives/edgar/data/320193/000114036126006577/0001140361-26-006577-index.htm"
    },
    {
      "accessionNo": "0001140361-25-005876",
      "filedAt": "2025-02-25",
      "url": "https://www.sec.gov/Archives/edgar/data/320193/000114036125005876/0001140361-25-005876-index.htm"
    }
  ]
}

NVIDIA

Use ballotItems to see what shareholders voted on.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/shareholder-meetings?ticker=NVDA"
import os, requests

r = requests.get(
    "https://secfeedapi.com/v1/shareholder-meetings",
    params={'ticker': 'NVDA'},
    headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
    timeout=60,
)
r.raise_for_status()
print(r.json())
{
  "cik": 1045810,
  "accessionNo": "0001045810-26-000036",
  "meetingDate": "June 24, 2026",
  "recordDate": "April 27, 2026",
  "ballotItems": [
    {
      "number": 1,
      "description": "Election of Directors 14 Director Qualifications and Nomination of Directors 15 Our Director Nominees 17 Information About the Board of Directors and Corporate G"
    },
    {
      "number": 2,
      "description": "Executive Compensation Highlights Our executive compensation program is designed to reward performance"
    }
  ],
  "voteResults8K": [
    {
      "accessionNo": "0001045810-26-000056",
      "filedAt": "2026-06-30",
      "url": "https://www.sec.gov/Archives/edgar/data/1045810/000104581026000056/0001045810-26-000056-index.htm"
    },
    {
      "accessionNo": "0001045810-25-000179",
      "filedAt": "2025-07-01",
      "url": "https://www.sec.gov/Archives/edgar/data/1045810/000104581025000179/0001045810-25-000179-index.htm"
    }
  ]
}

Microsoft by CIK

cik works the same way as ticker.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/shareholder-meetings?cik=789019"
import os, requests

r = requests.get(
    "https://secfeedapi.com/v1/shareholder-meetings",
    params={'cik': '789019'},
    headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
    timeout=60,
)
r.raise_for_status()
print(r.json())
{
  "cik": 789019,
  "accessionNo": "0001193125-25-245150",
  "meetingDate": "December 5, 2025",
  "recordDate": "September 30, 2025",
  "ballotItems": [
    {
      "number": 1,
      "description": "Election of 12 Directors"
    },
    {
      "number": 4,
      "description": "Approval of the Microsoft Corporation 2026 Stock Plan 66 Shareholder Proposals 77 INFORMATION ABOUT THE MEETING Date, Time, and Place of Meeting 91 Proxy Materia"
    }
  ],
  "voteResults8K": [
    {
      "accessionNo": "0001193125-25-311196",
      "filedAt": "2025-12-08",
      "url": "https://www.sec.gov/Archives/edgar/data/789019/000119312525311196/0001193125-25-311196-index.htm"
    },
    {
      "accessionNo": "0001193125-24-275524",
      "filedAt": "2024-12-11",
      "url": "https://www.sec.gov/Archives/edgar/data/789019/000119312524275524/0001193125-24-275524-index.htm"
    }
  ]
}

Response fields

FieldTypeMeaning
cikintegerCompany CIK.
accessionNostringProxy statement used.
meetingDatestringMeeting date as written in the proxy, for example February 24, 2026.
recordDatestringRecord date as written in the proxy.
ballotItems[]arrayProposals found in the proxy, up to 20, in number order.
ballotItems[].numberintegerProposal number.
ballotItems[].descriptionstringProposal description.
voteResults8K[]arrayRecent 8-K Item 5.07 filings for the company.
voteResults8K[].accessionNostringAccession number of the 8-K.
voteResults8K[].filedAtstringFiling date.
voteResults8K[].urlstringFiling index URL.

How to

How do I get the next meeting date?

Read meetingDate from the latest proxy.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/shareholder-meetings?ticker=AAPL"
How do I get the vote results?

Follow voteResults8K, or query the vote results feed for the company with text.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/form-8k/shareholder-votes?cik=320193&size=1"
How do I look at an older meeting?

Pass that year's DEF 14A accessionNo.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/shareholder-meetings?ticker=AAPL&accessionNo=0001308179-26-000008"
How do I find proxy accession numbers?

Search DEF 14A filings with the Filing Query API.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/filings?query=ticker:AAPL%20AND%20formType:%22DEF%2014A%22&size=5"
How do I spot shareholder proposals?

Look for ballot items whose description names a shareholder proposal.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/shareholder-meetings?ticker=MSFT"
Why are some ballot numbers missing?

Items are read from the proxy text; a proposal described in an unusual layout can be skipped. The proxy itself is the reference.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/shareholder-meetings?ticker=AAPL"
How do I read the full proxy?

Use the Download API or PDF Generator on the proxy filing.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/filings?query=ticker:NVDA%20AND%20formType:%22DEF%2014A%22&size=1"
How do I compare meeting dates across companies?

Call once per ticker.

curl -H "Authorization: Bearer $SECFEED_KEY" \
  "https://secfeedapi.com/v1/shareholder-meetings?ticker=NVDA"

Errors

See also the error codes every endpoint shares.

Try it with your own key

500 free calls a month.

Get free API key →