Events · US only
Corporate actions
- Coverage
- US
- Billing
- 20 cr / thousand calls
Returns the dividends, buybacks, capital reductions, splits and reverse splits, stock dividends and bonus issues, and share class changes a company has announced, one row per disclosure (event_class = distribution or share_structure). It records what the company announced and is not a source of adjustment factors: no rights-issue / spin-off ex-date adjustment parameters are provided, and /prices-historical returns unadjusted prices.
Response enums list only values allowed by this endpoint; each row returns one string for event_class and one for event_type. Nullable fields return null when undisclosed or inapplicable; empty arrays return [].
- The only date axis is
event_date;ex_date/record_date/pay_dateare response fields only. - This endpoint spans two classes:
distribution(dividends, buybacks, capital reductions) andshare_structure(splits, reverse splits, bonus issues, share class changes). Filter a whole domain withevent_class, a single type withevent_type; giving both parameters intersects them. subtypeis the flattened primary axis of each type; the full key-value set is in the envelope'saxis.- Historical data is still being expanded: queries for many companies / time windows currently return an empty array, which is a normal result and not an error.
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| ticker | string | optional | Up to 10 values, comma-separated; when omitted, the endpoint scans across companies; use it with from / to. The market is carried by the canonical ticker itself, so there is no market parameter. Default: all companies. |
| from | date | optional | Start of the event date (event_date) range, inclusive; for a single day, set from = to. |
| to | date | optional | End of the event date range, inclusive. |
| event_class | stringenum | optional | distribution | share_structure, comma-separated multi-select; filters a whole domain, shorter than listing each event_type. Default: all. |
| event_type | stringenum | optional | dividend | buyback | capital_reduction | stock_split | reverse_split | bonus_issue | share_class_change; multiple values allowed, comma-separated. Default: all. |
| limit | int | optional | Maximum 500. Default: 50. |
| page | int | optional | Starts at 1. Default: 1. |
Sort order: event_date desc, accession_number desc, event_id asc. Paged with limit and page (pages start at 1); fewer rows than limit means the last page.
Response fields
| Field | Type | Description |
|---|---|---|
| event_id | string | Id of a single event; the same value on the typed endpoints and on the timeline |
| ticker | string | Canonical ticker |
| market | stringenum | Fixed value: US |
| event_class | stringenum | distribution | share_structure |
| event_type | stringenum | dividend | buyback | capital_reduction | stock_split | reverse_split | bonus_issue | share_class_change |
| axis | object | Corporate action classifications: dividends and share class changes use subtype, buybacks use action, and bonus issues use source. The applicable value is flattened into top-level subtype. Missing keys are omitted; no classifications returns {} |
| source_category | string | SEC 8-K item, preserved as filed; multiple triggering items are comma-separated, for example 8-K:1.01,2.03 |
| event_date | date | Corporate action event date, used by the from / to filters. See ex_date / record_date / pay_date for the ex-dividend, record and payment dates |
| title | string | One-sentence title |
| stage | stringenum | Lifecycle stage: announced / approved / amended / completed / terminated; describes this event row, not a required sequence for every event type |
| event_group_id | string | The successive filings of the same deal / financing / executive change share one id |
| is_current | bool | Always true; historical filing versions are not returned by this endpoint |
| accession_number | string | SEC accession number |
| form_type | string | Source filing type |
| filing_url | string | Deep link to the official document |
| filing_date | date | Filing date |
| subtype | string | nullenum | The primary axis value of each type, flattened (see OpenAPI for the full vocabulary): dividend → regular / special / interim / in_kind; buyback → announce / execute / cancel_shares; bonus_issue → retained_earnings / capital_reserve; share_class_change → dual_class_setup / full_circulation / par_value_change / rights_amendment |
| ex_date | date | null | Ex-rights / ex-dividend date |
| record_date | date | null | Shareholder record date |
| pay_date | date | null | Payment date |
| amount_per_share | number | null | Amount per share, denominated in currency |
| currency | string | null | ISO 4217 |
| ratio | number | null | Unified basis = total shares after the change / total shares before the change: a 2-for-1 split → 2, a 1-for-10 reverse split → 0.1, a 3-for-10 bonus issue → 1.3; no conversion is needed across types |
| shares_affected | number | null | Number of shares involved (buybacks / capital reductions / stock dividends and bonus issues) |
| amount_total | number | null | Total amount involved |
No key yet? Create one under API Keys — it is shown once, so store it where your shell can read it. Connecting an agent over MCP instead? That signs in through the browser and needs no key at all.
Authentication, conventions, rate limits and error shapes are the same for every endpoint — they live on REST API.