Skip to content
On this page

Directus Cloud

Everything you need to start building. Provisioned in 90 seconds. Starting at $15/month.

Get Started

This is an auto-generated document to support extension builders understand the internal packages they can utilize. To find our written guides, tutorials, and API/SDK reference, check out our main docs .

Directus / @directus/sdk / rest / readFile

Function: readFile() ​

readFile<Schema, TQuery>(key, query?): RestCommand<IfAny<Schema, Record<string, any>, { [K in string | number | symbol]: Merge<MappedFunctionFields<Schema, UnpackList<IfAny<Schema, { charset: (...) | (...); description: (...) | (...); duration: (...) | (...); embed: unknown; filename_disk: (...) | (...); filename_download: string; filesize: (...) | (...); focal_point_x: (...) | (...); focal_point_y: (...) | (...); folder: (...) | (...) | (...); height: (...) | (...); id: string; location: (...) | (...); metadata: (...) | (...); modified_by: (...) | (...) | (...); modified_on: "datetime"; storage: string; tags: (...) | (...); title: (...) | (...); type: (...) | (...); uploaded_by: (...) | (...) | (...); uploaded_on: "datetime"; width: (...) | (...) }, "directus_files" extends keyof (...) ? (...) extends (...) ? (...) : (...) : { charset: ...; description: ...; duration: ...; embed: ...; filename_disk: ...; filename_download: ...; filesize: ...; focal_point_x: ...; focal_point_y: ...; folder: ...; height: ...; id: ...; location: ...; metadata: ...; modified_by: ...; modified_on: ...; storage: ...; tags: ...; title: ...; type: ...; uploaded_by: ...; uploaded_on: ...; width: ... }>>> extends FF ? MapFlatFields<UnpackList<IfAny<Schema, { charset: (...) | (...); description: (...) | (...); duration: (...) | (...); embed: unknown; filename_disk: (...) | (...); filename_download: string; filesize: (...) | (...); focal_point_x: (...) | (...); focal_point_y: (...) | (...); folder: (...) | (...) | (...); height: (...) | (...); id: string; location: (...) | (...); metadata: (...) | (...); modified_by: (...) | (...) | (...); modified_on: "datetime"; storage: string; tags: (...) | (...); title: (...) | (...); type: (...) | (...); uploaded_by: (...) | (...) | (...); uploaded_on: "datetime"; width: (...) | (...) }, "directus_files" extends keyof (...) ? (...) extends (...) ? (...) : (...) : { charset: ...; description: ...; duration: ...; embed: ...; filename_disk: ...; filename_download: ...; filesize: ...; focal_point_x: ...; focal_point_y: ...; folder: ...; height: ...; id: ...; location: ...; metadata: ...; modified_by: ...; modified_on: ...; storage: ...; tags: ...; title: ...; type: ...; uploaded_by: ...; uploaded_on: ...; width: ... }>>, FieldsWildcard<UnpackList<IfAny<Schema, { charset: ...; description: ...; duration: ...; embed: ...; filename_disk: ...; filename_download: ...; filesize: ...; focal_point_x: ...; focal_point_y: ...; folder: ...; height: ...; id: ...; location: ...; metadata: ...; modified_by: ...; modified_on: ...; storage: ...; tags: ...; title: ...; type: ...; uploaded_by: ...; uploaded_on: ...; width: ... }, (...) extends (...) ? (...) : (...)>>, Exclude<UnpackList<Mutable<(...)>>, PickRelationalFields<(...)> extends never ? never : AllKeys<(...)>>>, FF extends Record<string, string> ? FF<FF> : Record<string, string>> : never, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>> extends never ? never : { [Field in string | number | symbol]: Field extends keyof UnpackList<IfAny<(...), (...), (...)>> ? Extract<(...)[(...)], ItemType<(...)>> extends RelatedCollection ? IsNullable<(...)[(...)], (...) | (...), (...) extends (...) ? (...) : (...)> : never : never }>[K] }>, Schema>

Defined in: rest/commands/read/files.ts:35

Retrieve a single file by primary key.

Type Parameters ​

• Schema

• TQuery extends Query<Schema, DirectusFile<Schema>>

Parameters ​

key ​

DirectusFile<Schema>["id"]

The primary key of the dashboard

query? ​

TQuery

The query parameters

Returns ​

RestCommand<IfAny<Schema, Record<string, any>, { [K in string | number | symbol]: Merge<MappedFunctionFields<Schema, UnpackList<IfAny<Schema, { charset: (...) | (...); description: (...) | (...); duration: (...) | (...); embed: unknown; filename_disk: (...) | (...); filename_download: string; filesize: (...) | (...); focal_point_x: (...) | (...); focal_point_y: (...) | (...); folder: (...) | (...) | (...); height: (...) | (...); id: string; location: (...) | (...); metadata: (...) | (...); modified_by: (...) | (...) | (...); modified_on: "datetime"; storage: string; tags: (...) | (...); title: (...) | (...); type: (...) | (...); uploaded_by: (...) | (...) | (...); uploaded_on: "datetime"; width: (...) | (...) }, "directus_files" extends keyof (...) ? (...) extends (...) ? (...) : (...) : { charset: ...; description: ...; duration: ...; embed: ...; filename_disk: ...; filename_download: ...; filesize: ...; focal_point_x: ...; focal_point_y: ...; folder: ...; height: ...; id: ...; location: ...; metadata: ...; modified_by: ...; modified_on: ...; storage: ...; tags: ...; title: ...; type: ...; uploaded_by: ...; uploaded_on: ...; width: ... }>>> extends FF ? MapFlatFields<UnpackList<IfAny<Schema, { charset: (...) | (...); description: (...) | (...); duration: (...) | (...); embed: unknown; filename_disk: (...) | (...); filename_download: string; filesize: (...) | (...); focal_point_x: (...) | (...); focal_point_y: (...) | (...); folder: (...) | (...) | (...); height: (...) | (...); id: string; location: (...) | (...); metadata: (...) | (...); modified_by: (...) | (...) | (...); modified_on: "datetime"; storage: string; tags: (...) | (...); title: (...) | (...); type: (...) | (...); uploaded_by: (...) | (...) | (...); uploaded_on: "datetime"; width: (...) | (...) }, "directus_files" extends keyof (...) ? (...) extends (...) ? (...) : (...) : { charset: ...; description: ...; duration: ...; embed: ...; filename_disk: ...; filename_download: ...; filesize: ...; focal_point_x: ...; focal_point_y: ...; folder: ...; height: ...; id: ...; location: ...; metadata: ...; modified_by: ...; modified_on: ...; storage: ...; tags: ...; title: ...; type: ...; uploaded_by: ...; uploaded_on: ...; width: ... }>>, FieldsWildcard<UnpackList<IfAny<Schema, { charset: ...; description: ...; duration: ...; embed: ...; filename_disk: ...; filename_download: ...; filesize: ...; focal_point_x: ...; focal_point_y: ...; folder: ...; height: ...; id: ...; location: ...; metadata: ...; modified_by: ...; modified_on: ...; storage: ...; tags: ...; title: ...; type: ...; uploaded_by: ...; uploaded_on: ...; width: ... }, (...) extends (...) ? (...) : (...)>>, Exclude<UnpackList<Mutable<(...)>>, PickRelationalFields<(...)> extends never ? never : AllKeys<(...)>>>, FF extends Record<string, string> ? FF<FF> : Record<string, string>> : never, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>> extends never ? never : { [Field in string | number | symbol]: Field extends keyof UnpackList<IfAny<(...), (...), (...)>> ? Extract<(...)[(...)], ItemType<(...)>> extends RelatedCollection ? IsNullable<(...)[(...)], (...) | (...), (...) extends (...) ? (...) : (...)> : never : never }>[K] }>, Schema>

Returns a file object if a valid primary key was provided.

Throws ​

Will throw if key is empty