Documentation
Setup, configuration, and API reference.
Getting Started
1. CNAME your domain
Point your domain to our edge network by creating a CNAME record:
cdn.example.com CNAME example.cdn-azure.com
DNS propagation typically completes within 5 minutes. We issue a TLS certificate automatically via Let's Encrypt once the CNAME is verified.
2. Configure your origin
Set your origin server in the dashboard. We support origin pull over HTTP or HTTPS. The origin can be an IP address or hostname.
{
"origin": "origin.example.com",
"port": 443,
"protocol": "https",
"host_header": "example.com"
}
3. Cache behavior
By default, we respect your origin's Cache-Control headers. If no cache headers are present, static assets are cached for 24 hours. You can override TTLs per path pattern in the dashboard.
4. Purge cache
Purge individual URLs or entire path patterns through the dashboard or API. Purge propagates to all edge nodes within 5 seconds.
API Reference
Base URL: https://api.cdn-azure.com/v1
All requests require an API key in the Authorization header:
Authorization: Bearer YOUR_API_KEY
Purge
Purge cached content by URL or path pattern. Supports wildcards.
curl -X POST https://api.cdn-azure.com/v1/purge \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"zone_id": "z_abc123",
"paths": ["/assets/*", "/index.html"]
}'
Response:
{
"status": "ok",
"purged": 2,
"propagation_ms": 4800
}
Prefetch
Warm the cache by prefetching URLs to all edge nodes.
curl -X POST https://api.cdn-azure.com/v1/prefetch \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"zone_id": "z_abc123",
"urls": [
"https://cdn.example.com/app.js",
"https://cdn.example.com/style.css"
]
}'
Response:
{
"status": "ok",
"queued": 2
}
Analytics
Retrieve bandwidth, request count, and cache hit ratio for a time range.
curl "https://api.cdn-azure.com/v1/analytics?zone_id=z_abc123&from=2026-03-01&to=2026-03-25" \ -H "Authorization: Bearer YOUR_API_KEY"
Response:
{
"zone_id": "z_abc123",
"period": {
"from": "2026-03-01T00:00:00Z",
"to": "2026-03-25T23:59:59Z"
},
"requests_total": 14832901,
"bandwidth_gb": 842.7,
"cache_hit_ratio": 0.946,
"avg_response_ms": 11.4
}
Rate Limits
The API enforces the following rate limits per API key:
- Purge: 100 requests per minute
- Prefetch: 50 requests per minute
- Analytics: 300 requests per minute
Rate-limited responses return HTTP 429 with a Retry-After header.
Error Codes
400— Invalid request body or missing required fields401— Missing or invalid API key403— API key does not have access to the specified zone404— Zone not found429— Rate limit exceeded500— Internal server error