---
title: "Download File"
method: GET
path: "/file-storage/files/{id}/download"
tags: ["Files"]
---

# Download File

`GET /file-storage/files/{id}/download`

Download File

## Path parameters

- `id` string, required

## Query parameters

- `fields` string, nullable

## Headers

- `x-apideck-consumer-id` string, required
- `x-apideck-app-id` string, required
- `x-apideck-service-id` string
- `x-apideck-follow-redirects` boolean

## Response `200`

File Download. When the request includes `x-apideck-follow-redirects: false` and the download would otherwise redirect to a presigned URL, the response body is instead an `application/json` object `{ url, expires_at }` — fetch `url` explicitly (without the Authorization header) to retrieve the file.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `402` — Payment Required
- `404` — The specified resource was not found
- `422` — Unprocessable
- `default` — Unexpected error

## Changes

- **2026-08-10** `c8b9037188f3` — 1 info
  - added the new optional `header` request parameter `x-apideck-follow-redirects`

[Change history](https://skmtc.dev/apideck-libraries/apis/file-storage-api/changes/file-storage/files/:id/download/get.md)

---

[API](https://skmtc.dev/apideck-libraries/apis/file-storage-api.md) · [All operations](https://skmtc.dev/apideck-libraries/apis/file-storage-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/apideck-libraries/file-storage-api/revisions/2d44271f3bdd/schema)
