Get API key
Corporate actions

Get a corporate action

API version2026-09-29
gethttps://pyth.dourolabs.app/v3/intelligence/corporate_actions/{id}

An API key or short-lived access token, in an Authorization: Bearer <token> header, and the API version above in a Pyth-Version header. Without it, requests get the newest version.

Returns a corporate action by its ID. Fields that do not apply to the event, or are not known yet, are left out.

getv3/intelligence/corporate_actions/{id}
curl "https://pyth.dourolabs.app/v3/intelligence/corporate_actions/ca-01m14cxqtkenq8n0qvdc3rxx2m" \
  -H "Authorization: Bearer $PYTH_API_KEY" \
  -H "Pyth-Version: 2026-09-29"
Response
{
  "event_type": "cash_dividend",
  "id": "ca-01m14cxqtkenq8n0qvdc3rxx2m",
  "status": "applied",
  "type": "corporate_action",
  "applies_to": "asset-01m0a6sd8me54bsx692f90ws91",
  "declaration_date": "2026-07-30",
  "ex_date": "2026-08-10",
  "gross_amount": "0.270000",
  "meta": { "recorded_at": "2026-08-28T14:39:01.654Z" },
  "paid_in": "asset-01m14btkhresy9fe9afcf95sht",
  "pay_date": "2026-08-13",
  "record_date": "2026-08-10"
}

Path parameters

Replace the placeholders in the URL path with these values.

idstringRequired

The corporate action's ID, such as ca-01m14cxqtkenq8n0qvdc3rxx2m.

Query parameters

Add these parameters to the URL query string.

effectivestringOptional

Returns what was in effect at this instant, an RFC 3339 timestamp no later than now, using current knowledge. In a URL written by hand, write a + offset as %2B. Try it, and clients that encode query values such as Python's params, take + as is. Omit for the current state.

expandstringOptional

Relations to include in full instead of as IDs, comma-separated: applies_to, paid_in, predecessor.

Response

200 · application/json

Returns a JSON object with the following fields.

event_typestring

Type of event. New values can be added. Treat an unrecognized value as unknown.

  • split
  • reverse_split
  • cash_dividend
  • stock_dividend
  • spinoff
  • merger
  • ticker_change
  • delisting
  • rights_issue
  • unknown
idstring

Permanent ID, such as ca-01m14cxqtkenq8n0qvdc3rxx2m.

statusstring

announced, then confirmed, then applied, or else cancelled. New values can be added. Treat an unrecognized value as unknown.

  • announced
  • confirmed
  • applied
  • cancelled
  • unknown
typestring

Always corporate_action.

applies_tostring | object

ID of the asset the event belongs to. With expand=applies_to, the full asset, as Get an asset returns it.

declaration_datestring

The day the issuer declared the dividend, YYYY-MM-DD, where published.

effective_datestring

The day a rename or delisting takes hold, YYYY-MM-DD. Never set together with ex_date.

ex_datestring

The first trading day the price reflects the event, YYYY-MM-DD. Never set together with effective_date.

gross_amountstring

Dividend per share before withholding tax, as a decimal string, in the paid_in currency.

metaobject

When the record, as served, last changed.

recorded_atstring

When the record last changed. A read pinned to an earlier effective instant reports the change behind what it shows, never a later one.

effective_atstring

The effective instant a single read was pinned to, echoed back; absent on an unpinned read. A list echoes it on its own meta.

net_amountstring

Dividend per share after deductions, as published, in the paid_in currency. Rarely present.

new_tickerstring

The ticker after a ticker_change.

paid_instring | object

ID of the currency asset the dividend is declared in, which its amounts use. With expand=paid_in, the full asset, as Get an asset returns it.

pay_datestring

When the distribution is paid or delivered, YYYY-MM-DD.

predecessorstring | object

ID of the predecessor asset, for events that have one. With expand=predecessor, the full asset, as Get an asset returns it.

previous_tickerstring

The ticker before a ticker_change.

record_datestring

Holder-of-record date, YYYY-MM-DD, which decides who is entitled to a distribution.

split_fromstring

Share count before a split or reverse split, as a decimal string: split_from old shares become split_to new ones.

split_tostring

Share count after a split or reverse split, as a decimal string. A 10-for-1 split has split_from "1.0000000000" and split_to "10.0000000000".

Errors

Status codes returned when a request fails.

400
A parameter or ID is malformed or names another kind of resource, effective is in the future, a query parameter is unknown (parameter_invalid), the Pyth-Version value is not served (version_unsupported), or the Authorization header is empty or not a bearer credential (credential_malformed).
401
The credential is missing or not recognized (credential_missing, credential_unknown).
403
The API key's plan does not include corporate actions (package_required), or the access token is expired or not valid (credential_rejected).
404
No corporate action matches the ID, or none existed yet at the effective instant (resource_missing).
429
Rate limit exceeded.
503
The service is temporarily unavailable.