---
title: "Update a managed index schema"
method: PUT
path: "/v1/rag/managed_indexes/{index_name}"
tags: ["beta.rag.managed_indexes"]
---

# Update a managed index schema

`PUT /v1/rag/managed_indexes/{index_name}`

Records a new schema for the managed search index and applies it asynchronously. The index keeps serving its current schema until the new one is on disk; poll it until status is ready. Additive only: the new schema must keep every field the current one has.

## Path parameters

- `index_name` string, required

## Request body

- UpdateManagedIndexRequest — The schema an index should have. Sent whole, not as a patch. No ``config``: the embedding configuration is fixed at creation, so there is nothing for a caller to send back.
  - `schema` ManagedIndexFields, required
    - `document_fields` object
    - `chunk_fields` object

## Response `202`

Schema recorded and queued

- ManagedIndexResponse — Wire representation of a managed index (decoupled from the domain model).
  - `id` string, uuid, required
  - `name` string, required
  - `status` 'provisioning' | 'ready' | 'failed' | 'deleting', required — Lifecycle of an index. Derived, not stored -- see ``managed_index_from_row``.
  - `status_message` string, nullable
  - `schema` ManagedIndexFields, required
    - `document_fields` object
    - `chunk_fields` object
  - `config` ManagedIndexConfig, required
    - `embedding` union, required
      - MistralEmbeddingModel
        - `type` 'mistral'
        - `name` string, required
        - `dtype` 'float16' | 'float32'
        - `dimensions` integer, required
        - `distance_metric` 'cosine' | 'inner_product' | 'l2'
      - CustomEmbeddingModel
        - `type` 'custom'
        - `name` string, required
        - `dtype` 'float16' | 'float32'
        - `dimensions` integer, required
        - `distance_metric` 'cosine' | 'inner_product' | 'l2'
  - `created_at` string, date-time, nullable
  - `modified_at` string, date-time, nullable

## Other responses

- `404` — Index not found
- `409` — Index is not ready, or another update won the race
- `422` — The change cannot be applied to an existing index

## Changes

- **2026-09-23** `fa73befe1c61` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/mistral/apis/mistral-ai-api/changes/v1/rag/managed_indexes/:index_name/put.md)

---

[API](https://skmtc.dev/mistral/apis/mistral-ai-api.md) · [All operations](https://skmtc.dev/mistral/apis/mistral-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mistral/apis/mistral-ai-api/revisions/fa73befe1c61?raw)
