All requests require an API key via the
X-API-Key header.
See Authentication for details.Overview
GET /v1/streams/ returns streams scoped to the organization that owns the API key used in the request.
- If no
idquery parameter is sent, the endpoint returns all confirmed streams for that organization. - If
idis sent, the endpoint returns at most one stream: the stream whose identifier matches the provided value and belongs to the calling organization.
This endpoint is organization-scoped by design. It does not return streams belonging to other organizations, even if their IDs are known.
Endpoint
Get all streams for the calling organization
Get one stream by ID within the organization scope
Optional stream identifier. When provided, the endpoint filters the organization-scoped result set to that stream ID.
Include the full historical
snapshots array for each returned stream.Add
userCount and activeUserCount to each included snapshot object.Response Example
Response Semantics
No id means list all streams for the organization
No id means list all streams for the organization
If you omit
id, the endpoint returns all confirmed streams belonging to the organization associated with the API key.id is a filter, not a path selector
id is a filter, not a path selector
If you send
id, the endpoint still returns a streams array. The array will contain either one matching stream or be empty if the stream does not exist in the caller’s organization scope.Stream Fields
The response body contains astreams array. Each item in that array is a Stream object with the fields described below.
List of streams visible to the organization that owns the API key.
Stream
Unique stream identifier.
Decimal EVM chain ID for on-chain streams.
null for point-based streams that do not deploy a contract.Deployed on-chain stream contract address when available. It can be
null for point-based streams or token-based streams that are still pending confirmation.Optional user identifier associated with the stream when present.
Organization that owns the stream.
Admin EVM address for the stream when applicable.
Stream type. Supported values are
1 (Fixed Rate), 2 (Fixed APR), and 3 (Variable Rate).Timestamp when the stream record was created in Turtle’s backend.
Timestamp of the most recent update to the stream record.
UTC start time for the stream.
UTC end time for the stream when configured.
Total reward amount in base units when applicable.
Confirmation timestamp for stream creation. It can be
null while a token-based stream is still pending on-chain creation.Whether snapshot computation is paused for the stream.
Whether merkle tree computation is paused for the stream.
Whether hash commitment updates are paused for the stream.
Whether claiming rewards is currently paused for the stream.
Strategy-specific configuration object for the stream.
Persisted adapter configuration array. Each adapter item contains a
type string and a params object.Point metadata when the stream uses a point-based reward source.
null for token-based streams.Human-readable strategy name for the stream.
Most recent snapshot computed for the stream, if one exists.
Most recent committed snapshot for the stream, if one exists.
Full snapshot history when
withSnapshots=true. Otherwise this field can be empty or omitted.Reward-token metadata for token-based streams. This uses the public
SupportedToken shape from Get Tokens.AdapterConfig
Adapter type identifier.
Adapter-specific configuration object.
Point
See Get Points for the full Point schema and examples.
StreamSnapshot
Snapshot timestamp.
Amount distributed in the snapshot, encoded as a decimal string.
Base amount used for the snapshot, encoded as a decimal string.
Merkle root hash when the snapshot has one.
Transaction hash of the commit operation when available.
Timestamp when the snapshot record was created.
Timestamp of the latest update to the snapshot record.
Total value locked at snapshot time when available.
Base TVL at snapshot time when available.
Net TVL at snapshot time when available.
Turtle TVL at snapshot time when available.
Turtle net TVL at snapshot time when available.
Snapshot-specific computed metrics.
Snapshot-specific custom arguments.
Number of users represented in the snapshot when
usersCount=true.Number of active users represented in the snapshot when
usersCount=true.Error Handling
Missing or invalid API key
Missing or invalid API key
Status Code: 401 UnauthorizedSolution: Pass a valid
X-API-Key header belonging to an organization-scoped API key.Unexpected internal error
Unexpected internal error
Status Code: 500 Internal Server ErrorSolution: Retry the request and contact Turtle if the issue persists.

