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. Disabling HTTP keeps them, so enabling HTTP again restores them. 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, 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.

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
errors: array of object { message, code }
message: string
code: optional number
messages: array of object { message, code }
message: string
code: optional number
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, 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.

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 '{}'
{
  "errors": [
    {
      "message": "message",
      "code": 0
    }
  ],
  "messages": [
    {
      "message": "message",
      "code": 0
    }
  ],
  "result": {
    "id": "053e105f4ecef8ad9ca31a8372d0c353",
    "created_at": "2019-12-27T18:11:19.117Z",
    "endpoint": "https://053e105f4ecef8ad9ca31a8372d0c353.k2.cloudflarestorage.com",
    "http": {
      "enabled": true,
      "authentication": true,
      "cors": {
        "origins": [
          "string"
        ]
      }
    },
    "modified_at": "2019-12-27T18:11:19.117Z",
    "name": "my_k2_stream",
    "retention_seconds": 604800,
    "worker_binding": {
      "enabled": false
    }
  },
  "success": true
}
Returns Examples
{
  "errors": [
    {
      "message": "message",
      "code": 0
    }
  ],
  "messages": [
    {
      "message": "message",
      "code": 0
    }
  ],
  "result": {
    "id": "053e105f4ecef8ad9ca31a8372d0c353",
    "created_at": "2019-12-27T18:11:19.117Z",
    "endpoint": "https://053e105f4ecef8ad9ca31a8372d0c353.k2.cloudflarestorage.com",
    "http": {
      "enabled": true,
      "authentication": true,
      "cors": {
        "origins": [
          "string"
        ]
      }
    },
    "modified_at": "2019-12-27T18:11:19.117Z",
    "name": "my_k2_stream",
    "retention_seconds": 604800,
    "worker_binding": {
      "enabled": false
    }
  },
  "success": true
}