---
title: "Patch Llm Roles"
method: PATCH
path: "/api/v1/runtime/llm-roles"
tags: ["runtime"]
---

# Patch Llm Roles

`PATCH /api/v1/runtime/llm-roles`

## Request body

- LlmRoleBindingsUpdateRequest
  - `planner` LlmRoleBindingUpdate
    - `profile_id` string, uuid, nullable — Provider profile to bind to the role.
    - `model_id` string, nullable — Provider-native model identifier for the role.
  - `delegate` LlmRoleBindingUpdate
    - `profile_id` string, uuid, nullable — Provider profile to bind to the role.
    - `model_id` string, nullable — Provider-native model identifier for the role.
  - `delegate_small` LlmRoleBindingUpdate
    - `profile_id` string, uuid, nullable — Provider profile to bind to the role.
    - `model_id` string, nullable — Provider-native model identifier for the role.

## Response `200`

Successful Response

- LlmRoleBindingsResponse
  - `bindings` LlmRoleBindingResponse[] — Current planner, delegate, and delegate_small bindings.
    - `role` 'planner' | 'delegate' | 'delegate_small', required — Runtime role receiving the model binding.
    - `profile_id` string, uuid, nullable — Assigned provider profile identifier.
    - `profile_name` string, nullable — Assigned provider profile label.
    - `model_id` string — Provider-native model identifier for the role.

## Other responses

- `401` — Authentication is required or the provided token is invalid.
- `403` — LLM profile writes require local mode or admitted Neon authentication.
- `404` — Requested profile was not found.
- `422` — Validation Error
- `503` — Runtime services are unavailable because server startup is incomplete.

---

[API](https://skmtc.net/qredence/apis/fleet-rlm.md) · [All operations](https://skmtc.net/qredence/apis/fleet-rlm/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/qredence/fleet-rlm/versions/62e8c152aa18/schema)
