Skip to content
Start here

Batch content policy operations

client.EmailSecurity.Settings.ContentPolicies.Batch(ctx, params) (*SettingContentPolicyBatchResponse, error)
POST/accounts/{account_id}/email-security/settings/content_policies/batch

Executes multiple operations atomically. All four operation arrays (deletes, patches, puts, posts) are required and executed in order. Send empty arrays for unused operations.

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)
Cloud Email Security: Write
ParametersExpand Collapse
params SettingContentPolicyBatchParams
AccountID param.Field[string]

Path param: Identifier.

maxLength32
Deletes param.Field[[]SettingContentPolicyBatchParamsDelete]

Body param

ID string

Content policy identifier.

formatuuid
Patches param.Field[[]SettingContentPolicyBatchParamsPatch]

Body param

ID string

Content policy identifier.

formatuuid
CreatedAt TimeOptional
formatdate-time
Enabled boolOptional
ModifiedAt TimeOptional
formatdate-time
Name stringOptional
maxLength256
minLength1
Notes stringOptional
maxLength4096
Pattern stringOptional
maxLength2048
minLength1
Targets []SettingContentPolicyBatchParamsPatchesTargetOptional
One of the following:
const SettingContentPolicyBatchParamsPatchesTargetSubject SettingContentPolicyBatchParamsPatchesTarget = "SUBJECT"
const SettingContentPolicyBatchParamsPatchesTargetBody SettingContentPolicyBatchParamsPatchesTarget = "BODY"
Posts param.Field[[]SettingContentPolicyBatchParamsPost]

Body param

Enabled bool
Name string
maxLength256
minLength1
Pattern string
maxLength2048
minLength1
Targets []SettingContentPolicyBatchParamsPostsTarget
One of the following:
const SettingContentPolicyBatchParamsPostsTargetSubject SettingContentPolicyBatchParamsPostsTarget = "SUBJECT"
const SettingContentPolicyBatchParamsPostsTargetBody SettingContentPolicyBatchParamsPostsTarget = "BODY"
ID stringOptional

Content policy identifier.

formatuuid
CreatedAt TimeOptional
formatdate-time
ModifiedAt TimeOptional
formatdate-time
Notes stringOptional
maxLength4096
Puts param.Field[[]SettingContentPolicyBatchParamsPut]

Body param

ID string

Content policy identifier.

formatuuid
Enabled bool
Name string
maxLength256
minLength1
Pattern string
maxLength2048
minLength1
Targets []SettingContentPolicyBatchParamsPutsTarget
One of the following:
const SettingContentPolicyBatchParamsPutsTargetSubject SettingContentPolicyBatchParamsPutsTarget = "SUBJECT"
const SettingContentPolicyBatchParamsPutsTargetBody SettingContentPolicyBatchParamsPutsTarget = "BODY"
CreatedAt TimeOptional
formatdate-time
ModifiedAt TimeOptional
formatdate-time
Notes stringOptional
maxLength4096
ReturnsExpand Collapse
type SettingContentPolicyBatchResponse struct{…}
Deletes []SettingContentPolicyBatchResponseDeleteOptional
ID string

Content policy identifier.

formatuuid
Patches []SettingContentPolicyBatchResponsePatchOptional
ID stringOptional

Content policy identifier.

formatuuid
CreatedAt TimeOptional
formatdate-time
Enabled boolOptional
ModifiedAt TimeOptional
formatdate-time
Name stringOptional
maxLength256
minLength1
Notes stringOptional
maxLength4096
Pattern stringOptional
maxLength2048
minLength1
Targets []SettingContentPolicyBatchResponsePatchesTargetOptional
One of the following:
const SettingContentPolicyBatchResponsePatchesTargetSubject SettingContentPolicyBatchResponsePatchesTarget = "SUBJECT"
const SettingContentPolicyBatchResponsePatchesTargetBody SettingContentPolicyBatchResponsePatchesTarget = "BODY"
Posts []SettingContentPolicyBatchResponsePostOptional
ID stringOptional

Content policy identifier.

formatuuid
CreatedAt TimeOptional
formatdate-time
Enabled boolOptional
ModifiedAt TimeOptional
formatdate-time
Name stringOptional
maxLength256
minLength1
Notes stringOptional
maxLength4096
Pattern stringOptional
maxLength2048
minLength1
Targets []SettingContentPolicyBatchResponsePostsTargetOptional
One of the following:
const SettingContentPolicyBatchResponsePostsTargetSubject SettingContentPolicyBatchResponsePostsTarget = "SUBJECT"
const SettingContentPolicyBatchResponsePostsTargetBody SettingContentPolicyBatchResponsePostsTarget = "BODY"
Puts []SettingContentPolicyBatchResponsePutOptional
ID stringOptional

Content policy identifier.

formatuuid
CreatedAt TimeOptional
formatdate-time
Enabled boolOptional
ModifiedAt TimeOptional
formatdate-time
Name stringOptional
maxLength256
minLength1
Notes stringOptional
maxLength4096
Pattern stringOptional
maxLength2048
minLength1
Targets []SettingContentPolicyBatchResponsePutsTargetOptional
One of the following:
const SettingContentPolicyBatchResponsePutsTargetSubject SettingContentPolicyBatchResponsePutsTarget = "SUBJECT"
const SettingContentPolicyBatchResponsePutsTargetBody SettingContentPolicyBatchResponsePutsTarget = "BODY"

Batch content policy operations

package main

import (
  "context"
  "fmt"

  "github.com/cloudflare/cloudflare-go"
  "github.com/cloudflare/cloudflare-go/email_security"
  "github.com/cloudflare/cloudflare-go/option"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  response, err := client.EmailSecurity.Settings.ContentPolicies.Batch(context.TODO(), email_security.SettingContentPolicyBatchParams{
    AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
    Deletes: cloudflare.F([]email_security.SettingContentPolicyBatchParamsDelete{email_security.SettingContentPolicyBatchParamsDelete{
      ID: cloudflare.F("f174e90a-fafe-4643-bbbc-4a0ed4fc8415"),
    }}),
    Patches: cloudflare.F([]email_security.SettingContentPolicyBatchParamsPatch{email_security.SettingContentPolicyBatchParamsPatch{

    }}),
    Posts: cloudflare.F([]email_security.SettingContentPolicyBatchParamsPost{email_security.SettingContentPolicyBatchParamsPost{
      Enabled: cloudflare.F(true),
      Name: cloudflare.F("Block phishing keywords"),
      Pattern: cloudflare.F("urgent.*verify.*account"),
      Targets: cloudflare.F([]email_security.SettingContentPolicyBatchParamsPostsTarget{email_security.SettingContentPolicyBatchParamsPostsTargetSubject}),
    }}),
    Puts: cloudflare.F([]email_security.SettingContentPolicyBatchParamsPut{email_security.SettingContentPolicyBatchParamsPut{
      Enabled: cloudflare.F(true),
      Name: cloudflare.F("Block phishing keywords"),
      Pattern: cloudflare.F("urgent.*verify.*account"),
      Targets: cloudflare.F([]email_security.SettingContentPolicyBatchParamsPutsTarget{email_security.SettingContentPolicyBatchParamsPutsTargetSubject}),
    }}),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.Deletes)
}
{
  "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": {
    "deletes": [
      {
        "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415"
      }
    ],
    "patches": [
      {
        "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
        "created_at": "2014-01-01T05:20:00.12345Z",
        "enabled": true,
        "modified_at": "2014-01-01T05:20:00.12345Z",
        "name": "Block phishing keywords",
        "notes": "Blocks common phishing subject lines",
        "pattern": "urgent.*verify.*account",
        "targets": [
          "SUBJECT"
        ]
      }
    ],
    "posts": [
      {
        "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
        "created_at": "2014-01-01T05:20:00.12345Z",
        "enabled": true,
        "modified_at": "2014-01-01T05:20:00.12345Z",
        "name": "Block phishing keywords",
        "notes": "Blocks common phishing subject lines",
        "pattern": "urgent.*verify.*account",
        "targets": [
          "SUBJECT"
        ]
      }
    ],
    "puts": [
      {
        "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
        "created_at": "2014-01-01T05:20:00.12345Z",
        "enabled": true,
        "modified_at": "2014-01-01T05:20:00.12345Z",
        "name": "Block phishing keywords",
        "notes": "Blocks common phishing subject lines",
        "pattern": "urgent.*verify.*account",
        "targets": [
          "SUBJECT"
        ]
      }
    ]
  }
}
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": {
    "deletes": [
      {
        "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415"
      }
    ],
    "patches": [
      {
        "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
        "created_at": "2014-01-01T05:20:00.12345Z",
        "enabled": true,
        "modified_at": "2014-01-01T05:20:00.12345Z",
        "name": "Block phishing keywords",
        "notes": "Blocks common phishing subject lines",
        "pattern": "urgent.*verify.*account",
        "targets": [
          "SUBJECT"
        ]
      }
    ],
    "posts": [
      {
        "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
        "created_at": "2014-01-01T05:20:00.12345Z",
        "enabled": true,
        "modified_at": "2014-01-01T05:20:00.12345Z",
        "name": "Block phishing keywords",
        "notes": "Blocks common phishing subject lines",
        "pattern": "urgent.*verify.*account",
        "targets": [
          "SUBJECT"
        ]
      }
    ],
    "puts": [
      {
        "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
        "created_at": "2014-01-01T05:20:00.12345Z",
        "enabled": true,
        "modified_at": "2014-01-01T05:20:00.12345Z",
        "name": "Block phishing keywords",
        "notes": "Blocks common phishing subject lines",
        "pattern": "urgent.*verify.*account",
        "targets": [
          "SUBJECT"
        ]
      }
    ]
  }
}