---
title: "Get All Instrument Events"
method: GET
path: "/v1/instruments/events"
tags: ["Instrument Data"]
---

# Get All Instrument Events

`GET /v1/instruments/events`

## Request

- Base URL: `https://api.clearstreet.com`
- URL: `https://api.clearstreet.com/v1/instruments/events`
- Auth: HTTP bearer

List instrument events across all securities, grouped by date. Results are
paginated via `page_size` / `page_token`; a date's events may span two pages.

Date range defaults (anchored on the current trading day, or the next trading day
if today is a weekend or US market holiday):
- Unfiltered (no `instrument_ids`): a single trading day
  (`from_date` = `to_date` = anchor). If only one bound is given, the other
  defaults to 6 days from it; there is no maximum span once both bounds are given.
- Filtered (with `instrument_ids`): a 30-day lookback ending on the anchor
  (`from_date` = anchor − 30 days, `to_date` = anchor).

Pagination metadata does not include `total_items` or `total_pages` for this
endpoint. Use `next_page_token` to detect whether more results exist.

## Query parameters

- `event_types` AllEventsEventType[]
- `instrument_ids` InstrumentIdOrSymbol[]
- `from_date` string
- `to_date` string
- `page_size` integer
- `page_token` string, byte: Base64URL-encoded pagination token

## Response `200`

Instrument events grouped by date

- object
  - `error` ApiError: A direct mapping of tonic::Status, for use in HTTP responses.
    - `code` integer, required: The error code is used to identify the nature of the error. It corresponds to an HTTP status code.
    - `details` object[]
    - `message` string, required: A human-readable message providing more details about the error.
  - `metadata` ResponseMetadata, required: Metadata for the response. This will always contain a request ID which can be used to identify the request to Clear Street for tracing, and optionally may include pagination data.
    - `next_page_token` string, byte, nullable: Base64URL-encoded pagination token
    - `page_number` integer, nullable: Pagination. Included if this was a GET (list) response
    - `previous_page_token` string, byte, nullable: Base64URL-encoded pagination token
    - `request_id` string, required: A unique ID for this request, generated upon ingestion of the request.
    - `total_items` integer, nullable: Total number of items available (not just in this page).
    - `total_pages` integer, nullable: Total number of pages available.
  - `data` InstrumentAllEventsData, required: All-events payload grouped by date.
    - `event_dates` InstrumentEventsByDate[], required: Events grouped by date in descending order.
      - `date` string, date, required: Event date.
      - `events` InstrumentEventEnvelope[], required: Flat event envelopes for this date.
        - `dividend_event_data` InstrumentDividendEvent: Represents a dividend event for an instrument
          - `adjusted_dividend_amount` string, required: The adjusted dividend amount accounting for any splits.
          - `declaration_date` string, date, nullable: The declaration date of the dividend When a null/undefined value is observed, it indicates that there is no available data.
          - `dividend_amount` string, nullable: The dividend amount per share. When a null/undefined value is observed, it indicates that there is no available data.
          - `dividend_yield` string, nullable: The dividend yield as a percentage of the stock price. When a null/undefined value is observed, it indicates that there is no available data.
          - `ex_date` string, date, required: The day the stock starts trading without the right to receive that dividend.
          - `frequency` string, nullable: The frequency of the dividend payments (e.g., "Quarterly", "Annual"). When a null/undefined value is observed, it indicates that there is no available data.
          - `payment_date` string, date, nullable: The payment date is the date on which a declared stock dividend is scheduled to be paid. When a null/undefined value is observed, it indicates that there is no available data.
          - `record_date` string, date, nullable: The record date, set by a company's board of directors, is when a company compiles a list of shareholders of the stock for which it has declared a dividend. When a null/undefined value is observed, it indicates that there is no available data.
        - `earnings_event_data` InstrumentEarnings: Represents instrument earnings data
          - `date` string, date, required: The date when the earnings report was published
          - `eps_actual` string, nullable: The actual earnings per share (EPS) for the period When a null/undefined value is observed, it indicates that there is no available data.
          - `eps_estimate` string, nullable: The estimated earnings per share (EPS) for the period When a null/undefined value is observed, it indicates that there is no available data.
          - `eps_surprise_percent` string, nullable: The percentage difference between actual and estimated EPS When a null/undefined value is observed, it indicates that there is no available data.
          - `report_time` 'BMO' | 'AMC': Earnings report timing: before market open or after market close
          - `revenue_actual` string, nullable: The actual total revenue for the period When a null/undefined value is observed, it indicates that there is no available data.
          - `revenue_estimate` string, nullable: The estimated total revenue for the period When a null/undefined value is observed, it indicates that there is no available data.
          - `revenue_surprise_percent` string, nullable: The percentage difference between actual and estimated revenue When a null/undefined value is observed, it indicates that there is no available data.
          - `transcript_available` boolean, required: True when an earnings call transcript exists for this event. Fetch it with `GET /v1/instruments/{instrument_id}/earnings-transcripts?event_date=<date>`, where `<date>` is this event's `date`.
        - `instrument_id` string, uuid, nullable: Instrument identifier, when available. When a null/undefined value is observed, it indicates that there is no available data.
        - `ipo_event_data` InstrumentEventIpoItem: IPO event in the all-events date grouping response.
          - `actions` string, nullable: IPO action. When a null/undefined value is observed, it indicates that there is no available data.
          - `announced_at` string, date-time, nullable: IPO announced timestamp. When a null/undefined value is observed, it indicates that there is no available data.
          - `company` string, nullable: IPO company name. When a null/undefined value is observed, it indicates that there is no available data.
          - `exchange` string, nullable: IPO exchange. When a null/undefined value is observed, it indicates that there is no available data.
          - `market_cap` string, nullable: Deprecated: use `offering_amount`, which carries the same value. This is not a market capitalization. When a null/undefined value is observed, it indicates that there is no available data.
          - `offering_amount` string, nullable: IPO maximum aggregate offering value: all offered shares, including over-allotment (greenshoe) shares, at the top of the price range. This is an upper bound. It assumes full exercise of the over-allotment option and pricing at the top of the range. When a null/undefined value is observed, it indicates that there is no available data.
          - `price_range` string, nullable: IPO price range. When a null/undefined value is observed, it indicates that there is no available data.
          - `shares` string, nullable: IPO shares offered. When a null/undefined value is observed, it indicates that there is no available data.
        - `name` string, nullable: Instrument name associated with the event, when available. When a null/undefined value is observed, it indicates that there is no available data.
        - `reporting_currency` string, nullable: The currency used for reporting financial data. When a null/undefined value is observed, it indicates that there is no available data.
        - `stock_split_event_data` InstrumentSplitEvent: Represents a stock split event for an instrument
          - `date` string, date, required: The date of the stock split
          - `denominator` string, required: The denominator of the split ratio
          - `numerator` string, required: The numerator of the split ratio
          - `split_type` string, required: The type of stock split (e.g., "stock-split", "stock-dividend", "bonus-issue")
        - `symbol` string, required: Symbol associated with the event.
        - `type` 'EARNINGS' | 'DIVIDEND' | 'STOCK_SPLIT' | 'IPO', required: Event types supported by the all-events endpoint.

## Other responses

- `400`: Invalid query parameters
- `500`: Internal server error

## Changes

- **2026-10-21** `49c5c6b23633`: 1 info
  - added the required property `allOf[subschema #2]/data/event_dates/items/events/items/earnings_event_data/oneOf[#/components/schemas/InstrumentEarnings]/transcript_available` to the response with the `200` status
- **2026-10-16** `1bd9eddeffc8`: 1 warning, 4 info
  - for the `query` request parameter `instrument_ids`, the type of property `items/` changed from no type to `string`
  - added the new optional `query` request parameter `page_size`
  - added the new optional `query` request parameter `page_token`
  - added the optional property `allOf[subschema #2]/data/event_dates/items/events/items/ipo_event_data/oneOf[#/components/schemas/InstrumentEventIpoItem]/offering_amount` to the response with the `200` status
  - …1 more
- **2026-07-15** `169e8b9ad50c`: 1 info
  - added the optional property `allOf[subschema #2]/data/event_dates/items/events/items/earnings_event_data/oneOf[#/components/schemas/InstrumentEarnings]/report_time` to the response with the `200` status
- **2026-07-14** `9632aa50482b`: 1 warning
  - for the `query` request parameter `instrument_ids`, the type of property `items/` changed from `string` to no type, and format from `uuid` to no format
- **2026-07-14** `6ffc79452bbe`: 1 warning
  - for the `query` request parameter `instrument_ids`, the type of property `items/` changed from no type to `string`, and format from no format to `uuid`

[Operation history](https://skmtc.dev/clear-street/apis/clear-street-trading-api/changes/v1/instruments/events/get.md)

---

[API](https://skmtc.dev/clear-street/apis/clear-street-trading-api.md) - [All operations](https://skmtc.dev/clear-street/apis/clear-street-trading-api/llms.txt) - [OpenAPI document](https://skmtc.dev/clear-street/apis/clear-street-trading-api/revisions/52e77ea7d731?raw)
