Create email allow policy
Creates a new allow policy that exempts matching emails from security detections. Use with caution as this bypasses email security scanning. Policies can match on sender patterns and apply to specific detections or all detections.
Security
API Token
The preferred authorization scheme for interacting with the Cloudflare API. Create a token.
API Email + API Key
The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.
The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.
Accepted Permissions (at least one required)
Body ParametersJSON
Exempts messages from this sender from Spam, Spoof and Bulk dispositions only; Malicious and Suspicious dispositions still apply.
The pattern value to match. The format depends on pattern_type: a valid email address for EMAIL (e.g. user@example.com), a valid domain name for DOMAIN (e.g. example.com), or a plain IPv4 address or IPv4 CIDR block for IP (e.g. 1.2.3.4 or 1.2.3.0/24); the API accepts only globally reachable IP addresses and rejects private, loopback, link-local, and unspecified addresses.
Enforce DMARC, SPF or DKIM authentication. When on, Email Security only honors policies that pass authentication.
Deprecated as of July 1, 2025. Use is_exempt_recipient instead. End of life: July 1, 2026.
Create email allow policy
curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/email-security/settings/allow_policies \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
-d '{
"is_acceptable_sender": false,
"is_exempt_recipient": false,
"is_regex": false,
"is_trusted_sender": true,
"pattern": "test@example.com",
"pattern_type": "EMAIL",
"verify_sender": true,
"comments": "Trust all messages send from test@example.com",
"is_sender": true
}'{
"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": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
"created_at": "2014-01-01T05:20:00.12345Z",
"last_modified": "2014-01-01T05:20:00.12345Z",
"comments": "Trust all messages send from test@example.com",
"is_acceptable_sender": false,
"is_exempt_recipient": false,
"is_recipient": false,
"is_regex": false,
"is_sender": true,
"is_spoof": false,
"is_trusted_sender": true,
"modified_at": "2014-01-01T05:20:00.12345Z",
"pattern": "test@example.com",
"pattern_type": "EMAIL",
"verify_sender": true
}
}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": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
"created_at": "2014-01-01T05:20:00.12345Z",
"last_modified": "2014-01-01T05:20:00.12345Z",
"comments": "Trust all messages send from test@example.com",
"is_acceptable_sender": false,
"is_exempt_recipient": false,
"is_recipient": false,
"is_regex": false,
"is_sender": true,
"is_spoof": false,
"is_trusted_sender": true,
"modified_at": "2014-01-01T05:20:00.12345Z",
"pattern": "test@example.com",
"pattern_type": "EMAIL",
"verify_sender": true
}
}