upsertProductVariants - Product Module Reference

This documentation provides a reference to the upsertProductVariants method. This belongs to the Product Module.

NoteYou should only use this methods when implementing complex customizations. For common cases, check out available workflows instead.

upsertProductVariants(data, sharedContext?): Promise<ProductVariantDTO[]>#

This method updates existing variants, or creates new ones if they don't exist.

Example#

Code
1const variants = await productModuleService.upsertProductVariants([2  {3    id: "variant_123",4    title: "Green Shirt",5  },6  {7    title: "Blue Shirt",8    options: {9      Color: "Blue",10    },11  },12])

Parameters#

The attributes to update or create for each variant.
sharedContextContextOptional
A context used to share resources, such as transaction manager, between the application and the module.

Returns#

PromisePromise<ProductVariantDTO[]>
The updated and created variants.

upsertProductVariants(data, sharedContext?): Promise<ProductVariantDTO>#

This method updates an existing variant, or creates a new one if it doesn't exist.

Example#

Code
1const variant = await productModuleService.upsertProductVariants({2  id: "variant_123",3  title: "Green Shirt",4})

Parameters#

The attributes to update or create for the variant.
sharedContextContextOptional
A context used to share resources, such as transaction manager, between the application and the module.

Returns#

PromisePromise<ProductVariantDTO>
The updated or created variant.
Was this page helpful?
Ask Anything
FAQ
What is Medusa?
How can I create a module?
How can I create a data model?
How do I create a workflow?
How can I extend a data model in the Product Module?
Recipes
How do I build a marketplace with Medusa?
How do I build digital products with Medusa?
How do I build subscription-based purchases with Medusa?
What other recipes are available in the Medusa documentation?
Chat is cleared on refresh
Line break