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

Function: updateCollection()

updateCollection<Schema, TQuery>(collection, item, query?): RestCommand<IfAny<Schema, Record<string, any>, Merge<MappedFunctionFields<Schema, DirectusCollection<Schema>> extends FF ? MapFlatFields<DirectusCollection<Schema>, FieldsWildcard<DirectusCollection<Schema>, 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 DirectusCollection<Schema> ? Extract<DirectusCollection<Schema>[Field], ItemType<Schema>> extends RelatedCollection ? IsNullable<DirectusCollection<Schema>[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>

Update the metadata for an existing collection.

Type parameters

Schema extends object

TQuery extends Query<Schema, DirectusCollection<Schema>>

Parameters

collection: string

item: NestedPartial<DirectusCollection<Schema>>

query?: TQuery

Returns

RestCommand<IfAny<Schema, Record<string, any>, Merge<MappedFunctionFields<Schema, DirectusCollection<Schema>> extends FF ? MapFlatFields<DirectusCollection<Schema>, FieldsWildcard<DirectusCollection<Schema>, 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 DirectusCollection<Schema> ? Extract<DirectusCollection<Schema>[Field], ItemType<Schema>> extends RelatedCollection ? IsNullable<DirectusCollection<Schema>[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>

The collection object for the updated collection in this request.

Throws

Will throw if collection is empty

Source

rest/commands/update/collections.ts:21