Cache Status Analytics
Returns traffic metrics broken down by cache status for the selected date range.
curl -X POST "https://api.5centscdn.com/v2/analytics/traffic/cache" \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"resource_type": "push",
"resource_hashes": [
"abc12hash",
"def34hash"
],
"granularity": "1h"
}'
import requests
import json
url = "https://api.5centscdn.com/v2/analytics/traffic/cache"
headers = {
"Content-Type": "application/json",
"X-API-Key": "YOUR_API_KEY"
}
data = {
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"resource_type": "push",
"resource_hashes": [
"abc12hash",
"def34hash"
],
"granularity": "1h"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://api.5centscdn.com/v2/analytics/traffic/cache", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": "YOUR_API_KEY"
},
body: JSON.stringify({
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"resource_type": "push",
"resource_hashes": [
"abc12hash",
"def34hash"
],
"granularity": "1h"
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"resource_type": "push",
"resource_hashes": [
"abc12hash",
"def34hash"
],
"granularity": "1h"
}`)
req, err := http.NewRequest("POST", "https://api.5centscdn.com/v2/analytics/traffic/cache", bytes.NewBuffer(data))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.5centscdn.com/v2/analytics/traffic/cache')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['X-API-Key'] = 'YOUR_API_KEY'
request.body = '{
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"resource_type": "push",
"resource_hashes": [
"abc12hash",
"def34hash"
],
"granularity": "1h"
}'
response = http.request(request)
puts response.body
{
"summary": {
"traffic": {
"bytes": 1262343731219,
"formatted": "1.26 TB"
},
"traffic_cached": {
"bytes": 864713098005,
"formatted": "864.71 GB"
},
"hits": {
"count": 1172166,
"formatted": "1.172M"
}
},
"data": [
{
"key": "HIT",
"traffic": {
"bytes": 864713098005,
"formatted": "864.71 GB",
"percent": "+68.5%"
}
}
]
}
/analytics/traffic/cache
Target server for requests. Edit to use your own host.
API key (sent in header)
The media type of the request body
Date range in "YYYY-MM-DD HH:mm:ss - YYYY-MM-DD HH:mm:ss" format (UTC).
Resource category to filter by. Use all to include all resources (omit resource_hashes when using all).
Array of resource hashes to filter by (from /analytics/traffic/resources). Required when resource_type is push, pull, or livestream. Omit when resource_type is all.
Defines the time interval for data aggregation.
Request Preview
Response
Response will appear here after sending the request
Authentication
API Key for authentication. Provide your API key in the header.
Body
Date range in "YYYY-MM-DD HH:mm:ss - YYYY-MM-DD HH:mm:ss" format (UTC).
2026-01-01 00:00:00 - 2026-01-31 23:59:59Resource category to filter by. Use all to include all resources (omit resource_hashes when using all).
pushpullalllivestreamArray of resource hashes to filter by (from /analytics/traffic/resources). Required when resource_type is push, pull, or livestream. Omit when resource_type is all.
["abc12hash","def34hash"]Defines the time interval for data aggregation.
1m5m15m30m1h3h6h12h24hResponses
Aggregate totals across all cache statuses for the selected period.
Total bytes transferred across all cache statuses.
Raw byte count for total traffic.
Human-readable total traffic value.
Total bytes served from cache (HIT status only).
Raw byte count for cache-served traffic.
Human-readable cached traffic value.
Total cache hit count across the selected period.
Raw cache hit count.
Human-readable cache hit count.
Per-cache-status breakdown rows, one entry per distinct cache status observed.
Cache status label for this row (e.g. HIT, MISS, BYPASS, EXPIRED).
Traffic bytes attributed to this cache status.
Raw byte count for this cache status.
Human-readable traffic value for this cache status.
Share of total traffic attributed to this cache status.