---
title: "Select Model"
method: PUT
path: "/sessions/{session_id}/model"
tags: ["sessions"]
---

# Select Model

`PUT /sessions/{session_id}/model`

## Request

- The document declares no server URL.
- Auth: none declared

Bind a model to a role, persist it, and swap in a new engine.

Returns 409 while a Turn holds the Session lock.

## Path parameters

- `session_id` string, required

## Request body

- ModelRequest: Model to bind to the root or sub role of a Session's engine.
  - `role` string
  - `model` string, required

## Response `200`

Successful Response

- ModelSelection: Model bound to one role after a successful selection.
  - `role` string, required
  - `model` string, required

## Other responses

- `409`: A Turn or workspace change holds the Session lock; retry when it completes
- `422`: Validation Error

## Changes

- **2026-10-18** `d7771053c999`: 1 info
  - added the non-success response with the status `409`
- **2026-10-15** `f94854aad429`: 3 info
  - api tag `sessions` added
  - added the required property `model` to the response with the `200` status
  - added the required property `role` to the response with the `200` status
- **2026-10-15** `49da87181f52`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/qredence/apis/fleet-rlm/changes/sessions/:session_id/model/put.md)

---

[API](https://skmtc.dev/qredence/apis/fleet-rlm.md) - [All operations](https://skmtc.dev/qredence/apis/fleet-rlm/llms.txt) - [OpenAPI document](https://skmtc.dev/qredence/apis/fleet-rlm/revisions/87de8fd61161?raw)
