Create Rule
Creates a new edge rule for the zone. The body must include "_METHOD": "PUT" alongside the standard rule payload. On success the server returns result: "success" with a human-readable message.
curl -X POST "https://api.5centscdn.com/v2/zones/vod/push/12345/rules/rule" \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{
"_METHOD": "PUT",
"name": "Cache Stream",
"rule": "/live/*",
"options": {
"edge_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"midgress_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"browser_cache_settings": {
"enabled": null,
"control": "default",
"value": "345600s",
"custom": {
"value": ""
}
},
"country_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"ip_address_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"user_agent_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": [],
"casesensitive": false
},
"referrer_acl": {
"enabled": null,
"policy_type": "allow",
"noreferer": false,
"excepted_values": [],
"ip_whitelists": []
},
"secure_key": {
"enabled": null,
"policy_type": 0,
"session": 0,
"key": "",
"ip_whitelists": [],
"type": false
},
"limit_bandwidth": {
"enabled": null,
"limit_type": "static",
"speed": 12000,
"buffer": 1024
},
"limit_request": {
"enabled": null,
"rate": 9,
"burst": 98,
"delay": 96,
"ip_whitelists": []
},
"rewrite": {
"enabled": null,
"body": "",
"flag": "break"
},
"host_redirect": {
"enabled": null,
"to": "",
"value": []
},
"redirect_http_to_https": {
"enabled": null
},
"hsts": {
"enabled": null,
"referrerPolicy": "no-referrer",
"includeSubDomains": true,
"preload": true
},
"force_return": {
"enabled": null,
"code": 200,
"body": ""
},
"stale": {
"enabled": null,
"value": ""
},
"staticHeaders": {
"enabled": null,
"keys": [],
"values": []
},
"cors": {
"enabled": null,
"control": "*",
"always": false,
"value": "*",
"custom": ""
}
}
}'
import requests
import json
url = "https://api.5centscdn.com/v2/zones/vod/push/12345/rules/rule"
headers = {
"Content-Type": "application/json",
"X-API-Key": "YOUR_API_KEY"
}
data = {
"_METHOD": "PUT",
"name": "Cache Stream",
"rule": "/live/*",
"options": {
"edge_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"midgress_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"browser_cache_settings": {
"enabled": null,
"control": "default",
"value": "345600s",
"custom": {
"value": ""
}
},
"country_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"ip_address_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"user_agent_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": [],
"casesensitive": false
},
"referrer_acl": {
"enabled": null,
"policy_type": "allow",
"noreferer": false,
"excepted_values": [],
"ip_whitelists": []
},
"secure_key": {
"enabled": null,
"policy_type": 0,
"session": 0,
"key": "",
"ip_whitelists": [],
"type": false
},
"limit_bandwidth": {
"enabled": null,
"limit_type": "static",
"speed": 12000,
"buffer": 1024
},
"limit_request": {
"enabled": null,
"rate": 9,
"burst": 98,
"delay": 96,
"ip_whitelists": []
},
"rewrite": {
"enabled": null,
"body": "",
"flag": "break"
},
"host_redirect": {
"enabled": null,
"to": "",
"value": []
},
"redirect_http_to_https": {
"enabled": null
},
"hsts": {
"enabled": null,
"referrerPolicy": "no-referrer",
"includeSubDomains": true,
"preload": true
},
"force_return": {
"enabled": null,
"code": 200,
"body": ""
},
"stale": {
"enabled": null,
"value": ""
},
"staticHeaders": {
"enabled": null,
"keys": [],
"values": []
},
"cors": {
"enabled": null,
"control": "*",
"always": false,
"value": "*",
"custom": ""
}
}
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://api.5centscdn.com/v2/zones/vod/push/12345/rules/rule", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": "YOUR_API_KEY"
},
body: JSON.stringify({
"_METHOD": "PUT",
"name": "Cache Stream",
"rule": "/live/*",
"options": {
"edge_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"midgress_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"browser_cache_settings": {
"enabled": null,
"control": "default",
"value": "345600s",
"custom": {
"value": ""
}
},
"country_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"ip_address_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"user_agent_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": [],
"casesensitive": false
},
"referrer_acl": {
"enabled": null,
"policy_type": "allow",
"noreferer": false,
"excepted_values": [],
"ip_whitelists": []
},
"secure_key": {
"enabled": null,
"policy_type": 0,
"session": 0,
"key": "",
"ip_whitelists": [],
"type": false
},
"limit_bandwidth": {
"enabled": null,
"limit_type": "static",
"speed": 12000,
"buffer": 1024
},
"limit_request": {
"enabled": null,
"rate": 9,
"burst": 98,
"delay": 96,
"ip_whitelists": []
},
"rewrite": {
"enabled": null,
"body": "",
"flag": "break"
},
"host_redirect": {
"enabled": null,
"to": "",
"value": []
},
"redirect_http_to_https": {
"enabled": null
},
"hsts": {
"enabled": null,
"referrerPolicy": "no-referrer",
"includeSubDomains": true,
"preload": true
},
"force_return": {
"enabled": null,
"code": 200,
"body": ""
},
"stale": {
"enabled": null,
"value": ""
},
"staticHeaders": {
"enabled": null,
"keys": [],
"values": []
},
"cors": {
"enabled": null,
"control": "*",
"always": false,
"value": "*",
"custom": ""
}
}
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"_METHOD": "PUT",
"name": "Cache Stream",
"rule": "/live/*",
"options": {
"edge_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"midgress_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"browser_cache_settings": {
"enabled": null,
"control": "default",
"value": "345600s",
"custom": {
"value": ""
}
},
"country_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"ip_address_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"user_agent_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": [],
"casesensitive": false
},
"referrer_acl": {
"enabled": null,
"policy_type": "allow",
"noreferer": false,
"excepted_values": [],
"ip_whitelists": []
},
"secure_key": {
"enabled": null,
"policy_type": 0,
"session": 0,
"key": "",
"ip_whitelists": [],
"type": false
},
"limit_bandwidth": {
"enabled": null,
"limit_type": "static",
"speed": 12000,
"buffer": 1024
},
"limit_request": {
"enabled": null,
"rate": 9,
"burst": 98,
"delay": 96,
"ip_whitelists": []
},
"rewrite": {
"enabled": null,
"body": "",
"flag": "break"
},
"host_redirect": {
"enabled": null,
"to": "",
"value": []
},
"redirect_http_to_https": {
"enabled": null
},
"hsts": {
"enabled": null,
"referrerPolicy": "no-referrer",
"includeSubDomains": true,
"preload": true
},
"force_return": {
"enabled": null,
"code": 200,
"body": ""
},
"stale": {
"enabled": null,
"value": ""
},
"staticHeaders": {
"enabled": null,
"keys": [],
"values": []
},
"cors": {
"enabled": null,
"control": "*",
"always": false,
"value": "*",
"custom": ""
}
}
}`)
req, err := http.NewRequest("POST", "https://api.5centscdn.com/v2/zones/vod/push/12345/rules/rule", bytes.NewBuffer(data))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.5centscdn.com/v2/zones/vod/push/12345/rules/rule')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['X-API-Key'] = 'YOUR_API_KEY'
request.body = '{
"_METHOD": "PUT",
"name": "Cache Stream",
"rule": "/live/*",
"options": {
"edge_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"midgress_cache_settings": {
"enabled": null,
"control": "default",
"default": "345600s",
"value": "345600s",
"revalidate": null,
"custom": {
"default": "",
"value": ""
},
"custom_values": {
"codes": [],
"value": []
}
},
"browser_cache_settings": {
"enabled": null,
"control": "default",
"value": "345600s",
"custom": {
"value": ""
}
},
"country_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"ip_address_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": []
},
"user_agent_acl": {
"enabled": null,
"policy_type": "allow",
"excepted_values": [],
"ip_whitelists": [],
"casesensitive": false
},
"referrer_acl": {
"enabled": null,
"policy_type": "allow",
"noreferer": false,
"excepted_values": [],
"ip_whitelists": []
},
"secure_key": {
"enabled": null,
"policy_type": 0,
"session": 0,
"key": "",
"ip_whitelists": [],
"type": false
},
"limit_bandwidth": {
"enabled": null,
"limit_type": "static",
"speed": 12000,
"buffer": 1024
},
"limit_request": {
"enabled": null,
"rate": 9,
"burst": 98,
"delay": 96,
"ip_whitelists": []
},
"rewrite": {
"enabled": null,
"body": "",
"flag": "break"
},
"host_redirect": {
"enabled": null,
"to": "",
"value": []
},
"redirect_http_to_https": {
"enabled": null
},
"hsts": {
"enabled": null,
"referrerPolicy": "no-referrer",
"includeSubDomains": true,
"preload": true
},
"force_return": {
"enabled": null,
"code": 200,
"body": ""
},
"stale": {
"enabled": null,
"value": ""
},
"staticHeaders": {
"enabled": null,
"keys": [],
"values": []
},
"cors": {
"enabled": null,
"control": "*",
"always": false,
"value": "*",
"custom": ""
}
}
}'
response = http.request(request)
puts response.body
{
"result": "success",
"message": "Zone EdgeRule Created. Please wait till the rules validation & deployment completes.",
"ruleid": 8435
}
{
"error": "Bad Request",
"message": "The request contains invalid parameters or malformed data",
"code": 400,
"details": [
{
"field": "email",
"message": "Invalid email format"
}
]
}
{
"error": "Unauthorized",
"message": "Authentication required. Please provide a valid API token",
"code": 401
}
/zones/vod/push/{zoneId}/rules/ruleTarget server for requests. Edit to use your own host.
API key (sent in header)
Numeric ID of the zone
The media type of the request body
HTTP method override. Always "PUT" for create.
Human-readable label for the rule.
URL pattern or regex applied to incoming requests. Validated via /validate/rule.
Container for all behavior option groups.
Request Preview
Response
Response will appear here after sending the request
Authentication
API Key for authentication. Provide your API key in the header.
Path Parameters
Body
URL pattern or regex applied to incoming requests. Validated via /validate/rule.
/live/*Container for all behavior option groups.
Responses
Status of the API response.
successThe numeric ID of the newly created edge rule.