"type": "subscribe"Starts a subscription for the selected feeds and channel.
channelRequiredThe channel that determines the update frequency.
- real_time
- fixed_rate@50ms
- fixed_rate@200ms
- fixed_rate@1000ms
formatsRequiredPayload formats to include in each update, with no duplicates. An empty array requests no binary payloads.
- evm
- solana
- leEcdsa
- leUnsigned
propertiesRequiredFeed properties to include in each update. Specify at least one property. Duplicate values are not allowed.
- price
- bestBidPrice
- bestAskPrice
- publisherCount
- exponent
- confidence
- fundingRate
- fundingTimestamp
- fundingRateInterval
- marketSession
- emaPrice
- emaConfidence
- feedUpdateTimestamp
subscriptionIdintegerRequiredClient-assigned integer that identifies the subscription. Must be unique among active subscriptions on the connection. An ID can be reused after its unsubscribed reply.
Provide either priceFeedIds or symbols, but not both. Use numeric IDs, such as 1 for BTC/USD, or symbols, such as Crypto.BTC/USD. The array must contain at least one entry and no duplicates.
Select feeds by pyth_lazer_id in priceFeedIds, not by symbol. Feed symbols can change when we correct symbology, and a symbol may later point to a different asset. A pyth_lazer_id never changes.
priceFeedIdsinteger[] | nullsymbolsstring[] | nulldeliveryFormatstringDefault jsonUse json to receive streamUpdated messages or binary to receive binary frames.
- jsondefault
- binary
ignoreInvalidFeedsbooleanDefault falseIf true, skips invalid feeds and subscribes to the remaining feeds. The server responds with subscribedWithInvalidFeedIdsIgnored. If false, any invalid feed causes a subscriptionError.
jsonBinaryEncodingstringDefault base64Encoding to use for binary payloads in JSON updates. This option does not apply when deliveryFormat is binary.
- base64default
- hex
parsedbooleanDefault trueIf true, includes decoded update values in the parsed response field.