You can configure Cloud Connector rules using the Cloudflare API.
The API token used in API requests to manage Cloud Connector rules must have at least the following permission:
- Zone > Cloud Connector > Write
To obtain the complete endpoint, append the Cloud Connector endpoints listed below to the Cloudflare API base URL:
https://api.cloudflare.com/client/v4The {zone_id} argument is the zone ID (a hexadecimal string). You can find this value in the Cloudflare dashboard.
The following table summarizes the available operations.
| Operation | Verb + Endpoint |
|---|---|
| List Cloud Connector rules | GET /zones/{zone_id}/cloud_connector/rules |
| Create/update/delete Cloud Connector rules | PUT /zones/{zone_id}/cloud_connector/rules |
The following example returns a list of existing Cloud Connector rules:
Required API token permissions
At least one of the following token permissions
is required:
Cloud Connector ReadCloud Connector Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/cloud_connector/rules" \
--request GET \
--header "X-Auth-Email: $CLOUDFLARE_EMAIL" \
--header "X-Auth-Key: $CLOUDFLARE_API_KEY"{
"result": [
{
"id": "<RULE_1_ID>",
"provider": "aws_s3",
"expression": "http.request.uri.path wildcard \"/images/*\"",
"description": "Connect to S3 bucket containing images",
"enabled": true,
"parameters": {
"host": "examplebucketwithimages.s3.north-eu.amazonaws.com"
}
}
],
"success": true,
"errors": [],
"messages": []
}The following example request will replace all existing Cloud Connector rules with a single rule:
Required API token permissions
At least one of the following token permissions
is required:
Cloud Connector Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/cloud_connector/rules" \
--request PUT \
--header "X-Auth-Email: $CLOUDFLARE_EMAIL" \
--header "X-Auth-Key: $CLOUDFLARE_API_KEY" \
--json '[
{
"expression": "http.request.uri.path wildcard \"/images/*\"",
"provider": "cloudflare_r2",
"description": "Connect to R2 bucket containing images",
"parameters": {
"host": "mybucketcustomdomain.example.com"
}
}
]'The required body parameters for each rule are: expression, provider, and parameters.host.
The provider value must be one of the following: cloudflare_r2, aws_s3, azure_storage, and gcp_storage.