{"openapi":"3.1.0","info":{"title":"Pyth Intelligence API","version":"2026-09-29"},"servers":[{"url":"/v3/intelligence"}],"paths":{"/assets":{"get":{"tags":["assets"],"summary":"The collection, paginated","operationId":"list_assets","parameters":[{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssetList20260929"}}}},"400":{"description":"Malformed parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/assets/{id}":{"get":{"tags":["assets"],"summary":"One entry, by id","operationId":"get_asset","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Asset20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/assets/{id}/corporate_actions":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"asset_corporate_actions","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim."}},{"name":"declaration_date","in":"query","description":"Comparisons on the declaration date, as `ex_date`.","required":false,"schema":{"type":["string","null"],"description":"Comparisons on the declaration date, as `ex_date`."}},{"name":"effective","in":"query","description":"Valid-time instant, RFC 3339; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant, RFC 3339; omit for the current state."}},{"name":"effective_date","in":"query","description":"Comparisons on the effective date, as `ex_date`.","required":false,"schema":{"type":["string","null"],"description":"Comparisons on the effective date, as `ex_date`."}},{"name":"event_type","in":"query","description":"Only actions of these event types (comma-separated): `split`,\n`reverse_split`, `cash_dividend`, `stock_dividend`, `spinoff`,\n`merger`, `ticker_change`, `delisting`, `rights_issue`.","required":false,"schema":{"type":["string","null"],"description":"Only actions of these event types (comma-separated): `split`,\n`reverse_split`, `cash_dividend`, `stock_dividend`, `spinoff`,\n`merger`, `ticker_change`, `delisting`, `rights_issue`."}},{"name":"ex_date","in":"query","description":"Only actions whose ex-date satisfies every comparison given\n(comma-separated): `YYYY-MM-DD` alone means equal; `gte:`, `gt:`,\n`lte:`, `lt:` or `eq:` prefix a bound, so `gte:2025-01-01,lt:2026-01-01`\nis a half-open year. Actions without the date are left out. The\nother date filters read the same way, and all of them combine.","required":false,"schema":{"type":["string","null"],"description":"Only actions whose ex-date satisfies every comparison given\n(comma-separated): `YYYY-MM-DD` alone means equal; `gte:`, `gt:`,\n`lte:`, `lt:` or `eq:` prefix a bound, so `gte:2025-01-01,lt:2026-01-01`\nis a half-open year. Actions without the date are left out. The\nother date filters read the same way, and all of them combine."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}},{"name":"pay_date","in":"query","description":"Comparisons on the pay date, as `ex_date`.","required":false,"schema":{"type":["string","null"],"description":"Comparisons on the pay date, as `ex_date`."}},{"name":"record_date","in":"query","description":"Comparisons on the record date, as `ex_date`.","required":false,"schema":{"type":["string","null"],"description":"Comparisons on the record date, as `ex_date`."}},{"name":"status","in":"query","description":"Only actions in these states (comma-separated): `announced`,\n`confirmed`, `applied`, `cancelled`.","required":false,"schema":{"type":["string","null"],"description":"Only actions in these states (comma-separated): `announced`,\n`confirmed`, `applied`, `cancelled`."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CorporateActionList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/assets/{id}/feeds":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"asset_feeds","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/assets/{id}/identifiers":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"asset_identifiers","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentifierRecordList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/assets/{id}/quote_feeds":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"asset_quote_feeds","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/assets/{id}/spines":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"asset_spines","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpineList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/corporate_actions":{"get":{"tags":["corporate_actions"],"summary":"The collection, paginated","operationId":"list_corporate_actions","parameters":[{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim."}},{"name":"declaration_date","in":"query","description":"Comparisons on the declaration date, as `ex_date`.","required":false,"schema":{"type":["string","null"],"description":"Comparisons on the declaration date, as `ex_date`."}},{"name":"effective","in":"query","description":"Valid-time instant, RFC 3339; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant, RFC 3339; omit for the current state."}},{"name":"effective_date","in":"query","description":"Comparisons on the effective date, as `ex_date`.","required":false,"schema":{"type":["string","null"],"description":"Comparisons on the effective date, as `ex_date`."}},{"name":"event_type","in":"query","description":"Only actions of these event types (comma-separated): `split`,\n`reverse_split`, `cash_dividend`, `stock_dividend`, `spinoff`,\n`merger`, `ticker_change`, `delisting`, `rights_issue`.","required":false,"schema":{"type":["string","null"],"description":"Only actions of these event types (comma-separated): `split`,\n`reverse_split`, `cash_dividend`, `stock_dividend`, `spinoff`,\n`merger`, `ticker_change`, `delisting`, `rights_issue`."}},{"name":"ex_date","in":"query","description":"Only actions whose ex-date satisfies every comparison given\n(comma-separated): `YYYY-MM-DD` alone means equal; `gte:`, `gt:`,\n`lte:`, `lt:` or `eq:` prefix a bound, so `gte:2025-01-01,lt:2026-01-01`\nis a half-open year. Actions without the date are left out. The\nother date filters read the same way, and all of them combine.","required":false,"schema":{"type":["string","null"],"description":"Only actions whose ex-date satisfies every comparison given\n(comma-separated): `YYYY-MM-DD` alone means equal; `gte:`, `gt:`,\n`lte:`, `lt:` or `eq:` prefix a bound, so `gte:2025-01-01,lt:2026-01-01`\nis a half-open year. Actions without the date are left out. The\nother date filters read the same way, and all of them combine."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}},{"name":"pay_date","in":"query","description":"Comparisons on the pay date, as `ex_date`.","required":false,"schema":{"type":["string","null"],"description":"Comparisons on the pay date, as `ex_date`."}},{"name":"record_date","in":"query","description":"Comparisons on the record date, as `ex_date`.","required":false,"schema":{"type":["string","null"],"description":"Comparisons on the record date, as `ex_date`."}},{"name":"status","in":"query","description":"Only actions in these states (comma-separated): `announced`,\n`confirmed`, `applied`, `cancelled`.","required":false,"schema":{"type":["string","null"],"description":"Only actions in these states (comma-separated): `announced`,\n`confirmed`, `applied`, `cancelled`."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CorporateActionList20260929"}}}},"400":{"description":"Malformed parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/corporate_actions/{id}":{"get":{"tags":["corporate_actions"],"summary":"One entry, by id","operationId":"get_corporate_action","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CorporateAction20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/exchanges":{"get":{"tags":["exchanges"],"summary":"The collection, paginated","operationId":"list_exchanges","parameters":[{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExchangeList20260929"}}}},"400":{"description":"Malformed parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/exchanges/{id}":{"get":{"tags":["exchanges"],"summary":"One entry, by id","operationId":"get_exchange","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Exchange20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/exchanges/{id}/feeds":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"exchange_feeds","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/exchanges/{id}/sessions":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"exchange_sessions","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketSessionList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/feed_sessions":{"get":{"tags":["feed_sessions"],"summary":"The collection, paginated","operationId":"list_feed_sessions","parameters":[{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedSessionList20260929"}}}},"400":{"description":"Malformed parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/feed_sessions/{id}":{"get":{"tags":["feed_sessions"],"summary":"One entry, by id","operationId":"get_feed_session","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedSession20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/feeds":{"get":{"tags":["feeds"],"summary":"The collection, paginated","operationId":"list_feeds","parameters":[{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim."}},{"name":"asset_type","in":"query","description":"Only feeds of these asset types (comma-separated).","required":false,"schema":{"type":["string","null"],"description":"Only feeds of these asset types (comma-separated)."}},{"name":"effective","in":"query","description":"Valid-time instant, RFC 3339; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant, RFC 3339; omit for the current state."}},{"name":"entitled_only","in":"query","description":"Only the feeds this key may subscribe to: the listing is the\ncatalog the caller may see, and `true` keeps the part its plan\ncovers.","required":false,"schema":{"type":["boolean","null"],"description":"Only the feeds this key may subscribe to: the listing is the\ncatalog the caller may see, and `true` keeps the part its plan\ncovers."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline."}},{"name":"instrument_type","in":"query","description":"Only feeds of these instrument types (comma-separated).","required":false,"schema":{"type":["string","null"],"description":"Only feeds of these instrument types (comma-separated)."}},{"name":"kind","in":"query","description":"Only feeds of these kinds (comma-separated).","required":false,"schema":{"type":["string","null"],"description":"Only feeds of these kinds (comma-separated)."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}},{"name":"state","in":"query","description":"Only feeds in these lifecycle states (comma-separated).","required":false,"schema":{"type":["string","null"],"description":"Only feeds in these lifecycle states (comma-separated)."}},{"name":"symbol","in":"query","description":"Only the feed with exactly this symbol. A symbol is not a stable\nhandle - the spine and the id are - so this is the step from the\nsymbol a caller holds to both.","required":false,"schema":{"type":["string","null"],"description":"Only the feed with exactly this symbol. A symbol is not a stable\nhandle - the spine and the id are - so this is the step from the\nsymbol a caller holds to both."}},{"name":"symbol_prefix","in":"query","description":"Only feeds whose symbol starts with this.","required":false,"schema":{"type":["string","null"],"description":"Only feeds whose symbol starts with this."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedList20260929"}}}},"400":{"description":"Malformed parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/feeds/{id}":{"get":{"tags":["feeds"],"summary":"One entry, by id","operationId":"get_feed","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Feed20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/feeds/{id}/identifiers":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"feed_identifiers","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentifierRecordList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/feeds/{id}/sessions":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"feed_sessions","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedSessionList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/feeds/{id}/spines":{"get":{"tags":["relations"],"summary":"The relation, paginated","operationId":"feed_spines","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpineList20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/feeds/{id}/transitions":{"get":{"tags":["feeds"],"summary":"The session in effect on the feed at an instant, and every change of it over a window of up to 7 days","operationId":"feed_transitions","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"effective","in":"query","description":"Valid-time instant, RFC 3339; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant, RFC 3339; omit for the current state."}},{"name":"from","in":"query","description":"The instant asked about, RFC 3339; now when omitted.","required":false,"schema":{"type":["string","null"],"description":"The instant asked about, RFC 3339; now when omitted."}},{"name":"until","in":"query","description":"The end of the window, exclusive, RFC 3339; 24 hours after `from`\nwhen omitted, and at most 7 days after it.","required":false,"schema":{"type":["string","null"],"description":"The end of the window, exclusive, RFC 3339; 24 hours after `from`\nwhen omitted, and at most 7 days after it."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Transitions20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/identifiers":{"get":{"tags":["identifiers"],"summary":"The collection, paginated","operationId":"list_identifier_records","parameters":[{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim."}},{"name":"effective","in":"query","description":"Valid-time instant, RFC 3339; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant, RFC 3339; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}},{"name":"scheme","in":"query","description":"Only records under these schemes (comma-separated).","required":false,"schema":{"type":["string","null"],"description":"Only records under these schemes (comma-separated)."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentifierRecordList20260929"}}}},"400":{"description":"Malformed parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/identifiers/query":{"post":{"tags":["identifiers"],"summary":"Batch lookup: everything carrying each (scheme, value) pair, in one call; absent values are absent, oversized value lists are rejected","operationId":"query_identifiers","parameters":[{"name":"effective","in":"query","description":"Valid-time instant, RFC 3339; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant, RFC 3339; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline (`feed`, `asset`).","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline (`feed`, `asset`)."}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentifierQuery20260929"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentifierMatchList20260929"}}}},"400":{"description":"Malformed parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/identifiers/{id}":{"get":{"tags":["identifiers"],"summary":"One entry, by id","operationId":"get_identifier_record","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentifierRecord20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/market_sessions":{"get":{"tags":["market_sessions"],"summary":"The collection, paginated","operationId":"list_market_sessions","parameters":[{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketSessionList20260929"}}}},"400":{"description":"Malformed parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/market_sessions/{id}":{"get":{"tags":["market_sessions"],"summary":"One entry, by id","operationId":"get_market_session","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketSession20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/resolve":{"get":{"tags":["resolve"],"summary":"Resolve a spine, or translate an identifier between schemes","operationId":"resolve","parameters":[{"name":"effective","in":"query","description":"Valid-time instant, RFC 3339; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant, RFC 3339; omit for the current state."}},{"name":"in_scheme","in":"query","description":"Concordance form: the scheme of the identifier you have.","required":false,"schema":{"type":["string","null"],"description":"Concordance form: the scheme of the identifier you have."}},{"name":"in_value","in":"query","description":"Concordance form: the identifier value in `in_scheme`.","required":false,"schema":{"type":["string","null"],"description":"Concordance form: the identifier value in `in_scheme`."}},{"name":"out_scheme","in":"query","description":"Concordance form: the scheme to translate into.","required":false,"schema":{"type":["string","null"],"description":"Concordance form: the scheme to translate into."}},{"name":"spine","in":"query","description":"The temporal spine form: `?spine=<spine>` (+ `effective`).","required":false,"schema":{"type":["string","null"],"description":"The temporal spine form: `?spine=<spine>` (+ `effective`)."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolveResponse20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/spines":{"get":{"tags":["spines"],"summary":"The collection, paginated","operationId":"list_spines","parameters":[{"name":"after","in":"query","description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors.","required":false,"schema":{"type":["string","null"],"description":"Opaque pagination cursor: pass the `next` value from the\nprevious response verbatim. Do not construct or interpret\ncursors."}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations to hydrate inline in place of their\nids, as on a single read."}},{"name":"limit","in":"query","description":"Page size, 1-100; 50 when omitted.","required":false,"schema":{"type":["integer","null"],"format":"u-int32","description":"Page size, 1-100; 50 when omitted.","maximum":100,"minimum":1}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpineList20260929"}}}},"400":{"description":"Malformed parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/spines/{id}":{"get":{"tags":["spines"],"summary":"One entry, by id","operationId":"get_spine","parameters":[{"name":"id","in":"path","description":"The resource's id; feeds also take their Lazer id, and feeds and assets a spine","required":true,"schema":{"type":"string"}},{"name":"effective","in":"query","description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state.","required":false,"schema":{"type":["string","null"],"description":"Valid-time instant: the state of the world as of this business\ntime, as an RFC 3339 timestamp; omit for the current state."}},{"name":"expand","in":"query","description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are.","required":false,"schema":{"type":["string","null"],"description":"Comma-separated relations of this resource to hydrate inline in\nplace of their ids: a feed's `base_asset`, `quote_asset`,\n`exchange`; a feed session's `feed`, `inherits`; an\nasset's `succeeded_by`, `primary_exchange`; a market session's\n`exchange`; a corporate action's `applies_to`, `predecessor`,\n`paid_in`; an identifier record's `asset`, `feed`,\n`corporate_action`. A name that is not this resource's is refused\nwith the ones that are."}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Spine20260929"}}}},"400":{"description":"Malformed id, spine, or parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing or unrecognized credential","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Capability not available to this identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"No such entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Pyth Intelligence is temporarily unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"schemas":{"Asset20260929":{"type":"object","required":["type","id","slug","ticker","full_name","class","status","visibility","identifiers"],"properties":{"class":{"$ref":"#/components/schemas/AssetClass20260929"},"country":{"type":["string","null"]},"full_name":{"type":"string"},"id":{"type":"string"},"identifiers":{"type":"array","items":{"$ref":"#/components/schemas/Identifier20260929"},"description":"The asset's external identifiers."},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/RecordMeta20260929","description":"When the record, as served, last changed."}]},"primary_exchange":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Exchange20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"sector":{"type":["string","null"]},"slug":{"type":"string"},"spine":{"type":["string","null"],"description":"The preferred SPINE (Standard Pyth Identifier for Network Entities), if issued."},"status":{"$ref":"#/components/schemas/AssetStatus20260929"},"subclass":{"type":["string","null"]},"succeeded_by":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Asset20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"ticker":{"type":"string"},"type":{"type":"string","description":"Resource type discriminator, present on every resource."},"visibility":{"$ref":"#/components/schemas/Visibility20260929","description":"Who may see the asset; what is served is already narrowed to it."}}},"AssetClass20260929":{"type":"string","description":"Asset classification.","enum":["crypto","equity","fx","metal","commodity","rates","nav","funding_rate","index","event","redemption_rate","economic","custom","unknown"]},"AssetList20260929":{"type":"object","required":["type","data","continues"],"properties":{"continues":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Asset20260929"}},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the page was read."}]},"next":{"type":["string","null"],"description":"Opaque pagination cursor: pass it verbatim as `after` on the\nnext request. Do not construct or interpret cursors. Absent on\nthe last page."},"type":{"type":"string","description":"Always `\"list\"`."}}},"AssetStatus20260929":{"type":"string","description":"Asset lifecycle status.","enum":["active","delisted","merged","retired","unknown"]},"Calendar20260929":{"type":"object","description":"A venue-local trading calendar: the weekly pattern and the dated\nexceptions, in the calendar's own timezone. Evaluate a date by\ntaking the exception covering it, else its weekday.","required":["timezone","week","exceptions"],"properties":{"covered_through":{"type":["string","null"],"description":"The last date the calendar is authored for, `YYYY-MM-DD`; absent\nwhen the pattern recurs indefinitely. Past it the calendar has no\nanswer, which is not the same as closed."},"exceptions":{"type":"array","items":{"$ref":"#/components/schemas/CalendarException20260929"}},"timezone":{"type":"string","description":"An IANA timezone name."},"week":{"type":"array","items":{"$ref":"#/components/schemas/CalendarDay20260929"}}}},"CalendarDay20260929":{"type":"object","description":"One weekday of the weekly pattern.","required":["weekday","kind","ranges"],"properties":{"kind":{"$ref":"#/components/schemas/DayKind20260929"},"ranges":{"type":"array","items":{"$ref":"#/components/schemas/TimeRange20260929"},"description":"The open ranges, for `kind: ranges`."},"weekday":{"$ref":"#/components/schemas/Weekday20260929"}}},"CalendarException20260929":{"type":"object","description":"A dated departure from the weekly pattern: a holiday, an early close.","required":["kind","ranges","recurs_annually"],"properties":{"date":{"type":["string","null"],"description":"The venue-local date, `YYYY-MM-DD`; a recurring exception carries\nthe first occurrence."},"kind":{"$ref":"#/components/schemas/DayKind20260929"},"label":{"type":["string","null"]},"ranges":{"type":"array","items":{"$ref":"#/components/schemas/TimeRange20260929"}},"recurs_annually":{"type":"boolean","description":"The exception applies on this month and day every year."}}},"CorporateAction20260929":{"type":"object","required":["type","id","event_type","status"],"properties":{"applies_to":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Asset20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"declaration_date":{"type":["string","null"],"description":"When the issuer declared the event, `YYYY-MM-DD`; absent until\nknown."},"effective_date":{"type":["string","null"],"description":"When the event takes effect, for events without ex-date semantics\n(ticker changes, mergers). Never set together with `ex_date`."},"event_type":{"$ref":"#/components/schemas/CorporateActionEventType20260929"},"ex_date":{"type":["string","null"],"description":"Finance ex-date: first trading day the price reflects the event.\nNever set together with `effective_date`."},"gross_amount":{"type":["string","null"]},"id":{"type":"string"},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/RecordMeta20260929","description":"When the record, as served, last changed."}]},"net_amount":{"type":["string","null"]},"new_ticker":{"type":["string","null"]},"paid_in":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Asset20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"pay_date":{"type":["string","null"],"description":"When the distribution is paid, `YYYY-MM-DD`."},"predecessor":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Asset20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"previous_ticker":{"type":["string","null"]},"record_date":{"type":["string","null"],"description":"Holder-of-record cutoff, `YYYY-MM-DD`."},"split_from":{"type":["string","null"],"description":"Split terms in share counts, decimal strings: `split_from` old\nshares become `split_to` new ones. A 10-for-1 split is\n`\"1\"` -> `\"10\"`, a 1-for-10 reverse split `\"10\"` -> `\"1\"`; the\nprice moves the other way. Set on `split` and `reverse_split`."},"split_to":{"type":["string","null"]},"status":{"$ref":"#/components/schemas/CorporateActionStatus20260929"},"type":{"type":"string","description":"Resource type discriminator, present on every resource."}}},"CorporateActionEventType20260929":{"type":"string","description":"Corporate action event type.","enum":["split","reverse_split","cash_dividend","stock_dividend","spinoff","merger","ticker_change","delisting","rights_issue","unknown"]},"CorporateActionList20260929":{"type":"object","required":["type","data","continues"],"properties":{"continues":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CorporateAction20260929"}},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the page was read."}]},"next":{"type":["string","null"],"description":"Opaque pagination cursor: pass it verbatim as `after` on the\nnext request. Do not construct or interpret cursors. Absent on\nthe last page."},"type":{"type":"string","description":"Always `\"list\"`."}}},"CorporateActionStatus20260929":{"type":"string","description":"Corporate action lifecycle status.","enum":["announced","confirmed","applied","cancelled","unknown"]},"DayKind20260929":{"type":"string","description":"How a calendar day trades: open all day, closed, or open in the\nlisted ranges.","enum":["open","closed","ranges","unknown"]},"Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["category","code","message"],"properties":{"category":{"type":"string","description":"Broad bucket: `invalid_request` | `auth` | `server`."},"code":{"type":"string","description":"Specific machine-readable reason."},"message":{"type":"string","description":"Human-readable; never branch on this."}}}}},"Exchange20260929":{"type":"object","required":["type","id","lazer_exchange_id","name","asset_class","status","sessions"],"properties":{"asset_class":{"$ref":"#/components/schemas/MarketClass20260929"},"asset_sector":{"type":["string","null"]},"asset_subclass":{"type":["string","null"]},"country":{"type":["string","null"]},"id":{"type":"string"},"lazer_exchange_id":{"type":"integer","format":"u-int32","description":"The numeric Lazer exchange id.","minimum":0},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/RecordMeta20260929","description":"When the record, as served, last changed."}]},"mic":{"type":["string","null"]},"name":{"type":"string"},"sessions":{"type":"array","items":{"$ref":"#/components/schemas/MarketSession20260929"},"description":"The venue's session templates, with their calendars."},"status":{"$ref":"#/components/schemas/ExchangeStatus20260929"},"timezone":{"type":["string","null"],"description":"An IANA timezone name; absent where not yet known."},"type":{"type":"string","description":"Resource type discriminator, present on every resource."}}},"ExchangeList20260929":{"type":"object","required":["type","data","continues"],"properties":{"continues":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Exchange20260929"}},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the page was read."}]},"next":{"type":["string","null"],"description":"Opaque pagination cursor: pass it verbatim as `after` on the\nnext request. Do not construct or interpret cursors. Absent on\nthe last page."},"type":{"type":"string","description":"Always `\"list\"`."}}},"ExchangeStatus20260929":{"type":"string","description":"Exchange lifecycle status.","enum":["active","inactive","unknown"]},"Feed20260929":{"type":"object","required":["type","id","pyth_lazer_id","symbol","name","kind","instrument_type","state","exponent","min_publishers","unit","availability_pattern","expiration_pattern","visibility","groups","identifiers","sessions","price_adjustments"],"properties":{"asset_type":{"type":["string","null"]},"auction_date":{"type":["string","null"],"description":"For a feed that prices one dated debt security, such as a US\nTreasury bill, note or bond: the day it was sold at auction,\n`YYYY-MM-DD`."},"availability_pattern":{"type":"array","items":{"type":"string"},"description":"Contract months in which the chain is available."},"base_asset":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Asset20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"derivation_type":{"type":["string","null"]},"description":{"type":["string","null"]},"display_precision":{"type":["integer","null"],"format":"int32"},"exchange":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Exchange20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"expiration_pattern":{"type":"array","items":{"type":"string"},"description":"Contract months in which the chain expires."},"expires_at":{"type":["string","null"],"format":"date-time","description":"When the instrument expires, for dated instruments."},"exponent":{"type":"integer","format":"int32"},"groups":{"type":"array","items":{"type":"string"},"description":"The access groups the feed belongs to; empty for ungated feeds."},"id":{"type":"string"},"identifiers":{"type":"array","items":{"$ref":"#/components/schemas/Identifier20260929"},"description":"Every external identifier the feed carries."},"instrument_type":{"$ref":"#/components/schemas/InstrumentType20260929"},"interval_us":{"type":["integer","null"],"format":"u-int64","description":"The update cadence in microseconds, for feeds that have one\n(funding rates).","minimum":0},"issue_date":{"type":["string","null"],"description":"The day that security was issued, `YYYY-MM-DD`."},"kind":{"$ref":"#/components/schemas/FeedKind20260929"},"maturity_date":{"type":["string","null"],"description":"The day that security matures, `YYYY-MM-DD`. This is the\nsecurity's maturity, not the end of the feed (`expires_at`)."},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/RecordMeta20260929","description":"When the record, as served, last changed."}]},"min_channel":{"type":["string","null"],"description":"The channel floor the feed asks for (`real_time`,\n`fixed_rate@200ms`)."},"min_publishers":{"type":"integer","format":"u-int32","description":"The publisher floor sessions inherit unless they set their own.","minimum":0},"name":{"type":"string"},"price_adjustments":{"type":"array","items":{"$ref":"#/components/schemas/PriceAdjustment20260929"},"description":"The price adjustments configured on the feed."},"pyth_lazer_id":{"type":"integer","format":"u-int32","description":"The Lazer feed id: the identity every Lazer consumer keys on.","minimum":0},"qualifier":{"type":["string","null"],"description":"A disambiguating qualifier for feeds that share a spine stem."},"quote_asset":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Asset20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"sessions":{"type":"array","items":{"$ref":"#/components/schemas/FeedSession20260929"},"description":"The feed's sessions, with their calendars."},"source":{"type":["string","null"]},"spine":{"type":["string","null"],"description":"The preferred SPINE (Standard Pyth Identifier for Network Entities), if issued."},"state":{"$ref":"#/components/schemas/FeedState20260929"},"symbol":{"type":"string"},"symbol_chain_id":{"type":["string","null"],"description":"The futures chain this feed belongs to, e.g. `VX`."},"type":{"type":"string","description":"Resource type discriminator, present on every resource."},"unit":{"$ref":"#/components/schemas/Unit20260929"},"visibility":{"$ref":"#/components/schemas/Visibility20260929"}}},"FeedKind20260929":{"type":"string","description":"What a feed publishes.","enum":["price","funding_rate","unknown"]},"FeedList20260929":{"type":"object","required":["type","data","continues"],"properties":{"continues":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Feed20260929"}},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the page was read."}]},"next":{"type":["string","null"],"description":"Opaque pagination cursor: pass it verbatim as `after` on the\nnext request. Do not construct or interpret cursors. Absent on\nthe last page."},"type":{"type":"string","description":"Always `\"list\"`."}}},"FeedSession20260929":{"type":"object","required":["type","session_type"],"properties":{"calendar":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Calendar20260929","description":"The session's resolved calendar, inheritance and overrides\napplied; absent where the session has no schedule."}]},"feed":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Feed20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"id":{"type":["string","null"],"description":"The session's id; absent where the session has no record of its\nown yet."},"inherits":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/MarketSession20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/RecordMeta20260929","description":"When the record, as served, last changed."}]},"min_publishers":{"type":["integer","null"],"format":"u-int32","description":"The publisher floor for this session; absent where the feed's\ndefault applies.","minimum":0},"session_type":{"$ref":"#/components/schemas/SessionType20260929"},"type":{"type":"string","description":"Resource type discriminator, present on every resource."}}},"FeedSessionList20260929":{"type":"object","required":["type","data","continues"],"properties":{"continues":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/FeedSession20260929"}},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the page was read."}]},"next":{"type":["string","null"],"description":"Opaque pagination cursor: pass it verbatim as `after` on the\nnext request. Do not construct or interpret cursors. Absent on\nthe last page."},"type":{"type":"string","description":"Always `\"list\"`."}}},"FeedState20260929":{"type":"string","description":"Feed lifecycle state.","enum":["coming_soon","stable","inactive","retired","expired","beta","unknown"]},"Identifier20260929":{"type":"object","description":"One external identifier as a feed or an asset carries it.","required":["scheme","value","sessions"],"properties":{"record_id":{"type":["string","null"],"description":"The identifier record behind this entry, where one exists; see\n`/identifiers/{id}`."},"scheme":{"type":"string","description":"`isin`, `cmc_id`, `hermes_id`, ..."},"sessions":{"type":"array","items":{"$ref":"#/components/schemas/SessionType20260929"},"description":"The sessions the identifier is scoped to; empty means the whole\nfeed."},"value":{"type":"string"}}},"IdentifierMatch20260929":{"type":"object","description":"One identifier and what carries it, from a batched lookup.","required":["type","scheme","value","sessions"],"properties":{"asset":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Asset20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"feed":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Feed20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"pyth_lazer_id":{"type":["integer","null"],"format":"u-int32","description":"The feed's Lazer id, beside the feed for convenience.","minimum":0},"record_id":{"type":["string","null"],"description":"The identifier record behind this match, where one exists."},"scheme":{"type":"string"},"sessions":{"type":"array","items":{"$ref":"#/components/schemas/SessionType20260929"},"description":"The sessions the identifier is scoped to; empty means the whole\nfeed."},"type":{"type":"string","description":"Always `\"identifier_match\"`."},"value":{"type":"string"}}},"IdentifierMatchList20260929":{"type":"object","description":"The batched lookup's answer: every match for every value, never\ntruncated.","required":["type","data"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IdentifierMatch20260929"}},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the answer was read."}]},"type":{"type":"string","description":"Always `\"list\"`."}}},"IdentifierQuery20260929":{"type":"object","description":"Batch lookup body: one scheme, the values to look up.","required":["scheme","values"],"properties":{"scheme":{"type":"string","description":"The scheme every value belongs to."},"values":{"type":"array","items":{"type":"string"},"description":"The values to look up; a value nothing carries is simply absent\nfrom the result."}}},"IdentifierRecord20260929":{"type":"object","required":["type","id","scheme","value","feed_sessions"],"properties":{"asset":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Asset20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"corporate_action":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/CorporateAction20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"feed":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Feed20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"feed_sessions":{"type":"array","items":{"type":"string"},"description":"The feed sessions a session-scoped identifier applies to, by id."},"id":{"type":"string"},"issuing_authority":{"type":["string","null"]},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/RecordMeta20260929","description":"When the record, as served, last changed."}]},"scheme":{"type":"string"},"type":{"type":"string","description":"Resource type discriminator, present on every resource."},"value":{"type":"string"}}},"IdentifierRecordList20260929":{"type":"object","required":["type","data","continues"],"properties":{"continues":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/IdentifierRecord20260929"}},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the page was read."}]},"next":{"type":["string","null"],"description":"Opaque pagination cursor: pass it verbatim as `after` on the\nnext request. Do not construct or interpret cursors. Absent on\nthe last page."},"type":{"type":"string","description":"Always `\"list\"`."}}},"InstrumentType20260929":{"type":"string","description":"Instrument type.","enum":["spot","future","perp","index","nav","rate","redemption_rate","twap","funding_rate","component","unknown"]},"MarketClass20260929":{"type":"string","description":"Exchange market classification.","enum":["equity","futures","fx","crypto","commodity","unknown"]},"MarketSession20260929":{"type":"object","required":["type","session_type"],"properties":{"calendar":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Calendar20260929","description":"The template's calendar; absent where its schedule does not\nparse."}]},"exchange":{"oneOf":[{"type":"string","description":"The related resource's opaque id (relation not expanded)"},{"$ref":"#/components/schemas/Exchange20260929"}],"description":"An expandable relation: a bare id, or the full resource under `?expand=`"},"id":{"type":["string","null"],"description":"The template's id; absent where the template has no record of\nits own yet."},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/RecordMeta20260929","description":"When the record, as served, last changed."}]},"session_type":{"$ref":"#/components/schemas/SessionType20260929"},"type":{"type":"string","description":"Resource type discriminator, present on every resource."}}},"MarketSessionList20260929":{"type":"object","required":["type","data","continues"],"properties":{"continues":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/MarketSession20260929"}},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the page was read."}]},"next":{"type":["string","null"],"description":"Opaque pagination cursor: pass it verbatim as `after` on the\nnext request. Do not construct or interpret cursors. Absent on\nthe last page."},"type":{"type":"string","description":"Always `\"list\"`."}}},"Meta20260929":{"type":"object","description":"When the page was read: every record on it comes from one\nconsistent read.","required":["recorded_at"],"properties":{"effective_at":{"type":["string","null"],"format":"date-time","description":"The `effective` instant the read was pinned to, where one was\ngiven."},"recorded_at":{"type":"string","format":"date-time","description":"When the served data was recorded."}}},"PriceAdjustment20260929":{"type":"object","description":"One split the price feed applies: `split_from` old shares become\n`split_to` new ones, so from `ex_date` the published price is\nexpected at `split_from / split_to` of what it was. The event itself\nis the asset's corporate action record; this is what the price feed\ndoes about it.","required":["event_type"],"properties":{"event_type":{"$ref":"#/components/schemas/CorporateActionEventType20260929"},"ex_date":{"type":["string","null"],"description":"The ex-date the adjustment activates on, `YYYY-MM-DD`."},"split_from":{"type":["integer","null"],"format":"u-int64","description":"Old share count: `1` for a 10-for-1 split, `10` for a 1-for-10\nreverse split.","minimum":0},"split_to":{"type":["integer","null"],"format":"u-int64","description":"New share count: `10` for a 10-for-1 split, `1` for a 1-for-10\nreverse split.","minimum":0}}},"RecordMeta20260929":{"type":"object","description":"A record's own bookkeeping, apart from the page's: when the record\nlast changed.","required":["recorded_at"],"properties":{"effective_at":{"type":["string","null"],"format":"date-time","description":"The `effective` instant a single read was pinned to, echoed back;\nabsent on an unpinned read. A list echoes it on its own `meta`."},"recorded_at":{"type":"string","format":"date-time","description":"When the record last changed. A read pinned to an earlier\n`effective` instant reports the change behind what it shows,\nnever a later one."}}},"ResolveResponse20260929":{"type":"object","required":["type","data"],"properties":{"data":{"type":"array","items":{"type":"string"}},"resolved_at":{"type":["string","null"],"format":"date-time","description":"spine form only: the effective instant resolution was evaluated at."},"spine":{"type":["string","null"],"description":"spine form only: echo of the requested spine."},"target_id":{"type":["string","null"],"description":"spine form only: the resolved permanent id."},"target_kind":{"type":["string","null"],"description":"spine form only: `asset` | `feed`."},"type":{"type":"string","description":"`\"list\"` for the concordance form, `\"resolution\"` for the spine form."}}},"SessionTransition20260929":{"type":"object","description":"One change of the session in effect.","required":["at","open"],"properties":{"at":{"type":"string","format":"date-time","description":"The instant the change takes effect."},"open":{"type":"boolean","description":"Whether the feed is open from `at` on."},"session":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/SessionType20260929","description":"The session in effect from `at` on; absent when the feed closes."}]}}},"SessionType20260929":{"type":"string","description":"Trading session type.","enum":["regular","pre_market","post_market","over_night","unknown"]},"Spine20260929":{"type":"object","required":["type","id","spine","preferred"],"properties":{"id":{"type":"string"},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/RecordMeta20260929","description":"When the record, as served, last changed."}]},"preferred":{"type":"boolean"},"spine":{"type":"string","description":"The spine itself - the full id string, immutable."},"target":{"type":["string","null"],"description":"The target's permanent id, if the spine currently points at one."},"target_kind":{"type":["string","null"],"description":"`asset` | `feed`; absent together with `target`."},"type":{"type":"string","description":"Resource type discriminator, present on every resource."}}},"SpineList20260929":{"type":"object","required":["type","data","continues"],"properties":{"continues":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Spine20260929"}},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the page was read."}]},"next":{"type":["string","null"],"description":"Opaque pagination cursor: pass it verbatim as `after` on the\nnext request. Do not construct or interpret cursors. Absent on\nthe last page."},"type":{"type":"string","description":"Always `\"list\"`."}}},"TimeRange20260929":{"type":"object","description":"Minutes since local midnight, half-open (`[start, end)`).","required":["start_minute","end_minute"],"properties":{"end_minute":{"type":"integer","format":"u-int32","minimum":0},"start_minute":{"type":"integer","format":"u-int32","minimum":0}}},"Transitions20260929":{"type":"object","description":"The session in effect on a feed at an instant, and every change of\nit over a window: the feed's sessions evaluated together, at the\nvenue's hours, so nothing has to be computed from a calendar. The\nfeed is open when a session is in effect; when more than one is open\nat once, the first of `regular`, `pre_market`, `post_market`,\n`over_night` is the one reported.","required":["type","feed","pyth_lazer_id","from","until","open","transitions"],"properties":{"covered_through":{"type":["string","null"],"format":"date-time","description":"Where the answer stops short of `until`: the calendar is not\nauthored past this instant, or the window holds more changes\nthan one answer carries, so there is no answer beyond it rather\nthan a closed one. Ask again from here. Absent when the whole\nwindow is answered."},"feed":{"type":"string","description":"The feed's id."},"from":{"type":"string","format":"date-time","description":"The instant answered for."},"meta":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Meta20260929","description":"When the data behind the answer was read."}]},"open":{"type":"boolean","description":"Whether the feed is open at `from`."},"pyth_lazer_id":{"type":"integer","format":"u-int32","description":"The feed's Lazer id.","minimum":0},"session":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/SessionType20260929","description":"The session in effect at `from`; absent when closed."}]},"transitions":{"type":"array","items":{"$ref":"#/components/schemas/SessionTransition20260929"},"description":"Every change before `until`, ascending."},"type":{"type":"string","description":"Always `\"transitions\"`."},"until":{"type":"string","format":"date-time","description":"The end of the window, exclusive."}}},"Unit20260929":{"type":"string","description":"What the feed's number is.","enum":["asset","percent","basis_points","ratio","points","unknown"]},"Visibility20260929":{"type":"string","description":"Who may see the feed.","enum":["public","restricted","internal","unlisted","unknown"]},"Weekday20260929":{"type":"string","description":"Day of the week.","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday","unknown"]}}}}