---
title: "Update Model"
method: PUT
path: "/api/v1/models/{model_id}"
tags: ["models"]
---

# Update Model

`PUT /api/v1/models/{model_id}`

Updates a model.

Args:
    model_id: Name of the stack.
    model_update: Stack to use for the update.

Returns:
    The updated model.

## Path parameters

- `model_id` string, uuid, required

## Request body

- ModelUpdate — Update model for models.
  - `name` string, nullable
  - `license` string, nullable
  - `description` string, nullable
  - `audience` string, nullable
  - `use_cases` string, nullable
  - `limitations` string, nullable
  - `trade_offs` string, nullable
  - `ethics` string, nullable
  - `add_tags` string[], nullable
  - `remove_tags` string[], nullable
  - `save_models_to_registry` boolean, nullable

## Response `200`

Successful Response

- ModelResponse — Response model for models.
  - `body` ModelResponseBody — Response body for models.
    - `created` string, date-time, required
    - `updated` string, date-time, required
    - `user` UserResponse — Response model for user and service accounts. This returns the activation_token that is required for the user-invitation-flow of the frontend. The email is returned optionally as well for use by the analytics on the client-side.
      - `body` UserResponseBody — Response body for users.
        - `created` string, date-time, required
        - `updated` string, date-time, required
        - `active` boolean
        - `activation_token` string, nullable
        - `full_name` string
        - `email_opted_in` boolean, nullable — `null` if not answered, `true` if agreed, `false` if skipped.
        - `is_service_account` boolean, required
        - `is_admin` boolean, required
      - `metadata` UserResponseMetadata — Response metadata for users.
        - `email` string, nullable
        - `external_user_id` string, uuid, nullable
        - `user_metadata` object
      - `resources` UserResponseResources — Class for all resource models associated with the user entity.
      - `id` string, uuid, required
      - `permission_denied` boolean
      - `name` string, required
    - `tags` TagResponse[], required
      - `body` TagResponseBody — Response body for tags.
        - `created` string, date-time, required
        - `updated` string, date-time, required
        - `color` 'grey' | 'purple' | 'red' | 'green' | 'yellow' | 'orange' | 'lime' | 'teal' | 'turquoise' | 'magenta' | 'blue' — All possible color variants for frontend.
        - `tagged_count` integer, required — The count of resources tagged with this tag.
      - `metadata` BaseResponseMetadata — Base metadata model. Used as a base class for all metadata models associated with responses.
      - `resources` TagResponseResources — Class for all resource models associated with the tag entity.
      - `id` string, uuid, required
      - `permission_denied` boolean
      - `name` string, required — The unique title of the tag.
    - `latest_version_name` string, nullable
    - `latest_version_id` string, uuid, nullable
  - `metadata` ModelResponseMetadata — Response metadata for models.
    - `workspace` WorkspaceResponse, required — Response model for workspaces.
      - `body` WorkspaceResponseBody — Response body for workspaces.
        - `created` string, date-time, required
        - `updated` string, date-time, required
      - `metadata` WorkspaceResponseMetadata — Response metadata for workspaces.
        - `description` string
      - `resources` WorkspaceResponseResources — Class for all resource models associated with the workspace entity.
      - `id` string, uuid, required
      - `permission_denied` boolean
      - `name` string, required
    - `license` string, nullable
    - `description` string, nullable
    - `audience` string, nullable
    - `use_cases` string, nullable
    - `limitations` string, nullable
    - `trade_offs` string, nullable
    - `ethics` string, nullable
    - `save_models_to_registry` boolean
  - `resources` ModelResponseResources — Class for all resource models associated with the model entity.
  - `id` string, uuid, required
  - `permission_denied` boolean
  - `name` string, required

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `422` — Unprocessable Entity

---

[API](https://skmtc.net/zenml-io/apis/zenml-2.md) · [All operations](https://skmtc.net/zenml-io/apis/zenml-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zenml-io/zenml-2/versions/febb01b8bce3/schema)
