Skip to main content
NOTE: This is the documentation for the websocket channels sec:filings, sec:insider_trades, sec:13f_alerts, sec:13f_filings, sec:13dg_filings, sec:company_reports and sec:497_filings. Websocket access for personal use is only available through the Advanced plan. You can find fully-functional examples that stream data from many channels here: Connect to the websocket URI: wss://api.unusualwhales.com/socket?token=<YOUR_API_TOKEN> then join one or more of the channels below. Each channel streams one type of SEC filing message for every ticker and filer at once. The part after sec: names the filing type, not a ticker. There is no per-ticker form, so a channel such as sec:filings:AAPL is rejected.

Channels

Each channel has its own page with a payload example and a description of every field.
Every channel carries the messages published to the Kafka topic sec-filings under one message key. Each channel page names its Kafka message and key. These channels stream every filing of their type. They are separate from the SEC filing, insider trade and 13F notifications of custom_alerts, which only deliver filings that match the alert configurations on your account.

Payload

Every message is a two-element array: the channel name, then the payload object.
Each payload carries the fields of its Kafka message under the same names and with the values the producer published. Field names keep the spelling of the Kafka message, for example deffered_income_tax, date_excercisable and natureofownership. A field that the filing does not provide keeps its protobuf default: an empty string, 0, false or an empty array. A 0 can therefore mean either zero or not reported. No field is ever null. Dates are strings in YYYY-MM-DD format.

Delivery characteristics

  • Updates are event driven. A channel stays silent until a filing of its type is processed. There is no heartbeat and no fixed schedule.
  • Messages are not filtered by date. Every message is forwarded when it arrives, so a message can describe a filing from an earlier day.
  • Messages are not deduplicated. If the same filing is published twice, or is redelivered after a server restart, you receive it twice. Each channel page names the fields that identify a message.
  • Missed messages are not replayed. Messages sent while you are disconnected are lost. The Kafka topic sec-filings keeps them for its retention period.
Last modified on October 1, 2026