---
title: "Clone Assistant"
method: POST
path: "/assistants/{assistant_id}/clone"
tags: ["Assistants"]
---

# Clone Assistant

`POST /assistants/{assistant_id}/clone`

Clone an assistant's configuration, assistant-level documents, and active memories into a new assistant.

## Path parameters

- `assistant_id` string, uuid, required

## Headers

- `authorization` string, nullable
- `x_session_token` string, nullable

## Request body

- AssistantCloneRequest
  - `name` string, nullable — Name for the cloned assistant
  - `description` string, nullable — Optional system prompt override for the cloned assistant
  - `system_prompt` string, nullable — Optional system prompt override (alias for description)
  - `copy_documents` boolean — Whether to clone assistant-level knowledge base documents
  - `copy_memories` boolean — Whether to clone active assistant memories

## Response `200`

Successful Response

- AssistantCloneResponse
  - `assistant` Assistant, required
    - `name` string, required — Name of the assistant
    - `system_prompt` string, nullable — Optional system prompt (alias for description)
    - `tools` ToolDefinition[], nullable — List of tools available to the assistant
      - `type` string — Type of the tool, e.g., 'function'
      - `function` FunctionDefinition, required
        - `name` string, required — Name of the function to be called
        - `description` string, nullable — Description of what the function does
        - `parameters` ToolParameters, required
          - `type` string — The type of the parameters object, typically 'object'
          - `properties` object, required — Parameter definitions
          - `required` string[], nullable — List of required parameter names
    - `tok_k` integer — Document search top_k for the internal search_documents tool (default 10).
    - `embedding_provider` string, nullable — Embedding provider (openai, google, cohere, etc.)
    - `embedding_model_name` string, nullable — Embedding model name (e.g., text-embedding-3-large, text-embedding-004)
    - `embedding_dims` integer, nullable — Embedding dimensions (e.g., 1024 for Cohere, 3072 for OpenAI text-embedding-3-large)
    - `custom_fact_extraction_prompt` string, nullable — Custom prompt for fact extraction from conversations. If not set, the default prompt is used.
    - `custom_update_memory_prompt` string, nullable — Custom prompt for memory update decisions (add/update/delete). If not set, the default prompt is used.
    - `assistant_id` string, uuid, required
    - `created_at` string, date-time, required
  - `documents_cloned` integer — Number of assistant-level document records cloned
  - `memories_cloned` integer — Number of active memories cloned

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/backboard/apis/backboard-api.md) · [All operations](https://skmtc.dev/backboard/apis/backboard-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/backboard/backboard-api/revisions/e732d11ca11a/schema)
