phones

Returns one session for the Session Inspector: session lifecycle, phone display fields, the agent's name (for an agent's run) and an inlined presigned recording URL. Works for active and terminal sessions, and for agents' runs and interactive leases. Org-scoped: another org's session reads as not found.

get/phones/sessions/{session_id}

Request

Path parameters

session_idstring uuid required

Phone session identifier

Response

OK

$schemastring uri

A URL to the JSON Schema for this object.

accessibilityboolean required

Whether accessibility mode was on for this session at allocation. A mid-session enable or disable is recorded here too.

agent_idstring

The agent whose run the session executed, when source is 'agent'.

agent_namestring

Name of the agent whose run the session executed.

allocated_atstring date-time required

When the session claimed the phone.

allocated_by'dashboard_run' | 'api_run' | 'interactive'

How the session was started.

capture_enabledboolean required

Whether media this session produces on the phone is captured into the org's file library. On by default; set capture=false at allocation to disable.

deallocated_atstring date-time

When the session released the phone; absent while active.

end_reasonstring

Why the session ended: released, idle_timeout, max_duration, run_finished, device_lost, accessibility_unavailable or phone_maintenance. Absent while it is live, and for sessions ended before this was recorded.

is_dedicated_phoneboolean required

Whether the phone is a dedicated (rented) phone.

locationstring

Physical hosting location of the phone.

model_namestring

Hardware model name of the phone.

namestring

Optional user-chosen session label; unique among the org's active sessions.

phone_idstring required

Phone the session ran on.

phone_namestring

Display name of the phone.

phone_nicknamestring

User-assigned phone nickname.

phone_status'active' | 'inactive' | 'maintenance' | 'suspended' | 'recovering' | 'out_of_service' required

Fleet status of the phone. Only active is allocatable. inactive: unreachable, back on its next heartbeat. maintenance: planned work that releases itself. suspended: an administrative hold. recovering: being repaired automatically. out_of_service: needs a repair at the rack. Treat unknown values as unavailable.

phone_type'android' | 'iphone' | 'unknown'

Platform of the phone.

recording_status'ready' | 'pending' | 'expired' | 'off' | 'unavailable' required

'unavailable' when it never arrived, for example a failed upload. 'ready' when the recording URL is present, 'pending' while the recording is still being processed, 'expired' when it is past the plan's recording retention window, or 'off' when the session was not recorded (recording is off unless requested at allocation, or on the agent for its runs).

recording_urlstring

Playback URL for the session recording, set only when ready.

session_idstring required

Session identifier.

source'agent' | 'interactive' required

'agent' when the session ran an agent's run, else 'interactive'.

status'active' | 'completed' | 'cancelled' | 'expired' required

Session lifecycle status.

tagsobject

Optional key->value labels attached to the session.

telemetry_disabledboolean required

Whether session telemetry was disabled at allocation. When true the session has no live or archived trace by policy.

telemetry_urlstring

URL of the session's telemetry event stream (Server-Sent Events; see GET /realtime/sessions/{session_id}/events), carrying a read-only token for this one session. Live while the session runs; afterwards it replays the trace and closes. Omitted when telemetry is off.

Example response

{
  "$schema": "/api/v1/PhoneSessionDetailResponse.json"
}

Changes

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      added the new agent enum value to the response property for the response status

    • warning

      added the new unavailable enum value to the response property for the response status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      removed the workflow enum value from the response property for the response status

    • info

      removed the workflow_editor enum value from the response property for the response status

    • warning

      removed the optional property from the response with the status

    • warning

      added the new off enum value to the response property for the response status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status