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

Function: updateItem()

updateItem<Schema, Collection, TQuery, Item>(collection, key, item, query?): RestCommand<IfAny<Schema, Record<string, any>, Merge<MappedFunctionFields<Schema, UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>> extends FF ? MapFlatFields<UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>, FieldsWildcard<UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>, 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<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>> ? Extract<UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>[Field], ItemType<Schema>> extends RelatedCollection ? IsNullable<UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>[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 an existing item.

Type parameters

Schema extends object

Collection extends string | number | symbol

TQuery extends Query<Schema, Schema[Collection]>

Item = UnpackList<Schema[Collection]>

Parameters

collection: Collection

The collection of the item

key: string | number

The primary key of the item

item: Partial<Item>

The item data to update

query?: TQuery

Optional return data query

Returns

RestCommand<IfAny<Schema, Record<string, any>, Merge<MappedFunctionFields<Schema, UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>> extends FF ? MapFlatFields<UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>, FieldsWildcard<UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>, 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<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>> ? Extract<UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>[Field], ItemType<Schema>> extends RelatedCollection ? IsNullable<UnpackList<IfAny<Schema, any, Collection extends keyof Schema ? UnpackList<Schema[Collection]> extends object ? object & UnpackList<Schema[Collection]> : never : never>>[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 item object of the item that was updated.

Throws

Will throw if key is empty

Throws

Will throw if collection is empty

Throws

Will throw if collection is a core collection

Source

rest/commands/update/items.ts:68