---
title: "Download a forecast output file"
method: GET
path: "/api/v1/forecasts/{id}/artifacts/{name}"
---

# Download a forecast output file

`GET /api/v1/forecasts/{id}/artifacts/{name}`

Streams a single output file for a completed forecast job.

Available artifacts:
- `forecast.json` — point forecast values for each horizon month
- `backtest_metrics.json` — accuracy metrics from the backtest evaluation (only when `backtest: true`)
- `backtest_trajectories.json` — full trajectory samples from the backtest (only when `backtest: true`)
- `external_signals.json` — external driver signals used by the model
- `input.json` — the processed input timeseries as seen by the pipeline

The response body is the raw file bytes; the `Content-Type` header matches the
artifact's `content_type` field from `GET /api/v1/forecasts/{id}`.
Supports HTTP `Range` requests for partial downloads.
Jobs tombstoned by the retention policy return 404.

## Path parameters

- `id` string, uuid, required
- `name` string, required

## Response `200`

Full artifact content.

## Other responses

- `206` — Partial content — response to a `Range` request.
- `401` — Missing or invalid bearer token.
- `404` — Forecast job or artifact not found, not owned by the caller, or removed by the retention policy.

---

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