---
displayed_sidebar: jsClientSidebar
slug: /references/js-client/AdminProductsResource
---

import ParameterTypes from "@site/src/components/ParameterTypes"

# AdminProductsResource

This class is used to send requests to [Admin Product API Routes](https://docs.medusajs.com/api/admin#products). All its method
are available in the JS Client under the `medusa.admin.products` property.

All methods in this class require [user authentication](js_client.AdminAuthResource.mdx#createsession).

Products are saleable items in a store. This also includes [saleable gift cards](https://docs.medusajs.com/modules/gift-cards/admin/manage-gift-cards#manage-gift-card-product) in a store.

Related Guide: [How to manage products](https://docs.medusajs.com/modules/products/admin/manage-products).

## Methods

### addOption

Add a product option to a product.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.addOption(productId, {
  title: "Size"
})
.then(({ product }) => {
  console.log(product.id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The product's ID.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "payload",
    "type": "[AdminPostProductsProductOptionsReq](../../medusa/classes/medusa.AdminPostProductsProductOptionsReq.mdx)",
    "description": "The option to add.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": [
      {
        "name": "title",
        "type": "`string`",
        "description": "The title the Product Option.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": []
      }
    ]
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the product's details. You can access the variant under the `options` property.",
    "expandable": false,
    "children": [
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### create

Create a new Product. This API Route can also be used to create a gift card if the `is_giftcard` field is set to `true`.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.create({
  title: "Shirt",
  is_giftcard: false,
  discountable: true
})
.then(({ product }) => {
  console.log(product.id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "payload",
    "type": "[AdminPostProductsReq](../../medusa/classes/medusa.AdminPostProductsReq.mdx)",
    "description": "The product to create.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": [
      {
        "name": "categories",
        "type": "[ProductProductCategoryReq](../../medusa/classes/medusa.ProductProductCategoryReq.mdx)[]",
        "description": "Product categories to add the Product to.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "featureFlag": "product_categories",
        "children": [
          {
            "name": "id",
            "type": "`string`",
            "description": "The ID of a Product Category.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "collection_id",
        "type": "`string`",
        "description": "The ID of the Product Collection the Product belongs to.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "description",
        "type": "`string`",
        "description": "The description of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "discountable",
        "type": "`boolean`",
        "description": "A flag to indicate if discounts can be applied to the Line Items generated from this Product",
        "optional": false,
        "defaultValue": "true",
        "expandable": false,
        "children": []
      },
      {
        "name": "handle",
        "type": "`string`",
        "description": "A unique handle to identify the Product by. If not provided, the kebab-case version of the product title will be used. This can be used as a slug in URLs.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "height",
        "type": "`number`",
        "description": "The height of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "hs_code",
        "type": "`string`",
        "description": "The Harmonized System code of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "images",
        "type": "`string`[]",
        "description": "An array of images of the Product. Each value in the array is a URL to the image. You can use the upload API Routes to upload the image and obtain a URL.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "is_giftcard",
        "type": "`boolean`",
        "description": "A flag to indicate if the Product represents a Gift Card. Purchasing Products with this flag set to `true` will result in a Gift Card being created.",
        "optional": false,
        "defaultValue": "false",
        "expandable": false,
        "children": []
      },
      {
        "name": "length",
        "type": "`number`",
        "description": "The length of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "material",
        "type": "`string`",
        "description": "The material composition of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "metadata",
        "type": "`Record<string, unknown>`",
        "description": "An optional set of key-value pairs with additional information.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "mid_code",
        "type": "`string`",
        "description": "The Manufacturer Identification code of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "options",
        "type": "[ProductOptionReq](../../medusa/classes/medusa.ProductOptionReq.mdx)[]",
        "description": "The Options that the Product should have. A new product option will be created for every item in the array.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "title",
            "type": "`string`",
            "description": "The title of the Product Option.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "origin_country",
        "type": "`string`",
        "description": "The country of origin of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "sales_channels",
        "type": "[ProductSalesChannelReq](../../medusa/classes/medusa.ProductSalesChannelReq.mdx)[]",
        "description": "Sales channels to associate the Product with.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "id",
            "type": "`string`",
            "description": "The ID of an existing Sales channel.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "status",
        "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
        "description": "The status of the product. The product is shown to the customer only if its status is `published`.",
        "optional": true,
        "defaultValue": "ProductStatus.DRAFT",
        "expandable": false,
        "children": [
          {
            "name": "DRAFT",
            "type": "`\"draft\"`",
            "description": "The product is a draft. It's not viewable by customers.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "PROPOSED",
            "type": "`\"proposed\"`",
            "description": "The product is proposed, but not yet published.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "PUBLISHED",
            "type": "`\"published\"`",
            "description": "The product is published.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "REJECTED",
            "type": "`\"rejected\"`",
            "description": "The product is rejected. It's not viewable by customers.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "subtitle",
        "type": "`string`",
        "description": "The subtitle of the Product",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "tags",
        "type": "[ProductTagReq](../../medusa/classes/medusa.ProductTagReq.mdx)[]",
        "description": "Product Tags to associate the Product with.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "id",
            "type": "`string`",
            "description": "The ID of an existing Product Tag. If not provided, a new product tag will be created.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "value",
            "type": "`string`",
            "description": "The value of the Tag. If the `id` is provided, the value of the existing tag will be updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "thumbnail",
        "type": "`string`",
        "description": "The thumbnail to use for the Product. The value is a URL to the thumbnail. You can use the upload API Routes to upload the thumbnail and obtain a URL.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "title",
        "type": "`string`",
        "description": "The title of the Product",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "type",
        "type": "[ProductTypeReq](../../medusa/classes/medusa.ProductTypeReq.mdx)",
        "description": "The Product Type to associate the Product with.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "id",
            "type": "`string`",
            "description": "The ID of the product type. It's only required when referring to an existing product type.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "value",
            "type": "`string`",
            "description": "The value of the product type.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "variants",
        "type": "[ProductVariantReq](../../medusa/classes/medusa.ProductVariantReq.mdx)[]",
        "description": "An array of Product Variants to create with the Product. Each product variant must have a unique combination of Product Option values.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "allow_backorder",
            "type": "`boolean`",
            "description": "Whether the Product Variant can be purchased when out of stock.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "barcode",
            "type": "`string`",
            "description": "A generic GTIN field of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "ean",
            "type": "`string`",
            "description": "The EAN number of the item.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`number`",
            "description": "The height of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`string`",
            "description": "The Harmonized System code of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "inventory_quantity",
            "type": "`number`",
            "description": "The amount of stock kept of the Product Variant.",
            "optional": true,
            "defaultValue": "0",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`number`",
            "description": "The length of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "manage_inventory",
            "type": "`boolean`",
            "description": "Whether Medusa should keep track of the inventory of this Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`string`",
            "description": "The material composition of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`Record<string, unknown>`",
            "description": "An optional set of key-value pairs with additional information.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`string`",
            "description": "The Manufacturer Identification code of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductVariantOptionReq](../../medusa/classes/medusa.ProductVariantOptionReq-2.mdx)[]",
            "description": "An array of Product Option values that the variant corresponds to. The option values should be added into the array in the same index as in the `options` field of the product.",
            "optional": true,
            "defaultValue": "[]",
            "expandable": false,
            "children": [
              {
                "name": "value",
                "type": "`string`",
                "description": "The value to give for the Product Option at the same index in the Product's `options` field.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`string`",
            "description": "The country of origin of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "prices",
            "type": "[ProductVariantPricesCreateReq](../../medusa/classes/medusa.ProductVariantPricesCreateReq.mdx)[]",
            "description": "An array of product variant prices. A product variant can have different prices for each region or currency code.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "amount",
                "type": "`number`",
                "description": "The price amount.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "currency_code",
                "type": "`string`",
                "description": "The 3 character ISO currency code the price will be used in. This is only required if `region\\_id` is not provided.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "max_quantity",
                "type": "`number`",
                "description": "The maximum quantity required to be added to the cart for the price to be used.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "min_quantity",
                "type": "`number`",
                "description": "The minimum quantity required to be added to the cart for the price to be used.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "region_id",
                "type": "`string`",
                "description": "The ID of the Region the price will be used in. This is only required if `currency\\_code` is not provided.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sku",
            "type": "`string`",
            "description": "The unique SKU of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "The title of the Product Variant.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "upc",
            "type": "`string`",
            "description": "The UPC number of the item.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "weight",
            "type": "`number`",
            "description": "The wieght of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`number`",
            "description": "The width of the Product Variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "weight",
        "type": "`number`",
        "description": "The weight of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "width",
        "type": "`number`",
        "description": "The width of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      }
    ]
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the product's details.",
    "expandable": false,
    "children": [
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### createVariant

Create a product variant associated with a product. Each product variant must have a unique combination of product option values.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.createVariant(productId, {
  title: "Color",
  prices: [
    {
      amount: 1000,
      currency_code: "eur"
    }
  ],
  options: [
    {
      option_id,
      value: "S"
    }
  ],
  inventory_quantity: 100
})
.then(({ product }) => {
  console.log(product.id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The ID of the product that the variant belongs to.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "payload",
    "type": "[AdminPostProductsProductVariantsReq](../../medusa/classes/medusa.AdminPostProductsProductVariantsReq.mdx)",
    "description": "The product variant to create.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": [
      {
        "name": "allow_backorder",
        "type": "`boolean`",
        "description": "Whether the product variant can be purchased when out of stock.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "barcode",
        "type": "`string`",
        "description": "A generic GTIN field of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "ean",
        "type": "`string`",
        "description": "The EAN number of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "height",
        "type": "`number`",
        "description": "The height of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "hs_code",
        "type": "`string`",
        "description": "The Harmonized System code of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "inventory_quantity",
        "type": "`number`",
        "description": "The amount of stock kept of the product variant.",
        "optional": true,
        "defaultValue": "0",
        "expandable": false,
        "children": []
      },
      {
        "name": "length",
        "type": "`number`",
        "description": "The length of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "manage_inventory",
        "type": "`boolean`",
        "description": "Whether Medusa should keep track of the inventory of this product variant.",
        "optional": true,
        "defaultValue": "true",
        "expandable": false,
        "children": []
      },
      {
        "name": "material",
        "type": "`string`",
        "description": "The material composition of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "metadata",
        "type": "`Record<string, unknown>`",
        "description": "An optional set of key-value pairs with additional information.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "mid_code",
        "type": "`string`",
        "description": "The Manufacturer Identification code of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "options",
        "type": "[ProductVariantOptionReq](../../medusa/classes/medusa.ProductVariantOptionReq.mdx)[]",
        "description": "An array of Product Option values that the variant corresponds to.",
        "optional": true,
        "defaultValue": "[]",
        "expandable": false,
        "children": [
          {
            "name": "option_id",
            "type": "`string`",
            "description": "The ID of the Product Option.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "value",
            "type": "`string`",
            "description": "A value to give to the Product Option.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "origin_country",
        "type": "`string`",
        "description": "The country of origin of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "prices",
        "type": "[ProductVariantPricesCreateReq](../../medusa/classes/medusa.ProductVariantPricesCreateReq.mdx)[]",
        "description": "An array of product variant prices. A product variant can have different prices for each region or currency code.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "amount",
            "type": "`number`",
            "description": "The price amount.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "currency_code",
            "type": "`string`",
            "description": "The 3 character ISO currency code the price will be used in. This is only required if `region\\_id` is not provided.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "max_quantity",
            "type": "`number`",
            "description": "The maximum quantity required to be added to the cart for the price to be used.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "min_quantity",
            "type": "`number`",
            "description": "The minimum quantity required to be added to the cart for the price to be used.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "region_id",
            "type": "`string`",
            "description": "The ID of the Region the price will be used in. This is only required if `currency\\_code` is not provided.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "sku",
        "type": "`string`",
        "description": "The unique SKU of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "title",
        "type": "`string`",
        "description": "The title of the product variant.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "upc",
        "type": "`string`",
        "description": "The UPC number of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "weight",
        "type": "`number`",
        "description": "The wieght of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "width",
        "type": "`number`",
        "description": "The width of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      }
    ]
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the product's details. You can access the variant under the `variants` property.",
    "expandable": false,
    "children": [
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### delete

Delete a product and its associated product variants and options.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.delete(productId)
.then(({ id, object, deleted }) => {
  console.log(id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The product's ID.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsDeleteRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the deletion operation's details.",
    "expandable": false,
    "children": [
      {
        "name": "deleted",
        "type": "`boolean`",
        "description": "Whether or not the items were deleted.",
        "optional": false,
        "defaultValue": "true",
        "expandable": false,
        "children": []
      },
      {
        "name": "id",
        "type": "`string`",
        "description": "The ID of the deleted Product.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "object",
        "type": "`\"product\"`",
        "description": "The type of the object that was deleted.",
        "optional": false,
        "defaultValue": "product",
        "expandable": false,
        "children": []
      }
    ]
  }
]} />

___

### deleteOption

Delete a product option. If there are product variants that use this product option, they must be deleted before deleting the product option.

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The ID of the product that the option belongs to.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "optionId",
    "type": "`string`",
    "description": "The ID of the product option.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsDeleteOptionRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the deletion operation's details.",
    "expandable": false,
    "children": [
      {
        "name": "deleted",
        "type": "`boolean`",
        "description": "Whether or not the items were deleted.",
        "optional": false,
        "defaultValue": "true",
        "expandable": false,
        "children": []
      },
      {
        "name": "object",
        "type": "`\"option\"`",
        "description": "The type of the object that was deleted.",
        "optional": false,
        "defaultValue": "option",
        "expandable": false,
        "children": []
      },
      {
        "name": "option_id",
        "type": "`string`",
        "description": "The ID of the deleted Product Option",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### deleteVariant

Delete a product variant.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.deleteVariant(productId, variantId)
.then(({ variant_id, object, deleted, product }) => {
  console.log(product.id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The ID of the product that the variant belongs to.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "variantId",
    "type": "`string`",
    "description": "The ID of the product variant.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsDeleteVariantRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the deletion operation's details.",
    "expandable": false,
    "children": [
      {
        "name": "deleted",
        "type": "`boolean`",
        "description": "Whether or not the items were deleted.",
        "optional": false,
        "defaultValue": "true",
        "expandable": false,
        "children": []
      },
      {
        "name": "object",
        "type": "`\"product-variant\"`",
        "description": "The type of the object that was deleted.",
        "optional": false,
        "defaultValue": "product-variant",
        "expandable": false,
        "children": []
      },
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "variant_id",
        "type": "`string`",
        "description": "The ID of the deleted Product Variant.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": []
      }
    ]
  }
]} />

___

### list

Retrieve a list of products. The products can be filtered by fields such as `q` or `status` passed in the `query` parameter. The products can also be sorted or paginated.

#### Example

To list products:

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.list()
.then(({ products, limit, offset, count }) => {
  console.log(products.length);
})
```

To specify relations that should be retrieved within the products:

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.list({
  expand: "images"
})
.then(({ products, limit, offset, count }) => {
  console.log(products.length);
})
```

By default, only the first `50` records are retrieved. You can control pagination by specifying the `limit` and `offset` properties:

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.list({
  expand: "images",
  limit,
  offset
})
.then(({ products, limit, offset, count }) => {
  console.log(products.length);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "query",
    "type": "[AdminGetProductsParams](../../medusa/classes/medusa.AdminGetProductsParams.mdx)",
    "description": "Filters and pagination configurations to apply on the retrieved products.",
    "optional": true,
    "defaultValue": "",
    "expandable": false,
    "children": [
      {
        "name": "category_id",
        "type": "`string`[]",
        "description": "Filter products by their associated product category's ID.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "collection_id",
        "type": "`string`[]",
        "description": "Filter products by their associated product collection's ID.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "created_at",
        "type": "[DateComparisonOperator](../../medusa/classes/medusa.DateComparisonOperator.mdx)",
        "description": "Date filters to apply on the products' `created_at` date.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "gt",
            "type": "`Date`",
            "description": "The filtered date must be greater than this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "gte",
            "type": "`Date`",
            "description": "The filtered date must be greater than or equal to this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "lt",
            "type": "`Date`",
            "description": "The filtered date must be less than this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "lte",
            "type": "`Date`",
            "description": "The filtered date must be less than or equal to this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "deleted_at",
        "type": "[DateComparisonOperator](../../medusa/classes/medusa.DateComparisonOperator.mdx)",
        "description": "Date filters to apply on the products' `deleted_at` date.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "gt",
            "type": "`Date`",
            "description": "The filtered date must be greater than this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "gte",
            "type": "`Date`",
            "description": "The filtered date must be greater than or equal to this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "lt",
            "type": "`Date`",
            "description": "The filtered date must be less than this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "lte",
            "type": "`Date`",
            "description": "The filtered date must be less than or equal to this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "description",
        "type": "`string`",
        "description": "Description to filter products by.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "discount_condition_id",
        "type": "`string`",
        "description": "Filter products by their associated discount condition's ID.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "expand",
        "type": "`string`",
        "description": "Comma-separated relations that should be expanded in the returned data.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "fields",
        "type": "`string`",
        "description": "Comma-separated fields that should be included in the returned data.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "handle",
        "type": "`string`",
        "description": "Handle to filter products by.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "id",
        "type": "`string` \\| `string`[]",
        "description": "IDs to filter products by.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "include_category_children",
        "type": "`boolean`",
        "description": "Whether to include product category children in the response.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "featureFlag": "product_categories",
        "children": []
      },
      {
        "name": "is_giftcard",
        "type": "`boolean`",
        "description": "Filter products by whether they're gift cards.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "limit",
        "type": "`number`",
        "description": "Limit the number of items returned in the list.",
        "optional": true,
        "defaultValue": "50",
        "expandable": false,
        "children": []
      },
      {
        "name": "offset",
        "type": "`number`",
        "description": "The number of items to skip when retrieving a list.",
        "optional": true,
        "defaultValue": "0",
        "expandable": false,
        "children": []
      },
      {
        "name": "order",
        "type": "`string`",
        "description": "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 `-`.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "price_list_id",
        "type": "`string`[]",
        "description": "Filter products by their associated price lists' ID.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "q",
        "type": "`string`",
        "description": "Search term to search products' title, description, variants' title and sku, and collections' title.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "sales_channel_id",
        "type": "`string`[]",
        "description": "Filter products by their associated sales channels' ID.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "status",
        "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)[]",
        "description": "Statuses to filter products by.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "DRAFT",
            "type": "`\"draft\"`",
            "description": "The product is a draft. It's not viewable by customers.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "PROPOSED",
            "type": "`\"proposed\"`",
            "description": "The product is proposed, but not yet published.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "PUBLISHED",
            "type": "`\"published\"`",
            "description": "The product is published.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "REJECTED",
            "type": "`\"rejected\"`",
            "description": "The product is rejected. It's not viewable by customers.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "tags",
        "type": "`string`[]",
        "description": "Filter products by their associated tags' value.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "title",
        "type": "`string`",
        "description": "Title to filter products by.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "type_id",
        "type": "`string`[]",
        "description": "Filter products by their associated product type's ID.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "updated_at",
        "type": "[DateComparisonOperator](../../medusa/classes/medusa.DateComparisonOperator.mdx)",
        "description": "Date filters to apply on the products' `updated_at` date.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "gt",
            "type": "`Date`",
            "description": "The filtered date must be greater than this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "gte",
            "type": "`Date`",
            "description": "The filtered date must be greater than or equal to this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "lt",
            "type": "`Date`",
            "description": "The filtered date must be less than this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "lte",
            "type": "`Date`",
            "description": "The filtered date must be less than or equal to this value.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsListRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the list of products with pagination fields.",
    "expandable": false,
    "children": [
      {
        "name": "AdminProductsListRes",
        "type": "[PaginatedResponse](../../medusa/interfaces/medusa.PaginatedResponse.mdx) & `object`",
        "description": "The list of products with pagination fields.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "count",
            "type": "`number`",
            "description": "The total number of items available.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "limit",
            "type": "`number`",
            "description": "The maximum number of items that can be returned in the list.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "offset",
            "type": "`number`",
            "description": "The number of items skipped before the returned items in the list.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "products",
            "type": "([PricedProduct](../../medusa/types/medusa.PricedProduct.mdx) \\| [Product](../../entities/classes/entities.Product.mdx))[]",
            "description": "An array of products details.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### listTags

Retrieve a list of Product Tags with how many times each is used in products.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.listTags()
.then(({ tags }) => {
  console.log(tags.length);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsListTagsRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the list of tags.",
    "expandable": false,
    "children": [
      {
        "name": "tags",
        "type": "Pick&#60;[ProductTag](../../entities/classes/entities.ProductTag.mdx), \"id\" \\| \"value\"&#62; & `object`[]",
        "description": "An array of product tags details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "usage_count",
            "type": "`number`",
            "description": "The number of products that use this tag.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### retrieve

Retrieve a product's details.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.retrieve(productId)
.then(({ product }) => {
  console.log(product.id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The product's ID.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the product's details.",
    "expandable": false,
    "children": [
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### setMetadata

Set the metadata of a product. It can be any key-value pair, which allows adding custom data to a product. Learn about how you can update and delete the metadata attribute 
[here](https://docs.medusajs.com/development/entities/overview#metadata-attribute).

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.setMetadata(productId, {
  key: "test",
  value: "true"
})
.then(({ product }) => {
  console.log(product.id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The product's ID.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "payload",
    "type": "[AdminPostProductsProductMetadataReq](../../medusa/classes/medusa.AdminPostProductsProductMetadataReq.mdx)",
    "description": "The metadata details to add, update, or delete.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": [
      {
        "name": "key",
        "type": "`string`",
        "description": "The metadata key",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "value",
        "type": "`string`",
        "description": "The metadata value",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": []
      }
    ]
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the product's details.",
    "expandable": false,
    "children": [
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### update

Update a Product's details.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.update(productId, {
  title: "Shirt",
})
.then(({ product }) => {
  console.log(product.id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The product's ID.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "payload",
    "type": "[AdminPostProductsProductReq](../../medusa/classes/medusa.AdminPostProductsProductReq.mdx)",
    "description": "The attributes to update in a product.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": [
      {
        "name": "categories",
        "type": "[ProductProductCategoryReq](../../medusa/classes/medusa.ProductProductCategoryReq.mdx)[]",
        "description": "Product categories to add the Product to.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "featureFlag": "product_categories",
        "children": [
          {
            "name": "id",
            "type": "`string`",
            "description": "The ID of a Product Category.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "collection_id",
        "type": "`string`",
        "description": "The ID of the Product Collection the Product belongs to.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "description",
        "type": "`string`",
        "description": "The description of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "discountable",
        "type": "`boolean`",
        "description": "A flag to indicate if discounts can be applied to the Line Items generated from this Product",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "handle",
        "type": "`string`",
        "description": "A unique handle to identify the Product by. If not provided, the kebab-case version of the product title will be used. This can be used as a slug in URLs.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "height",
        "type": "`number`",
        "description": "The height of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "hs_code",
        "type": "`string`",
        "description": "The Harmonized System code of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "images",
        "type": "`string`[]",
        "description": "An array of images of the Product. Each value in the array is a URL to the image. You can use the upload API Routes to upload the image and obtain a URL.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "length",
        "type": "`number`",
        "description": "The length of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "material",
        "type": "`string`",
        "description": "The material composition of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "metadata",
        "type": "`Record<string, unknown>`",
        "description": "An optional set of key-value pairs with additional information.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "mid_code",
        "type": "`string`",
        "description": "The Manufacturer Identification code of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "origin_country",
        "type": "`string`",
        "description": "The country of origin of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "sales_channels",
        "type": "`null` \\| [ProductSalesChannelReq](../../medusa/classes/medusa.ProductSalesChannelReq.mdx)[]",
        "description": "Sales channels to associate the Product with.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "status",
        "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
        "description": "The status of the product. The product is shown to the customer only if its status is `published`.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "DRAFT",
            "type": "`\"draft\"`",
            "description": "The product is a draft. It's not viewable by customers.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "PROPOSED",
            "type": "`\"proposed\"`",
            "description": "The product is proposed, but not yet published.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "PUBLISHED",
            "type": "`\"published\"`",
            "description": "The product is published.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "REJECTED",
            "type": "`\"rejected\"`",
            "description": "The product is rejected. It's not viewable by customers.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "subtitle",
        "type": "`string`",
        "description": "The subtitle of the Product",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "tags",
        "type": "[ProductTagReq](../../medusa/classes/medusa.ProductTagReq.mdx)[]",
        "description": "Product Tags to associate the Product with.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "id",
            "type": "`string`",
            "description": "The ID of an existing Product Tag. If not provided, a new product tag will be created.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "value",
            "type": "`string`",
            "description": "The value of the Tag. If the `id` is provided, the value of the existing tag will be updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "thumbnail",
        "type": "`string`",
        "description": "The thumbnail to use for the Product. The value is a URL to the thumbnail. You can use the upload API Routes to upload the thumbnail and obtain a URL.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "title",
        "type": "`string`",
        "description": "The title of the Product",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "type",
        "type": "[ProductTypeReq](../../medusa/classes/medusa.ProductTypeReq.mdx)",
        "description": "The Product Type to associate the Product with.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "id",
            "type": "`string`",
            "description": "The ID of the product type. It's only required when referring to an existing product type.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "value",
            "type": "`string`",
            "description": "The value of the product type.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "variants",
        "type": "[ProductVariantReq](../../medusa/classes/medusa.ProductVariantReq-1.mdx)[]",
        "description": "An array of Product Variants to create with the Product. Each product variant must have a unique combination of Product Option values.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "allow_backorder",
            "type": "`boolean`",
            "description": "Whether the product variant can be purchased when out of stock.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "barcode",
            "type": "`string`",
            "description": "A generic GTIN field of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "ean",
            "type": "`string`",
            "description": "The EAN number of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`number`",
            "description": "The height of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`string`",
            "description": "The Harmonized System code of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The id of an existing product variant. If provided, the details of the product variant will be updated. If not, a new product variant will be created.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "inventory_quantity",
            "type": "`number`",
            "description": "The amount of stock kept of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`number`",
            "description": "The length of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "manage_inventory",
            "type": "`boolean`",
            "description": "Whether Medusa should keep track of the inventory of this product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`string`",
            "description": "The material composition of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`Record<string, unknown>`",
            "description": "An optional set of key-value pairs with additional information.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`string`",
            "description": "The Manufacturer Identification code of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductVariantOptionReq](../../medusa/classes/medusa.ProductVariantOptionReq-3.mdx)[]",
            "description": "An array of Product Option values that the variant corresponds to.",
            "optional": true,
            "defaultValue": "[]",
            "expandable": false,
            "children": [
              {
                "name": "option_id",
                "type": "`string`",
                "description": "The ID of the Option.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value of the Product Option.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`string`",
            "description": "The country of origin of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "prices",
            "type": "[ProductVariantPricesUpdateReq](../../medusa/classes/medusa.ProductVariantPricesUpdateReq.mdx)[]",
            "description": "An array of product variant prices. A product variant can have different prices for each region or currency code.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "amount",
                "type": "`number`",
                "description": "The price amount.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "currency_code",
                "type": "`string`",
                "description": "The 3 character ISO currency code the price will be used in. This is only required if `region\\_id` is not provided.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The ID of the Price. If provided, the existing price will be updated. Otherwise, a new price will be created.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "max_quantity",
                "type": "`number`",
                "description": "The maximum quantity required to be added to the cart for the price to be used.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "min_quantity",
                "type": "`number`",
                "description": "The minimum quantity required to be added to the cart for the price to be used.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "region_id",
                "type": "`string`",
                "description": "The ID of the Region the price will be used in. This is only required if `currency\\_code` is not provided.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sku",
            "type": "`string`",
            "description": "The unique SKU of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "The title of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "upc",
            "type": "`string`",
            "description": "The UPC number of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "weight",
            "type": "`number`",
            "description": "The weight of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`number`",
            "description": "The width of the product variant.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "weight",
        "type": "`number`",
        "description": "The weight of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "width",
        "type": "`number`",
        "description": "The width of the Product.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      }
    ]
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the product's details.",
    "expandable": false,
    "children": [
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### updateOption

Update a product option's details.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.updateOption(productId, optionId, {
  title: "Size"
})
.then(({ product }) => {
  console.log(product.id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The ID of the product that the option belongs to.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "optionId",
    "type": "`string`",
    "description": "The ID of the product option.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "payload",
    "type": "[AdminPostProductsProductOptionsOption](../../medusa/classes/medusa.AdminPostProductsProductOptionsOption.mdx)",
    "description": "The attributes to update in the product option.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": [
      {
        "name": "title",
        "type": "`string`",
        "description": "The title of the Product Option",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": []
      }
    ]
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the product's details. You can access the variant under the `options` property.",
    "expandable": false,
    "children": [
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />

___

### updateVariant

Update a product variant's details.

#### Example

```ts
import Medusa from "@medusajs/medusa-js"
const medusa = new Medusa({ baseUrl: MEDUSA_BACKEND_URL, maxRetries: 3 })
// must be previously logged in or use api token
medusa.admin.products.updateVariant(productId, variantId, {
  title: "Color",
  prices: [
    {
      amount: 1000,
      currency_code: "eur"
    }
  ],
  options: [
    {
      option_id,
      value: "S"
    }
  ],
  inventory_quantity: 100
})
.then(({ product }) => {
  console.log(product.id);
})
```

#### Parameters

<ParameterTypes parameters={[
  {
    "name": "id",
    "type": "`string`",
    "description": "The ID of the product that the variant belongs to.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "variantId",
    "type": "`string`",
    "description": "The ID of the product variant.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": []
  },
  {
    "name": "payload",
    "type": "[AdminPostProductsProductVariantsVariantReq](../../medusa/classes/medusa.AdminPostProductsProductVariantsVariantReq.mdx)",
    "description": "The attributes to update in the product variant.",
    "optional": false,
    "defaultValue": "",
    "expandable": false,
    "children": [
      {
        "name": "allow_backorder",
        "type": "`boolean`",
        "description": "Whether the product variant can be purchased when out of stock.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "barcode",
        "type": "`string`",
        "description": "A generic GTIN field of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "ean",
        "type": "`string`",
        "description": "The EAN number of the item.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "height",
        "type": "`number`",
        "description": "The height of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "hs_code",
        "type": "`string`",
        "description": "The Harmonized System code of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "inventory_quantity",
        "type": "`number`",
        "description": "The amount of stock kept of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "length",
        "type": "`number`",
        "description": "The length of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "manage_inventory",
        "type": "`boolean`",
        "description": "Whether Medusa should keep track of the inventory of this product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "material",
        "type": "`string`",
        "description": "The material composition of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "metadata",
        "type": "`Record<string, unknown>`",
        "description": "An optional set of key-value pairs with additional information.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "mid_code",
        "type": "`string`",
        "description": "The Manufacturer Identification code of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "options",
        "type": "[ProductVariantOptionReq](../../medusa/classes/medusa.ProductVariantOptionReq-1.mdx)[]",
        "description": "An array of Product Option values that the variant corresponds to.",
        "optional": true,
        "defaultValue": "[]",
        "expandable": false,
        "children": [
          {
            "name": "option_id",
            "type": "`string`",
            "description": "The ID of the Product Option.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "value",
            "type": "`string`",
            "description": "The value of the Product Option.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "origin_country",
        "type": "`string`",
        "description": "The country of origin of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "prices",
        "type": "[ProductVariantPricesUpdateReq](../../medusa/classes/medusa.ProductVariantPricesUpdateReq.mdx)[]",
        "description": "An array of product variant prices. A product variant can have different prices for each region or currency code.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "amount",
            "type": "`number`",
            "description": "The price amount.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "currency_code",
            "type": "`string`",
            "description": "The 3 character ISO currency code the price will be used in. This is only required if `region\\_id` is not provided.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The ID of the Price. If provided, the existing price will be updated. Otherwise, a new price will be created.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "max_quantity",
            "type": "`number`",
            "description": "The maximum quantity required to be added to the cart for the price to be used.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "min_quantity",
            "type": "`number`",
            "description": "The minimum quantity required to be added to the cart for the price to be used.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "region_id",
            "type": "`string`",
            "description": "The ID of the Region the price will be used in. This is only required if `currency\\_code` is not provided.",
            "optional": true,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      },
      {
        "name": "sku",
        "type": "`string`",
        "description": "The unique SKU of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "title",
        "type": "`string`",
        "description": "The title of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "upc",
        "type": "`string`",
        "description": "The UPC number of the item.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "weight",
        "type": "`number`",
        "description": "The weight of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      },
      {
        "name": "width",
        "type": "`number`",
        "description": "The width of the product variant.",
        "optional": true,
        "defaultValue": "",
        "expandable": false,
        "children": []
      }
    ]
  },
  {
    "name": "customHeaders",
    "type": "`Record<string, any>`",
    "description": "Custom headers to attach to the request.",
    "optional": false,
    "defaultValue": "{}",
    "expandable": false,
    "children": []
  }
]} expandUrl="https://docs.medusajs.com/js-client/overview#expanding-fields"/>

#### Returns

<ParameterTypes parameters={[
  {
    "name": "ResponsePromise",
    "type": "ResponsePromise&#60;AdminProductsRes&#62;",
    "optional": false,
    "defaultValue": "",
    "description": "Resolves to the product's details. You can access the variant under the `variants` property.",
    "expandable": false,
    "children": [
      {
        "name": "product",
        "type": "[Product](../../entities/classes/entities.Product.mdx)",
        "description": "Product details.",
        "optional": false,
        "defaultValue": "",
        "expandable": false,
        "children": [
          {
            "name": "categories",
            "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
            "description": "The details of the product categories that this product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "featureFlag": "product_categories",
            "children": [
              {
                "name": "category_children",
                "type": "[ProductCategory](../../entities/classes/entities.ProductCategory.mdx)[]",
                "description": "The details of the category's children.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`string`",
                "description": "The product category's description.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Category - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product category's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_active",
                "type": "`Boolean`",
                "description": "A flag to make product category visible/hidden in the store front",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_internal",
                "type": "`Boolean`",
                "description": "A flag to make product category an internal category for admins",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The product category's name",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "parent_category",
                "type": "`null` \\| [ProductCategory](../../entities/classes/entities.ProductCategory.mdx)",
                "description": "The details of the parent of this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "parent_category_id",
                "type": "`null` \\| `string`",
                "description": "The ID of the parent category.",
                "optional": false,
                "defaultValue": "null",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this category.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "rank",
                "type": "`number`",
                "description": "An integer that depicts the rank of category in a tree node",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "productCategoryProductJoinTable",
                "type": "`string`",
                "description": "",
                "optional": false,
                "defaultValue": "\"product_category_product\"",
                "expandable": false,
                "children": []
              },
              {
                "name": "treeRelations",
                "type": "`string`[]",
                "description": "",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection",
            "type": "[ProductCollection](../../entities/classes/entities.ProductCollection.mdx)",
            "description": "The details of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "handle",
                "type": "`string`",
                "description": "A unique string that identifies the Product Collection - can for example be used in slug structures.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product collection's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that belong to this product collection.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Collection is identified by.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "collection_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product collection that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "created_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was created.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "deleted_at",
            "type": "`null` \\| `Date`",
            "description": "The date with timezone at which the resource was deleted.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "description",
            "type": "`null` \\| `string`",
            "description": "A short description of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "discountable",
            "type": "`boolean`",
            "description": "Whether the Product can be discounted. Discounts will not apply to Line Items of this Product when this flag is set to `false`.",
            "optional": false,
            "defaultValue": "true",
            "expandable": false,
            "children": []
          },
          {
            "name": "external_id",
            "type": "`null` \\| `string`",
            "description": "The external ID of the product",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "handle",
            "type": "`null` \\| `string`",
            "description": "A unique identifier for the Product (e.g. for slug structure).",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "height",
            "type": "`null` \\| `number`",
            "description": "The height of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "hs_code",
            "type": "`null` \\| `string`",
            "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "id",
            "type": "`string`",
            "description": "The product's ID",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "images",
            "type": "[Image](../../entities/classes/entities.Image.mdx)[]",
            "description": "The details of the product's images.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The image's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "url",
                "type": "`string`",
                "description": "The URL at which the image file can be found.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "is_giftcard",
            "type": "`boolean`",
            "description": "Whether the Product represents a Gift Card. Products that represent Gift Cards will automatically generate a redeemable Gift Card code once they are purchased.",
            "optional": false,
            "defaultValue": "false",
            "expandable": false,
            "children": []
          },
          {
            "name": "length",
            "type": "`null` \\| `number`",
            "description": "The length of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "material",
            "type": "`null` \\| `string`",
            "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "metadata",
            "type": "`null` \\| `Record<string, unknown>`",
            "description": "An optional key-value map with additional details",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "mid_code",
            "type": "`null` \\| `string`",
            "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "options",
            "type": "[ProductOption](../../entities/classes/entities.ProductOption.mdx)[]",
            "description": "The details of the Product Options that are defined for the Product. The product's variants will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product option's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that this product option belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "The title that the Product Option is defined by (e.g. `Size`).",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "values",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the values of the product option.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              }
            ]
          },
          {
            "name": "origin_country",
            "type": "`null` \\| `string`",
            "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profile",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)",
            "description": "The details of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "profile_id",
            "type": "`string`",
            "description": "The ID of the shipping profile that the product belongs to. The shipping profile has a set of defined shipping options that can be used to fulfill the product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "profiles",
            "type": "[ShippingProfile](../../entities/classes/entities.ShippingProfile.mdx)[]",
            "description": "Available if the relation `profiles` is expanded.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The shipping profile's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name given to the Shipping profile - this may be displayed to the Customer.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "products",
                "type": "[Product](../../entities/classes/entities.Product.mdx)[]",
                "description": "The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "shipping_options",
                "type": "[ShippingOption](../../entities/classes/entities.ShippingOption.mdx)[]",
                "description": "The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "type",
                "type": "[ShippingProfileType](../../entities/enums/entities.ShippingProfileType.mdx)",
                "description": "The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "sales_channels",
            "type": "[SalesChannel](../../entities/classes/entities.SalesChannel.mdx)[]",
            "description": "The details of the sales channels this product is available in.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "description",
                "type": "`null` \\| `string`",
                "description": "The description of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The sales channel's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "is_disabled",
                "type": "`boolean`",
                "description": "Specify if the sales channel is enabled or disabled.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "locations",
                "type": "[SalesChannelLocation](../../entities/classes/entities.SalesChannelLocation.mdx)[]",
                "description": "The details of the stock locations related to the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "name",
                "type": "`string`",
                "description": "The name of the sales channel.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "status",
            "type": "[ProductStatus](../../entities/enums/entities.ProductStatus.mdx)",
            "description": "The status of the product",
            "optional": false,
            "defaultValue": "draft",
            "expandable": false,
            "children": [
              {
                "name": "DRAFT",
                "type": "`\"draft\"`",
                "description": "The product is a draft. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PROPOSED",
                "type": "`\"proposed\"`",
                "description": "The product is proposed, but not yet published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "PUBLISHED",
                "type": "`\"published\"`",
                "description": "The product is published.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "REJECTED",
                "type": "`\"rejected\"`",
                "description": "The product is rejected. It's not viewable by customers.",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "subtitle",
            "type": "`null` \\| `string`",
            "description": "An optional subtitle that can be used to further specify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "tags",
            "type": "[ProductTag](../../entities/classes/entities.ProductTag.mdx)[]",
            "description": "The details of the product tags used in this product.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product tag's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Tag represents",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "thumbnail",
            "type": "`null` \\| `string`",
            "description": "A URL to an image file that can be used to identify the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "title",
            "type": "`string`",
            "description": "A title that can be displayed for easy identification of the Product.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "type",
            "type": "[ProductType](../../entities/classes/entities.ProductType.mdx)",
            "description": "The details of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product type's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "value",
                "type": "`string`",
                "description": "The value that the Product Type represents.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "type_id",
            "type": "`null` \\| `string`",
            "description": "The ID of the product type that the product belongs to.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "updated_at",
            "type": "`Date`",
            "description": "The date with timezone at which the resource was updated.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "variants",
            "type": "[ProductVariant](../../entities/classes/entities.ProductVariant.mdx)[]",
            "description": "The details of the Product Variants that belong to the Product. Each will have a unique combination of values of the product's options.",
            "optional": false,
            "defaultValue": "",
            "expandable": true,
            "children": [
              {
                "name": "allow_backorder",
                "type": "`boolean`",
                "description": "Whether the Product Variant should be purchasable when `inventory\\_quantity` is 0.",
                "optional": false,
                "defaultValue": "false",
                "expandable": false,
                "children": []
              },
              {
                "name": "barcode",
                "type": "`null` \\| `string`",
                "description": "A generic field for a GTIN number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "created_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was created.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "deleted_at",
                "type": "`null` \\| `Date`",
                "description": "The date with timezone at which the resource was deleted.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "ean",
                "type": "`null` \\| `string`",
                "description": "An EAN barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "height",
                "type": "`null` \\| `number`",
                "description": "The height of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "hs_code",
                "type": "`null` \\| `string`",
                "description": "The Harmonized System code of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "id",
                "type": "`string`",
                "description": "The product variant's ID",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "inventory_items",
                "type": "[ProductVariantInventoryItem](../../entities/classes/entities.ProductVariantInventoryItem.mdx)[]",
                "description": "The details inventory items of the product variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "inventory_quantity",
                "type": "`number`",
                "description": "The current quantity of the item that is stocked.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "length",
                "type": "`null` \\| `number`",
                "description": "The length of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "manage_inventory",
                "type": "`boolean`",
                "description": "Whether Medusa should manage inventory for the Product Variant.",
                "optional": false,
                "defaultValue": "true",
                "expandable": false,
                "children": []
              },
              {
                "name": "material",
                "type": "`null` \\| `string`",
                "description": "The material and composition that the Product Variant is made of, May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "metadata",
                "type": "`null` \\| `Record<string, unknown>`",
                "description": "An optional key-value map with additional details",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "mid_code",
                "type": "`null` \\| `string`",
                "description": "The Manufacturers Identification code that identifies the manufacturer of the Product Variant. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "options",
                "type": "[ProductOptionValue](../../entities/classes/entities.ProductOptionValue.mdx)[]",
                "description": "The details of the product options that this product variant defines values for.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "origin_country",
                "type": "`null` \\| `string`",
                "description": "The country in which the Product Variant was produced. May be used by Fulfillment Providers to pass customs information to shipping carriers.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "prices",
                "type": "[MoneyAmount](../../entities/classes/entities.MoneyAmount.mdx)[]",
                "description": "The details of the prices of the Product Variant, each represented as a Money Amount. Each Money Amount represents a price in a given currency or a specific Region.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product",
                "type": "[Product](../../entities/classes/entities.Product.mdx)",
                "description": "The details of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": true,
                "children": []
              },
              {
                "name": "product_id",
                "type": "`string`",
                "description": "The ID of the product that the product variant belongs to.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "purchasable",
                "type": "`boolean`",
                "description": "Only used with the inventory modules.\nA boolean value indicating whether the Product Variant is purchasable.\nA variant is purchasable if:\n  - inventory is not managed\n  - it has no inventory items\n  - it is in stock\n  - it is backorderable.\n",
                "optional": true,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "sku",
                "type": "`null` \\| `string`",
                "description": "The unique stock keeping unit used to identify the Product Variant. This will usually be a unique identifer for the item that is to be shipped, and can be referenced across multiple systems.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "title",
                "type": "`string`",
                "description": "A title that can be displayed for easy identification of the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "upc",
                "type": "`null` \\| `string`",
                "description": "A UPC barcode number that can be used to identify the Product Variant.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "updated_at",
                "type": "`Date`",
                "description": "The date with timezone at which the resource was updated.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "variant_rank",
                "type": "`null` \\| `number`",
                "description": "The ranking of this variant",
                "optional": false,
                "defaultValue": "0",
                "expandable": false,
                "children": []
              },
              {
                "name": "weight",
                "type": "`null` \\| `number`",
                "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              },
              {
                "name": "width",
                "type": "`null` \\| `number`",
                "description": "The width of the Product Variant. May be used in shipping rate calculations.",
                "optional": false,
                "defaultValue": "",
                "expandable": false,
                "children": []
              }
            ]
          },
          {
            "name": "weight",
            "type": "`null` \\| `number`",
            "description": "The weight of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          },
          {
            "name": "width",
            "type": "`null` \\| `number`",
            "description": "The width of the Product Variant. May be used in shipping rate calculations.",
            "optional": false,
            "defaultValue": "",
            "expandable": false,
            "children": []
          }
        ]
      }
    ]
  }
]} />
