An interaction is
open, then resolved (someone answered) or canceled (the turn was interrupted, superseded or archived). Desktop, mobile and integrations all see the same open interactions.
Approvals through the Managed Agents API
When a call needs approval, the stream emits theagent.tool_use and then session.status_idle with stop_reason.type = "requires_action" and the ids to answer. Reply with user.tool_confirmation:
- The tool runs only after
allow. A deny is recorded asuser.tool_confirmationwith yourdeny_message, and the model is told why. - With
always_ask, BMA asks before it creates the session’s machine, so a denied call never provisions one. - The stream announces only prompts that belong to this session. If a history page ends while a prompt is open, BMA appends the same
requires_actionidle event, so a restarted worker sees it must answer. user.interruptcancels open interactions of the interrupted turn.
Scope
Through/v1, interactions are tool permission requests, answered with user.tool_confirmation.