---
title: "Start moving a session to another account through the durable controller handoff"
method: PUT
path: "/api/v1/agents/accounts/sessions/{sessionId}"
tags: ["agents"]
---

# Start moving a session to another account through the durable controller handoff

`PUT /api/v1/agents/accounts/sessions/{sessionId}`

## Request

- Base URL: `http://127.0.0.1:3001`
- URL: `http://127.0.0.1:3001/api/v1/agents/accounts/sessions/{sessionId}`
- Auth: none declared

## Path parameters

- `sessionId` string, required: AO session identifier.

## Request body

- SwitchSessionAgentAccountRequest
  - `accountId` string, required
  - `stopTurn` boolean

## Response `202`

Accepted

- StartSessionInterfaceTransitionResponse
  - `ok` boolean, required
  - `sessionId` string, required
  - `transition` SessionInterfaceTransition, required
    - `completedAt` string, date-time, nullable
    - `createdAt` string, date-time, required
    - `errorCode` string
    - `errorDetail` string
    - `historyPolicy` 'strict' | 'provider_history', required
    - `id` string, required
    - `noticeAcknowledgedAt` string, date-time, nullable
    - `phase` 'requested' | 'preflighting' | 'draining' | 'source_stopping' | 'source_stopped' | 'target_starting' | 'activating' | 'completed' | 'failed' | 'cancelled' | 'recovery_required', required
    - `policy` 'drain' | 'interrupt', required
    - `sessionId` string, required
    - `sourceAccountId` string
    - `sourceMode` 'chat' | 'tui', required
    - `targetAccountId` string
    - `targetMode` 'chat' | 'tui', required
    - `updatedAt` string, date-time, required

## Other responses

- `400`: Bad Request
- `404`: Not Found
- `409`: Conflict
- `501`: Not Implemented

## Changes

- **2026-10-21** `8f160e6183cd`: 4 info
  - removed the `agent_switch_saga` enum value from the `reporting_owner` response property for the response status `400`
  - removed the `agent_switch_saga` enum value from the `reporting_owner` response property for the response status `404`
  - removed the `agent_switch_saga` enum value from the `reporting_owner` response property for the response status `409`
  - removed the `agent_switch_saga` enum value from the `reporting_owner` response property for the response status `501`
- **2026-10-18** `7e984b9a98ab`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/composiohq/apis/agent-orchestrator-http-daemon/changes/api/v1/agents/accounts/sessions/:sessionId/put.md)

---

[API](https://skmtc.dev/composiohq/apis/agent-orchestrator-http-daemon.md) - [All operations](https://skmtc.dev/composiohq/apis/agent-orchestrator-http-daemon/llms.txt) - [OpenAPI document](https://skmtc.dev/composiohq/apis/agent-orchestrator-http-daemon/revisions/61d7efd08578?raw)
