---
title: "Download File"
method: GET
path: "/api/v1/files/download"
tags: ["downloads"]
---

# Download File

`GET /api/v1/files/download`

## Request

- Base URL: `https://ndi-api.nace.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://ndi-api.nace.ai/api/v1/files/download`
- Auth: none declared
- TypeScript: <https://skmtc.dev/nace/apis/ndi-service/docs/api/v1/files/download/get.ts> (a function with typed inputs; its response is checked against the schema)

Serve one local-store object named by a verified download token.

``token`` defaults to empty so a missing token takes the same 403 path
as a bad one (presigned-URL parity), not FastAPI's 422.

``file`` and ``content_manifest`` tokens are not checked for revocation, by
design (CON-70): such a token is a bearer HMAC grant that names no key or
client, like the presigned S3 URLs it stands in for. Revoking a key or disabling a tenant or partner stops minting new
tokens, but one already issued stays valid until it expires. Its TTL is the
whole bound on that exposure: ``JOB_DOWNLOAD_LINK_TTL_SECONDS`` (300s) for
job links, ``DOWNLOAD_URL_TTL_SECONDS`` (900s) for ``get_file``, and
``NDI_PRESIGN_TTL_SECONDS`` (3600s by default) for previews.

Customer workspace grants are the exception: each request rechecks the
tenant and its parent, the binding, the connection and the granted object
or document job, so revocation, replacement, deletion or expiry stops an
issued link. Past the signature check those refusals are typed platform errors.

## Query parameters

- `token` string

## Response `200`

Successful Response

- unknown

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `402`: Payment Required
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `413`: Request Entity Too Large
- `422`: Unprocessable Entity
- `500`: Internal Server Error
- `503`: Service Unavailable

---

[API](https://skmtc.dev/nace/apis/ndi-service.md) - [All operations](https://skmtc.dev/nace/apis/ndi-service/llms.txt) - [OpenAPI document](https://skmtc.dev/nace/apis/ndi-service/revisions/d9d1f8ec2207?raw)
