Create Distribution
curl --request POST \
--url https://api.tenbyte.io/v1/distributions \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
"{\n \"name\": \"chaldal new\",\n \"type\": \"custom\",\n \"domain_type\": \"system\",\n \"description\": \"test\",\n \"cache_strategy\": \"vod\",\n \"host_header\": \"cdn233.tenbyte.com.my\",\n \"origin\": {\n \"name\": \"chaldal\",\n \"type\": \"s3\",\n \"endpoint\": \"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\",\n \"bucket\": \"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\",\n \"region\": \"ap-southeast-2\",\n \"access_key\": \"YOUR_ACCESS_KEY\",\n \"secret_key\": \"YOUR_SECRET_KEY\",\n }\n}"
'import requests
url = "https://api.tenbyte.io/v1/distributions"
payload = "{
\"name\": \"chaldal new\",
\"type\": \"custom\",
\"domain_type\": \"system\",
\"description\": \"test\",
\"cache_strategy\": \"vod\",
\"host_header\": \"cdn233.tenbyte.com.my\",
\"origin\": {
\"name\": \"chaldal\",
\"type\": \"s3\",
\"endpoint\": \"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\",
\"bucket\": \"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\",
\"region\": \"ap-southeast-2\",
\"access_key\": \"YOUR_ACCESS_KEY\",
\"secret_key\": \"YOUR_SECRET_KEY\",
}
}"
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify('{\n "name": "chaldal new",\n "type": "custom",\n "domain_type": "system",\n "description": "test",\n "cache_strategy": "vod",\n "host_header": "cdn233.tenbyte.com.my",\n "origin": {\n "name": "chaldal",\n "type": "s3",\n "endpoint": "https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com",\n "bucket": "3aa3af49-9bdb-498c-ad02-3a0d6a865aea",\n "region": "ap-southeast-2",\n "access_key": "YOUR_ACCESS_KEY",\n "secret_key": "YOUR_SECRET_KEY",\n }\n}')
};
fetch('https://api.tenbyte.io/v1/distributions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.tenbyte.io/v1/distributions"
payload := strings.NewReader("\"{\\n \\\"name\\\": \\\"chaldal new\\\",\\n \\\"type\\\": \\\"custom\\\",\\n \\\"domain_type\\\": \\\"system\\\",\\n \\\"description\\\": \\\"test\\\",\\n \\\"cache_strategy\\\": \\\"vod\\\",\\n \\\"host_header\\\": \\\"cdn233.tenbyte.com.my\\\",\\n \\\"origin\\\": {\\n \\\"name\\\": \\\"chaldal\\\",\\n \\\"type\\\": \\\"s3\\\",\\n \\\"endpoint\\\": \\\"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\\\",\\n \\\"bucket\\\": \\\"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\\\",\\n \\\"region\\\": \\\"ap-southeast-2\\\",\\n \\\"access_key\\\": \\\"YOUR_ACCESS_KEY\\\",\\n \\\"secret_key\\\": \\\"YOUR_SECRET_KEY\\\",\\n }\\n}\"")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<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))
}require 'uri'
require 'net/http'
url = URI("https://api.tenbyte.io/v1/distributions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "\"{\\n \\\"name\\\": \\\"chaldal new\\\",\\n \\\"type\\\": \\\"custom\\\",\\n \\\"domain_type\\\": \\\"system\\\",\\n \\\"description\\\": \\\"test\\\",\\n \\\"cache_strategy\\\": \\\"vod\\\",\\n \\\"host_header\\\": \\\"cdn233.tenbyte.com.my\\\",\\n \\\"origin\\\": {\\n \\\"name\\\": \\\"chaldal\\\",\\n \\\"type\\\": \\\"s3\\\",\\n \\\"endpoint\\\": \\\"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\\\",\\n \\\"bucket\\\": \\\"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\\\",\\n \\\"region\\\": \\\"ap-southeast-2\\\",\\n \\\"access_key\\\": \\\"YOUR_ACCESS_KEY\\\",\\n \\\"secret_key\\\": \\\"YOUR_SECRET_KEY\\\",\\n }\\n}\""
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.post("https://api.tenbyte.io/v1/distributions")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("\"{\\n \\\"name\\\": \\\"chaldal new\\\",\\n \\\"type\\\": \\\"custom\\\",\\n \\\"domain_type\\\": \\\"system\\\",\\n \\\"description\\\": \\\"test\\\",\\n \\\"cache_strategy\\\": \\\"vod\\\",\\n \\\"host_header\\\": \\\"cdn233.tenbyte.com.my\\\",\\n \\\"origin\\\": {\\n \\\"name\\\": \\\"chaldal\\\",\\n \\\"type\\\": \\\"s3\\\",\\n \\\"endpoint\\\": \\\"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\\\",\\n \\\"bucket\\\": \\\"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\\\",\\n \\\"region\\\": \\\"ap-southeast-2\\\",\\n \\\"access_key\\\": \\\"YOUR_ACCESS_KEY\\\",\\n \\\"secret_key\\\": \\\"YOUR_SECRET_KEY\\\",\\n }\\n}\"")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.tenbyte.io/v1/distributions");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("X-API-Key", "<api-key>");
request.AddJsonBody("\"{\\n \\\"name\\\": \\\"chaldal new\\\",\\n \\\"type\\\": \\\"custom\\\",\\n \\\"domain_type\\\": \\\"system\\\",\\n \\\"description\\\": \\\"test\\\",\\n \\\"cache_strategy\\\": \\\"vod\\\",\\n \\\"host_header\\\": \\\"cdn233.tenbyte.com.my\\\",\\n \\\"origin\\\": {\\n \\\"name\\\": \\\"chaldal\\\",\\n \\\"type\\\": \\\"s3\\\",\\n \\\"endpoint\\\": \\\"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\\\",\\n \\\"bucket\\\": \\\"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\\\",\\n \\\"region\\\": \\\"ap-southeast-2\\\",\\n \\\"access_key\\\": \\\"YOUR_ACCESS_KEY\\\",\\n \\\"secret_key\\\": \\\"YOUR_SECRET_KEY\\\",\\n }\\n}\"", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.tenbyte.io/v1/distributions",
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('{
"name": "chaldal new",
"type": "custom",
"domain_type": "system",
"description": "test",
"cache_strategy": "vod",
"host_header": "cdn233.tenbyte.com.my",
"origin": {
"name": "chaldal",
"type": "s3",
"endpoint": "https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com",
"bucket": "3aa3af49-9bdb-498c-ad02-3a0d6a865aea",
"region": "ap-southeast-2",
"access_key": "YOUR_ACCESS_KEY",
"secret_key": "YOUR_SECRET_KEY",
}
}'),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{}Distributions
Create Distribution
Creates a new CDN distribution for a customer. This API allows configuration of caching behavior, domain mapping, and origin server settings.
POST
/
distributions
Create Distribution
curl --request POST \
--url https://api.tenbyte.io/v1/distributions \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
"{\n \"name\": \"chaldal new\",\n \"type\": \"custom\",\n \"domain_type\": \"system\",\n \"description\": \"test\",\n \"cache_strategy\": \"vod\",\n \"host_header\": \"cdn233.tenbyte.com.my\",\n \"origin\": {\n \"name\": \"chaldal\",\n \"type\": \"s3\",\n \"endpoint\": \"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\",\n \"bucket\": \"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\",\n \"region\": \"ap-southeast-2\",\n \"access_key\": \"YOUR_ACCESS_KEY\",\n \"secret_key\": \"YOUR_SECRET_KEY\",\n }\n}"
'import requests
url = "https://api.tenbyte.io/v1/distributions"
payload = "{
\"name\": \"chaldal new\",
\"type\": \"custom\",
\"domain_type\": \"system\",
\"description\": \"test\",
\"cache_strategy\": \"vod\",
\"host_header\": \"cdn233.tenbyte.com.my\",
\"origin\": {
\"name\": \"chaldal\",
\"type\": \"s3\",
\"endpoint\": \"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\",
\"bucket\": \"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\",
\"region\": \"ap-southeast-2\",
\"access_key\": \"YOUR_ACCESS_KEY\",
\"secret_key\": \"YOUR_SECRET_KEY\",
}
}"
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify('{\n "name": "chaldal new",\n "type": "custom",\n "domain_type": "system",\n "description": "test",\n "cache_strategy": "vod",\n "host_header": "cdn233.tenbyte.com.my",\n "origin": {\n "name": "chaldal",\n "type": "s3",\n "endpoint": "https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com",\n "bucket": "3aa3af49-9bdb-498c-ad02-3a0d6a865aea",\n "region": "ap-southeast-2",\n "access_key": "YOUR_ACCESS_KEY",\n "secret_key": "YOUR_SECRET_KEY",\n }\n}')
};
fetch('https://api.tenbyte.io/v1/distributions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.tenbyte.io/v1/distributions"
payload := strings.NewReader("\"{\\n \\\"name\\\": \\\"chaldal new\\\",\\n \\\"type\\\": \\\"custom\\\",\\n \\\"domain_type\\\": \\\"system\\\",\\n \\\"description\\\": \\\"test\\\",\\n \\\"cache_strategy\\\": \\\"vod\\\",\\n \\\"host_header\\\": \\\"cdn233.tenbyte.com.my\\\",\\n \\\"origin\\\": {\\n \\\"name\\\": \\\"chaldal\\\",\\n \\\"type\\\": \\\"s3\\\",\\n \\\"endpoint\\\": \\\"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\\\",\\n \\\"bucket\\\": \\\"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\\\",\\n \\\"region\\\": \\\"ap-southeast-2\\\",\\n \\\"access_key\\\": \\\"YOUR_ACCESS_KEY\\\",\\n \\\"secret_key\\\": \\\"YOUR_SECRET_KEY\\\",\\n }\\n}\"")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<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))
}require 'uri'
require 'net/http'
url = URI("https://api.tenbyte.io/v1/distributions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "\"{\\n \\\"name\\\": \\\"chaldal new\\\",\\n \\\"type\\\": \\\"custom\\\",\\n \\\"domain_type\\\": \\\"system\\\",\\n \\\"description\\\": \\\"test\\\",\\n \\\"cache_strategy\\\": \\\"vod\\\",\\n \\\"host_header\\\": \\\"cdn233.tenbyte.com.my\\\",\\n \\\"origin\\\": {\\n \\\"name\\\": \\\"chaldal\\\",\\n \\\"type\\\": \\\"s3\\\",\\n \\\"endpoint\\\": \\\"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\\\",\\n \\\"bucket\\\": \\\"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\\\",\\n \\\"region\\\": \\\"ap-southeast-2\\\",\\n \\\"access_key\\\": \\\"YOUR_ACCESS_KEY\\\",\\n \\\"secret_key\\\": \\\"YOUR_SECRET_KEY\\\",\\n }\\n}\""
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.post("https://api.tenbyte.io/v1/distributions")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("\"{\\n \\\"name\\\": \\\"chaldal new\\\",\\n \\\"type\\\": \\\"custom\\\",\\n \\\"domain_type\\\": \\\"system\\\",\\n \\\"description\\\": \\\"test\\\",\\n \\\"cache_strategy\\\": \\\"vod\\\",\\n \\\"host_header\\\": \\\"cdn233.tenbyte.com.my\\\",\\n \\\"origin\\\": {\\n \\\"name\\\": \\\"chaldal\\\",\\n \\\"type\\\": \\\"s3\\\",\\n \\\"endpoint\\\": \\\"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\\\",\\n \\\"bucket\\\": \\\"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\\\",\\n \\\"region\\\": \\\"ap-southeast-2\\\",\\n \\\"access_key\\\": \\\"YOUR_ACCESS_KEY\\\",\\n \\\"secret_key\\\": \\\"YOUR_SECRET_KEY\\\",\\n }\\n}\"")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.tenbyte.io/v1/distributions");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("X-API-Key", "<api-key>");
request.AddJsonBody("\"{\\n \\\"name\\\": \\\"chaldal new\\\",\\n \\\"type\\\": \\\"custom\\\",\\n \\\"domain_type\\\": \\\"system\\\",\\n \\\"description\\\": \\\"test\\\",\\n \\\"cache_strategy\\\": \\\"vod\\\",\\n \\\"host_header\\\": \\\"cdn233.tenbyte.com.my\\\",\\n \\\"origin\\\": {\\n \\\"name\\\": \\\"chaldal\\\",\\n \\\"type\\\": \\\"s3\\\",\\n \\\"endpoint\\\": \\\"https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com\\\",\\n \\\"bucket\\\": \\\"3aa3af49-9bdb-498c-ad02-3a0d6a865aea\\\",\\n \\\"region\\\": \\\"ap-southeast-2\\\",\\n \\\"access_key\\\": \\\"YOUR_ACCESS_KEY\\\",\\n \\\"secret_key\\\": \\\"YOUR_SECRET_KEY\\\",\\n }\\n}\"", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.tenbyte.io/v1/distributions",
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('{
"name": "chaldal new",
"type": "custom",
"domain_type": "system",
"description": "test",
"cache_strategy": "vod",
"host_header": "cdn233.tenbyte.com.my",
"origin": {
"name": "chaldal",
"type": "s3",
"endpoint": "https://3aa3af49-9bdb-498c-ad02-3a0d6a865aea.s3.ap-southeast-1.wasabisys.com",
"bucket": "3aa3af49-9bdb-498c-ad02-3a0d6a865aea",
"region": "ap-southeast-2",
"access_key": "YOUR_ACCESS_KEY",
"secret_key": "YOUR_SECRET_KEY",
}
}'),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{}Authorizations
Body
application/json
A human-readable name for the CDN distribution.
The type of domain: custom (user-provided CNAME) or shared.
Available options:
system, custom The custom domain that clients will use (e.g., cdn.example.com).
Strategy for caching: vod, live, or static.
Host header to send to the origin server.
Configuration for the origin server.
Show child attributes
Show child attributes
Response
200 - application/json
The response is of type object.
⌘I