PilotFoxDocs

Get a session

GET
/api/v1/sites/{siteId}/sessions/{sessionId}

One session and its events in order, a page at a time (meta.nextCursor). at, any instant of the session, narrows the lookup to 24 hours either side of it. 404 when no such session is found. Share links get no coordinates (lat and lon null).

Requires sessions:read on the site (an API key, or a signed-in member's role). Share links: allowed, with the sessions:read scope.

Authorization

headerx-api-key<token>

An organization API key (ak_…), with the permissions and the sites it was created with. For servers and scripts: no cookie and no Origin check. Also accepted as Authorization: Bearer ak_… (apiKeyBearer). A request carries one credential: a key sent with a share token or a live session cookie is 400 (details.reason: ambiguous_credentials).

Scope: sessions:read

Path Parameters

siteId*string
sessionId*string

Query Parameters

at?string

Any instant of the session: bounds the lookup to at ± 24 hours (all time up to now without it)

Match^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
Formatdate-time
cursor?string

meta.nextCursor of the previous page

Lengthlength <= 2200
limit?integer
Range1 <= value <= 500
Default50

Response Body

OK

application/json
  1. response
data*
meta*
Example Request
curl -X GET 'https://pilotfox.app/api/v1/sites/string/sessions/string'
Example Response200
{  "data": {    "session": {      "session_id": "string",      "visitor_id": "string",      "user_id": "string",      "identified": true,      "started_at": "string",      "ended_at": "string",      "duration": 0,      "pageviews": 0,      "events": 0,      "errors": 0,      "entry_page": "string",      "exit_page": "string",      "referrer_domain": "string",      "channel": "string",      "utm_source": "string",      "utm_medium": "string",      "utm_campaign": "string",      "utm_term": "string",      "utm_content": "string",      "country": "string",      "region": "string",      "region_name": "string",      "city": "string",      "lat": 0,      "lon": 0,      "browser": "string",      "os": "string",      "device_type": "string",      "screen": "string",      "language": "string",      "has_replay": true,      "goal_ids": [        "string"      ]    },    "events": [      {        "ts": "string",        "type": "string",        "event_name": "string",        "hostname": "string",        "pathname": "string",        "querystring": "string",        "page_title": "string",        "referrer": "string",        "identified_user_id": "string",        "props": {          "property1": "string",          "property2": "string"        },        "error_fingerprint": "string",        "lcp": 0,        "cls": 0,        "inp": 0,        "fcp": 0,        "ttfb": 0      }    ]  },  "meta": {    "window": {      "from": "string",      "to": "string",      "tz": "string",      "bucket": "minute"    },    "compare": {      "from": "string",      "to": "string"    },    "totalCount": -9007199254740991,    "nextCursor": "string",    "truncated": true,    "cache": "hit"  }}