listVariants - Product Module Reference
BetaThis documentation provides a reference to the listVariants method. This belongs to the Product Module.
This method is used to retrieve a paginated list of product variants based on optional filters and configuration.
Example
To retrieve a list of product variants using their IDs:
import {
initialize as initializeProductModule,
} from "@medusajs/product"
async function retrieveProductVariants (ids: string[]) {
const productModule = await initializeProductModule()
const variants = await productModule.listVariants({
id: ids
})
// do something with the product variants or return them
}
To specify relations that should be retrieved within the product variants:
import {
initialize as initializeProductModule,
} from "@medusajs/product"
async function retrieveProductVariants (ids: string[]) {
const productModule = await initializeProductModule()
const variants = await productModule.listVariants({
id: ids
}, {
relations: ["options"]
})
// do something with the product variants or return them
}
By default, only the first 15
records are retrieved. You can control pagination by specifying the skip
and take
properties of the config
parameter:
import {
initialize as initializeProductModule,
} from "@medusajs/product"
async function retrieveProductVariants (ids: string[], skip: number, take: number) {
const productModule = await initializeProductModule()
const variants = await productModule.listVariants({
id: ids
}, {
relations: ["options"],
skip,
take
})
// do something with the product variants or return them
}
You can also use the $and
or $or
properties of the filter
parameter to use and/or conditions in your filters. For example:
import {
initialize as initializeProductModule,
} from "@medusajs/product"
async function retrieveProductVariants (ids: string[], sku: string, skip: number, take: number) {
const productModule = await initializeProductModule()
const variants = await productModule.listVariants({
$and: [
{
id: ids
},
{
sku
}
]
}, {
relations: ["options"],
skip,
take
})
// do something with the product variants or return them
}
Parameters
The filters applied on the retrieved product variants.
config
FindConfig<ProductVariantDTO>The configurations determining how the product variants are retrieved. Its properties, such as select
or relations
, accept the
attributes or relations associated with a product variant.
config
FindConfig<ProductVariantDTO>select
or relations
, accept the
attributes or relations associated with a product variant.sharedContext
ContextA context used to share resources, such as transaction manager, between the application and the module.
sharedContext
ContextReturns
The list of product variants.
Was this section helpful?