Skip to content
Start here

Update a policy

zero_trust.cws.policies.update(strpolicy_id, PolicyUpdateParams**kwargs) -> Policy
PUT/accounts/{account_id}/cws/policies/{policy_id}

Replaces the policy’s configuration. Omit filter to apply the policy to every request. Omit tags or use {} to clear them.

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
ParametersExpand Collapse
account_id: str

Cloudflare account ID (32-character hexadecimal string)

maxLength32
minLength32
policy_id: str

ID of the policy to update

formatuuid
entrypoint: str

Non-function rule declared in rego_source. Evaluation uses data.<package_path>..

maxLength255
name: str

Name of the policy

maxLength100
minLength1
rego_source: str

Inline Rego source with a package beginning with “policy.” Maximum 16384 UTF-8 bytes.

maxLength16384
minLength1
description: Optional[str]

Optional free-form description.

maxLength1024
filter: Optional[str]

Optional filter expression that determines whether this policy applies. Omit or set null to apply the policy to every request. Maximum 4096 UTF-8 bytes.

maxLength4096
minLength1
tags: Optional[Dict[str, str]]

Replacement tag set. Omit or use {} to clear. Keys are limited to 256 UTF-8 bytes and values to 1024 UTF-8 bytes.

ReturnsExpand Collapse
class Policy: …
id: str

Server-assigned UUID

formatuuid
created_at: datetime
formatdate-time
entrypoint: str

Non-function rule declared in rego_source. Evaluation uses data.<package_path>..

maxLength255
filter: Optional[str]

Optional filter expression that determines whether this policy applies. Null means the policy applies to every request. Maximum 4096 UTF-8 bytes.

maxLength4096
minLength1
name: str

Human-readable name; unique per account

maxLength100
minLength1
package_path: str

Dotted path derived from rego_source. Begins with policy. and is unique per account.

maxLength1024
rego_source: str

Inline Rego source with a package beginning with “policy.” Maximum 16384 UTF-8 bytes.

maxLength16384
minLength1
tags: Dict[str, str]

Tags attached to this policy

updated_at: datetime
formatdate-time
description: Optional[str]

Optional free-form description.

maxLength1024

Update a policy

import os
from cloudflare import Cloudflare

client = Cloudflare(
    api_token=os.environ.get("CLOUDFLARE_API_TOKEN"),  # This is the default and can be omitted
)
policy = client.zero_trust.cws.policies.update(
    policy_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    account_id="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    entrypoint="entrypoint",
    name="x",
    rego_source="x",
)
print(policy.id)
{
  "errors": [
    {
      "code": 0,
      "message": "message",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 0,
      "message": "message",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "result": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "created_at": "2019-12-27T18:11:19.117Z",
    "entrypoint": "entrypoint",
    "filter": "x",
    "name": "x",
    "package_path": "package_path",
    "rego_source": "x",
    "tags": {
      "foo": "string"
    },
    "updated_at": "2019-12-27T18:11:19.117Z",
    "description": "description"
  },
  "success": true
}
Returns Examples
{
  "errors": [
    {
      "code": 0,
      "message": "message",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 0,
      "message": "message",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "result": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "created_at": "2019-12-27T18:11:19.117Z",
    "entrypoint": "entrypoint",
    "filter": "x",
    "name": "x",
    "package_path": "package_path",
    "rego_source": "x",
    "tags": {
      "foo": "string"
    },
    "updated_at": "2019-12-27T18:11:19.117Z",
    "description": "description"
  },
  "success": true
}