Snapshots
Capture high-quality frames from a live session and retrieve them later.
Upload a snapshot
From a custom agent viewer, upload a captured frame using the agent token — the fragment after # in agentViewUrl. The upload is authenticated by the token itself, not a dashboard login.
| Field | Description |
|---|---|
code | The 6–10 character invite code — the path segment of agentViewUrl, before the # fragment. |
token | The agent-view token — the URL fragment after # in agentViewUrl. Rejected if the link wasn't issued with snapshot capture enabled. |
image | The captured frame as a PNG data URL (data:image/png;base64,…). |
curl -X POST https://api.seeitlive.io/v1/agent-view/snapshots \
-H "Content-Type: application/json" \
-d '{ "code": "xyz789", "token": "<agent token>", "image": "data:image/png;base64,iVBORw0K..." }'{
"id": "3f9a2b71-8c4d-4e2a-9b1f-1234567890ab"
}sessions:read. Both also require the account's Snapshot history & export plan feature — without it you get a 402.List snapshots
Returns the session's captured snapshots, most recent first. Each entry includes the pixel dimensions read from the PNG header and a url to fetch the bytes. Requires the view_snapshots permission on a dashboard JWT.
# List a session's snapshots, then download one:
curl https://api.seeitlive.io/v1/sessions/$SESSION_ID/snapshots \
-H "Authorization: Bearer $SEEITLIVE_KEY"
curl https://api.seeitlive.io/v1/snapshots/$SNAPSHOT_ID \
-H "Authorization: Bearer $SEEITLIVE_KEY" \
-o snapshot.png[
{
"id": "3f9a2b71-8c4d-4e2a-9b1f-1234567890ab",
"width": 1280,
"height": 720,
"capturedAt": "2026-07-07T09:15:12.000Z",
"url": "/api/v1/snapshots/3f9a2b71-8c4d-4e2a-9b1f-1234567890ab"
}
]Get snapshot bytes
Streams the raw PNG bytes for a single snapshot (content-type: image/png). Requires the same view_snapshots permission as listing snapshots.
Add ?format=base64 to receive JSON instead: {id, contentType, width, height, capturedAt, data}, where data is the base64-encoded PNG. Any other format value returns 400. Intended for callers that cannot receive binary responses, such as Freshworks request templates.
Authorization header (dashboard JWT, API key, or OAuth token), so a plain img tag can't load it — fetch the bytes with the header and render them from a blob URL instead.