---
title: "Download artifact"
method: GET
path: "/artifacts/{artifact_id}/download"
tags: ["Artifacts"]
---

# Download artifact

`GET /artifacts/{artifact_id}/download`

Returns a signed download URL for an artifact, plus its filename, media type, and size. Follow `download_url` to fetch the file bytes.

## Path parameters

- `artifact_id` string, required

## Query parameters

- `version_id` string

## Response `200`

Signed download URL and file metadata.

- object
  - `download_url` string, required — Signed URL the caller can `GET` to fetch the file bytes.
  - `filename` string, nullable
  - `media_type` string, nullable
  - `size` integer, nullable — File size in bytes.

## Other responses

- `401` — Unauthorized — missing or invalid API key.
- `403` — Forbidden — the caller does not have read access on the artifact.
- `404` — Artifact not found, version not found, or the underlying file is unavailable.
- `502` — Failed to generate a download URL for the underlying file.

---

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