GET
/
admin
/
products
/
{id}
/
variants
import Medusa from "@medusajs/js-sdk"

export const sdk = new Medusa({
  baseUrl: import.meta.env.VITE_BACKEND_URL || "/",
  debug: import.meta.env.DEV,
  auth: {
    type: "session",
  },
})

sdk.admin.product.listVariants("prod_123")
.then(({ variants, count, limit, offset }) => {
  console.log(variants)
})
{
"limit": 123,
"offset": 123,
"count": 123,
"variants": [
{
"prices": [
{
"id": "<string>",
"title": "<string>",
"currency_code": "usd",
"amount": 123,
"raw_amount": {},
"min_quantity": 123,
"max_quantity": 123,
"price_set_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
}
],
"id": "<string>",
"title": "<string>",
"sku": "<string>",
"barcode": "<string>",
"ean": "<string>",
"upc": "<string>",
"allow_backorder": true,
"manage_inventory": true,
"inventory_quantity": 123,
"hs_code": "<string>",
"origin_country": "<string>",
"mid_code": "<string>",
"material": "<string>",
"weight": 123,
"length": 123,
"height": 123,
"width": 123,
"variant_rank": 123,
"options": [
{
"id": "<string>",
"value": "<string>",
"option": {
"id": "<string>",
"title": "<string>",
"product": {},
"product_id": "<string>",
"values": [
{}
],
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
},
"option_id": "<string>",
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
}
],
"product": {},
"product_id": "<string>",
"calculated_price": {
"id": "<string>",
"is_calculated_price_price_list": true,
"is_calculated_price_tax_inclusive": true,
"calculated_amount": 123,
"calculated_amount_with_tax": 123,
"calculated_amount_without_tax": 123,
"is_original_price_price_list": true,
"is_original_price_tax_inclusive": true,
"original_amount": 123,
"currency_code": "usd",
"calculated_price": {},
"original_price": {},
"original_amount_with_tax": 123,
"original_amount_without_tax": 123
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z",
"metadata": {},
"inventory_items": [
{
"id": "<string>",
"variant_id": "<string>",
"variant": {},
"inventory_item_id": "<string>",
"inventory": {
"id": "<string>",
"sku": "<string>",
"origin_country": "<string>",
"hs_code": "<string>",
"requires_shipping": true,
"mid_code": "<string>",
"material": "<string>",
"weight": 123,
"length": 123,
"height": 123,
"width": 123,
"title": "<string>",
"description": "<string>",
"thumbnail": "<string>",
"metadata": {},
"location_levels": [
{
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z",
"inventory_item_id": "<string>",
"location_id": "<string>",
"stocked_quantity": 123,
"reserved_quantity": 123,
"incoming_quantity": 123,
"metadata": {},
"inventory_item": {},
"available_quantity": 123
}
]
}
}
]
}
]
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

The product's ID.

Query Parameters

fields
string

Comma-separated fields that should be included in the returned data. if a field is prefixed with + it will be added to the default fields, using - will remove it from the default fields. without prefix it will replace the entire default fields.

offset
number

The number of items to skip when retrieving a list.

limit
number

Limit the number of items returned in the list.

order
string

The field to sort the data by. By default, the sort order is ascending. To change the order to descending, prefix the field name with -.

q
string

Search term to filter the variant's search attributes.

id

Filter by a variant's ID.

manage_inventory
boolean

Filter by whether a variant's manage_inventory property is enabled.

allow_backorder
boolean

Filter by whether backorders are allowed for the variant.

created_at
object

Filter by the product's creation date.

updated_at
object

Filter by the product's update date.

deleted_at
object

Filter by the product's deletion date.

$and
$and · object[]

Join query parameters with an AND condition. Each object's content is the same type as the expected query parameters.

$or
$or · object[]

Join query parameters with an OR condition. Each object's content is the same type as the expected query parameters.

with_deleted
boolean

Whether to include deleted records in the result.

ean

The product's ean.

upc

The product's upc.

barcode

The product's barcode.

Response

200
application/json

OK

The paginated list of product variants.