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 / readPolicy

Function: readPolicy() ​

readPolicy<Schema, TQuery>(key, query?): RestCommand<IfAny<Schema, Record<string, any>, { [K in string | number | symbol]: Merge<MappedFunctionFields<Schema, UnpackList<IfAny<Schema, { admin_access: boolean; app_access: boolean; description: (...) | (...); enforce_tfa: boolean; icon: string; id: string; ip_access: (...) | (...); name: string; permissions: (...) | (...); roles: (...) | (...); users: (...) | (...) }, "directus_policies" extends keyof (...) ? (...) extends (...) ? (...) : (...) : { admin_access: ...; app_access: ...; description: ...; enforce_tfa: ...; icon: ...; id: ...; ip_access: ...; name: ...; permissions: ...; roles: ...; users: ... }>>> extends FF ? MapFlatFields<UnpackList<IfAny<Schema, { admin_access: boolean; app_access: boolean; description: (...) | (...); enforce_tfa: boolean; icon: string; id: string; ip_access: (...) | (...); name: string; permissions: (...) | (...); roles: (...) | (...); users: (...) | (...) }, "directus_policies" extends keyof (...) ? (...) extends (...) ? (...) : (...) : { admin_access: ...; app_access: ...; description: ...; enforce_tfa: ...; icon: ...; id: ...; ip_access: ...; name: ...; permissions: ...; roles: ...; users: ... }>>, FieldsWildcard<UnpackList<IfAny<Schema, { admin_access: ...; app_access: ...; description: ...; enforce_tfa: ...; icon: ...; id: ...; ip_access: ...; name: ...; permissions: ...; roles: ...; users: ... }, (...) 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/policies.ts:41

Read a specific policy.

Type Parameters ​

• Schema

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

Parameters ​

key ​

DirectusPolicy<Schema>["id"]

The primary key of the permission

query? ​

TQuery

The query parameters

Returns ​

RestCommand<IfAny<Schema, Record<string, any>, { [K in string | number | symbol]: Merge<MappedFunctionFields<Schema, UnpackList<IfAny<Schema, { admin_access: boolean; app_access: boolean; description: (...) | (...); enforce_tfa: boolean; icon: string; id: string; ip_access: (...) | (...); name: string; permissions: (...) | (...); roles: (...) | (...); users: (...) | (...) }, "directus_policies" extends keyof (...) ? (...) extends (...) ? (...) : (...) : { admin_access: ...; app_access: ...; description: ...; enforce_tfa: ...; icon: ...; id: ...; ip_access: ...; name: ...; permissions: ...; roles: ...; users: ... }>>> extends FF ? MapFlatFields<UnpackList<IfAny<Schema, { admin_access: boolean; app_access: boolean; description: (...) | (...); enforce_tfa: boolean; icon: string; id: string; ip_access: (...) | (...); name: string; permissions: (...) | (...); roles: (...) | (...); users: (...) | (...) }, "directus_policies" extends keyof (...) ? (...) extends (...) ? (...) : (...) : { admin_access: ...; app_access: ...; description: ...; enforce_tfa: ...; icon: ...; id: ...; ip_access: ...; name: ...; permissions: ...; roles: ...; users: ... }>>, FieldsWildcard<UnpackList<IfAny<Schema, { admin_access: ...; app_access: ...; description: ...; enforce_tfa: ...; icon: ...; id: ...; ip_access: ...; name: ...; permissions: ...; roles: ...; users: ... }, (...) 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 Policy object if a valid primary key was provided.

Throws ​

Will throw if key is empty