Skip to content
Start here

K2

K2Streams

List K2 streams
client.k2.streams.list(StreamListParams { account_id, name, page, per_page } params, RequestOptionsoptions?): V4PagePaginationArray<StreamListResponse { id, created_at, endpoint, 5 more } >
GET/accounts/{account_id}/k2/streams
Get K2 stream
client.k2.streams.get(stringstreamID, StreamGetParams { account_id } params, RequestOptionsoptions?): StreamGetResponse { id, created_at, endpoint, 5 more }
GET/accounts/{account_id}/k2/streams/{stream_id}
Create K2 stream
client.k2.streams.create(StreamCreateParams { account_id, name, http, 2 more } params, RequestOptionsoptions?): StreamCreateResponse { id, created_at, endpoint, 5 more }
POST/accounts/{account_id}/k2/streams
Update K2 stream
client.k2.streams.update(stringstreamID, StreamUpdateParams { account_id, http, retention_seconds, worker_binding } params, RequestOptionsoptions?): StreamUpdateResponse { id, created_at, endpoint, 5 more }
PATCH/accounts/{account_id}/k2/streams/{stream_id}
Delete K2 stream
client.k2.streams.delete(stringstreamID, StreamDeleteParams { account_id } params, RequestOptionsoptions?): StreamDeleteResponse
DELETE/accounts/{account_id}/k2/streams/{stream_id}
ModelsExpand Collapse
StreamListResponse { 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: HTTP { 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?: 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?: CORS { origins }
origins?: Array<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: Enabled { enabled } | Enabled { enabled }
One of the following:
Enabled { enabled }
enabled: false

Indicates whether Workers bindings can produce records to the stream.

Enabled { enabled }
enabled: true

Indicates whether Workers bindings can produce records to the stream.

StreamGetResponse { 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: HTTP { 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?: 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?: CORS { origins }
origins?: Array<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: Enabled { enabled } | Enabled { enabled }
One of the following:
Enabled { enabled }
enabled: false

Indicates whether Workers bindings can produce records to the stream.

Enabled { enabled }
enabled: true

Indicates whether Workers bindings can produce records to the stream.

StreamCreateResponse { 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: HTTP { 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?: 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?: CORS { origins }
origins?: Array<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: Enabled { enabled } | Enabled { enabled }
One of the following:
Enabled { enabled }
enabled: false

Indicates whether Workers bindings can produce records to the stream.

Enabled { enabled }
enabled: true

Indicates whether Workers bindings can produce records to the stream.

StreamUpdateResponse { 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: HTTP { 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?: 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?: CORS { origins }
origins?: Array<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: Enabled { enabled } | Enabled { enabled }
One of the following:
Enabled { enabled }
enabled: false

Indicates whether Workers bindings can produce records to the stream.

Enabled { enabled }
enabled: true

Indicates whether Workers bindings can produce records to the stream.

StreamDeleteResponse = unknown

K2StreamsSubscriptions

List K2 stream subscriptions
client.k2.streams.subscriptions.list(stringstreamID, SubscriptionListParams { account_id } params, RequestOptionsoptions?): SinglePage<SubscriptionListResponse { id, created_at, lag, 3 more } >
GET/accounts/{account_id}/k2/streams/{stream_id}/subscriptions
ModelsExpand Collapse
SubscriptionListResponse { id, created_at, lag, 3 more }
id: string
created_at: string
formatdate-time
lag: Lag { records, status }
records: string | null

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" | "unsupported" | "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: StartAt { type }
type: "earliest" | "latest"
One of the following:
"earliest"
"latest"