---
title: "Create Model Configuration"
method: POST
path: "/v1/model-configurations"
tags: ["model-configurations"]
---

# Create Model Configuration

`POST /v1/model-configurations`

## Headers

- `Idempotency-Key` string

## Request body

- ModelConfigurationCreate — Create a model configuration. `api_key` is the raw secret material; it will be stored in Basis Theory and only the alias is persisted. For providers that Cyberdesk does not provide keys for, `api_key` is required.
  - `name` string, required
  - `description` string, nullable
  - `provider` string, required — LangChain provider name (e.g. 'anthropic', 'openai').
  - `model` string, required — Provider model identifier (e.g. 'claude-sonnet-4-5-20250929').
  - `temperature` number, nullable
  - `max_tokens` integer, nullable
  - `timeout_seconds` number, nullable
  - `max_retries` integer, nullable
  - `additional_params` object, nullable — Provider-specific kwargs passed through to LangChain.
  - `agent_harness_version_string` string, nullable — Agent harness version string used by Cyberdesk workers for prompt/tool selection.
  - `is_computer_use_model` boolean — True if this model has native computer use capabilities. If True, can be used for main agent, focused actions, and fallbacks for those agents.
  - `is_archived` boolean — Whether this model configuration is archived and should generally be hidden behind archived-model UI affordances.
  - `api_key` string, nullable — Raw API key (stored in Basis Theory; never persisted directly).

## Response `201`

Successful Response

- ModelConfigurationResponse — API response schema for model configurations.
  - `name` string, required
  - `description` string, nullable
  - `provider` string, required — LangChain provider name (e.g. 'anthropic', 'openai').
  - `model` string, required — Provider model identifier (e.g. 'claude-sonnet-4-5-20250929').
  - `temperature` number, nullable
  - `max_tokens` integer, nullable
  - `timeout_seconds` number, nullable
  - `max_retries` integer, nullable
  - `additional_params` object, nullable — Provider-specific kwargs passed through to LangChain.
  - `agent_harness_version_string` string, nullable — Agent harness version string used by Cyberdesk workers for prompt/tool selection.
  - `is_computer_use_model` boolean — True if this model has native computer use capabilities. If True, can be used for main agent, focused actions, and fallbacks for those agents.
  - `is_archived` boolean — Whether this model configuration is archived and should generally be hidden behind archived-model UI affordances.
  - `id` string, uuid, required
  - `organization_id` string, nullable
  - `api_key_alias` string, nullable — Basis Theory token id (alias) used to resolve api_key at runtime.
  - `is_system_default` boolean, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/cyberdesk-hq/apis/cyberdesk-cloud.md) · [All operations](https://skmtc.net/cyberdesk-hq/apis/cyberdesk-cloud/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cyberdesk-hq/cyberdesk-cloud/versions/830d2f48963d/schema)
