---
title: "Download Model"
method: GET
path: "/v1/models/{model_id}/download"
tags: ["models"]
---

# Download Model

`GET /v1/models/{model_id}/download`

Presigned GET URLs for the *pure* model artifact directory.

Returns one URL per file under the model's ``model/`` prefix — the base
model, its preprocessor, and ``metadata.json``. Reasoning driver data
(the sibling ``reasoning_context/`` prefix) is deliberately excluded: this
downloads the model, not its explanations. The client reconstructs the
directory from the relative paths and loads it with
``outerproduct_training.load_model``.

## Path parameters

- `model_id` string, uuid, required

## Response `200`

Successful Response

- ModelDownloadResponse
  - `id` union, required
    - string, uuid
    - string
  - `files` ModelArtifactFile[], required — Every file in the artifact directory, each presigned.
    - `path` string, required — Path relative to the model artifact root, e.g. ``metadata.json``, ``model.ubj``, or ``members/0/model.ubj`` for an ensemble.
    - `url` string, required — Presigned GET URL to download this file.
  - `expires_in` integer, required — Seconds until the presigned URLs expire.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/outerproduct/apis/outerproduct-api.md) · [All operations](https://skmtc.net/outerproduct/apis/outerproduct-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/outerproduct/outerproduct-api/revisions/6c6e81fb3282/schema)
