Analytics
Query Server Timing
Server-Timing dashboard panel: four blocks.
cache: cdn / origin cache-status distribution (count per status).cache_age: p50/p75/p95 of the cache age per layer, in SECONDS (the phases are milliseconds), plus thecontentlayer = cdn + origin under a CDN hit, which is the age of what the visitor actually saw.phases: p50/p75/p95 of the eight backend-phase durations (NULLs skipped), pluscount= pageviews reporting the phase, so a percentile over 12 pageviews is distinguishable from one over 50k.top_keys: custom server-timing keys. Timed keys (server_timing_dur) come first, ranked by p75; categorical keys that only ever carried a desc (server_timing_desc, e.g.pop;desc="DE-1331") follow with p75_ms=None and their top values.limitapplies to each group, so the block holds at most 2×limit items.
Authentifizierung
bearerAuth AuthentifizierungBearer <token>
API token generated from the fastmon dashboard (Account → API Token) or at organization level (fmo_…, one that outlives its creator). Send as Authorization: Bearer fm_... or paste the full token (including its prefix) into the Authorize dialog.
In: header
Pfad-Parameter
org_id*Org Id
Format
uuidRequest-Body
application/json
Request for the Server-Timing dashboard panel.
Response-Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/organizations/497f6eca-6276-4993-bfeb-53cbbbba6f08/analytics/server-timing" \ -H "Content-Type: application/json" \ -d '{ "time_range": { "from": "2019-08-24T14:15:22Z", "to": "2019-08-24T14:15:22Z" } }'{ "cache": [ { "layer": "string", "status": "string", "count": 0 } ], "cache_age": [ { "layer": "string", "count": 0, "p50_s": 0, "p75_s": 0, "p95_s": 0 } ], "phases": [ { "phase": "string", "count": 0, "p50": 0, "p75": 0, "p95": 0 } ], "top_keys": [ { "key": "string", "count": 0, "p75_ms": 0, "values": [ { "value": "string", "count": 0 } ] } ], "execution_time_ms": 0}