Skip to content
Start here

Update K2 stream

PATCH/accounts/{account_id}/k2/streams/{stream_id}

Update a K2 stream. Omitted http settings, such as authentication and cors, keep their current values while HTTP stays enabled. Disabling HTTP clears its settings. At least one input must remain enabled.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Path ParametersExpand Collapse
account_id: string

Specifies the public ID of the account.

maxLength32
minLength32
stream_id: string

Specifies the public ID of the K2 stream.

maxLength32
minLength32
Body ParametersJSONExpand Collapse
http: optional object { enabled } or object { enabled, authentication, cors }
One of the following:
Enabled object { enabled }
enabled: false

Indicates whether the HTTP endpoint accepts records.

object { enabled, authentication, cors }
enabled: true

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 or omitted, the endpoint accepts unauthenticated records.

cors: optional object { origins }
origins: optional array of "*" or array of string

Allows requests from these HTTP or HTTPS origins. Use a wildcard only as the sole origin.

One of the following:
array of "*"
array of string
retention_seconds: optional number

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

maximum2592000
minimum3600
worker_binding: optional 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.

ReturnsExpand Collapse
result: 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 } or object { enabled, authentication, cors }
One of the following:
Enabled object { enabled }
enabled: false

Indicates whether the HTTP endpoint accepts records.

object { enabled, authentication, cors }
enabled: true

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 or omitted, the endpoint accepts unauthenticated records.

cors: optional object { origins }
origins: optional array of "*" or array of string

Allows requests from these HTTP or HTTPS origins. Use a wildcard only as the sole origin.

One of the following:
array of "*"
array of string
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.

success: boolean

Indicates whether the API call was successful.

Update K2 stream

curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/k2/streams/$STREAM_ID \
    -X PATCH \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    -d '{}'
{
  "result": {
    "id": "053e105f4ecef8ad9ca31a8372d0c353",
    "created_at": "2019-12-27T18:11:19.117Z",
    "endpoint": "https://053e105f4ecef8ad9ca31a8372d0c353.k2.cloudflarestorage.com",
    "http": {
      "enabled": false
    },
    "modified_at": "2019-12-27T18:11:19.117Z",
    "name": "my_k2_stream",
    "retention_seconds": 604800,
    "worker_binding": {
      "enabled": false
    }
  },
  "success": true
}
Returns Examples
{
  "result": {
    "id": "053e105f4ecef8ad9ca31a8372d0c353",
    "created_at": "2019-12-27T18:11:19.117Z",
    "endpoint": "https://053e105f4ecef8ad9ca31a8372d0c353.k2.cloudflarestorage.com",
    "http": {
      "enabled": false
    },
    "modified_at": "2019-12-27T18:11:19.117Z",
    "name": "my_k2_stream",
    "retention_seconds": 604800,
    "worker_binding": {
      "enabled": false
    }
  },
  "success": true
}