Skip to content
On this page

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

Function: createPermissions()

createPermissions<Schema, TQuery>(items, query?): RestCommand<IfAny<Schema, Record<string, any>, Merge<MappedFunctionFields<Schema, UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>> extends FF ? MapFlatFields<UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>, FieldsWildcard<UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>, Exclude<UnpackList<Mutable<TQuery["fields"]>>, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>> extends never ? never : AllKeys<UnpackList<UnpackList<Mutable<TQuery["fields"]>>> extends Field ? Field extends object ? Field : never : never>>>, FF extends Record<string, string> ? FF : Record<string, string>> : never, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>> extends never ? never : { [Field in string | number | symbol]: Field extends keyof UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>> ? Extract<UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>[Field], ItemType<Schema>> extends RelatedCollection ? IsNullable<UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>[Field], null | (RelatedCollection extends any[] ? HasManyToAnyRelation<RelatedCollection> extends never ? null | ApplyNestedQueryFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field]>[] : ApplyManyToAnyFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field], UnpackList<RelatedCollection>>[] : ApplyNestedQueryFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field]>), RelatedCollection extends any[] ? HasManyToAnyRelation<RelatedCollection> extends never ? null | ApplyNestedQueryFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field]>[] : ApplyManyToAnyFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field], UnpackList<RelatedCollection>>[] : ApplyNestedQueryFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field]>> : never : never }>>[], Schema>

Create multiple new permission rules

Type parameters

Schema extends object

TQuery extends Query<Schema, DirectusPermission<Schema>>

Parameters

items: Partial<DirectusPermission<Schema>>[]

The permission rules to create

query?: TQuery

Optional return data query

Returns

RestCommand<IfAny<Schema, Record<string, any>, Merge<MappedFunctionFields<Schema, UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>> extends FF ? MapFlatFields<UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>, FieldsWildcard<UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>, Exclude<UnpackList<Mutable<TQuery["fields"]>>, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>> extends never ? never : AllKeys<UnpackList<UnpackList<Mutable<TQuery["fields"]>>> extends Field ? Field extends object ? Field : never : never>>>, FF extends Record<string, string> ? FF : Record<string, string>> : never, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>> extends never ? never : { [Field in string | number | symbol]: Field extends keyof UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>> ? Extract<UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>[Field], ItemType<Schema>> extends RelatedCollection ? IsNullable<UnpackList<MergeCoreCollection<Schema, "directus_permissions", Object>>[Field], null | (RelatedCollection extends any[] ? HasManyToAnyRelation<RelatedCollection> extends never ? null | ApplyNestedQueryFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field]>[] : ApplyManyToAnyFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field], UnpackList<RelatedCollection>>[] : ApplyNestedQueryFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field]>), RelatedCollection extends any[] ? HasManyToAnyRelation<RelatedCollection> extends never ? null | ApplyNestedQueryFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field]>[] : ApplyManyToAnyFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field], UnpackList<RelatedCollection>>[] : ApplyNestedQueryFields<Schema, RelatedCollection, PickRelationalFields<UnpackList<Mutable<TQuery["fields"]>>>[Field]>> : never : never }>>[], Schema>

Returns the permission objects for the created permissions.

Source

rest/commands/create/permissions.ts:20