Skip to content
Start here

Streams

List K2 streams
GET/accounts/{account_id}/k2/streams
Get K2 stream
GET/accounts/{account_id}/k2/streams/{stream_id}
Create K2 stream
POST/accounts/{account_id}/k2/streams
Update K2 stream
PATCH/accounts/{account_id}/k2/streams/{stream_id}
Delete K2 stream
DELETE/accounts/{account_id}/k2/streams/{stream_id}
ModelsExpand Collapse
StreamListResponse object { id, created_at, endpoint, 5 more }
id: string

Specifies the public ID of the K2 stream.

maxLength32
minLength32
created_at: string
formatdate-time
endpoint: string

Indicates the base HTTP endpoint for producing and consuming records.

formaturi
http: object { enabled, authentication, cors }

Configures the HTTP endpoint. Disabling HTTP keeps authentication and cors, so enabling it again restores them.

enabled: boolean

Indicates whether the HTTP endpoint accepts records.

authentication: optional boolean

Indicates whether the HTTP endpoint requires an API token with K2 produce permission. When false, the endpoint accepts unauthenticated records. Defaults to true when HTTP is enabled without a stored value.

cors: optional object { origins }
origins: optional array of string

Allows browser requests from these HTTP or HTTPS origins. Use a wildcard only as the sole origin. An empty list blocks cross-origin browser requests. Defaults to ['*'] when HTTP is enabled without stored origins.

modified_at: string
formatdate-time
name: string

Indicates the name of the K2 stream.

maxLength128
minLength1
retention_seconds: number

Shows the configured record retention period from 1 hour (3600 seconds) to 30 days (2592000 seconds), inclusive.

maximum2592000
minimum3600
worker_binding: object { enabled } or object { enabled }
One of the following:
Enabled object { enabled }
enabled: false

Indicates whether Workers bindings can produce records to the stream.

Enabled object { enabled }
enabled: true

Indicates whether Workers bindings can produce records to the stream.

StreamGetResponse object { id, created_at, endpoint, 5 more }
id: string

Specifies the public ID of the K2 stream.

maxLength32
minLength32
created_at: string
formatdate-time
endpoint: string

Indicates the base HTTP endpoint for producing and consuming records.

formaturi
http: object { enabled, authentication, cors }

Configures the HTTP endpoint. Disabling HTTP keeps authentication and cors, so enabling it again restores them.

enabled: boolean

Indicates whether the HTTP endpoint accepts records.

authentication: optional boolean

Indicates whether the HTTP endpoint requires an API token with K2 produce permission. When false, the endpoint accepts unauthenticated records. Defaults to true when HTTP is enabled without a stored value.

cors: optional object { origins }
origins: optional array of string

Allows browser requests from these HTTP or HTTPS origins. Use a wildcard only as the sole origin. An empty list blocks cross-origin browser requests. Defaults to ['*'] when HTTP is enabled without stored origins.

modified_at: string
formatdate-time
name: string

Indicates the name of the K2 stream.

maxLength128
minLength1
retention_seconds: number

Shows the configured record retention period from 1 hour (3600 seconds) to 30 days (2592000 seconds), inclusive.

maximum2592000
minimum3600
worker_binding: object { enabled } or object { enabled }
One of the following:
Enabled object { enabled }
enabled: false

Indicates whether Workers bindings can produce records to the stream.

Enabled object { enabled }
enabled: true

Indicates whether Workers bindings can produce records to the stream.

StreamCreateResponse object { id, created_at, endpoint, 5 more }
id: string

Specifies the public ID of the K2 stream.

maxLength32
minLength32
created_at: string
formatdate-time
endpoint: string

Indicates the base HTTP endpoint for producing and consuming records.

formaturi
http: object { enabled, authentication, cors }

Configures the HTTP endpoint. Disabling HTTP keeps authentication and cors, so enabling it again restores them.

enabled: boolean

Indicates whether the HTTP endpoint accepts records.

authentication: optional boolean

Indicates whether the HTTP endpoint requires an API token with K2 produce permission. When false, the endpoint accepts unauthenticated records. Defaults to true when HTTP is enabled without a stored value.

cors: optional object { origins }
origins: optional array of string

Allows browser requests from these HTTP or HTTPS origins. Use a wildcard only as the sole origin. An empty list blocks cross-origin browser requests. Defaults to ['*'] when HTTP is enabled without stored origins.

modified_at: string
formatdate-time
name: string

Indicates the name of the K2 stream.

maxLength128
minLength1
retention_seconds: number

Shows the configured record retention period from 1 hour (3600 seconds) to 30 days (2592000 seconds), inclusive.

maximum2592000
minimum3600
worker_binding: object { enabled } or object { enabled }
One of the following:
Enabled object { enabled }
enabled: false

Indicates whether Workers bindings can produce records to the stream.

Enabled object { enabled }
enabled: true

Indicates whether Workers bindings can produce records to the stream.

StreamUpdateResponse object { id, created_at, endpoint, 5 more }
id: string

Specifies the public ID of the K2 stream.

maxLength32
minLength32
created_at: string
formatdate-time
endpoint: string

Indicates the base HTTP endpoint for producing and consuming records.

formaturi
http: object { enabled, authentication, cors }

Configures the HTTP endpoint. Disabling HTTP keeps authentication and cors, so enabling it again restores them.

enabled: boolean

Indicates whether the HTTP endpoint accepts records.

authentication: optional boolean

Indicates whether the HTTP endpoint requires an API token with K2 produce permission. When false, the endpoint accepts unauthenticated records. Defaults to true when HTTP is enabled without a stored value.

cors: optional object { origins }
origins: optional array of string

Allows browser requests from these HTTP or HTTPS origins. Use a wildcard only as the sole origin. An empty list blocks cross-origin browser requests. Defaults to ['*'] when HTTP is enabled without stored origins.

modified_at: string
formatdate-time
name: string

Indicates the name of the K2 stream.

maxLength128
minLength1
retention_seconds: number

Shows the configured record retention period from 1 hour (3600 seconds) to 30 days (2592000 seconds), inclusive.

maximum2592000
minimum3600
worker_binding: object { enabled } or object { enabled }
One of the following:
Enabled object { enabled }
enabled: false

Indicates whether Workers bindings can produce records to the stream.

Enabled object { enabled }
enabled: true

Indicates whether Workers bindings can produce records to the stream.

StreamDeleteResponse = unknown

StreamsSubscriptions

List K2 stream subscriptions
GET/accounts/{account_id}/k2/streams/{stream_id}/subscriptions
ModelsExpand Collapse
SubscriptionListResponse object { id, created_at, lag, 3 more }
id: string
created_at: string
formatdate-time
lag: object { records, status }
records: string

Decimal-string distance from the subscription’s committed position to the observed exclusive stream tail, in records. Includes in-flight records and may include expired records or records acknowledged beyond an earlier gap. Null unless status is available.

status: "available" or "unsupported" or "unavailable"

Unsupported means the subscription or stream topology cannot be measured; unavailable means a required observation failed or was inconsistent.

One of the following:
"available"
"unsupported"
"unavailable"
modified_at: string
formatdate-time
name: string
start_at: object { type }
type: "earliest" or "latest"
One of the following:
"earliest"
"latest"