Performance

Record performance metrics from client

post/_temps/speed

Request

  • Base URL: /api (relative, and the document was published on a file host, not at the API’s origin)
  • URL: /api/_temps/speed
  • Auth: none declared

Query parameters

temps_keystring

Query-string fallback for the analytics ingest key, for clients that cannot set custom headers (navigator.sendBeacon, used for page-unload events). Consulted only when the x-temps-analytics-key header is absent; identical precedence and error semantics.

Headers

x-temps-analytics-keystring nullable

Analytics ingest key (ADR-040), pa_ followed by 64 hex characters. An alternative to Host-based project resolution, for apps Temps does not deploy and which therefore have no route-table entry. When present it takes precedence and the Host header is not consulted for resolution; a key that does not resolve to an active row is a 401, never a fallback to Host. The value is public by design — it ships in client JS — and is write-only: it grants analytics ingest for one project (optionally one environment) and nothing else.

Request body

clsnumber float nullable

Cumulative Layout Shift (score)

fcpnumber float nullable

First Contentful Paint (milliseconds)

fidnumber float nullable

First Input Delay (milliseconds)

inpnumber float nullable

Interaction to Next Paint (milliseconds)

languagestring nullable

Browser language

lcpnumber float nullable

Largest Contentful Paint (milliseconds)

pathnamestring nullable

Page pathname

querystring nullable

Query string

screenHeightinteger nullable

Screen height in pixels

screenWidthinteger nullable

Screen width in pixels

sessionIdstring nullable

Client-generated session id fallback (see visitor_id).

ttfbnumber float nullable

Time to First Byte (milliseconds)

viewportHeightinteger nullable

Viewport height in pixels

viewportWidthinteger nullable

Viewport width in pixels

visitorIdstring nullable

Client-generated visitor id, used only when the request carries no Temps-issued _temps_visitor_id cookie — i.e. Temps is used purely as an analytics backend for an app it doesn't deploy/proxy (gotempsh/temps#848).

Response

Metrics recorded successfully

Changes

No recorded changes to this operation across all 53 revisions of this API.