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

POST /v1/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

POST /v1/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

GET /v1/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:

Rate-limited responses return HTTP 429 with a Retry-After header.

Error Codes