Skip to content
Start here

Update custom profile

PUT/accounts/{account_id}/dlp/profiles/custom/{profile_id}

Updates a DLP custom profile.

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
Accepted Permissions (at least one required)
Zero Trust Write
Path ParametersExpand Collapse
account_id: string
profile_id: string
formatuuid
Body ParametersJSONExpand Collapse
name: string
ai_context_enabled: optional boolean
allowed_match_count: optional number
formatint32
confidence_threshold: optional string
Deprecatedcontext_awareness: optional ContextAwareness { enabled, skip }

Scan the context of predefined entries to only return matches surrounded by keywords.

enabled: boolean

If true, scan the context of predefined entries to only return matches surrounded by keywords.

data_classes: optional array of string

Data class IDs to associate with the profile. If omitted, existing associations are unchanged.

data_tags: optional array of string

Data tag IDs to associate with the profile. If omitted, existing associations are unchanged.

description: optional string

The description of the profile.

Deprecatedentries: optional array of { enabled, entry_id, name, 2 more } or { enabled, name, pattern, description }

Custom entries from this profile. If this field is omitted, entries owned by this profile will not be changed.

One of the following:
DLPNewCustomEntryWithID { enabled, entry_id, name, 2 more }
enabled: boolean
entry_id: string
formatuuid
name: string
pattern: Pattern { regex, validation }
regex: string
Deprecatedvalidation: optional "luhn"
description: optional string
DLPNewCustomEntry { enabled, name, pattern, description }
enabled: boolean
name: string
pattern: Pattern { regex, validation }
regex: string
Deprecatedvalidation: optional "luhn"
description: optional string
ocr_enabled: optional boolean
sensitivity_levels: optional array of { group_id, level_id }

Sensitivity levels to associate with the profile. If omitted, existing associations are unchanged.

group_id: string
formatuuid
level_id: string
formatuuid
shared_entries: optional array of { enabled, entry_id }

Other entries, e.g. predefined or integration.

enabled: boolean
entry_id: string
formatuuid
ReturnsExpand Collapse
errors: array of { code, message, documentation_url, source }
code: number
minimum1000
message: string
documentation_url: optional string
source: optional { pointer }
pointer: optional string
messages: array of { code, message, documentation_url, source }
code: number
minimum1000
message: string
documentation_url: optional string
source: optional { pointer }
pointer: optional string
success: true

Whether the API call was successful.

result: optional Profile
One of the following:
CustomProfile { id, allowed_match_count, created_at, 13 more }
id: string

The id of the profile (uuid).

formatuuid
allowed_match_count: number

Related DLP policies will trigger when the match count exceeds the number set.

formatint32
maximum1000
minimum0
created_at: string

When the profile was created.

formatdate-time
name: string

The name of the profile.

ocr_enabled: boolean
type: "custom"
updated_at: string

When the profile was lasted updated.

formatdate-time
ai_context_enabled: optional boolean
confidence_threshold: optional "low" or "medium" or "high" or "very_high"
One of the following:
"low"
"medium"
"high"
"very_high"
Deprecatedcontext_awareness: optional ContextAwareness { enabled, skip }

Scan the context of predefined entries to only return matches surrounded by keywords.

enabled: boolean

If true, scan the context of predefined entries to only return matches surrounded by keywords.

data_classes: optional array of string

Data classes associated with this profile.

data_tags: optional array of string

Data tags associated with this profile.

description: optional string

The description of the profile.

Deprecatedentries: optional array of { id, created_at, enabled, 6 more } or { id, confidence, enabled, 4 more } or { id, created_at, enabled, 4 more } or 3 more
One of the following:
CustomEntry { id, created_at, enabled, 6 more }
id: string
formatuuid
created_at: string
formatdate-time
Deprecatedenabled: boolean
name: string
pattern: Pattern { regex, validation }
regex: string
Deprecatedvalidation: optional "luhn"
type: "custom"
updated_at: string
formatdate-time
description: optional string
Deprecatedprofile_id: optional string
formatuuid
PredefinedEntry { id, confidence, enabled, 4 more }
id: string
formatuuid
confidence: { ai_context_available, available }
ai_context_available: boolean

Indicates whether this entry has AI remote service validation.

available: boolean

Indicates whether this entry has any form of validation that is not an AI remote service.

enabled: boolean
name: string
type: "predefined"
Deprecatedprofile_id: optional string
formatuuid
variant: optional { topic_type, type, description }
topic_type: "Intent" or "Content"
One of the following:
"Intent"
"Content"
type: "PromptTopic"
description: optional string
IntegrationEntry { id, created_at, enabled, 4 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "integration"
updated_at: string
formatdate-time
profile_id: optional string
formatuuid
ExactDataEntry { id, case_sensitive, created_at, 5 more }
id: string
formatuuid
case_sensitive: boolean

Only applies to custom word lists. Determines if the words should be matched in a case-sensitive manner Cannot be set to false if secret is true

created_at: string
formatdate-time
enabled: boolean
name: string
secret: boolean
type: "exact_data"
updated_at: string
formatdate-time
DocumentFingerprintEntry { id, created_at, enabled, 3 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "document_fingerprint"
updated_at: string
formatdate-time
WordListEntry { id, created_at, enabled, 5 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "word_list"
updated_at: string
formatdate-time
word_list: unknown
profile_id: optional string
formatuuid
sensitivity_levels: optional array of { group_id, level_id }

Sensitivity levels associated with this profile.

group_id: string
formatuuid
level_id: string
formatuuid
shared_entries: optional array of { id, created_at, enabled, 6 more } or { id, confidence, enabled, 4 more } or { id, created_at, enabled, 4 more } or 3 more
One of the following:
CustomEntry { id, created_at, enabled, 6 more }
id: string
formatuuid
created_at: string
formatdate-time
Deprecatedenabled: boolean
name: string
pattern: Pattern { regex, validation }
regex: string
Deprecatedvalidation: optional "luhn"
type: "custom"
updated_at: string
formatdate-time
description: optional string
Deprecatedprofile_id: optional string
formatuuid
PredefinedEntry { id, confidence, enabled, 4 more }
id: string
formatuuid
confidence: { ai_context_available, available }
ai_context_available: boolean

Indicates whether this entry has AI remote service validation.

available: boolean

Indicates whether this entry has any form of validation that is not an AI remote service.

enabled: boolean
name: string
type: "predefined"
Deprecatedprofile_id: optional string
formatuuid
variant: optional { topic_type, type, description }
topic_type: "Intent" or "Content"
One of the following:
"Intent"
"Content"
type: "PromptTopic"
description: optional string
IntegrationEntry { id, created_at, enabled, 4 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "integration"
updated_at: string
formatdate-time
profile_id: optional string
formatuuid
ExactDataEntry { id, case_sensitive, created_at, 5 more }
id: string
formatuuid
case_sensitive: boolean

Only applies to custom word lists. Determines if the words should be matched in a case-sensitive manner Cannot be set to false if secret is true

created_at: string
formatdate-time
enabled: boolean
name: string
secret: boolean
type: "exact_data"
updated_at: string
formatdate-time
DocumentFingerprintEntry { id, created_at, enabled, 3 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "document_fingerprint"
updated_at: string
formatdate-time
WordListEntry { id, created_at, enabled, 5 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "word_list"
updated_at: string
formatdate-time
word_list: unknown
profile_id: optional string
formatuuid
PredefinedProfile { id, allowed_match_count, entries, 7 more }
id: string

The id of the predefined profile (uuid).

formatuuid
allowed_match_count: number
formatint32
Deprecatedentries: array of { id, created_at, enabled, 6 more } or { id, confidence, enabled, 4 more } or { id, created_at, enabled, 4 more } or 3 more
One of the following:
CustomEntry { id, created_at, enabled, 6 more }
id: string
formatuuid
created_at: string
formatdate-time
Deprecatedenabled: boolean
name: string
pattern: Pattern { regex, validation }
regex: string
Deprecatedvalidation: optional "luhn"
type: "custom"
updated_at: string
formatdate-time
description: optional string
Deprecatedprofile_id: optional string
formatuuid
PredefinedEntry { id, confidence, enabled, 4 more }
id: string
formatuuid
confidence: { ai_context_available, available }
ai_context_available: boolean

Indicates whether this entry has AI remote service validation.

available: boolean

Indicates whether this entry has any form of validation that is not an AI remote service.

enabled: boolean
name: string
type: "predefined"
Deprecatedprofile_id: optional string
formatuuid
variant: optional { topic_type, type, description }
topic_type: "Intent" or "Content"
One of the following:
"Intent"
"Content"
type: "PromptTopic"
description: optional string
IntegrationEntry { id, created_at, enabled, 4 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "integration"
updated_at: string
formatdate-time
profile_id: optional string
formatuuid
ExactDataEntry { id, case_sensitive, created_at, 5 more }
id: string
formatuuid
case_sensitive: boolean

Only applies to custom word lists. Determines if the words should be matched in a case-sensitive manner Cannot be set to false if secret is true

created_at: string
formatdate-time
enabled: boolean
name: string
secret: boolean
type: "exact_data"
updated_at: string
formatdate-time
DocumentFingerprintEntry { id, created_at, enabled, 3 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "document_fingerprint"
updated_at: string
formatdate-time
WordListEntry { id, created_at, enabled, 5 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "word_list"
updated_at: string
formatdate-time
word_list: unknown
profile_id: optional string
formatuuid
name: string

The name of the predefined profile.

type: "predefined"
ai_context_enabled: optional boolean
confidence_threshold: optional "low" or "medium" or "high" or "very_high"
One of the following:
"low"
"medium"
"high"
"very_high"
Deprecatedcontext_awareness: optional ContextAwareness { enabled, skip }

Scan the context of predefined entries to only return matches surrounded by keywords.

enabled: boolean

If true, scan the context of predefined entries to only return matches surrounded by keywords.

ocr_enabled: optional boolean
open_access: optional boolean

Whether this profile can be accessed by anyone.

IntegrationProfile { id, created_at, entries, 5 more }
id: string
formatuuid
created_at: string
formatdate-time
Deprecatedentries: array of { id, created_at, enabled, 6 more } or { id, confidence, enabled, 4 more } or { id, created_at, enabled, 4 more } or 3 more
One of the following:
CustomEntry { id, created_at, enabled, 6 more }
id: string
formatuuid
created_at: string
formatdate-time
Deprecatedenabled: boolean
name: string
pattern: Pattern { regex, validation }
regex: string
Deprecatedvalidation: optional "luhn"
type: "custom"
updated_at: string
formatdate-time
description: optional string
Deprecatedprofile_id: optional string
formatuuid
PredefinedEntry { id, confidence, enabled, 4 more }
id: string
formatuuid
confidence: { ai_context_available, available }
ai_context_available: boolean

Indicates whether this entry has AI remote service validation.

available: boolean

Indicates whether this entry has any form of validation that is not an AI remote service.

enabled: boolean
name: string
type: "predefined"
Deprecatedprofile_id: optional string
formatuuid
variant: optional { topic_type, type, description }
topic_type: "Intent" or "Content"
One of the following:
"Intent"
"Content"
type: "PromptTopic"
description: optional string
IntegrationEntry { id, created_at, enabled, 4 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "integration"
updated_at: string
formatdate-time
profile_id: optional string
formatuuid
ExactDataEntry { id, case_sensitive, created_at, 5 more }
id: string
formatuuid
case_sensitive: boolean

Only applies to custom word lists. Determines if the words should be matched in a case-sensitive manner Cannot be set to false if secret is true

created_at: string
formatdate-time
enabled: boolean
name: string
secret: boolean
type: "exact_data"
updated_at: string
formatdate-time
DocumentFingerprintEntry { id, created_at, enabled, 3 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "document_fingerprint"
updated_at: string
formatdate-time
WordListEntry { id, created_at, enabled, 5 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "word_list"
updated_at: string
formatdate-time
word_list: unknown
profile_id: optional string
formatuuid
name: string
shared_entries: array of { id, created_at, enabled, 6 more } or { id, confidence, enabled, 4 more } or { id, created_at, enabled, 4 more } or 3 more
One of the following:
CustomEntry { id, created_at, enabled, 6 more }
id: string
formatuuid
created_at: string
formatdate-time
Deprecatedenabled: boolean
name: string
pattern: Pattern { regex, validation }
regex: string
Deprecatedvalidation: optional "luhn"
type: "custom"
updated_at: string
formatdate-time
description: optional string
Deprecatedprofile_id: optional string
formatuuid
PredefinedEntry { id, confidence, enabled, 4 more }
id: string
formatuuid
confidence: { ai_context_available, available }
ai_context_available: boolean

Indicates whether this entry has AI remote service validation.

available: boolean

Indicates whether this entry has any form of validation that is not an AI remote service.

enabled: boolean
name: string
type: "predefined"
Deprecatedprofile_id: optional string
formatuuid
variant: optional { topic_type, type, description }
topic_type: "Intent" or "Content"
One of the following:
"Intent"
"Content"
type: "PromptTopic"
description: optional string
IntegrationEntry { id, created_at, enabled, 4 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "integration"
updated_at: string
formatdate-time
profile_id: optional string
formatuuid
ExactDataEntry { id, case_sensitive, created_at, 5 more }
id: string
formatuuid
case_sensitive: boolean

Only applies to custom word lists. Determines if the words should be matched in a case-sensitive manner Cannot be set to false if secret is true

created_at: string
formatdate-time
enabled: boolean
name: string
secret: boolean
type: "exact_data"
updated_at: string
formatdate-time
DocumentFingerprintEntry { id, created_at, enabled, 3 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "document_fingerprint"
updated_at: string
formatdate-time
WordListEntry { id, created_at, enabled, 5 more }
id: string
formatuuid
created_at: string
formatdate-time
enabled: boolean
name: string
type: "word_list"
updated_at: string
formatdate-time
word_list: unknown
profile_id: optional string
formatuuid
type: "integration"
updated_at: string
formatdate-time
description: optional string

The description of the profile.

Update custom profile

curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/dlp/profiles/custom/$PROFILE_ID \
    -X PUT \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    -d '{
          "name": "name"
        }'
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "allowed_match_count": 5,
    "created_at": "2019-12-27T18:11:19.117Z",
    "name": "name",
    "ocr_enabled": true,
    "type": "custom",
    "updated_at": "2019-12-27T18:11:19.117Z",
    "ai_context_enabled": true,
    "confidence_threshold": "low",
    "context_awareness": {
      "enabled": true,
      "skip": {
        "files": true
      }
    },
    "data_classes": [
      "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
    ],
    "data_tags": [
      "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
    ],
    "description": "description",
    "entries": [
      {
        "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "created_at": "2019-12-27T18:11:19.117Z",
        "enabled": true,
        "name": "name",
        "pattern": {
          "regex": "regex",
          "validation": "luhn"
        },
        "type": "custom",
        "updated_at": "2019-12-27T18:11:19.117Z",
        "description": "description",
        "profile_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
      }
    ],
    "sensitivity_levels": [
      {
        "group_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "level_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
      }
    ],
    "shared_entries": [
      {
        "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "created_at": "2019-12-27T18:11:19.117Z",
        "enabled": true,
        "name": "name",
        "pattern": {
          "regex": "regex",
          "validation": "luhn"
        },
        "type": "custom",
        "updated_at": "2019-12-27T18:11:19.117Z",
        "description": "description",
        "profile_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
      }
    ]
  }
}
Returns Examples
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "allowed_match_count": 5,
    "created_at": "2019-12-27T18:11:19.117Z",
    "name": "name",
    "ocr_enabled": true,
    "type": "custom",
    "updated_at": "2019-12-27T18:11:19.117Z",
    "ai_context_enabled": true,
    "confidence_threshold": "low",
    "context_awareness": {
      "enabled": true,
      "skip": {
        "files": true
      }
    },
    "data_classes": [
      "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
    ],
    "data_tags": [
      "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
    ],
    "description": "description",
    "entries": [
      {
        "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "created_at": "2019-12-27T18:11:19.117Z",
        "enabled": true,
        "name": "name",
        "pattern": {
          "regex": "regex",
          "validation": "luhn"
        },
        "type": "custom",
        "updated_at": "2019-12-27T18:11:19.117Z",
        "description": "description",
        "profile_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
      }
    ],
    "sensitivity_levels": [
      {
        "group_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "level_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
      }
    ],
    "shared_entries": [
      {
        "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "created_at": "2019-12-27T18:11:19.117Z",
        "enabled": true,
        "name": "name",
        "pattern": {
          "regex": "regex",
          "validation": "luhn"
        },
        "type": "custom",
        "updated_at": "2019-12-27T18:11:19.117Z",
        "description": "description",
        "profile_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
      }
    ]
  }
}