Control plane voor
edge delivery in Amsterdam.
Eén REST-API voor je PoP-directory, verkeers- en cache-statistieken, purge-jobs, ondertekende URL's en validatie van DNS-records, IP-adressen en hostnames. Antwoorden onder de 100 ms, OpenAPI 3.1-specificatie en OAuth2 client credentials.
PoP's
12 / 6 landen
Cache hit ratio
94,1 %
p95 TTFB
18 ms
Capaciteit
16,6 Tbps
Endpoints
Alles onder /v1. JSON in, JSON uit. Fouten volgen RFC 7807 (application/problem+json) met een request_id.
system
GET/v1/healthLiveness-check
GET/v1/statusServicestatus, PoP en uptime
network
GET/v1/popsOverzicht van alle points of presence
GET/v1/pops/{code}Details: anycast-prefixes, upstreams, RTT
GET/v1/zones/{id}Zone-configuratiebearer
analytics
GET/v1/analytics/trafficRequests, bytes en TTFB per uur
GET/v1/analytics/cacheHit ratio per content-type
cache
GET/v1/cache/rulesActieve cache-regels en TTL's
POST/v1/cache/purgePurge-job aanmaken (max. 500 paden)bearer
GET/v1/cache/purge/{job_id}Voortgang van de purge-job
security
GET/v1/signOndertekende URL genereren (HMAC-SHA256)
GET/v1/verifyHandtekening en geldigheid controleren
GET/v1/tls/profilesTLS-profielen en cipher suites
validation
GET/v1/validate/dnsA, AAAA, CNAME, MX, TXT, NS, PTR
GET/v1/validate/ipScope, routeerbaarheid, reverse-ARPA, PoP
GET/v1/validate/hostnameLabelregels volgens RFC 1123
billing
GET/v1/pricingStaffelprijs per GB, incl. 21% btw
GET/v1/vat/ratesBtw-tarieven per land
GET/v1/fxWisselkoersen voor facturatie
GET/v1/holidaysFeestdagen (support-SLA)
auth
POST/v1/auth/tokenClient credentials inwisselen voor een bearer-token
Quickstart
Drie stappen: statistieken opvragen, een URL ondertekenen, een purge starten.
# verkeer van de laatste 24 uur curl "https://cdn-nl.freepux.site/v1/analytics/traffic?zone=nl-prod&hours=24" # een asset-URL ondertekenen (1 uur geldig) curl "https://cdn-nl.freepux.site/v1/sign?path=/assets/video/intro.mp4&ttl=3600" # IP-routering controleren curl "https://cdn-nl.freepux.site/v1/validate/ip?ip=145.220.13.7"
# token ophalen en een purge starten TOKEN=$(curl -s -X POST https://cdn-nl.freepux.site/v1/auth/token \ -H 'content-type: application/json' \ -d '{"grant_type":"client_credentials", "client_id":"demo","client_secret":"supersecret"}' \ | jq -r .access_token) curl -X POST https://cdn-nl.freepux.site/v1/cache/purge \ -H "authorization: Bearer $TOKEN" \ -H 'content-type: application/json' \ -d '{"zone":"nl-prod","paths":["/assets/app.js"]}'
Ondertekende URL's. De handtekening is een HMAC-SHA256 over
<path>\n<expires>, hex-gecodeerd. Verificatie via
/v1/verify gebeurt in constante tijd, zodat de vergelijking geen
informatie over de sleutel lekt.