paused or completed, or returns monitor_timed_out: true after timeout_s. This is the entire polling loop: monitor, check, monitor again.
Read-only: it never changes task state.
Parameters
string
required
The task to wait on, as returned by
phone_run_task.integer
default:"120"
Maximum wait per call, in seconds. 120 is both the default and the cap.
boolean
Include the task’s recorded steps (screenshots, thinking) in the payload.
integer
Return only steps newer than this step number. Use with
include_steps to
fetch incremental progress without re-downloading history.Response
The task’s status payload (the same shape asphone_task_status), plus:
boolean
false- the task is nowpausedorcompleted. Act on it.true- the wait ended while the task was stillpendingorrunning. Call the monitor again.
What the monitor catches
The monitor returns for every actionable phone event, not only successful completion:- Mobile
message_user,needs_confirmation,need_login,need_login_details, and CAPTCHA actions arrive as a completed task withterminal: "needs_user_control". - A successful mobile
finishedaction returnsterminal: "ok". - Errors, cancellation, timeout, queue expiry, offline devices, expired sessions, and iteration limits return immediately after they are recorded.
terminal and act on it - the full table is in
Task lifecycle.
monitor_timed_out: true is not a failure. It exists so your client never
blocks indefinitely; the task keeps working regardless. A paused status is
actionable too - resume it with
phone_task_resume and keep
monitoring the same task_id.Related
phone_task_status- non-blocking snapshotphone_task_message- answer aneeds_user_controlresult- Task lifecycle - the loop end-to-end