---
title: "Get a file"
method: GET
path: "/matters/{matterId}/documents/files/{fileId}"
tags: ["Files"]
---

# Get a file

`GET /matters/{matterId}/documents/files/{fileId}`

Retrieves a specified file. The matterId in the route is used for authorisation only and is not cross-checked
against the matter the file belongs to.

## Path parameters

- `fileId` string, required
- `matterId` string, required

## Response `200`

When request is successful. Returns a 'File' object.

- File
  - `href` string, nullable
  - `relation` string, nullable
  - `method` string, nullable
  - `self` Link
    - `id` string, nullable
    - `href` string, nullable
    - `relation` string, nullable
    - `method` string, nullable
  - `id` string, nullable — Unique identifier of the file.
  - `versionId` string, nullable — Unique identifier of the file's current version. Changes each time new content is uploaded for the file.
  - `folder` Link
    - `id` string, nullable
    - `href` string, nullable
    - `relation` string, nullable
    - `method` string, nullable
  - `matter` Link
    - `id` string, nullable
    - `href` string, nullable
    - `relation` string, nullable
    - `method` string, nullable
  - `name` string, nullable — Name of the file, excluding file extension.
  - `fileExtension` string, nullable — Extension of the file.
  - `ownerId` string, nullable — Unique identifier of the user who created/uploaded this file.
  - `to` string, nullable — The 'To' or recipients' email address (only applicable for email files).
  - `from` string, nullable — The 'From' or sender's email address (only applicable for email files).
  - `dateCreated` string, date-time — The original datetime that the file was created.
  - `dateModified` string, date-time — The datetime that the file was last modified.
  - `sizeBytes` integer — Size of the file (in bytes).
  - `downloadInfo` Link
    - `id` string, nullable
    - `href` string, nullable
    - `relation` string, nullable
    - `method` string, nullable
  - `additionalData` object, nullable — Collection of file meta data as key/value pairs. Values may be strings, numbers, booleans or dates.
  - `isFavorite` boolean — Flag indicating whether this file is a favorite
  - `isUploaded` boolean — Flag indicating whether the file contents are uploaded to the server.
  - `isCancelled` boolean — Flag indicating whether the file upload has been cancelled.
  - `isDuplicate` boolean — Flag indicating whether the file data is duplicated. Applies to emails only for now.
  - `isDeleted` boolean — Flag indicating whether the file has been deleted.

## Other responses

- `400` — When a supplied id is not a valid GUID.
- `403` — When the requested file does not belong to the account making the request.
- `404` — When the file does not exist or has no uploaded version yet (e.g. it was just created and the upload has not completed).

## Changes

- **2026-08-26** `db1b8a86b58e` — 1 info
  - added the non-success response with the status `400`

[Change history](https://skmtc.dev/smokeball/apis/api/changes/matters/:matterId/documents/files/:fileId/get.md)

---

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