Shareholder Proposals and Proxy Contests API: activism signals from proxies
Activism signals from proxies: contests and dissidents, shareholder proposals, settlement agreements, 13D holders, engagement, solicitation cost and deadlines.
Overview
Shareholder activism shows up in proxy statements in many forms: a contested election with a dissident slate, shareholder proposals with the board's response, a cooperation agreement that put new directors on the board, or a large 13D holder in the ownership table. Contested proxies are filed as DEFC14A.
The Shareholder Proposals and Proxy Contests API reads both DEF 14A and DEFC14A. It returns the contest with dissidents, nominees and seats sought, every shareholder proposal with proponent and category, nominee agreements with standstill terms, the proxy solicitor's fee and the deadlines for next year's meeting.
What you get
Built for developers who would rather not parse EDGAR.
Contest type, dissidents with ownership, nominees, seats sought, universal proxy card and background.
Each proposal with category, proponent and type, resolution, board recommendation and prior support.
Nominee agreements by counterparty and type, with standstill and end date.
Rule 14a-8, advance notice, Rule 14a-19 and proxy access windows.
Endpoints
Authenticate with Authorization: Bearer YOUR_KEY. Responses are JSON.
Activism signals: contests and dissidents, shareholder proposals, nomination agreements, 13D holders, engagement, solicitation cost, deadlines and proxy access.
Parameters: ticker | cik, accessionNo, startDate, endDate, data.<path>=value, from, size (max 50)
Response fields
The main fields in every result. The raw filing data is always one level down.
| Field | Meaning |
|---|---|
accessionNo, formType, filedAt, entities | The proxy, DEF 14A or DEFC14A. |
filer.filedBy, personFilingName | The company or another party. |
contest.isContested, contestType, dissidents[].name, ownershipPct | The contest and who is behind it. |
contest.seatsSought, universalProxyCard | What the dissident wants. |
shareholderProposals[].category, proponent, proponentType, boardRecommendation | Each shareholder proposal. |
nomineeAgreements[].counterparty, standstill, standstillEndDate | Settlement and investor agreements. |
schedule13DHolders[].name, ownershipPct | Large active holders named in the proxy. |
proxySolicitor.name, totalSolicitationCostUSD | What the solicitation costs. |
nextMeetingDeadlines.rule14a8Deadline, advanceNoticeStart, advanceNoticeEnd | Deadlines for next year. |
Use cases
- Track proxy contests and dissident slates
- Study shareholder proposals by topic and proponent
- Find settlement agreements and standstill expirations
- Plan proposal and nomination deadlines
Datasets behind this API
The SEC forms this API reads, with live filing counts.
FAQ
How far back does it go?
These datasets launched in October 2026 and are being filled newest first, starting with filings from 2020 onward. The live counter on this page shows what is loaded today. Older years are added after that.
How is the data produced?
Each record is extracted from the filing text by an AI model and validated against a fixed schema before it is published; see our AI Disclosure. A value the filing does not state is returned as null, never guessed.
Are dissident proxies included?
A DEFC14A filed by a dissident is read like any other. filer.filedBy is other_party and filer.personFilingName names the filer.
Try the Proposals and Contests API free
125 free API calls to start. No sales call.