---
title: "Download a file the client uploaded"
method: GET
path: "/portal/{slug}/files/{fileId}"
tags: ["Portal"]
---

# Download a file the client uploaded

`GET /portal/{slug}/files/{fileId}`

## Request

- Base URL: `https://api.briefgate.dev`
- URL: `https://api.briefgate.dev/portal/{slug}/files/{fileId}`
- Auth: none required

Redirects (302) to a short-lived signed storage URL for a file on this intake. Requires a valid portal session, and the file must have passed the virus scan — a file that is still being processed returns 422 rather than a URL.

## Path parameters

- `slug` string, required
- `fileId` string, required

## Other responses

- `302`: Redirect to a signed storage URL
- `401`: No valid portal session
- `404`: Resource not found
- `422`: File is not servable yet (still scanning or quarantined)

---

[API](https://skmtc.dev/briefgate/apis/briefgate-api.md) · [All operations](https://skmtc.dev/briefgate/apis/briefgate-api/llms.txt) · [OpenAPI document](https://skmtc.dev/briefgate/apis/briefgate-api/revisions/b21afed4748b?raw)
