curl --request POST \
--url https://api.gcore.com/cdn/resources \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"cname": "cdn.site.com",
"originGroup": 132,
"origin": "example.com",
"active": true,
"originProtocol": "HTTPS",
"name": "Resource for images",
"description": "My resource",
"secondaryHostnames": [
"first.example.com",
"second.example.com"
],
"sslEnabled": false,
"sslData": 192,
"proxy_ssl_enabled": false,
"proxy_ssl_ca": null,
"proxy_ssl_data": null,
"primary_resource": null,
"waap_api_domain_enabled": true,
"options": {
"allowedHttpMethods": {
"enabled": true,
"value": [
"GET",
"POST"
]
},
"brotli_compression": {
"enabled": true,
"value": [
"text/html",
"text/plain"
]
},
"browser_cache_settings": {
"enabled": true,
"value": "3600s"
},
"cache_http_headers": {
"enabled": false,
"value": [
"vary",
"content-length",
"last-modified",
"connection",
"accept-ranges",
"content-type",
"content-encoding",
"etag",
"cache-control",
"expires",
"keep-alive",
"server"
]
},
"cors": {
"enabled": true,
"value": [
"domain.com",
"domain2.com"
],
"always": true
},
"country_acl": {
"enabled": true,
"policy_type": "allow",
"excepted_values": [
"GB",
"DE"
]
},
"disable_cache": {
"enabled": true,
"value": false
},
"disable_proxy_force_ranges": {
"enabled": true,
"value": true
},
"edge_cache_settings": {
"enabled": true,
"value": "43200s",
"custom_values": {
"100": "43200s"
}
},
"fastedge": {
"enabled": true,
"on_request_headers": {
"enabled": true,
"app_id": "1001",
"interrupt_on_error": true
}
},
"fetch_compressed": {
"enabled": true,
"value": false
},
"follow_origin_redirect": {
"enabled": true,
"codes": [
302,
308
]
},
"force_return": {
"enabled": true,
"code": 301,
"body": "http://example.com/redirect_address",
"time_interval": {
"start_time": "09:00",
"end_time": "20:00",
"time_zone": "CET"
}
},
"forward_host_header": {
"enabled": false,
"value": false
},
"grpc_passthrough": {
"enabled": true,
"value": true
},
"gzipOn": {
"enabled": true,
"value": true
},
"hostHeader": {
"enabled": true,
"value": "host.com"
},
"http3_enabled": {
"enabled": true,
"value": true
},
"ignore_cookie": {
"enabled": true,
"value": true
},
"ignoreQueryString": {
"enabled": true,
"value": false
},
"image_stack": {
"enabled": true,
"avif_enabled": true,
"webp_enabled": false,
"quality": 80,
"png_lossless": true
},
"ip_address_acl": {
"enabled": true,
"policy_type": "deny",
"excepted_values": [
"192.168.1.100/32"
]
},
"limit_bandwidth": {
"enabled": true,
"limit_type": "static",
"speed": 100,
"buffer": 200
},
"network_error_logging": {
"enabled": true,
"value": true
},
"proxy_cache_key": {
"enabled": true,
"value": "$scheme$uri"
},
"proxy_cache_methods_set": {
"enabled": true,
"value": false
},
"proxy_connect_timeout": {
"enabled": true,
"value": "4s"
},
"proxy_read_timeout": {
"enabled": true,
"value": "10s"
},
"query_params_blacklist": {
"enabled": true,
"value": [
"some",
"blacklisted",
"query"
]
},
"query_params_whitelist": {
"enabled": true,
"value": [
"some",
"whitelisted",
"query"
]
},
"query_string_forwarding": {
"enabled": true,
"forward_from_file_types": [
"m3u8",
"mpd"
],
"forward_to_file_types": [
"ts",
"mp4"
],
"forward_only_keys": [
"auth_token",
"session_id"
],
"forward_except_keys": [
"debug_info"
]
},
"redirect_http_to_https": {
"enabled": true,
"value": true
},
"redirect_https_to_http": {
"enabled": false,
"value": true
},
"referrer_acl": {
"enabled": true,
"policy_type": "deny",
"excepted_values": [
"example.com",
"*.example.net"
]
},
"response_headers_hiding_policy": {
"enabled": true,
"mode": "hide",
"excepted": [
"my-header"
]
},
"rewrite": {
"enabled": true,
"body": "/(.*) /additional_path/$1",
"flag": "break"
},
"secure_key": {
"enabled": true,
"key": "secretkey",
"type": 2
},
"slice": {
"enabled": true,
"value": true
},
"sni": {
"enabled": true,
"sni_type": "custom",
"custom_hostname": "custom.example.com"
},
"stale": {
"enabled": true,
"value": [
"http_404",
"http_500"
]
},
"static_response_headers": {
"enabled": true,
"value": [
{
"name": "X-Example",
"value": [
"Value_1"
],
"always": true
},
{
"name": "X-Example-Multiple",
"value": [
"Value_1",
"Value_2",
"Value_3"
],
"always": false
}
]
},
"staticHeaders": {
"enabled": true,
"value": {
"X-Example": "Value_1",
"X-Example-Multiple": [
"Value_2",
"Value_3"
]
}
},
"staticRequestHeaders": {
"enabled": true,
"value": {
"Header-One": "Value 1",
"Header-Two": "Value 2"
}
},
"tls_versions": {
"enabled": true,
"value": [
"SSLv3",
"TLSv1.3"
]
},
"use_default_le_chain": {
"enabled": true,
"value": true
},
"use_dns01_le_challenge": {
"enabled": true,
"value": true
},
"use_rsa_le_cert": {
"enabled": true,
"value": true
},
"user_agent_acl": {
"enabled": true,
"policy_type": "allow",
"excepted_values": [
"UserAgent Value",
"~*.*bot.*",
""
]
},
"waap": {
"enabled": true,
"value": true
},
"websockets": {
"enabled": true,
"value": true
}
}
}
'import requests
url = "https://api.gcore.com/cdn/resources"
payload = {
"cname": "cdn.site.com",
"originGroup": 132,
"origin": "example.com",
"active": True,
"originProtocol": "HTTPS",
"name": "Resource for images",
"description": "My resource",
"secondaryHostnames": ["first.example.com", "second.example.com"],
"sslEnabled": False,
"sslData": 192,
"proxy_ssl_enabled": False,
"proxy_ssl_ca": None,
"proxy_ssl_data": None,
"primary_resource": None,
"waap_api_domain_enabled": True,
"options": {
"allowedHttpMethods": {
"enabled": True,
"value": ["GET", "POST"]
},
"brotli_compression": {
"enabled": True,
"value": ["text/html", "text/plain"]
},
"browser_cache_settings": {
"enabled": True,
"value": "3600s"
},
"cache_http_headers": {
"enabled": False,
"value": ["vary", "content-length", "last-modified", "connection", "accept-ranges", "content-type", "content-encoding", "etag", "cache-control", "expires", "keep-alive", "server"]
},
"cors": {
"enabled": True,
"value": ["domain.com", "domain2.com"],
"always": True
},
"country_acl": {
"enabled": True,
"policy_type": "allow",
"excepted_values": ["GB", "DE"]
},
"disable_cache": {
"enabled": True,
"value": False
},
"disable_proxy_force_ranges": {
"enabled": True,
"value": True
},
"edge_cache_settings": {
"enabled": True,
"value": "43200s",
"custom_values": { "100": "43200s" }
},
"fastedge": {
"enabled": True,
"on_request_headers": {
"enabled": True,
"app_id": "1001",
"interrupt_on_error": True
}
},
"fetch_compressed": {
"enabled": True,
"value": False
},
"follow_origin_redirect": {
"enabled": True,
"codes": [302, 308]
},
"force_return": {
"enabled": True,
"code": 301,
"body": "http://example.com/redirect_address",
"time_interval": {
"start_time": "09:00",
"end_time": "20:00",
"time_zone": "CET"
}
},
"forward_host_header": {
"enabled": False,
"value": False
},
"grpc_passthrough": {
"enabled": True,
"value": True
},
"gzipOn": {
"enabled": True,
"value": True
},
"hostHeader": {
"enabled": True,
"value": "host.com"
},
"http3_enabled": {
"enabled": True,
"value": True
},
"ignore_cookie": {
"enabled": True,
"value": True
},
"ignoreQueryString": {
"enabled": True,
"value": False
},
"image_stack": {
"enabled": True,
"avif_enabled": True,
"webp_enabled": False,
"quality": 80,
"png_lossless": True
},
"ip_address_acl": {
"enabled": True,
"policy_type": "deny",
"excepted_values": ["192.168.1.100/32"]
},
"limit_bandwidth": {
"enabled": True,
"limit_type": "static",
"speed": 100,
"buffer": 200
},
"network_error_logging": {
"enabled": True,
"value": True
},
"proxy_cache_key": {
"enabled": True,
"value": "$scheme$uri"
},
"proxy_cache_methods_set": {
"enabled": True,
"value": False
},
"proxy_connect_timeout": {
"enabled": True,
"value": "4s"
},
"proxy_read_timeout": {
"enabled": True,
"value": "10s"
},
"query_params_blacklist": {
"enabled": True,
"value": ["some", "blacklisted", "query"]
},
"query_params_whitelist": {
"enabled": True,
"value": ["some", "whitelisted", "query"]
},
"query_string_forwarding": {
"enabled": True,
"forward_from_file_types": ["m3u8", "mpd"],
"forward_to_file_types": ["ts", "mp4"],
"forward_only_keys": ["auth_token", "session_id"],
"forward_except_keys": ["debug_info"]
},
"redirect_http_to_https": {
"enabled": True,
"value": True
},
"redirect_https_to_http": {
"enabled": False,
"value": True
},
"referrer_acl": {
"enabled": True,
"policy_type": "deny",
"excepted_values": ["example.com", "*.example.net"]
},
"response_headers_hiding_policy": {
"enabled": True,
"mode": "hide",
"excepted": ["my-header"]
},
"rewrite": {
"enabled": True,
"body": "/(.*) /additional_path/$1",
"flag": "break"
},
"secure_key": {
"enabled": True,
"key": "secretkey",
"type": 2
},
"slice": {
"enabled": True,
"value": True
},
"sni": {
"enabled": True,
"sni_type": "custom",
"custom_hostname": "custom.example.com"
},
"stale": {
"enabled": True,
"value": ["http_404", "http_500"]
},
"static_response_headers": {
"enabled": True,
"value": [
{
"name": "X-Example",
"value": ["Value_1"],
"always": True
},
{
"name": "X-Example-Multiple",
"value": ["Value_1", "Value_2", "Value_3"],
"always": False
}
]
},
"staticHeaders": {
"enabled": True,
"value": {
"X-Example": "Value_1",
"X-Example-Multiple": ["Value_2", "Value_3"]
}
},
"staticRequestHeaders": {
"enabled": True,
"value": {
"Header-One": "Value 1",
"Header-Two": "Value 2"
}
},
"tls_versions": {
"enabled": True,
"value": ["SSLv3", "TLSv1.3"]
},
"use_default_le_chain": {
"enabled": True,
"value": True
},
"use_dns01_le_challenge": {
"enabled": True,
"value": True
},
"use_rsa_le_cert": {
"enabled": True,
"value": True
},
"user_agent_acl": {
"enabled": True,
"policy_type": "allow",
"excepted_values": ["UserAgent Value", "~*.*bot.*", ""]
},
"waap": {
"enabled": True,
"value": True
},
"websockets": {
"enabled": True,
"value": True
}
}
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
cname: 'cdn.site.com',
originGroup: 132,
origin: 'example.com',
active: true,
originProtocol: 'HTTPS',
name: 'Resource for images',
description: 'My resource',
secondaryHostnames: ['first.example.com', 'second.example.com'],
sslEnabled: false,
sslData: 192,
proxy_ssl_enabled: false,
proxy_ssl_ca: null,
proxy_ssl_data: null,
primary_resource: null,
waap_api_domain_enabled: true,
options: {
allowedHttpMethods: {enabled: true, value: ['GET', 'POST']},
brotli_compression: {enabled: true, value: ['text/html', 'text/plain']},
browser_cache_settings: {enabled: true, value: '3600s'},
cache_http_headers: {
enabled: false,
value: [
'vary',
'content-length',
'last-modified',
'connection',
'accept-ranges',
'content-type',
'content-encoding',
'etag',
'cache-control',
'expires',
'keep-alive',
'server'
]
},
cors: {enabled: true, value: ['domain.com', 'domain2.com'], always: true},
country_acl: {enabled: true, policy_type: 'allow', excepted_values: ['GB', 'DE']},
disable_cache: {enabled: true, value: false},
disable_proxy_force_ranges: {enabled: true, value: true},
edge_cache_settings: {enabled: true, value: '43200s', custom_values: {'100': '43200s'}},
fastedge: {
enabled: true,
on_request_headers: {enabled: true, app_id: '1001', interrupt_on_error: true}
},
fetch_compressed: {enabled: true, value: false},
follow_origin_redirect: {enabled: true, codes: [302, 308]},
force_return: {
enabled: true,
code: 301,
body: JSON.stringify('http://example.com/redirect_address'),
time_interval: {start_time: '09:00', end_time: '20:00', time_zone: 'CET'}
},
forward_host_header: {enabled: false, value: false},
grpc_passthrough: {enabled: true, value: true},
gzipOn: {enabled: true, value: true},
hostHeader: {enabled: true, value: 'host.com'},
http3_enabled: {enabled: true, value: true},
ignore_cookie: {enabled: true, value: true},
ignoreQueryString: {enabled: true, value: false},
image_stack: {
enabled: true,
avif_enabled: true,
webp_enabled: false,
quality: 80,
png_lossless: true
},
ip_address_acl: {enabled: true, policy_type: 'deny', excepted_values: ['192.168.1.100/32']},
limit_bandwidth: {enabled: true, limit_type: 'static', speed: 100, buffer: 200},
network_error_logging: {enabled: true, value: true},
proxy_cache_key: {enabled: true, value: '$scheme$uri'},
proxy_cache_methods_set: {enabled: true, value: false},
proxy_connect_timeout: {enabled: true, value: '4s'},
proxy_read_timeout: {enabled: true, value: '10s'},
query_params_blacklist: {enabled: true, value: ['some', 'blacklisted', 'query']},
query_params_whitelist: {enabled: true, value: ['some', 'whitelisted', 'query']},
query_string_forwarding: {
enabled: true,
forward_from_file_types: ['m3u8', 'mpd'],
forward_to_file_types: ['ts', 'mp4'],
forward_only_keys: ['auth_token', 'session_id'],
forward_except_keys: ['debug_info']
},
redirect_http_to_https: {enabled: true, value: true},
redirect_https_to_http: {enabled: false, value: true},
referrer_acl: {
enabled: true,
policy_type: 'deny',
excepted_values: ['example.com', '*.example.net']
},
response_headers_hiding_policy: {enabled: true, mode: 'hide', excepted: ['my-header']},
rewrite: {
enabled: true,
body: JSON.stringify('/(.*) /additional_path/$1'),
flag: 'break'
},
secure_key: {enabled: true, key: 'secretkey', type: 2},
slice: {enabled: true, value: true},
sni: {enabled: true, sni_type: 'custom', custom_hostname: 'custom.example.com'},
stale: {enabled: true, value: ['http_404', 'http_500']},
static_response_headers: {
enabled: true,
value: [
{name: 'X-Example', value: ['Value_1'], always: true},
{
name: 'X-Example-Multiple',
value: ['Value_1', 'Value_2', 'Value_3'],
always: false
}
]
},
staticHeaders: {
enabled: true,
value: {'X-Example': 'Value_1', 'X-Example-Multiple': ['Value_2', 'Value_3']}
},
staticRequestHeaders: {enabled: true, value: {'Header-One': 'Value 1', 'Header-Two': 'Value 2'}},
tls_versions: {enabled: true, value: ['SSLv3', 'TLSv1.3']},
use_default_le_chain: {enabled: true, value: true},
use_dns01_le_challenge: {enabled: true, value: true},
use_rsa_le_cert: {enabled: true, value: true},
user_agent_acl: {
enabled: true,
policy_type: 'allow',
excepted_values: ['UserAgent Value', '~*.*bot.*', '']
},
waap: {enabled: true, value: true},
websockets: {enabled: true, value: true}
}
})
};
fetch('https://api.gcore.com/cdn/resources', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gcore.com/cdn/resources",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'cname' => 'cdn.site.com',
'originGroup' => 132,
'origin' => 'example.com',
'active' => true,
'originProtocol' => 'HTTPS',
'name' => 'Resource for images',
'description' => 'My resource',
'secondaryHostnames' => [
'first.example.com',
'second.example.com'
],
'sslEnabled' => false,
'sslData' => 192,
'proxy_ssl_enabled' => false,
'proxy_ssl_ca' => null,
'proxy_ssl_data' => null,
'primary_resource' => null,
'waap_api_domain_enabled' => true,
'options' => [
'allowedHttpMethods' => [
'enabled' => true,
'value' => [
'GET',
'POST'
]
],
'brotli_compression' => [
'enabled' => true,
'value' => [
'text/html',
'text/plain'
]
],
'browser_cache_settings' => [
'enabled' => true,
'value' => '3600s'
],
'cache_http_headers' => [
'enabled' => false,
'value' => [
'vary',
'content-length',
'last-modified',
'connection',
'accept-ranges',
'content-type',
'content-encoding',
'etag',
'cache-control',
'expires',
'keep-alive',
'server'
]
],
'cors' => [
'enabled' => true,
'value' => [
'domain.com',
'domain2.com'
],
'always' => true
],
'country_acl' => [
'enabled' => true,
'policy_type' => 'allow',
'excepted_values' => [
'GB',
'DE'
]
],
'disable_cache' => [
'enabled' => true,
'value' => false
],
'disable_proxy_force_ranges' => [
'enabled' => true,
'value' => true
],
'edge_cache_settings' => [
'enabled' => true,
'value' => '43200s',
'custom_values' => [
'100' => '43200s'
]
],
'fastedge' => [
'enabled' => true,
'on_request_headers' => [
'enabled' => true,
'app_id' => '1001',
'interrupt_on_error' => true
]
],
'fetch_compressed' => [
'enabled' => true,
'value' => false
],
'follow_origin_redirect' => [
'enabled' => true,
'codes' => [
302,
308
]
],
'force_return' => [
'enabled' => true,
'code' => 301,
'body' => 'http://example.com/redirect_address',
'time_interval' => [
'start_time' => '09:00',
'end_time' => '20:00',
'time_zone' => 'CET'
]
],
'forward_host_header' => [
'enabled' => false,
'value' => false
],
'grpc_passthrough' => [
'enabled' => true,
'value' => true
],
'gzipOn' => [
'enabled' => true,
'value' => true
],
'hostHeader' => [
'enabled' => true,
'value' => 'host.com'
],
'http3_enabled' => [
'enabled' => true,
'value' => true
],
'ignore_cookie' => [
'enabled' => true,
'value' => true
],
'ignoreQueryString' => [
'enabled' => true,
'value' => false
],
'image_stack' => [
'enabled' => true,
'avif_enabled' => true,
'webp_enabled' => false,
'quality' => 80,
'png_lossless' => true
],
'ip_address_acl' => [
'enabled' => true,
'policy_type' => 'deny',
'excepted_values' => [
'192.168.1.100/32'
]
],
'limit_bandwidth' => [
'enabled' => true,
'limit_type' => 'static',
'speed' => 100,
'buffer' => 200
],
'network_error_logging' => [
'enabled' => true,
'value' => true
],
'proxy_cache_key' => [
'enabled' => true,
'value' => '$scheme$uri'
],
'proxy_cache_methods_set' => [
'enabled' => true,
'value' => false
],
'proxy_connect_timeout' => [
'enabled' => true,
'value' => '4s'
],
'proxy_read_timeout' => [
'enabled' => true,
'value' => '10s'
],
'query_params_blacklist' => [
'enabled' => true,
'value' => [
'some',
'blacklisted',
'query'
]
],
'query_params_whitelist' => [
'enabled' => true,
'value' => [
'some',
'whitelisted',
'query'
]
],
'query_string_forwarding' => [
'enabled' => true,
'forward_from_file_types' => [
'm3u8',
'mpd'
],
'forward_to_file_types' => [
'ts',
'mp4'
],
'forward_only_keys' => [
'auth_token',
'session_id'
],
'forward_except_keys' => [
'debug_info'
]
],
'redirect_http_to_https' => [
'enabled' => true,
'value' => true
],
'redirect_https_to_http' => [
'enabled' => false,
'value' => true
],
'referrer_acl' => [
'enabled' => true,
'policy_type' => 'deny',
'excepted_values' => [
'example.com',
'*.example.net'
]
],
'response_headers_hiding_policy' => [
'enabled' => true,
'mode' => 'hide',
'excepted' => [
'my-header'
]
],
'rewrite' => [
'enabled' => true,
'body' => '/(.*) /additional_path/$1',
'flag' => 'break'
],
'secure_key' => [
'enabled' => true,
'key' => 'secretkey',
'type' => 2
],
'slice' => [
'enabled' => true,
'value' => true
],
'sni' => [
'enabled' => true,
'sni_type' => 'custom',
'custom_hostname' => 'custom.example.com'
],
'stale' => [
'enabled' => true,
'value' => [
'http_404',
'http_500'
]
],
'static_response_headers' => [
'enabled' => true,
'value' => [
[
'name' => 'X-Example',
'value' => [
'Value_1'
],
'always' => true
],
[
'name' => 'X-Example-Multiple',
'value' => [
'Value_1',
'Value_2',
'Value_3'
],
'always' => false
]
]
],
'staticHeaders' => [
'enabled' => true,
'value' => [
'X-Example' => 'Value_1',
'X-Example-Multiple' => [
'Value_2',
'Value_3'
]
]
],
'staticRequestHeaders' => [
'enabled' => true,
'value' => [
'Header-One' => 'Value 1',
'Header-Two' => 'Value 2'
]
],
'tls_versions' => [
'enabled' => true,
'value' => [
'SSLv3',
'TLSv1.3'
]
],
'use_default_le_chain' => [
'enabled' => true,
'value' => true
],
'use_dns01_le_challenge' => [
'enabled' => true,
'value' => true
],
'use_rsa_le_cert' => [
'enabled' => true,
'value' => true
],
'user_agent_acl' => [
'enabled' => true,
'policy_type' => 'allow',
'excepted_values' => [
'UserAgent Value',
'~*.*bot.*',
''
]
],
'waap' => [
'enabled' => true,
'value' => true
],
'websockets' => [
'enabled' => true,
'value' => true
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.gcore.com/cdn/resources"
payload := strings.NewReader("{\n \"cname\": \"cdn.site.com\",\n \"originGroup\": 132,\n \"origin\": \"example.com\",\n \"active\": true,\n \"originProtocol\": \"HTTPS\",\n \"name\": \"Resource for images\",\n \"description\": \"My resource\",\n \"secondaryHostnames\": [\n \"first.example.com\",\n \"second.example.com\"\n ],\n \"sslEnabled\": false,\n \"sslData\": 192,\n \"proxy_ssl_enabled\": false,\n \"proxy_ssl_ca\": null,\n \"proxy_ssl_data\": null,\n \"primary_resource\": null,\n \"waap_api_domain_enabled\": true,\n \"options\": {\n \"allowedHttpMethods\": {\n \"enabled\": true,\n \"value\": [\n \"GET\",\n \"POST\"\n ]\n },\n \"brotli_compression\": {\n \"enabled\": true,\n \"value\": [\n \"text/html\",\n \"text/plain\"\n ]\n },\n \"browser_cache_settings\": {\n \"enabled\": true,\n \"value\": \"3600s\"\n },\n \"cache_http_headers\": {\n \"enabled\": false,\n \"value\": [\n \"vary\",\n \"content-length\",\n \"last-modified\",\n \"connection\",\n \"accept-ranges\",\n \"content-type\",\n \"content-encoding\",\n \"etag\",\n \"cache-control\",\n \"expires\",\n \"keep-alive\",\n \"server\"\n ]\n },\n \"cors\": {\n \"enabled\": true,\n \"value\": [\n \"domain.com\",\n \"domain2.com\"\n ],\n \"always\": true\n },\n \"country_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"GB\",\n \"DE\"\n ]\n },\n \"disable_cache\": {\n \"enabled\": true,\n \"value\": false\n },\n \"disable_proxy_force_ranges\": {\n \"enabled\": true,\n \"value\": true\n },\n \"edge_cache_settings\": {\n \"enabled\": true,\n \"value\": \"43200s\",\n \"custom_values\": {\n \"100\": \"43200s\"\n }\n },\n \"fastedge\": {\n \"enabled\": true,\n \"on_request_headers\": {\n \"enabled\": true,\n \"app_id\": \"1001\",\n \"interrupt_on_error\": true\n }\n },\n \"fetch_compressed\": {\n \"enabled\": true,\n \"value\": false\n },\n \"follow_origin_redirect\": {\n \"enabled\": true,\n \"codes\": [\n 302,\n 308\n ]\n },\n \"force_return\": {\n \"enabled\": true,\n \"code\": 301,\n \"body\": \"http://example.com/redirect_address\",\n \"time_interval\": {\n \"start_time\": \"09:00\",\n \"end_time\": \"20:00\",\n \"time_zone\": \"CET\"\n }\n },\n \"forward_host_header\": {\n \"enabled\": false,\n \"value\": false\n },\n \"grpc_passthrough\": {\n \"enabled\": true,\n \"value\": true\n },\n \"gzipOn\": {\n \"enabled\": true,\n \"value\": true\n },\n \"hostHeader\": {\n \"enabled\": true,\n \"value\": \"host.com\"\n },\n \"http3_enabled\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignore_cookie\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignoreQueryString\": {\n \"enabled\": true,\n \"value\": false\n },\n \"image_stack\": {\n \"enabled\": true,\n \"avif_enabled\": true,\n \"webp_enabled\": false,\n \"quality\": 80,\n \"png_lossless\": true\n },\n \"ip_address_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"192.168.1.100/32\"\n ]\n },\n \"limit_bandwidth\": {\n \"enabled\": true,\n \"limit_type\": \"static\",\n \"speed\": 100,\n \"buffer\": 200\n },\n \"network_error_logging\": {\n \"enabled\": true,\n \"value\": true\n },\n \"proxy_cache_key\": {\n \"enabled\": true,\n \"value\": \"$scheme$uri\"\n },\n \"proxy_cache_methods_set\": {\n \"enabled\": true,\n \"value\": false\n },\n \"proxy_connect_timeout\": {\n \"enabled\": true,\n \"value\": \"4s\"\n },\n \"proxy_read_timeout\": {\n \"enabled\": true,\n \"value\": \"10s\"\n },\n \"query_params_blacklist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"blacklisted\",\n \"query\"\n ]\n },\n \"query_params_whitelist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"whitelisted\",\n \"query\"\n ]\n },\n \"query_string_forwarding\": {\n \"enabled\": true,\n \"forward_from_file_types\": [\n \"m3u8\",\n \"mpd\"\n ],\n \"forward_to_file_types\": [\n \"ts\",\n \"mp4\"\n ],\n \"forward_only_keys\": [\n \"auth_token\",\n \"session_id\"\n ],\n \"forward_except_keys\": [\n \"debug_info\"\n ]\n },\n \"redirect_http_to_https\": {\n \"enabled\": true,\n \"value\": true\n },\n \"redirect_https_to_http\": {\n \"enabled\": false,\n \"value\": true\n },\n \"referrer_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"example.com\",\n \"*.example.net\"\n ]\n },\n \"response_headers_hiding_policy\": {\n \"enabled\": true,\n \"mode\": \"hide\",\n \"excepted\": [\n \"my-header\"\n ]\n },\n \"rewrite\": {\n \"enabled\": true,\n \"body\": \"/(.*) /additional_path/$1\",\n \"flag\": \"break\"\n },\n \"secure_key\": {\n \"enabled\": true,\n \"key\": \"secretkey\",\n \"type\": 2\n },\n \"slice\": {\n \"enabled\": true,\n \"value\": true\n },\n \"sni\": {\n \"enabled\": true,\n \"sni_type\": \"custom\",\n \"custom_hostname\": \"custom.example.com\"\n },\n \"stale\": {\n \"enabled\": true,\n \"value\": [\n \"http_404\",\n \"http_500\"\n ]\n },\n \"static_response_headers\": {\n \"enabled\": true,\n \"value\": [\n {\n \"name\": \"X-Example\",\n \"value\": [\n \"Value_1\"\n ],\n \"always\": true\n },\n {\n \"name\": \"X-Example-Multiple\",\n \"value\": [\n \"Value_1\",\n \"Value_2\",\n \"Value_3\"\n ],\n \"always\": false\n }\n ]\n },\n \"staticHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"X-Example\": \"Value_1\",\n \"X-Example-Multiple\": [\n \"Value_2\",\n \"Value_3\"\n ]\n }\n },\n \"staticRequestHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"Header-One\": \"Value 1\",\n \"Header-Two\": \"Value 2\"\n }\n },\n \"tls_versions\": {\n \"enabled\": true,\n \"value\": [\n \"SSLv3\",\n \"TLSv1.3\"\n ]\n },\n \"use_default_le_chain\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_dns01_le_challenge\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_rsa_le_cert\": {\n \"enabled\": true,\n \"value\": true\n },\n \"user_agent_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"UserAgent Value\",\n \"~*.*bot.*\",\n \"\"\n ]\n },\n \"waap\": {\n \"enabled\": true,\n \"value\": true\n },\n \"websockets\": {\n \"enabled\": true,\n \"value\": true\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.gcore.com/cdn/resources")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"cname\": \"cdn.site.com\",\n \"originGroup\": 132,\n \"origin\": \"example.com\",\n \"active\": true,\n \"originProtocol\": \"HTTPS\",\n \"name\": \"Resource for images\",\n \"description\": \"My resource\",\n \"secondaryHostnames\": [\n \"first.example.com\",\n \"second.example.com\"\n ],\n \"sslEnabled\": false,\n \"sslData\": 192,\n \"proxy_ssl_enabled\": false,\n \"proxy_ssl_ca\": null,\n \"proxy_ssl_data\": null,\n \"primary_resource\": null,\n \"waap_api_domain_enabled\": true,\n \"options\": {\n \"allowedHttpMethods\": {\n \"enabled\": true,\n \"value\": [\n \"GET\",\n \"POST\"\n ]\n },\n \"brotli_compression\": {\n \"enabled\": true,\n \"value\": [\n \"text/html\",\n \"text/plain\"\n ]\n },\n \"browser_cache_settings\": {\n \"enabled\": true,\n \"value\": \"3600s\"\n },\n \"cache_http_headers\": {\n \"enabled\": false,\n \"value\": [\n \"vary\",\n \"content-length\",\n \"last-modified\",\n \"connection\",\n \"accept-ranges\",\n \"content-type\",\n \"content-encoding\",\n \"etag\",\n \"cache-control\",\n \"expires\",\n \"keep-alive\",\n \"server\"\n ]\n },\n \"cors\": {\n \"enabled\": true,\n \"value\": [\n \"domain.com\",\n \"domain2.com\"\n ],\n \"always\": true\n },\n \"country_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"GB\",\n \"DE\"\n ]\n },\n \"disable_cache\": {\n \"enabled\": true,\n \"value\": false\n },\n \"disable_proxy_force_ranges\": {\n \"enabled\": true,\n \"value\": true\n },\n \"edge_cache_settings\": {\n \"enabled\": true,\n \"value\": \"43200s\",\n \"custom_values\": {\n \"100\": \"43200s\"\n }\n },\n \"fastedge\": {\n \"enabled\": true,\n \"on_request_headers\": {\n \"enabled\": true,\n \"app_id\": \"1001\",\n \"interrupt_on_error\": true\n }\n },\n \"fetch_compressed\": {\n \"enabled\": true,\n \"value\": false\n },\n \"follow_origin_redirect\": {\n \"enabled\": true,\n \"codes\": [\n 302,\n 308\n ]\n },\n \"force_return\": {\n \"enabled\": true,\n \"code\": 301,\n \"body\": \"http://example.com/redirect_address\",\n \"time_interval\": {\n \"start_time\": \"09:00\",\n \"end_time\": \"20:00\",\n \"time_zone\": \"CET\"\n }\n },\n \"forward_host_header\": {\n \"enabled\": false,\n \"value\": false\n },\n \"grpc_passthrough\": {\n \"enabled\": true,\n \"value\": true\n },\n \"gzipOn\": {\n \"enabled\": true,\n \"value\": true\n },\n \"hostHeader\": {\n \"enabled\": true,\n \"value\": \"host.com\"\n },\n \"http3_enabled\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignore_cookie\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignoreQueryString\": {\n \"enabled\": true,\n \"value\": false\n },\n \"image_stack\": {\n \"enabled\": true,\n \"avif_enabled\": true,\n \"webp_enabled\": false,\n \"quality\": 80,\n \"png_lossless\": true\n },\n \"ip_address_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"192.168.1.100/32\"\n ]\n },\n \"limit_bandwidth\": {\n \"enabled\": true,\n \"limit_type\": \"static\",\n \"speed\": 100,\n \"buffer\": 200\n },\n \"network_error_logging\": {\n \"enabled\": true,\n \"value\": true\n },\n \"proxy_cache_key\": {\n \"enabled\": true,\n \"value\": \"$scheme$uri\"\n },\n \"proxy_cache_methods_set\": {\n \"enabled\": true,\n \"value\": false\n },\n \"proxy_connect_timeout\": {\n \"enabled\": true,\n \"value\": \"4s\"\n },\n \"proxy_read_timeout\": {\n \"enabled\": true,\n \"value\": \"10s\"\n },\n \"query_params_blacklist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"blacklisted\",\n \"query\"\n ]\n },\n \"query_params_whitelist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"whitelisted\",\n \"query\"\n ]\n },\n \"query_string_forwarding\": {\n \"enabled\": true,\n \"forward_from_file_types\": [\n \"m3u8\",\n \"mpd\"\n ],\n \"forward_to_file_types\": [\n \"ts\",\n \"mp4\"\n ],\n \"forward_only_keys\": [\n \"auth_token\",\n \"session_id\"\n ],\n \"forward_except_keys\": [\n \"debug_info\"\n ]\n },\n \"redirect_http_to_https\": {\n \"enabled\": true,\n \"value\": true\n },\n \"redirect_https_to_http\": {\n \"enabled\": false,\n \"value\": true\n },\n \"referrer_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"example.com\",\n \"*.example.net\"\n ]\n },\n \"response_headers_hiding_policy\": {\n \"enabled\": true,\n \"mode\": \"hide\",\n \"excepted\": [\n \"my-header\"\n ]\n },\n \"rewrite\": {\n \"enabled\": true,\n \"body\": \"/(.*) /additional_path/$1\",\n \"flag\": \"break\"\n },\n \"secure_key\": {\n \"enabled\": true,\n \"key\": \"secretkey\",\n \"type\": 2\n },\n \"slice\": {\n \"enabled\": true,\n \"value\": true\n },\n \"sni\": {\n \"enabled\": true,\n \"sni_type\": \"custom\",\n \"custom_hostname\": \"custom.example.com\"\n },\n \"stale\": {\n \"enabled\": true,\n \"value\": [\n \"http_404\",\n \"http_500\"\n ]\n },\n \"static_response_headers\": {\n \"enabled\": true,\n \"value\": [\n {\n \"name\": \"X-Example\",\n \"value\": [\n \"Value_1\"\n ],\n \"always\": true\n },\n {\n \"name\": \"X-Example-Multiple\",\n \"value\": [\n \"Value_1\",\n \"Value_2\",\n \"Value_3\"\n ],\n \"always\": false\n }\n ]\n },\n \"staticHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"X-Example\": \"Value_1\",\n \"X-Example-Multiple\": [\n \"Value_2\",\n \"Value_3\"\n ]\n }\n },\n \"staticRequestHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"Header-One\": \"Value 1\",\n \"Header-Two\": \"Value 2\"\n }\n },\n \"tls_versions\": {\n \"enabled\": true,\n \"value\": [\n \"SSLv3\",\n \"TLSv1.3\"\n ]\n },\n \"use_default_le_chain\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_dns01_le_challenge\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_rsa_le_cert\": {\n \"enabled\": true,\n \"value\": true\n },\n \"user_agent_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"UserAgent Value\",\n \"~*.*bot.*\",\n \"\"\n ]\n },\n \"waap\": {\n \"enabled\": true,\n \"value\": true\n },\n \"websockets\": {\n \"enabled\": true,\n \"value\": true\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cdn/resources")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cname\": \"cdn.site.com\",\n \"originGroup\": 132,\n \"origin\": \"example.com\",\n \"active\": true,\n \"originProtocol\": \"HTTPS\",\n \"name\": \"Resource for images\",\n \"description\": \"My resource\",\n \"secondaryHostnames\": [\n \"first.example.com\",\n \"second.example.com\"\n ],\n \"sslEnabled\": false,\n \"sslData\": 192,\n \"proxy_ssl_enabled\": false,\n \"proxy_ssl_ca\": null,\n \"proxy_ssl_data\": null,\n \"primary_resource\": null,\n \"waap_api_domain_enabled\": true,\n \"options\": {\n \"allowedHttpMethods\": {\n \"enabled\": true,\n \"value\": [\n \"GET\",\n \"POST\"\n ]\n },\n \"brotli_compression\": {\n \"enabled\": true,\n \"value\": [\n \"text/html\",\n \"text/plain\"\n ]\n },\n \"browser_cache_settings\": {\n \"enabled\": true,\n \"value\": \"3600s\"\n },\n \"cache_http_headers\": {\n \"enabled\": false,\n \"value\": [\n \"vary\",\n \"content-length\",\n \"last-modified\",\n \"connection\",\n \"accept-ranges\",\n \"content-type\",\n \"content-encoding\",\n \"etag\",\n \"cache-control\",\n \"expires\",\n \"keep-alive\",\n \"server\"\n ]\n },\n \"cors\": {\n \"enabled\": true,\n \"value\": [\n \"domain.com\",\n \"domain2.com\"\n ],\n \"always\": true\n },\n \"country_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"GB\",\n \"DE\"\n ]\n },\n \"disable_cache\": {\n \"enabled\": true,\n \"value\": false\n },\n \"disable_proxy_force_ranges\": {\n \"enabled\": true,\n \"value\": true\n },\n \"edge_cache_settings\": {\n \"enabled\": true,\n \"value\": \"43200s\",\n \"custom_values\": {\n \"100\": \"43200s\"\n }\n },\n \"fastedge\": {\n \"enabled\": true,\n \"on_request_headers\": {\n \"enabled\": true,\n \"app_id\": \"1001\",\n \"interrupt_on_error\": true\n }\n },\n \"fetch_compressed\": {\n \"enabled\": true,\n \"value\": false\n },\n \"follow_origin_redirect\": {\n \"enabled\": true,\n \"codes\": [\n 302,\n 308\n ]\n },\n \"force_return\": {\n \"enabled\": true,\n \"code\": 301,\n \"body\": \"http://example.com/redirect_address\",\n \"time_interval\": {\n \"start_time\": \"09:00\",\n \"end_time\": \"20:00\",\n \"time_zone\": \"CET\"\n }\n },\n \"forward_host_header\": {\n \"enabled\": false,\n \"value\": false\n },\n \"grpc_passthrough\": {\n \"enabled\": true,\n \"value\": true\n },\n \"gzipOn\": {\n \"enabled\": true,\n \"value\": true\n },\n \"hostHeader\": {\n \"enabled\": true,\n \"value\": \"host.com\"\n },\n \"http3_enabled\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignore_cookie\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignoreQueryString\": {\n \"enabled\": true,\n \"value\": false\n },\n \"image_stack\": {\n \"enabled\": true,\n \"avif_enabled\": true,\n \"webp_enabled\": false,\n \"quality\": 80,\n \"png_lossless\": true\n },\n \"ip_address_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"192.168.1.100/32\"\n ]\n },\n \"limit_bandwidth\": {\n \"enabled\": true,\n \"limit_type\": \"static\",\n \"speed\": 100,\n \"buffer\": 200\n },\n \"network_error_logging\": {\n \"enabled\": true,\n \"value\": true\n },\n \"proxy_cache_key\": {\n \"enabled\": true,\n \"value\": \"$scheme$uri\"\n },\n \"proxy_cache_methods_set\": {\n \"enabled\": true,\n \"value\": false\n },\n \"proxy_connect_timeout\": {\n \"enabled\": true,\n \"value\": \"4s\"\n },\n \"proxy_read_timeout\": {\n \"enabled\": true,\n \"value\": \"10s\"\n },\n \"query_params_blacklist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"blacklisted\",\n \"query\"\n ]\n },\n \"query_params_whitelist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"whitelisted\",\n \"query\"\n ]\n },\n \"query_string_forwarding\": {\n \"enabled\": true,\n \"forward_from_file_types\": [\n \"m3u8\",\n \"mpd\"\n ],\n \"forward_to_file_types\": [\n \"ts\",\n \"mp4\"\n ],\n \"forward_only_keys\": [\n \"auth_token\",\n \"session_id\"\n ],\n \"forward_except_keys\": [\n \"debug_info\"\n ]\n },\n \"redirect_http_to_https\": {\n \"enabled\": true,\n \"value\": true\n },\n \"redirect_https_to_http\": {\n \"enabled\": false,\n \"value\": true\n },\n \"referrer_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"example.com\",\n \"*.example.net\"\n ]\n },\n \"response_headers_hiding_policy\": {\n \"enabled\": true,\n \"mode\": \"hide\",\n \"excepted\": [\n \"my-header\"\n ]\n },\n \"rewrite\": {\n \"enabled\": true,\n \"body\": \"/(.*) /additional_path/$1\",\n \"flag\": \"break\"\n },\n \"secure_key\": {\n \"enabled\": true,\n \"key\": \"secretkey\",\n \"type\": 2\n },\n \"slice\": {\n \"enabled\": true,\n \"value\": true\n },\n \"sni\": {\n \"enabled\": true,\n \"sni_type\": \"custom\",\n \"custom_hostname\": \"custom.example.com\"\n },\n \"stale\": {\n \"enabled\": true,\n \"value\": [\n \"http_404\",\n \"http_500\"\n ]\n },\n \"static_response_headers\": {\n \"enabled\": true,\n \"value\": [\n {\n \"name\": \"X-Example\",\n \"value\": [\n \"Value_1\"\n ],\n \"always\": true\n },\n {\n \"name\": \"X-Example-Multiple\",\n \"value\": [\n \"Value_1\",\n \"Value_2\",\n \"Value_3\"\n ],\n \"always\": false\n }\n ]\n },\n \"staticHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"X-Example\": \"Value_1\",\n \"X-Example-Multiple\": [\n \"Value_2\",\n \"Value_3\"\n ]\n }\n },\n \"staticRequestHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"Header-One\": \"Value 1\",\n \"Header-Two\": \"Value 2\"\n }\n },\n \"tls_versions\": {\n \"enabled\": true,\n \"value\": [\n \"SSLv3\",\n \"TLSv1.3\"\n ]\n },\n \"use_default_le_chain\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_dns01_le_challenge\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_rsa_le_cert\": {\n \"enabled\": true,\n \"value\": true\n },\n \"user_agent_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"UserAgent Value\",\n \"~*.*bot.*\",\n \"\"\n ]\n },\n \"waap\": {\n \"enabled\": true,\n \"value\": true\n },\n \"websockets\": {\n \"enabled\": true,\n \"value\": true\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"id": 220,
"cname": "cdn.site.com",
"active": true,
"enabled": true,
"status": "active",
"deleted": false,
"client": 170,
"name": "Resource for images",
"description": "My resource",
"created": "2017-06-10T10:30:04.954354Z",
"updated": "2017-06-14T05:05:42.065221Z",
"originGroup": 132,
"originGroup_name": "Resource origin group",
"originProtocol": "HTTPS",
"secondaryHostnames": [
"first.example.com",
"second.example.com"
],
"shielded": false,
"shield_dc": null,
"shield_enabled": false,
"shield_routing_map": null,
"sslEnabled": false,
"sslData": 192,
"proxy_ssl_enabled": false,
"proxy_ssl_ca": null,
"proxy_ssl_data": null,
"preset_applied": false,
"vp_enabled": false,
"full_custom_enabled": false,
"can_purge_by_urls": false,
"suspend_date": null,
"suspended": false,
"primary_resource": null,
"is_primary": null,
"waap_domain_id": "123",
"rules": [],
"options": {
"allowedHttpMethods": {
"enabled": true,
"value": [
"GET",
"POST"
]
},
"brotli_compression": {
"enabled": true,
"value": [
"text/html",
"text/plain"
]
},
"browser_cache_settings": {
"enabled": true,
"value": "3600s"
},
"cache_http_headers": {
"enabled": false,
"value": [
"vary",
"content-length",
"last-modified",
"connection",
"accept-ranges",
"content-type",
"content-encoding",
"etag",
"cache-control",
"expires",
"keep-alive",
"server"
]
},
"cors": {
"enabled": true,
"value": [
"domain.com",
"domain2.com"
],
"always": true
},
"country_acl": {
"enabled": true,
"policy_type": "allow",
"excepted_values": [
"GB",
"DE"
]
},
"disable_cache": {
"enabled": true,
"value": false
},
"disable_proxy_force_ranges": {
"enabled": true,
"value": true
},
"edge_cache_settings": {
"enabled": true,
"value": "43200s",
"custom_values": {
"100": "43200s"
}
},
"fastedge": {
"enabled": true,
"on_request_headers": {
"enabled": true,
"app_id": "1001",
"interrupt_on_error": true
}
},
"fetch_compressed": {
"enabled": true,
"value": false
},
"follow_origin_redirect": {
"enabled": true,
"codes": [
302,
308
]
},
"force_return": {
"enabled": true,
"code": 301,
"body": "http://example.com/redirect_address",
"time_interval": {
"start_time": "09:00",
"end_time": "20:00",
"time_zone": "CET"
}
},
"forward_host_header": {
"enabled": false,
"value": false
},
"grpc_passthrough": {
"enabled": true,
"value": true
},
"gzipOn": {
"enabled": true,
"value": true
},
"hostHeader": {
"enabled": true,
"value": "host.com"
},
"http3_enabled": {
"enabled": true,
"value": true
},
"ignore_cookie": {
"enabled": true,
"value": true
},
"ignoreQueryString": {
"enabled": true,
"value": false
},
"image_stack": {
"enabled": true,
"avif_enabled": true,
"webp_enabled": false,
"quality": 80,
"png_lossless": true
},
"ip_address_acl": {
"enabled": true,
"policy_type": "deny",
"excepted_values": [
"192.168.1.100/32"
]
},
"limit_bandwidth": {
"enabled": true,
"limit_type": "static",
"speed": 100,
"buffer": 200
},
"network_error_logging": {
"enabled": true,
"value": true
},
"proxy_cache_key": {
"enabled": true,
"value": "$scheme$uri"
},
"proxy_cache_methods_set": {
"enabled": true,
"value": false
},
"proxy_connect_timeout": {
"enabled": true,
"value": "4s"
},
"proxy_read_timeout": {
"enabled": true,
"value": "10s"
},
"query_params_blacklist": {
"enabled": true,
"value": [
"some",
"blacklisted",
"query"
]
},
"query_params_whitelist": {
"enabled": true,
"value": [
"some",
"whitelisted",
"query"
]
},
"query_string_forwarding": {
"enabled": true,
"forward_from_file_types": [
"m3u8",
"mpd"
],
"forward_to_file_types": [
"ts",
"mp4"
],
"forward_only_keys": [
"auth_token",
"session_id"
],
"forward_except_keys": [
"debug_info"
]
},
"redirect_http_to_https": {
"enabled": true,
"value": true
},
"redirect_https_to_http": {
"enabled": false,
"value": true
},
"referrer_acl": {
"enabled": true,
"policy_type": "deny",
"excepted_values": [
"example.com",
"*.example.net"
]
},
"response_headers_hiding_policy": {
"enabled": true,
"mode": "hide",
"excepted": [
"my-header"
]
},
"rewrite": {
"enabled": true,
"body": "/(.*) /additional_path/$1",
"flag": "break"
},
"secure_key": {
"enabled": true,
"key": "secretkey",
"type": 2
},
"slice": {
"enabled": true,
"value": true
},
"sni": {
"enabled": true,
"sni_type": "custom",
"custom_hostname": "custom.example.com"
},
"stale": {
"enabled": true,
"value": [
"http_404",
"http_500"
]
},
"static_response_headers": {
"enabled": true,
"value": [
{
"name": "X-Example",
"value": [
"Value_1"
],
"always": true
},
{
"name": "X-Example-Multiple",
"value": [
"Value_1",
"Value_2",
"Value_3"
],
"always": false
}
]
},
"staticHeaders": {
"enabled": true,
"value": {
"X-Example": "Value_1",
"X-Example-Multiple": [
"Value_2",
"Value_3"
]
}
},
"staticRequestHeaders": {
"enabled": true,
"value": {
"Header-One": "Value 1",
"Header-Two": "Value 2"
}
},
"tls_versions": {
"enabled": true,
"value": [
"SSLv3",
"TLSv1.3"
]
},
"use_default_le_chain": {
"enabled": true,
"value": true
},
"use_dns01_le_challenge": {
"enabled": true,
"value": true
},
"use_rsa_le_cert": {
"enabled": true,
"value": true
},
"user_agent_acl": {
"enabled": true,
"policy_type": "allow",
"excepted_values": [
"UserAgent Value",
"~*.*bot.*",
""
]
},
"waap": {
"enabled": true,
"value": true
},
"websockets": {
"enabled": true,
"value": true
}
}
}{
"errors": {
"cname": [
"CNAME cdn.example.com already exists. Try another CNAME or contact support."
]
}
}Create CDN resource
curl --request POST \
--url https://api.gcore.com/cdn/resources \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"cname": "cdn.site.com",
"originGroup": 132,
"origin": "example.com",
"active": true,
"originProtocol": "HTTPS",
"name": "Resource for images",
"description": "My resource",
"secondaryHostnames": [
"first.example.com",
"second.example.com"
],
"sslEnabled": false,
"sslData": 192,
"proxy_ssl_enabled": false,
"proxy_ssl_ca": null,
"proxy_ssl_data": null,
"primary_resource": null,
"waap_api_domain_enabled": true,
"options": {
"allowedHttpMethods": {
"enabled": true,
"value": [
"GET",
"POST"
]
},
"brotli_compression": {
"enabled": true,
"value": [
"text/html",
"text/plain"
]
},
"browser_cache_settings": {
"enabled": true,
"value": "3600s"
},
"cache_http_headers": {
"enabled": false,
"value": [
"vary",
"content-length",
"last-modified",
"connection",
"accept-ranges",
"content-type",
"content-encoding",
"etag",
"cache-control",
"expires",
"keep-alive",
"server"
]
},
"cors": {
"enabled": true,
"value": [
"domain.com",
"domain2.com"
],
"always": true
},
"country_acl": {
"enabled": true,
"policy_type": "allow",
"excepted_values": [
"GB",
"DE"
]
},
"disable_cache": {
"enabled": true,
"value": false
},
"disable_proxy_force_ranges": {
"enabled": true,
"value": true
},
"edge_cache_settings": {
"enabled": true,
"value": "43200s",
"custom_values": {
"100": "43200s"
}
},
"fastedge": {
"enabled": true,
"on_request_headers": {
"enabled": true,
"app_id": "1001",
"interrupt_on_error": true
}
},
"fetch_compressed": {
"enabled": true,
"value": false
},
"follow_origin_redirect": {
"enabled": true,
"codes": [
302,
308
]
},
"force_return": {
"enabled": true,
"code": 301,
"body": "http://example.com/redirect_address",
"time_interval": {
"start_time": "09:00",
"end_time": "20:00",
"time_zone": "CET"
}
},
"forward_host_header": {
"enabled": false,
"value": false
},
"grpc_passthrough": {
"enabled": true,
"value": true
},
"gzipOn": {
"enabled": true,
"value": true
},
"hostHeader": {
"enabled": true,
"value": "host.com"
},
"http3_enabled": {
"enabled": true,
"value": true
},
"ignore_cookie": {
"enabled": true,
"value": true
},
"ignoreQueryString": {
"enabled": true,
"value": false
},
"image_stack": {
"enabled": true,
"avif_enabled": true,
"webp_enabled": false,
"quality": 80,
"png_lossless": true
},
"ip_address_acl": {
"enabled": true,
"policy_type": "deny",
"excepted_values": [
"192.168.1.100/32"
]
},
"limit_bandwidth": {
"enabled": true,
"limit_type": "static",
"speed": 100,
"buffer": 200
},
"network_error_logging": {
"enabled": true,
"value": true
},
"proxy_cache_key": {
"enabled": true,
"value": "$scheme$uri"
},
"proxy_cache_methods_set": {
"enabled": true,
"value": false
},
"proxy_connect_timeout": {
"enabled": true,
"value": "4s"
},
"proxy_read_timeout": {
"enabled": true,
"value": "10s"
},
"query_params_blacklist": {
"enabled": true,
"value": [
"some",
"blacklisted",
"query"
]
},
"query_params_whitelist": {
"enabled": true,
"value": [
"some",
"whitelisted",
"query"
]
},
"query_string_forwarding": {
"enabled": true,
"forward_from_file_types": [
"m3u8",
"mpd"
],
"forward_to_file_types": [
"ts",
"mp4"
],
"forward_only_keys": [
"auth_token",
"session_id"
],
"forward_except_keys": [
"debug_info"
]
},
"redirect_http_to_https": {
"enabled": true,
"value": true
},
"redirect_https_to_http": {
"enabled": false,
"value": true
},
"referrer_acl": {
"enabled": true,
"policy_type": "deny",
"excepted_values": [
"example.com",
"*.example.net"
]
},
"response_headers_hiding_policy": {
"enabled": true,
"mode": "hide",
"excepted": [
"my-header"
]
},
"rewrite": {
"enabled": true,
"body": "/(.*) /additional_path/$1",
"flag": "break"
},
"secure_key": {
"enabled": true,
"key": "secretkey",
"type": 2
},
"slice": {
"enabled": true,
"value": true
},
"sni": {
"enabled": true,
"sni_type": "custom",
"custom_hostname": "custom.example.com"
},
"stale": {
"enabled": true,
"value": [
"http_404",
"http_500"
]
},
"static_response_headers": {
"enabled": true,
"value": [
{
"name": "X-Example",
"value": [
"Value_1"
],
"always": true
},
{
"name": "X-Example-Multiple",
"value": [
"Value_1",
"Value_2",
"Value_3"
],
"always": false
}
]
},
"staticHeaders": {
"enabled": true,
"value": {
"X-Example": "Value_1",
"X-Example-Multiple": [
"Value_2",
"Value_3"
]
}
},
"staticRequestHeaders": {
"enabled": true,
"value": {
"Header-One": "Value 1",
"Header-Two": "Value 2"
}
},
"tls_versions": {
"enabled": true,
"value": [
"SSLv3",
"TLSv1.3"
]
},
"use_default_le_chain": {
"enabled": true,
"value": true
},
"use_dns01_le_challenge": {
"enabled": true,
"value": true
},
"use_rsa_le_cert": {
"enabled": true,
"value": true
},
"user_agent_acl": {
"enabled": true,
"policy_type": "allow",
"excepted_values": [
"UserAgent Value",
"~*.*bot.*",
""
]
},
"waap": {
"enabled": true,
"value": true
},
"websockets": {
"enabled": true,
"value": true
}
}
}
'import requests
url = "https://api.gcore.com/cdn/resources"
payload = {
"cname": "cdn.site.com",
"originGroup": 132,
"origin": "example.com",
"active": True,
"originProtocol": "HTTPS",
"name": "Resource for images",
"description": "My resource",
"secondaryHostnames": ["first.example.com", "second.example.com"],
"sslEnabled": False,
"sslData": 192,
"proxy_ssl_enabled": False,
"proxy_ssl_ca": None,
"proxy_ssl_data": None,
"primary_resource": None,
"waap_api_domain_enabled": True,
"options": {
"allowedHttpMethods": {
"enabled": True,
"value": ["GET", "POST"]
},
"brotli_compression": {
"enabled": True,
"value": ["text/html", "text/plain"]
},
"browser_cache_settings": {
"enabled": True,
"value": "3600s"
},
"cache_http_headers": {
"enabled": False,
"value": ["vary", "content-length", "last-modified", "connection", "accept-ranges", "content-type", "content-encoding", "etag", "cache-control", "expires", "keep-alive", "server"]
},
"cors": {
"enabled": True,
"value": ["domain.com", "domain2.com"],
"always": True
},
"country_acl": {
"enabled": True,
"policy_type": "allow",
"excepted_values": ["GB", "DE"]
},
"disable_cache": {
"enabled": True,
"value": False
},
"disable_proxy_force_ranges": {
"enabled": True,
"value": True
},
"edge_cache_settings": {
"enabled": True,
"value": "43200s",
"custom_values": { "100": "43200s" }
},
"fastedge": {
"enabled": True,
"on_request_headers": {
"enabled": True,
"app_id": "1001",
"interrupt_on_error": True
}
},
"fetch_compressed": {
"enabled": True,
"value": False
},
"follow_origin_redirect": {
"enabled": True,
"codes": [302, 308]
},
"force_return": {
"enabled": True,
"code": 301,
"body": "http://example.com/redirect_address",
"time_interval": {
"start_time": "09:00",
"end_time": "20:00",
"time_zone": "CET"
}
},
"forward_host_header": {
"enabled": False,
"value": False
},
"grpc_passthrough": {
"enabled": True,
"value": True
},
"gzipOn": {
"enabled": True,
"value": True
},
"hostHeader": {
"enabled": True,
"value": "host.com"
},
"http3_enabled": {
"enabled": True,
"value": True
},
"ignore_cookie": {
"enabled": True,
"value": True
},
"ignoreQueryString": {
"enabled": True,
"value": False
},
"image_stack": {
"enabled": True,
"avif_enabled": True,
"webp_enabled": False,
"quality": 80,
"png_lossless": True
},
"ip_address_acl": {
"enabled": True,
"policy_type": "deny",
"excepted_values": ["192.168.1.100/32"]
},
"limit_bandwidth": {
"enabled": True,
"limit_type": "static",
"speed": 100,
"buffer": 200
},
"network_error_logging": {
"enabled": True,
"value": True
},
"proxy_cache_key": {
"enabled": True,
"value": "$scheme$uri"
},
"proxy_cache_methods_set": {
"enabled": True,
"value": False
},
"proxy_connect_timeout": {
"enabled": True,
"value": "4s"
},
"proxy_read_timeout": {
"enabled": True,
"value": "10s"
},
"query_params_blacklist": {
"enabled": True,
"value": ["some", "blacklisted", "query"]
},
"query_params_whitelist": {
"enabled": True,
"value": ["some", "whitelisted", "query"]
},
"query_string_forwarding": {
"enabled": True,
"forward_from_file_types": ["m3u8", "mpd"],
"forward_to_file_types": ["ts", "mp4"],
"forward_only_keys": ["auth_token", "session_id"],
"forward_except_keys": ["debug_info"]
},
"redirect_http_to_https": {
"enabled": True,
"value": True
},
"redirect_https_to_http": {
"enabled": False,
"value": True
},
"referrer_acl": {
"enabled": True,
"policy_type": "deny",
"excepted_values": ["example.com", "*.example.net"]
},
"response_headers_hiding_policy": {
"enabled": True,
"mode": "hide",
"excepted": ["my-header"]
},
"rewrite": {
"enabled": True,
"body": "/(.*) /additional_path/$1",
"flag": "break"
},
"secure_key": {
"enabled": True,
"key": "secretkey",
"type": 2
},
"slice": {
"enabled": True,
"value": True
},
"sni": {
"enabled": True,
"sni_type": "custom",
"custom_hostname": "custom.example.com"
},
"stale": {
"enabled": True,
"value": ["http_404", "http_500"]
},
"static_response_headers": {
"enabled": True,
"value": [
{
"name": "X-Example",
"value": ["Value_1"],
"always": True
},
{
"name": "X-Example-Multiple",
"value": ["Value_1", "Value_2", "Value_3"],
"always": False
}
]
},
"staticHeaders": {
"enabled": True,
"value": {
"X-Example": "Value_1",
"X-Example-Multiple": ["Value_2", "Value_3"]
}
},
"staticRequestHeaders": {
"enabled": True,
"value": {
"Header-One": "Value 1",
"Header-Two": "Value 2"
}
},
"tls_versions": {
"enabled": True,
"value": ["SSLv3", "TLSv1.3"]
},
"use_default_le_chain": {
"enabled": True,
"value": True
},
"use_dns01_le_challenge": {
"enabled": True,
"value": True
},
"use_rsa_le_cert": {
"enabled": True,
"value": True
},
"user_agent_acl": {
"enabled": True,
"policy_type": "allow",
"excepted_values": ["UserAgent Value", "~*.*bot.*", ""]
},
"waap": {
"enabled": True,
"value": True
},
"websockets": {
"enabled": True,
"value": True
}
}
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
cname: 'cdn.site.com',
originGroup: 132,
origin: 'example.com',
active: true,
originProtocol: 'HTTPS',
name: 'Resource for images',
description: 'My resource',
secondaryHostnames: ['first.example.com', 'second.example.com'],
sslEnabled: false,
sslData: 192,
proxy_ssl_enabled: false,
proxy_ssl_ca: null,
proxy_ssl_data: null,
primary_resource: null,
waap_api_domain_enabled: true,
options: {
allowedHttpMethods: {enabled: true, value: ['GET', 'POST']},
brotli_compression: {enabled: true, value: ['text/html', 'text/plain']},
browser_cache_settings: {enabled: true, value: '3600s'},
cache_http_headers: {
enabled: false,
value: [
'vary',
'content-length',
'last-modified',
'connection',
'accept-ranges',
'content-type',
'content-encoding',
'etag',
'cache-control',
'expires',
'keep-alive',
'server'
]
},
cors: {enabled: true, value: ['domain.com', 'domain2.com'], always: true},
country_acl: {enabled: true, policy_type: 'allow', excepted_values: ['GB', 'DE']},
disable_cache: {enabled: true, value: false},
disable_proxy_force_ranges: {enabled: true, value: true},
edge_cache_settings: {enabled: true, value: '43200s', custom_values: {'100': '43200s'}},
fastedge: {
enabled: true,
on_request_headers: {enabled: true, app_id: '1001', interrupt_on_error: true}
},
fetch_compressed: {enabled: true, value: false},
follow_origin_redirect: {enabled: true, codes: [302, 308]},
force_return: {
enabled: true,
code: 301,
body: JSON.stringify('http://example.com/redirect_address'),
time_interval: {start_time: '09:00', end_time: '20:00', time_zone: 'CET'}
},
forward_host_header: {enabled: false, value: false},
grpc_passthrough: {enabled: true, value: true},
gzipOn: {enabled: true, value: true},
hostHeader: {enabled: true, value: 'host.com'},
http3_enabled: {enabled: true, value: true},
ignore_cookie: {enabled: true, value: true},
ignoreQueryString: {enabled: true, value: false},
image_stack: {
enabled: true,
avif_enabled: true,
webp_enabled: false,
quality: 80,
png_lossless: true
},
ip_address_acl: {enabled: true, policy_type: 'deny', excepted_values: ['192.168.1.100/32']},
limit_bandwidth: {enabled: true, limit_type: 'static', speed: 100, buffer: 200},
network_error_logging: {enabled: true, value: true},
proxy_cache_key: {enabled: true, value: '$scheme$uri'},
proxy_cache_methods_set: {enabled: true, value: false},
proxy_connect_timeout: {enabled: true, value: '4s'},
proxy_read_timeout: {enabled: true, value: '10s'},
query_params_blacklist: {enabled: true, value: ['some', 'blacklisted', 'query']},
query_params_whitelist: {enabled: true, value: ['some', 'whitelisted', 'query']},
query_string_forwarding: {
enabled: true,
forward_from_file_types: ['m3u8', 'mpd'],
forward_to_file_types: ['ts', 'mp4'],
forward_only_keys: ['auth_token', 'session_id'],
forward_except_keys: ['debug_info']
},
redirect_http_to_https: {enabled: true, value: true},
redirect_https_to_http: {enabled: false, value: true},
referrer_acl: {
enabled: true,
policy_type: 'deny',
excepted_values: ['example.com', '*.example.net']
},
response_headers_hiding_policy: {enabled: true, mode: 'hide', excepted: ['my-header']},
rewrite: {
enabled: true,
body: JSON.stringify('/(.*) /additional_path/$1'),
flag: 'break'
},
secure_key: {enabled: true, key: 'secretkey', type: 2},
slice: {enabled: true, value: true},
sni: {enabled: true, sni_type: 'custom', custom_hostname: 'custom.example.com'},
stale: {enabled: true, value: ['http_404', 'http_500']},
static_response_headers: {
enabled: true,
value: [
{name: 'X-Example', value: ['Value_1'], always: true},
{
name: 'X-Example-Multiple',
value: ['Value_1', 'Value_2', 'Value_3'],
always: false
}
]
},
staticHeaders: {
enabled: true,
value: {'X-Example': 'Value_1', 'X-Example-Multiple': ['Value_2', 'Value_3']}
},
staticRequestHeaders: {enabled: true, value: {'Header-One': 'Value 1', 'Header-Two': 'Value 2'}},
tls_versions: {enabled: true, value: ['SSLv3', 'TLSv1.3']},
use_default_le_chain: {enabled: true, value: true},
use_dns01_le_challenge: {enabled: true, value: true},
use_rsa_le_cert: {enabled: true, value: true},
user_agent_acl: {
enabled: true,
policy_type: 'allow',
excepted_values: ['UserAgent Value', '~*.*bot.*', '']
},
waap: {enabled: true, value: true},
websockets: {enabled: true, value: true}
}
})
};
fetch('https://api.gcore.com/cdn/resources', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gcore.com/cdn/resources",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'cname' => 'cdn.site.com',
'originGroup' => 132,
'origin' => 'example.com',
'active' => true,
'originProtocol' => 'HTTPS',
'name' => 'Resource for images',
'description' => 'My resource',
'secondaryHostnames' => [
'first.example.com',
'second.example.com'
],
'sslEnabled' => false,
'sslData' => 192,
'proxy_ssl_enabled' => false,
'proxy_ssl_ca' => null,
'proxy_ssl_data' => null,
'primary_resource' => null,
'waap_api_domain_enabled' => true,
'options' => [
'allowedHttpMethods' => [
'enabled' => true,
'value' => [
'GET',
'POST'
]
],
'brotli_compression' => [
'enabled' => true,
'value' => [
'text/html',
'text/plain'
]
],
'browser_cache_settings' => [
'enabled' => true,
'value' => '3600s'
],
'cache_http_headers' => [
'enabled' => false,
'value' => [
'vary',
'content-length',
'last-modified',
'connection',
'accept-ranges',
'content-type',
'content-encoding',
'etag',
'cache-control',
'expires',
'keep-alive',
'server'
]
],
'cors' => [
'enabled' => true,
'value' => [
'domain.com',
'domain2.com'
],
'always' => true
],
'country_acl' => [
'enabled' => true,
'policy_type' => 'allow',
'excepted_values' => [
'GB',
'DE'
]
],
'disable_cache' => [
'enabled' => true,
'value' => false
],
'disable_proxy_force_ranges' => [
'enabled' => true,
'value' => true
],
'edge_cache_settings' => [
'enabled' => true,
'value' => '43200s',
'custom_values' => [
'100' => '43200s'
]
],
'fastedge' => [
'enabled' => true,
'on_request_headers' => [
'enabled' => true,
'app_id' => '1001',
'interrupt_on_error' => true
]
],
'fetch_compressed' => [
'enabled' => true,
'value' => false
],
'follow_origin_redirect' => [
'enabled' => true,
'codes' => [
302,
308
]
],
'force_return' => [
'enabled' => true,
'code' => 301,
'body' => 'http://example.com/redirect_address',
'time_interval' => [
'start_time' => '09:00',
'end_time' => '20:00',
'time_zone' => 'CET'
]
],
'forward_host_header' => [
'enabled' => false,
'value' => false
],
'grpc_passthrough' => [
'enabled' => true,
'value' => true
],
'gzipOn' => [
'enabled' => true,
'value' => true
],
'hostHeader' => [
'enabled' => true,
'value' => 'host.com'
],
'http3_enabled' => [
'enabled' => true,
'value' => true
],
'ignore_cookie' => [
'enabled' => true,
'value' => true
],
'ignoreQueryString' => [
'enabled' => true,
'value' => false
],
'image_stack' => [
'enabled' => true,
'avif_enabled' => true,
'webp_enabled' => false,
'quality' => 80,
'png_lossless' => true
],
'ip_address_acl' => [
'enabled' => true,
'policy_type' => 'deny',
'excepted_values' => [
'192.168.1.100/32'
]
],
'limit_bandwidth' => [
'enabled' => true,
'limit_type' => 'static',
'speed' => 100,
'buffer' => 200
],
'network_error_logging' => [
'enabled' => true,
'value' => true
],
'proxy_cache_key' => [
'enabled' => true,
'value' => '$scheme$uri'
],
'proxy_cache_methods_set' => [
'enabled' => true,
'value' => false
],
'proxy_connect_timeout' => [
'enabled' => true,
'value' => '4s'
],
'proxy_read_timeout' => [
'enabled' => true,
'value' => '10s'
],
'query_params_blacklist' => [
'enabled' => true,
'value' => [
'some',
'blacklisted',
'query'
]
],
'query_params_whitelist' => [
'enabled' => true,
'value' => [
'some',
'whitelisted',
'query'
]
],
'query_string_forwarding' => [
'enabled' => true,
'forward_from_file_types' => [
'm3u8',
'mpd'
],
'forward_to_file_types' => [
'ts',
'mp4'
],
'forward_only_keys' => [
'auth_token',
'session_id'
],
'forward_except_keys' => [
'debug_info'
]
],
'redirect_http_to_https' => [
'enabled' => true,
'value' => true
],
'redirect_https_to_http' => [
'enabled' => false,
'value' => true
],
'referrer_acl' => [
'enabled' => true,
'policy_type' => 'deny',
'excepted_values' => [
'example.com',
'*.example.net'
]
],
'response_headers_hiding_policy' => [
'enabled' => true,
'mode' => 'hide',
'excepted' => [
'my-header'
]
],
'rewrite' => [
'enabled' => true,
'body' => '/(.*) /additional_path/$1',
'flag' => 'break'
],
'secure_key' => [
'enabled' => true,
'key' => 'secretkey',
'type' => 2
],
'slice' => [
'enabled' => true,
'value' => true
],
'sni' => [
'enabled' => true,
'sni_type' => 'custom',
'custom_hostname' => 'custom.example.com'
],
'stale' => [
'enabled' => true,
'value' => [
'http_404',
'http_500'
]
],
'static_response_headers' => [
'enabled' => true,
'value' => [
[
'name' => 'X-Example',
'value' => [
'Value_1'
],
'always' => true
],
[
'name' => 'X-Example-Multiple',
'value' => [
'Value_1',
'Value_2',
'Value_3'
],
'always' => false
]
]
],
'staticHeaders' => [
'enabled' => true,
'value' => [
'X-Example' => 'Value_1',
'X-Example-Multiple' => [
'Value_2',
'Value_3'
]
]
],
'staticRequestHeaders' => [
'enabled' => true,
'value' => [
'Header-One' => 'Value 1',
'Header-Two' => 'Value 2'
]
],
'tls_versions' => [
'enabled' => true,
'value' => [
'SSLv3',
'TLSv1.3'
]
],
'use_default_le_chain' => [
'enabled' => true,
'value' => true
],
'use_dns01_le_challenge' => [
'enabled' => true,
'value' => true
],
'use_rsa_le_cert' => [
'enabled' => true,
'value' => true
],
'user_agent_acl' => [
'enabled' => true,
'policy_type' => 'allow',
'excepted_values' => [
'UserAgent Value',
'~*.*bot.*',
''
]
],
'waap' => [
'enabled' => true,
'value' => true
],
'websockets' => [
'enabled' => true,
'value' => true
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.gcore.com/cdn/resources"
payload := strings.NewReader("{\n \"cname\": \"cdn.site.com\",\n \"originGroup\": 132,\n \"origin\": \"example.com\",\n \"active\": true,\n \"originProtocol\": \"HTTPS\",\n \"name\": \"Resource for images\",\n \"description\": \"My resource\",\n \"secondaryHostnames\": [\n \"first.example.com\",\n \"second.example.com\"\n ],\n \"sslEnabled\": false,\n \"sslData\": 192,\n \"proxy_ssl_enabled\": false,\n \"proxy_ssl_ca\": null,\n \"proxy_ssl_data\": null,\n \"primary_resource\": null,\n \"waap_api_domain_enabled\": true,\n \"options\": {\n \"allowedHttpMethods\": {\n \"enabled\": true,\n \"value\": [\n \"GET\",\n \"POST\"\n ]\n },\n \"brotli_compression\": {\n \"enabled\": true,\n \"value\": [\n \"text/html\",\n \"text/plain\"\n ]\n },\n \"browser_cache_settings\": {\n \"enabled\": true,\n \"value\": \"3600s\"\n },\n \"cache_http_headers\": {\n \"enabled\": false,\n \"value\": [\n \"vary\",\n \"content-length\",\n \"last-modified\",\n \"connection\",\n \"accept-ranges\",\n \"content-type\",\n \"content-encoding\",\n \"etag\",\n \"cache-control\",\n \"expires\",\n \"keep-alive\",\n \"server\"\n ]\n },\n \"cors\": {\n \"enabled\": true,\n \"value\": [\n \"domain.com\",\n \"domain2.com\"\n ],\n \"always\": true\n },\n \"country_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"GB\",\n \"DE\"\n ]\n },\n \"disable_cache\": {\n \"enabled\": true,\n \"value\": false\n },\n \"disable_proxy_force_ranges\": {\n \"enabled\": true,\n \"value\": true\n },\n \"edge_cache_settings\": {\n \"enabled\": true,\n \"value\": \"43200s\",\n \"custom_values\": {\n \"100\": \"43200s\"\n }\n },\n \"fastedge\": {\n \"enabled\": true,\n \"on_request_headers\": {\n \"enabled\": true,\n \"app_id\": \"1001\",\n \"interrupt_on_error\": true\n }\n },\n \"fetch_compressed\": {\n \"enabled\": true,\n \"value\": false\n },\n \"follow_origin_redirect\": {\n \"enabled\": true,\n \"codes\": [\n 302,\n 308\n ]\n },\n \"force_return\": {\n \"enabled\": true,\n \"code\": 301,\n \"body\": \"http://example.com/redirect_address\",\n \"time_interval\": {\n \"start_time\": \"09:00\",\n \"end_time\": \"20:00\",\n \"time_zone\": \"CET\"\n }\n },\n \"forward_host_header\": {\n \"enabled\": false,\n \"value\": false\n },\n \"grpc_passthrough\": {\n \"enabled\": true,\n \"value\": true\n },\n \"gzipOn\": {\n \"enabled\": true,\n \"value\": true\n },\n \"hostHeader\": {\n \"enabled\": true,\n \"value\": \"host.com\"\n },\n \"http3_enabled\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignore_cookie\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignoreQueryString\": {\n \"enabled\": true,\n \"value\": false\n },\n \"image_stack\": {\n \"enabled\": true,\n \"avif_enabled\": true,\n \"webp_enabled\": false,\n \"quality\": 80,\n \"png_lossless\": true\n },\n \"ip_address_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"192.168.1.100/32\"\n ]\n },\n \"limit_bandwidth\": {\n \"enabled\": true,\n \"limit_type\": \"static\",\n \"speed\": 100,\n \"buffer\": 200\n },\n \"network_error_logging\": {\n \"enabled\": true,\n \"value\": true\n },\n \"proxy_cache_key\": {\n \"enabled\": true,\n \"value\": \"$scheme$uri\"\n },\n \"proxy_cache_methods_set\": {\n \"enabled\": true,\n \"value\": false\n },\n \"proxy_connect_timeout\": {\n \"enabled\": true,\n \"value\": \"4s\"\n },\n \"proxy_read_timeout\": {\n \"enabled\": true,\n \"value\": \"10s\"\n },\n \"query_params_blacklist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"blacklisted\",\n \"query\"\n ]\n },\n \"query_params_whitelist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"whitelisted\",\n \"query\"\n ]\n },\n \"query_string_forwarding\": {\n \"enabled\": true,\n \"forward_from_file_types\": [\n \"m3u8\",\n \"mpd\"\n ],\n \"forward_to_file_types\": [\n \"ts\",\n \"mp4\"\n ],\n \"forward_only_keys\": [\n \"auth_token\",\n \"session_id\"\n ],\n \"forward_except_keys\": [\n \"debug_info\"\n ]\n },\n \"redirect_http_to_https\": {\n \"enabled\": true,\n \"value\": true\n },\n \"redirect_https_to_http\": {\n \"enabled\": false,\n \"value\": true\n },\n \"referrer_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"example.com\",\n \"*.example.net\"\n ]\n },\n \"response_headers_hiding_policy\": {\n \"enabled\": true,\n \"mode\": \"hide\",\n \"excepted\": [\n \"my-header\"\n ]\n },\n \"rewrite\": {\n \"enabled\": true,\n \"body\": \"/(.*) /additional_path/$1\",\n \"flag\": \"break\"\n },\n \"secure_key\": {\n \"enabled\": true,\n \"key\": \"secretkey\",\n \"type\": 2\n },\n \"slice\": {\n \"enabled\": true,\n \"value\": true\n },\n \"sni\": {\n \"enabled\": true,\n \"sni_type\": \"custom\",\n \"custom_hostname\": \"custom.example.com\"\n },\n \"stale\": {\n \"enabled\": true,\n \"value\": [\n \"http_404\",\n \"http_500\"\n ]\n },\n \"static_response_headers\": {\n \"enabled\": true,\n \"value\": [\n {\n \"name\": \"X-Example\",\n \"value\": [\n \"Value_1\"\n ],\n \"always\": true\n },\n {\n \"name\": \"X-Example-Multiple\",\n \"value\": [\n \"Value_1\",\n \"Value_2\",\n \"Value_3\"\n ],\n \"always\": false\n }\n ]\n },\n \"staticHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"X-Example\": \"Value_1\",\n \"X-Example-Multiple\": [\n \"Value_2\",\n \"Value_3\"\n ]\n }\n },\n \"staticRequestHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"Header-One\": \"Value 1\",\n \"Header-Two\": \"Value 2\"\n }\n },\n \"tls_versions\": {\n \"enabled\": true,\n \"value\": [\n \"SSLv3\",\n \"TLSv1.3\"\n ]\n },\n \"use_default_le_chain\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_dns01_le_challenge\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_rsa_le_cert\": {\n \"enabled\": true,\n \"value\": true\n },\n \"user_agent_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"UserAgent Value\",\n \"~*.*bot.*\",\n \"\"\n ]\n },\n \"waap\": {\n \"enabled\": true,\n \"value\": true\n },\n \"websockets\": {\n \"enabled\": true,\n \"value\": true\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.gcore.com/cdn/resources")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"cname\": \"cdn.site.com\",\n \"originGroup\": 132,\n \"origin\": \"example.com\",\n \"active\": true,\n \"originProtocol\": \"HTTPS\",\n \"name\": \"Resource for images\",\n \"description\": \"My resource\",\n \"secondaryHostnames\": [\n \"first.example.com\",\n \"second.example.com\"\n ],\n \"sslEnabled\": false,\n \"sslData\": 192,\n \"proxy_ssl_enabled\": false,\n \"proxy_ssl_ca\": null,\n \"proxy_ssl_data\": null,\n \"primary_resource\": null,\n \"waap_api_domain_enabled\": true,\n \"options\": {\n \"allowedHttpMethods\": {\n \"enabled\": true,\n \"value\": [\n \"GET\",\n \"POST\"\n ]\n },\n \"brotli_compression\": {\n \"enabled\": true,\n \"value\": [\n \"text/html\",\n \"text/plain\"\n ]\n },\n \"browser_cache_settings\": {\n \"enabled\": true,\n \"value\": \"3600s\"\n },\n \"cache_http_headers\": {\n \"enabled\": false,\n \"value\": [\n \"vary\",\n \"content-length\",\n \"last-modified\",\n \"connection\",\n \"accept-ranges\",\n \"content-type\",\n \"content-encoding\",\n \"etag\",\n \"cache-control\",\n \"expires\",\n \"keep-alive\",\n \"server\"\n ]\n },\n \"cors\": {\n \"enabled\": true,\n \"value\": [\n \"domain.com\",\n \"domain2.com\"\n ],\n \"always\": true\n },\n \"country_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"GB\",\n \"DE\"\n ]\n },\n \"disable_cache\": {\n \"enabled\": true,\n \"value\": false\n },\n \"disable_proxy_force_ranges\": {\n \"enabled\": true,\n \"value\": true\n },\n \"edge_cache_settings\": {\n \"enabled\": true,\n \"value\": \"43200s\",\n \"custom_values\": {\n \"100\": \"43200s\"\n }\n },\n \"fastedge\": {\n \"enabled\": true,\n \"on_request_headers\": {\n \"enabled\": true,\n \"app_id\": \"1001\",\n \"interrupt_on_error\": true\n }\n },\n \"fetch_compressed\": {\n \"enabled\": true,\n \"value\": false\n },\n \"follow_origin_redirect\": {\n \"enabled\": true,\n \"codes\": [\n 302,\n 308\n ]\n },\n \"force_return\": {\n \"enabled\": true,\n \"code\": 301,\n \"body\": \"http://example.com/redirect_address\",\n \"time_interval\": {\n \"start_time\": \"09:00\",\n \"end_time\": \"20:00\",\n \"time_zone\": \"CET\"\n }\n },\n \"forward_host_header\": {\n \"enabled\": false,\n \"value\": false\n },\n \"grpc_passthrough\": {\n \"enabled\": true,\n \"value\": true\n },\n \"gzipOn\": {\n \"enabled\": true,\n \"value\": true\n },\n \"hostHeader\": {\n \"enabled\": true,\n \"value\": \"host.com\"\n },\n \"http3_enabled\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignore_cookie\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignoreQueryString\": {\n \"enabled\": true,\n \"value\": false\n },\n \"image_stack\": {\n \"enabled\": true,\n \"avif_enabled\": true,\n \"webp_enabled\": false,\n \"quality\": 80,\n \"png_lossless\": true\n },\n \"ip_address_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"192.168.1.100/32\"\n ]\n },\n \"limit_bandwidth\": {\n \"enabled\": true,\n \"limit_type\": \"static\",\n \"speed\": 100,\n \"buffer\": 200\n },\n \"network_error_logging\": {\n \"enabled\": true,\n \"value\": true\n },\n \"proxy_cache_key\": {\n \"enabled\": true,\n \"value\": \"$scheme$uri\"\n },\n \"proxy_cache_methods_set\": {\n \"enabled\": true,\n \"value\": false\n },\n \"proxy_connect_timeout\": {\n \"enabled\": true,\n \"value\": \"4s\"\n },\n \"proxy_read_timeout\": {\n \"enabled\": true,\n \"value\": \"10s\"\n },\n \"query_params_blacklist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"blacklisted\",\n \"query\"\n ]\n },\n \"query_params_whitelist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"whitelisted\",\n \"query\"\n ]\n },\n \"query_string_forwarding\": {\n \"enabled\": true,\n \"forward_from_file_types\": [\n \"m3u8\",\n \"mpd\"\n ],\n \"forward_to_file_types\": [\n \"ts\",\n \"mp4\"\n ],\n \"forward_only_keys\": [\n \"auth_token\",\n \"session_id\"\n ],\n \"forward_except_keys\": [\n \"debug_info\"\n ]\n },\n \"redirect_http_to_https\": {\n \"enabled\": true,\n \"value\": true\n },\n \"redirect_https_to_http\": {\n \"enabled\": false,\n \"value\": true\n },\n \"referrer_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"example.com\",\n \"*.example.net\"\n ]\n },\n \"response_headers_hiding_policy\": {\n \"enabled\": true,\n \"mode\": \"hide\",\n \"excepted\": [\n \"my-header\"\n ]\n },\n \"rewrite\": {\n \"enabled\": true,\n \"body\": \"/(.*) /additional_path/$1\",\n \"flag\": \"break\"\n },\n \"secure_key\": {\n \"enabled\": true,\n \"key\": \"secretkey\",\n \"type\": 2\n },\n \"slice\": {\n \"enabled\": true,\n \"value\": true\n },\n \"sni\": {\n \"enabled\": true,\n \"sni_type\": \"custom\",\n \"custom_hostname\": \"custom.example.com\"\n },\n \"stale\": {\n \"enabled\": true,\n \"value\": [\n \"http_404\",\n \"http_500\"\n ]\n },\n \"static_response_headers\": {\n \"enabled\": true,\n \"value\": [\n {\n \"name\": \"X-Example\",\n \"value\": [\n \"Value_1\"\n ],\n \"always\": true\n },\n {\n \"name\": \"X-Example-Multiple\",\n \"value\": [\n \"Value_1\",\n \"Value_2\",\n \"Value_3\"\n ],\n \"always\": false\n }\n ]\n },\n \"staticHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"X-Example\": \"Value_1\",\n \"X-Example-Multiple\": [\n \"Value_2\",\n \"Value_3\"\n ]\n }\n },\n \"staticRequestHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"Header-One\": \"Value 1\",\n \"Header-Two\": \"Value 2\"\n }\n },\n \"tls_versions\": {\n \"enabled\": true,\n \"value\": [\n \"SSLv3\",\n \"TLSv1.3\"\n ]\n },\n \"use_default_le_chain\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_dns01_le_challenge\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_rsa_le_cert\": {\n \"enabled\": true,\n \"value\": true\n },\n \"user_agent_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"UserAgent Value\",\n \"~*.*bot.*\",\n \"\"\n ]\n },\n \"waap\": {\n \"enabled\": true,\n \"value\": true\n },\n \"websockets\": {\n \"enabled\": true,\n \"value\": true\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cdn/resources")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cname\": \"cdn.site.com\",\n \"originGroup\": 132,\n \"origin\": \"example.com\",\n \"active\": true,\n \"originProtocol\": \"HTTPS\",\n \"name\": \"Resource for images\",\n \"description\": \"My resource\",\n \"secondaryHostnames\": [\n \"first.example.com\",\n \"second.example.com\"\n ],\n \"sslEnabled\": false,\n \"sslData\": 192,\n \"proxy_ssl_enabled\": false,\n \"proxy_ssl_ca\": null,\n \"proxy_ssl_data\": null,\n \"primary_resource\": null,\n \"waap_api_domain_enabled\": true,\n \"options\": {\n \"allowedHttpMethods\": {\n \"enabled\": true,\n \"value\": [\n \"GET\",\n \"POST\"\n ]\n },\n \"brotli_compression\": {\n \"enabled\": true,\n \"value\": [\n \"text/html\",\n \"text/plain\"\n ]\n },\n \"browser_cache_settings\": {\n \"enabled\": true,\n \"value\": \"3600s\"\n },\n \"cache_http_headers\": {\n \"enabled\": false,\n \"value\": [\n \"vary\",\n \"content-length\",\n \"last-modified\",\n \"connection\",\n \"accept-ranges\",\n \"content-type\",\n \"content-encoding\",\n \"etag\",\n \"cache-control\",\n \"expires\",\n \"keep-alive\",\n \"server\"\n ]\n },\n \"cors\": {\n \"enabled\": true,\n \"value\": [\n \"domain.com\",\n \"domain2.com\"\n ],\n \"always\": true\n },\n \"country_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"GB\",\n \"DE\"\n ]\n },\n \"disable_cache\": {\n \"enabled\": true,\n \"value\": false\n },\n \"disable_proxy_force_ranges\": {\n \"enabled\": true,\n \"value\": true\n },\n \"edge_cache_settings\": {\n \"enabled\": true,\n \"value\": \"43200s\",\n \"custom_values\": {\n \"100\": \"43200s\"\n }\n },\n \"fastedge\": {\n \"enabled\": true,\n \"on_request_headers\": {\n \"enabled\": true,\n \"app_id\": \"1001\",\n \"interrupt_on_error\": true\n }\n },\n \"fetch_compressed\": {\n \"enabled\": true,\n \"value\": false\n },\n \"follow_origin_redirect\": {\n \"enabled\": true,\n \"codes\": [\n 302,\n 308\n ]\n },\n \"force_return\": {\n \"enabled\": true,\n \"code\": 301,\n \"body\": \"http://example.com/redirect_address\",\n \"time_interval\": {\n \"start_time\": \"09:00\",\n \"end_time\": \"20:00\",\n \"time_zone\": \"CET\"\n }\n },\n \"forward_host_header\": {\n \"enabled\": false,\n \"value\": false\n },\n \"grpc_passthrough\": {\n \"enabled\": true,\n \"value\": true\n },\n \"gzipOn\": {\n \"enabled\": true,\n \"value\": true\n },\n \"hostHeader\": {\n \"enabled\": true,\n \"value\": \"host.com\"\n },\n \"http3_enabled\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignore_cookie\": {\n \"enabled\": true,\n \"value\": true\n },\n \"ignoreQueryString\": {\n \"enabled\": true,\n \"value\": false\n },\n \"image_stack\": {\n \"enabled\": true,\n \"avif_enabled\": true,\n \"webp_enabled\": false,\n \"quality\": 80,\n \"png_lossless\": true\n },\n \"ip_address_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"192.168.1.100/32\"\n ]\n },\n \"limit_bandwidth\": {\n \"enabled\": true,\n \"limit_type\": \"static\",\n \"speed\": 100,\n \"buffer\": 200\n },\n \"network_error_logging\": {\n \"enabled\": true,\n \"value\": true\n },\n \"proxy_cache_key\": {\n \"enabled\": true,\n \"value\": \"$scheme$uri\"\n },\n \"proxy_cache_methods_set\": {\n \"enabled\": true,\n \"value\": false\n },\n \"proxy_connect_timeout\": {\n \"enabled\": true,\n \"value\": \"4s\"\n },\n \"proxy_read_timeout\": {\n \"enabled\": true,\n \"value\": \"10s\"\n },\n \"query_params_blacklist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"blacklisted\",\n \"query\"\n ]\n },\n \"query_params_whitelist\": {\n \"enabled\": true,\n \"value\": [\n \"some\",\n \"whitelisted\",\n \"query\"\n ]\n },\n \"query_string_forwarding\": {\n \"enabled\": true,\n \"forward_from_file_types\": [\n \"m3u8\",\n \"mpd\"\n ],\n \"forward_to_file_types\": [\n \"ts\",\n \"mp4\"\n ],\n \"forward_only_keys\": [\n \"auth_token\",\n \"session_id\"\n ],\n \"forward_except_keys\": [\n \"debug_info\"\n ]\n },\n \"redirect_http_to_https\": {\n \"enabled\": true,\n \"value\": true\n },\n \"redirect_https_to_http\": {\n \"enabled\": false,\n \"value\": true\n },\n \"referrer_acl\": {\n \"enabled\": true,\n \"policy_type\": \"deny\",\n \"excepted_values\": [\n \"example.com\",\n \"*.example.net\"\n ]\n },\n \"response_headers_hiding_policy\": {\n \"enabled\": true,\n \"mode\": \"hide\",\n \"excepted\": [\n \"my-header\"\n ]\n },\n \"rewrite\": {\n \"enabled\": true,\n \"body\": \"/(.*) /additional_path/$1\",\n \"flag\": \"break\"\n },\n \"secure_key\": {\n \"enabled\": true,\n \"key\": \"secretkey\",\n \"type\": 2\n },\n \"slice\": {\n \"enabled\": true,\n \"value\": true\n },\n \"sni\": {\n \"enabled\": true,\n \"sni_type\": \"custom\",\n \"custom_hostname\": \"custom.example.com\"\n },\n \"stale\": {\n \"enabled\": true,\n \"value\": [\n \"http_404\",\n \"http_500\"\n ]\n },\n \"static_response_headers\": {\n \"enabled\": true,\n \"value\": [\n {\n \"name\": \"X-Example\",\n \"value\": [\n \"Value_1\"\n ],\n \"always\": true\n },\n {\n \"name\": \"X-Example-Multiple\",\n \"value\": [\n \"Value_1\",\n \"Value_2\",\n \"Value_3\"\n ],\n \"always\": false\n }\n ]\n },\n \"staticHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"X-Example\": \"Value_1\",\n \"X-Example-Multiple\": [\n \"Value_2\",\n \"Value_3\"\n ]\n }\n },\n \"staticRequestHeaders\": {\n \"enabled\": true,\n \"value\": {\n \"Header-One\": \"Value 1\",\n \"Header-Two\": \"Value 2\"\n }\n },\n \"tls_versions\": {\n \"enabled\": true,\n \"value\": [\n \"SSLv3\",\n \"TLSv1.3\"\n ]\n },\n \"use_default_le_chain\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_dns01_le_challenge\": {\n \"enabled\": true,\n \"value\": true\n },\n \"use_rsa_le_cert\": {\n \"enabled\": true,\n \"value\": true\n },\n \"user_agent_acl\": {\n \"enabled\": true,\n \"policy_type\": \"allow\",\n \"excepted_values\": [\n \"UserAgent Value\",\n \"~*.*bot.*\",\n \"\"\n ]\n },\n \"waap\": {\n \"enabled\": true,\n \"value\": true\n },\n \"websockets\": {\n \"enabled\": true,\n \"value\": true\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"id": 220,
"cname": "cdn.site.com",
"active": true,
"enabled": true,
"status": "active",
"deleted": false,
"client": 170,
"name": "Resource for images",
"description": "My resource",
"created": "2017-06-10T10:30:04.954354Z",
"updated": "2017-06-14T05:05:42.065221Z",
"originGroup": 132,
"originGroup_name": "Resource origin group",
"originProtocol": "HTTPS",
"secondaryHostnames": [
"first.example.com",
"second.example.com"
],
"shielded": false,
"shield_dc": null,
"shield_enabled": false,
"shield_routing_map": null,
"sslEnabled": false,
"sslData": 192,
"proxy_ssl_enabled": false,
"proxy_ssl_ca": null,
"proxy_ssl_data": null,
"preset_applied": false,
"vp_enabled": false,
"full_custom_enabled": false,
"can_purge_by_urls": false,
"suspend_date": null,
"suspended": false,
"primary_resource": null,
"is_primary": null,
"waap_domain_id": "123",
"rules": [],
"options": {
"allowedHttpMethods": {
"enabled": true,
"value": [
"GET",
"POST"
]
},
"brotli_compression": {
"enabled": true,
"value": [
"text/html",
"text/plain"
]
},
"browser_cache_settings": {
"enabled": true,
"value": "3600s"
},
"cache_http_headers": {
"enabled": false,
"value": [
"vary",
"content-length",
"last-modified",
"connection",
"accept-ranges",
"content-type",
"content-encoding",
"etag",
"cache-control",
"expires",
"keep-alive",
"server"
]
},
"cors": {
"enabled": true,
"value": [
"domain.com",
"domain2.com"
],
"always": true
},
"country_acl": {
"enabled": true,
"policy_type": "allow",
"excepted_values": [
"GB",
"DE"
]
},
"disable_cache": {
"enabled": true,
"value": false
},
"disable_proxy_force_ranges": {
"enabled": true,
"value": true
},
"edge_cache_settings": {
"enabled": true,
"value": "43200s",
"custom_values": {
"100": "43200s"
}
},
"fastedge": {
"enabled": true,
"on_request_headers": {
"enabled": true,
"app_id": "1001",
"interrupt_on_error": true
}
},
"fetch_compressed": {
"enabled": true,
"value": false
},
"follow_origin_redirect": {
"enabled": true,
"codes": [
302,
308
]
},
"force_return": {
"enabled": true,
"code": 301,
"body": "http://example.com/redirect_address",
"time_interval": {
"start_time": "09:00",
"end_time": "20:00",
"time_zone": "CET"
}
},
"forward_host_header": {
"enabled": false,
"value": false
},
"grpc_passthrough": {
"enabled": true,
"value": true
},
"gzipOn": {
"enabled": true,
"value": true
},
"hostHeader": {
"enabled": true,
"value": "host.com"
},
"http3_enabled": {
"enabled": true,
"value": true
},
"ignore_cookie": {
"enabled": true,
"value": true
},
"ignoreQueryString": {
"enabled": true,
"value": false
},
"image_stack": {
"enabled": true,
"avif_enabled": true,
"webp_enabled": false,
"quality": 80,
"png_lossless": true
},
"ip_address_acl": {
"enabled": true,
"policy_type": "deny",
"excepted_values": [
"192.168.1.100/32"
]
},
"limit_bandwidth": {
"enabled": true,
"limit_type": "static",
"speed": 100,
"buffer": 200
},
"network_error_logging": {
"enabled": true,
"value": true
},
"proxy_cache_key": {
"enabled": true,
"value": "$scheme$uri"
},
"proxy_cache_methods_set": {
"enabled": true,
"value": false
},
"proxy_connect_timeout": {
"enabled": true,
"value": "4s"
},
"proxy_read_timeout": {
"enabled": true,
"value": "10s"
},
"query_params_blacklist": {
"enabled": true,
"value": [
"some",
"blacklisted",
"query"
]
},
"query_params_whitelist": {
"enabled": true,
"value": [
"some",
"whitelisted",
"query"
]
},
"query_string_forwarding": {
"enabled": true,
"forward_from_file_types": [
"m3u8",
"mpd"
],
"forward_to_file_types": [
"ts",
"mp4"
],
"forward_only_keys": [
"auth_token",
"session_id"
],
"forward_except_keys": [
"debug_info"
]
},
"redirect_http_to_https": {
"enabled": true,
"value": true
},
"redirect_https_to_http": {
"enabled": false,
"value": true
},
"referrer_acl": {
"enabled": true,
"policy_type": "deny",
"excepted_values": [
"example.com",
"*.example.net"
]
},
"response_headers_hiding_policy": {
"enabled": true,
"mode": "hide",
"excepted": [
"my-header"
]
},
"rewrite": {
"enabled": true,
"body": "/(.*) /additional_path/$1",
"flag": "break"
},
"secure_key": {
"enabled": true,
"key": "secretkey",
"type": 2
},
"slice": {
"enabled": true,
"value": true
},
"sni": {
"enabled": true,
"sni_type": "custom",
"custom_hostname": "custom.example.com"
},
"stale": {
"enabled": true,
"value": [
"http_404",
"http_500"
]
},
"static_response_headers": {
"enabled": true,
"value": [
{
"name": "X-Example",
"value": [
"Value_1"
],
"always": true
},
{
"name": "X-Example-Multiple",
"value": [
"Value_1",
"Value_2",
"Value_3"
],
"always": false
}
]
},
"staticHeaders": {
"enabled": true,
"value": {
"X-Example": "Value_1",
"X-Example-Multiple": [
"Value_2",
"Value_3"
]
}
},
"staticRequestHeaders": {
"enabled": true,
"value": {
"Header-One": "Value 1",
"Header-Two": "Value 2"
}
},
"tls_versions": {
"enabled": true,
"value": [
"SSLv3",
"TLSv1.3"
]
},
"use_default_le_chain": {
"enabled": true,
"value": true
},
"use_dns01_le_challenge": {
"enabled": true,
"value": true
},
"use_rsa_le_cert": {
"enabled": true,
"value": true
},
"user_agent_acl": {
"enabled": true,
"policy_type": "allow",
"excepted_values": [
"UserAgent Value",
"~*.*bot.*",
""
]
},
"waap": {
"enabled": true,
"value": true
},
"websockets": {
"enabled": true,
"value": true
}
}
}{
"errors": {
"cname": [
"CNAME cdn.example.com already exists. Try another CNAME or contact support."
]
}
}Authorizations
API key for authentication. Make sure to include the word apikey, followed by a single space and then your token.
Example: apikey 1234$abcdef
Body
Delivery domains that will be used for content delivery through a CDN.
Delivery domains should be added to your DNS settings.
"cdn.site.com"
Origin group ID with which the CDN resource is associated.
Exactly one of origin or originGroup must be provided during resource creation.
132
IP address or domain name of the origin and the port, if custom port is used.
Exactly one of origin or originGroup must be provided during resource creation.
"example.com"
Enables or disables a CDN resource.
Possible values:
- true - CDN resource is active. Content is being delivered.
- false - CDN resource is deactivated. Content is not being delivered.
true
Protocol used by CDN servers to request content from an origin source.
Possible values:
- HTTPS - CDN servers will connect to the origin via HTTPS.
- HTTP - CDN servers will connect to the origin via HTTP.
- MATCH - connection protocol will be chosen automatically (content on the origin source should be available for the CDN both through HTTP and HTTPS).
If protocol is not specified, HTTP is used to connect to an origin server.
HTTP, HTTPS, MATCH "HTTPS"
CDN resource name.
"Resource for images"
Optional comment describing the CDN resource.
"My resource"
Additional delivery domains (CNAMEs) that will be used to deliver content via the CDN.
Up to ten additional CNAMEs are possible.
["first.example.com", "second.example.com"]
Defines whether the HTTPS protocol enabled for content delivery.
Possible values:
- true - HTTPS is enabled.
- false - HTTPS is disabled.
false
ID of the SSL certificate linked to the CDN resource.
Can be used only with "sslEnabled": true.
192
Enables or disables SSL certificate validation of the origin server before completing any connection.
Possible values:
- true - Origin SSL certificate validation is enabled.
- false - Origin SSL certificate validation is disabled.
false
ID of the trusted CA certificate used to verify an origin.
It can be used only with "proxy_ssl_enabled": true.
null
ID of the SSL certificate used to verify an origin.
It can be used only with "proxy_ssl_enabled": true.
null
ID of the main CDN resource which has a shared caching zone with a reserve CDN resource.
If the parameter is not empty, then the current CDN resource is the reserve. You cannot change some options, create rules, set up origin shielding, or use the reserve CDN resource for Streaming.
null
Defines whether the associated WAAP Domain is identified as an API Domain.
Possible values:
- true - The associated WAAP Domain is designated as an API Domain.
- false - The associated WAAP Domain is not designated as an API Domain.
List of options that can be configured for the CDN resource.
In case of null value the option is not added to the CDN resource.
Option may inherit its value from the global account settings.
Show child attributes
Show child attributes
Response
Successful.
CDN resource ID.
220
Delivery domains that will be used for content delivery through a CDN.
Delivery domains should be added to your DNS settings.
"cdn.site.com"
Enables or disables a CDN resource.
Possible values:
- true - CDN resource is active. Content is being delivered.
- false - CDN resource is deactivated. Content is not being delivered.
true
Enables or disables a CDN resource change by a user.
Possible values:
- true - CDN resource is enabled and can be changed. Content can be delivered.
- false - CDN resource is disabled and cannot be changed. Content can not be delivered.
true
CDN resource status.
Possible values:
- active - CDN resource is active. Content is available to users.
- suspended - CDN resource is suspended. Content is not available to users.
- processed - CDN resource has recently been created and is currently being processed. It will take about fifteen minutes to propagate it to all locations.
- deleted - CDN resource is deleted.
active, suspended, processed, deleted "active"
Defines whether CDN resource has been deleted.
Possible values:
- true - CDN resource is deleted.
- false - CDN resource is not deleted.
false
ID of an account to which the CDN resource belongs.
170
CDN resource name.
"Resource for images"
Optional comment describing the CDN resource.
"My resource"
Date of CDN resource creation.
"2017-06-10T10:30:04.954354Z"
Date of the last CDN resource update.
"2017-06-14T05:05:42.065221Z"
Origin group ID with which the CDN resource is associated.
132
Origin group name.
"Resource origin group"
Protocol used by CDN servers to request content from an origin source.
Possible values:
- HTTPS - CDN servers will connect to the origin via HTTPS.
- HTTP - CDN servers will connect to the origin via HTTP.
- MATCH - connection protocol will be chosen automatically (content on the origin source should be available for the CDN both through HTTP and HTTPS).
If protocol is not specified, HTTP is used to connect to an origin server.
HTTP, HTTPS, MATCH "HTTPS"
Additional delivery domains (CNAMEs) that will be used to deliver content via the CDN.
Up to ten additional CNAMEs are possible.
["first.example.com", "second.example.com"]
Defines whether origin shielding feature is enabled for the resource.
Possible values:
- true - Origin shielding is enabled.
- false - Origin shielding is disabled.
false
Name of the origin shielding location data center.
Parameter returns null if origin shielding is disabled.
null
Defines whether origin shield is active and working for the CDN resource.
Possible values:
- true - Origin shield is active.
- false - Origin shield is not active.
false
Defines whether the origin shield with a dynamic location is enabled for the CDN resource.
To manage origin shielding, you must contact customer support.
null
Defines whether the HTTPS protocol enabled for content delivery.
Possible values:
- true - HTTPS is enabled.
- false - HTTPS is disabled.
false
ID of the SSL certificate linked to the CDN resource.
Can be used only with "sslEnabled": true.
192
Enables or disables SSL certificate validation of the origin server before completing any connection.
Possible values:
- true - Origin SSL certificate validation is enabled.
- false - Origin SSL certificate validation is disabled.
false
ID of the trusted CA certificate used to verify an origin.
It can be used only with "proxy_ssl_enabled": true.
null
ID of the SSL certificate used to verify an origin.
It can be used only with "proxy_ssl_enabled": true.
null
Defines whether the CDN resource has a preset applied.
Possible values:
- true - CDN resource has a preset applied. CDN resource options included in the preset cannot be edited.
- false - CDN resource does not have a preset applied.
false
Defines whether the CDN resource is integrated with the Streaming Platform.
Possible values:
- true - CDN resource is configured for Streaming Platform. Changing resource settings can affect its operation.
- false - CDN resource is not configured for Streaming Platform.
false
Defines whether the CDN resource has a custom configuration.
Possible values:
- true - CDN resource has a custom configuration. You cannot change resource settings, except for the SSL certificate. To change other settings, contact technical support.
- false - CDN resource has a regular configuration. You can change CDN resource settings.
false
Defines whether the CDN resource can be used for purge by URLs feature.
It's available only in case the CDN resource has enabled ignore_vary_header option.
false
Date when the CDN resource was suspended automatically if there is no traffic on it for 90 days.
Not specified if the resource was not stopped due to lack of traffic.
null
Defines whether the CDN resource has been automatically suspended because there was no traffic on it for 90 days.
Possible values:
- true - CDN resource is currently automatically suspended.
- false - CDN resource is not automatically suspended.
You can enable CDN resource using the active field. If there is no traffic on the CDN resource within seven days following activation, it will be suspended again.
To avoid CDN resource suspension due to no traffic, contact technical support.
false
ID of the main CDN resource which has a shared caching zone with a reserve CDN resource.
If the parameter is not empty, then the current CDN resource is the reserve. You cannot change some options, create rules, set up origin shielding, or use the reserve CDN resource for Streaming.
null
Defines whether a CDN resource has a cache zone shared with other CDN resources.
Possible values:
- true - CDN resource is main and has a shared caching zone with other CDN resources, which are called reserve.
- false - CDN resource is reserve and it has a shared caching zone with the main CDN resource. You cannot change some options, create rules, set up origin shielding and use the reserve resource for Streaming.
- null - CDN resource does not have a shared cache zone.
The main CDN resource is specified in the primary_resource field. It cannot be suspended unless all related reserve CDN resources are suspended.
null
The ID of the associated WAAP domain.
"123"
Rules configured for the CDN resource.
[]
List of options that can be configured for the CDN resource.
In case of null value the option is not added to the CDN resource.
Option may inherit its value from the global account settings.
Show child attributes
Show child attributes
Was this page helpful?