listProducts - Product Module Reference

This documentation provides a reference to the listProducts 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.

This method is used to retrieve a paginated list of products based on optional filters and configuration.

Example#

To retrieve a list of products using their IDs:

Code
1const products = await productModuleService.listProducts({2  id: ["prod_123", "prod_321"],3})

To specify relations that should be retrieved within the products:

Code
1const products = await productModuleService.listProducts(2  {3    id: ["prod_123", "prod_321"],4  },5  {6    relations: ["categories"],7  }8)

By default, only the first 15 records are retrieved. You can control pagination by specifying the skip and take properties of the config parameter:

Code
1const products = await productModuleService.listProducts(2  {3    id: ["prod_123", "prod_321"],4  },5  {6    relations: ["categories"],7    take: 20,8    skip: 2,9  }10)

Parameters#

filtersFilterableProductPropsOptional
The filters to apply on the retrieved products.
configFindConfig<ProductDTO>Optional
The configurations determining how the products are retrieved. Its properties, such as select or relations, accept the attributes or relations associated with a product.
sharedContextContextOptional
A context used to share resources, such as transaction manager, between the application and the module.

Returns#

PromisePromise<ProductDTO[]>
The list of products.
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