# Create product

<mark style="color:blue;">`POST`</mark> `https://app.ecwid.com/api/v3/{storeId}/products`&#x20;

<details>

<summary>Request and response example</summary>

Request:

```http
POST /api/v3/1003/products HTTP/1.1
Authorization: Bearer secret_token
Host: app.ecwid.com
Content-Type: application/json
Cache-Control: no-cache

{
  "sku": "000012199",
  "quantity": 10,
  "name": "New Product",
  "price": 10,
  "compareToPrice": 15,
  "costPrice": 8,
  "isShippingRequired": false,
  "categoryIds": [
    9691094
  ],
  "weight": 10,
  "enabled": true,
  "description": "A <b>new</b> product description",
  "productClassId": 0,
  "volume": 500,
  "volumeUnit": "ml",
  "fixedShippingRateOnly": false,
  "fixedShippingRate": 1.2,
  "tax": {
    "enabledManualTaxes": [
      1117939042
    ],
    "taxable": true
  },  
  "options": [
    {
      "type": "RADIO",
      "name": "Size",
      "choices": [
        {
          "text": "Small",
          "priceModifier": 0,
          "priceModifierType": "ABSOLUTE"
        },
        {
          "text": "Large",
          "priceModifier": 15,
          "priceModifierType": "ABSOLUTE"
        }
      ],
        "defaultChoice": 0,
        "required": true
    }
  ],
  "shipping": {
    "type": "SELECTED_METHODS",
    "methodMarkup": 0,
    "flatRate": 0,
    "disabledMethods": [
      "1396442138-1534946367952"
    ],
    "enabledMethods": []
  }
}
```

Response:

```json
{
  "id": 39766764
}
```

</details>

### Required access scopes

Your app must have the following **access scopes** to make this request: `create_catalog`

### Path params

All path params are required.

| Param   | Type   | Description     |
| ------- | ------ | --------------- |
| storeId | number | Ecwid store ID. |

### Query params

All query params are optional.

<table data-full-width="false"><thead><tr><th width="187">Name</th><th width="97">Type</th><th>Description</th></tr></thead><tbody><tr><td>saveCombinations</td><td>boolean</td><td>If set to <code>true</code>, API will process and save all combinations provided in the request.<br><br>If <code>false</code>, all combinations from the request will be ignored.</td></tr></tbody></table>

### Headers

The **Authorization** header is required.

<table><thead><tr><th>Header</th><th width="252">Format</th><th>Description</th></tr></thead><tbody><tr><td>Authorization</td><td><code>Bearer secret_ab***cd</code></td><td>Access token of the application.</td></tr></tbody></table>

### Request JSON

A JSON object with the following fields:

| Field                         | Type                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ----------------------------- | ------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| sku                           | string                                                       | <p>Product SKU. Items with options can have several SKUs specified in the product variations.<br><br><strong>Required</strong></p>                                                                                                                                                                                                                                                                                                                                                                                     |
| quantity                      | number                                                       | <p>Amount of product items in stock (available for purchase). </p><p></p><p>If the product has unlimited stock (<code>unlimited</code> is <code>true</code>), this field is not returned.</p>                                                                                                                                                                                                                                                                                                                          |
| unlimited                     | boolean                                                      | Defines if the product has unlimited stock.                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| inStock                       | boolean                                                      | Defines if the product or any of its variations are in stock (`quantity` is more than `0`).                                                                                                                                                                                                                                                                                                                                                                                                                            |
| name                          | string                                                       | <p>Product name visible on the storefront.<br><br><strong>Required</strong></p>                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| nameTranslated                | string                                                       | Available translations for the product name.                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| price                         | number                                                       | <p>Base product price without any modifiers.<br><br><strong>Required</strong></p>                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| tax                           | object [tax](#tax)                                           | Detailed information about product's taxes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| wholesalePrices               | array of objects [wholesalePrices](#wholesaleprices)         | Sorted list of wholesale price tiers: "minimum quantity = price" pairs.                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compareToPrice                | number                                                       | Product pre-sale price with the same value as specified in Ecwid admin (without taxes), e.g. `40`.                                                                                                                                                                                                                                                                                                                                                                                                                     |
| lowestPriceSettings           | object [lowestPriceSettings](#lowestpricesettings)           | <p>Product lowest price settings for EU stores.<br><br>Read more on lowes price settings in <a href="https://support.ecwid.com/hc/en-us/articles/9382914337820-Lowest-product-price-before-discounting">Help Center</a>.</p>                                                                                                                                                                                                                                                                                           |
| isShippingRequired            | boolean                                                      | Defines if the product requires shipping.                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| weight                        | number                                                       | <p>Product weight in the units defined in store settings.<br><br>If the product doesn't have weight, this field is not returned.</p>                                                                                                                                                                                                                                                                                                                                                                                   |
| customSlug                    | string                                                       | Custom slug defined by the store owner. Affects product page URL.                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| productClassId                | number                                                       | <p>ID of the product class that affects attributes management. <br><br>If it's <code>0</code> the product belongs to the default "General" class. <br><br>Read more on product types and attributes in <a href="https://support.ecwid.com/hc/en-us/articles/207807495-Product-types-and-attributes">Help Center</a>.</p>                                                                                                                                                                                               |
| enabled                       | boolean                                                      | <p>Defines if the product is enabled and visible on the storefront.<br><br>If <code>false</code>, the product can't be opened on the storefront or added to the cart.</p>                                                                                                                                                                                                                                                                                                                                              |
| options                       | array of objects [options](#options)                         | <p>Detailed list of product options. <br><br>Empty (<code>\[]</code>) if no options are specified for the product.</p>                                                                                                                                                                                                                                                                                                                                                                                                 |
| warningLimit                  | number                                                       | Minimum amount of products in stock to trigger an automated "low stock" email notification for the store owner.                                                                                                                                                                                                                                                                                                                                                                                                        |
| fixedShippingRateOnly         | boolean                                                      | <p><strong>Legacy feature</strong> – see <code>shipping</code> field instead.<br><br><code>true</code> if shipping cost for this product is calculated as <em>'Fixed rate per item'</em> (managed under the "Tax and Shipping" section of the product management page in Ecwid Control panel). <code>false</code> otherwise. <br><br>With this option on, the <code>fixedShippingRate</code> field specifies the shipping cost of the product.</p>                                                                     |
| fixedShippingRate             | number                                                       | <p><strong>Legacy feature</strong> – see <code>shipping</code> field instead. <br><br>When <code>fixedShippingRateOnly</code> is <code>true</code>, this field sets the product fixed shipping cost per item. <br><br>When <code>fixedShippingRateOnly</code> is <code>false</code>, the value in this field is treated as an extra shipping cost the product adds to the global calculated shipping</p>                                                                                                               |
| shipping                      | object [shipping](#shipping)                                 | Shipping settings specific to the product.                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| description                   | string                                                       | <p>Product description in HTML format.<br><br>Scripts inside product descriptions are not supported.</p>                                                                                                                                                                                                                                                                                                                                                                                                               |
| descriptionTranslated         | object [translations](#translations)                         | Available translations for the product description.                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| categoryIds                   | array of numbers                                             | List of the category IDs the product belongs to.                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| defaultCategoryId             | number                                                       | Default category ID of the product. If value is `0`, then product does not have a default category and is not shown anywhere in storefront                                                                                                                                                                                                                                                                                                                                                                             |
| seoTitle                      | string                                                       | <p>Page title for search engines.<br><br>Recommended length < 55 characters.</p>                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| seoTitleTranslated            | object [translations](#translations)                         | Translations for the SEO page title.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| seoDescription                | string                                                       | <p>Page description for search engines. <br><br>Recommended length < 160 characters.</p>                                                                                                                                                                                                                                                                                                                                                                                                                               |
| seoDescriptionTranslated      | object [translations](#translations)                         | Translations for the SEO page description.                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| attributes                    | array of objects [attributes](#attributes)                   | List of product attributes and their values.                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| files                         | array of objects [files](#files)                             | Details about downloadable files attached to the product.                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| relatedProducts               | object [relatedProducts](#relatedproducts)                   | List of related products displayed as "You may also like" products of the product.                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| combinations                  | array of objects [#combinations](#combinations "mention")    | <p>Details about product variations.<br><br>Requires <code>saveCombinations=true</code> query param.</p>                                                                                                                                                                                                                                                                                                                                                                                                               |
| dimensions                    | object [dimensions](#dimensions)                             | Product's dimensions.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| volume                        | number                                                       | Product volume for calculations shipping costs, fractional number, `0` by default.                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| showOnFrontpage               | number                                                       | Product index on the main storefront page starting with `1`.                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| isGiftCard                    | boolean                                                      | Defines if a product is a gift card.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| subtitle                      | string                                                       | Small product description visible on category and product pages under the product title.                                                                                                                                                                                                                                                                                                                                                                                                                               |
| subtitleTranslated            | object [translations](#translations)                         | Available translations for product subtitles.                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| discountsAllowed              | boolean                                                      | Defines if Ecwid can apply discounts to the product.                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| externalReferenceId           | string                                                       | <p>External ID for products synced from external services, for example, POS.<br><br>This ID is unique for each product in one store.</p>                                                                                                                                                                                                                                                                                                                                                                               |
| outOfStockVisibilityBehaviour | boolean                                                      | <p>Defines if a product is visible and/or can be pre-ordered when out-of-stock. <br><br>Requires enabled pre-orders on the store level: <code>allowPreordersForOutOfStockProducts</code> setting in <code>/profile</code> endpoint.<br><br>Supported values:<br><code>SHOW</code> - Show out-of-stock products, but adding them to the cart is impossible.<br><code>HIDE</code> - Hide out-of-stock products.<br><code>ALLOW\_PREORDER</code> - Show out-of-stock products and allow them to be added to the cart.</p> |
| minPurchaseQuantity           | number                                                       | <p>Sets minimum product purchase quantity.<br><br> Default value is <code>null</code>.</p>                                                                                                                                                                                                                                                                                                                                                                                                                             |
| maxPurchaseQuantity           | number                                                       | <p>Sets maximum product purchase quantity. <br><br>Default value is <code>null</code>.</p>                                                                                                                                                                                                                                                                                                                                                                                                                             |
| reviewsCollectingAllowed      | boolean                                                      | When `true`, allows to collect, check, and publish reviews for this product in store.                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| compositeParents              | array of numbers                                             | List of composite product IDs that this product is a component of.                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| compositeComponents           | array of objects [compositeComponents](#compositecomponents) | List of products/variations that turn this product into a "composite product".                                                                                                                                                                                                                                                                                                                                                                                                                                         |

#### wholesalePrices

<table><thead><tr><th>Field</th><th width="128">Type</th><th>Description</th></tr></thead><tbody><tr><td>quantity</td><td>number</td><td>Number of product items on this wholesale tier.</td></tr><tr><td>price</td><td>number</td><td>Product price on the tier.</td></tr></tbody></table>

#### lowestPriceSettings

<table><thead><tr><th>Field</th><th width="142">Type</th><th>Description</th></tr></thead><tbody><tr><td>lowestPriceEnabled</td><td>boolean</td><td>Defines if the lowest price is enabled for the product and shown on the storefront.</td></tr><tr><td>manualLowestPrice</td><td>number</td><td>Manually entered lowest price for the last 30 days before any discounts or taxes applied.</td></tr></tbody></table>

#### options

<table><thead><tr><th width="239.4765625">Field</th><th width="168.546875">Type</th><th>Description</th></tr></thead><tbody><tr><td>type</td><td>string</td><td><p>Option type that defines its functionality.<br><br>One of:</p><p><code>SELECT</code> - Drop-down list with several options. Users can select only one of the options provided.</p><p><code>RADIO</code>  - Radio buttons. Users can select only one of the options provided.</p><p><code>CHECKBOX</code>  - Checkbox options. Users can select several options at the same time.</p><p><code>TEXTFIELD</code> - Single-line text input field.</p><p><code>TEXTAREA</code> - Multi-lines text input field.</p><p><code>DATE</code> - Date and time selector.</p><p><code>FILES</code> - File uploader for users.</p><p><code>SIZE</code> - Selector for the <strong>product sizes</strong>. Works the same way as radio buttons.</p><p><code>SWATCHES</code> - Selector for the <strong>product colors</strong>. Works the same way as radio buttons.</p></td></tr><tr><td>name</td><td>string</td><td>Product option name. For example: <code>Color</code> or <code>Size</code>.</td></tr><tr><td>nameTranslated</td><td>object <a href="#translations">translations</a></td><td>Available translations for product option name.</td></tr><tr><td>choices</td><td>array of objects <a href="#choices">choices</a></td><td>List of available option choices for users.<br><br>Only works for the following option types: <code>SELECT</code>, <code>CHECKBOX</code>, <code>RADIO</code>, <code>SIZE</code>, or <code>SWATCHES</code>.</td></tr><tr><td>defaultChoice</td><td>number</td><td>Index of the option's default selection. Can be <code>null</code> (no default option), otherwise starts with <code>0</code>. <br><br>Only works for the following option types: <code>SELECT</code>, <code>CHECKBOX</code>, <code>RADIO</code>, <code>SIZE</code>, or <code>SWATCHES</code>.</td></tr><tr><td>required</td><td>boolean</td><td>Defines if this option is required to add product to the cart.</td></tr><tr><td>useImageAsSwatchSelector</td><td>boolean</td><td><p>Display mode for the color swatches option. Only works with <code>SWATCHES</code> option type.</p><p></p><p>One of:</p><ul><li><code>true</code> - show specific product images when a user choses different color at the storefront.</li><li><code>false</code> - show color swatches defines as hex codes when user chooses different color at the storefront.</li></ul></td></tr></tbody></table>

#### choices

<table><thead><tr><th width="161.3125">Field</th><th width="162.484375">Type</th><th>Description</th></tr></thead><tbody><tr><td>text</td><td>string</td><td>Text displayed near the option choise or as it at the storefront. For example, a text near the radio button or a checkbox, choice name in the dropdown list, etc.</td></tr><tr><td>textTranslated</td><td>object <a href="#translations">translations</a></td><td>Available translations for choice's <code>text</code> field.</td></tr><tr><td>priceModifier</td><td>number</td><td>Value of the option's price markup. <br><br>Positive, negative (in case the option reduces the pice) and zero values are allowed. Default is <code>0</code></td></tr><tr><td>priceModifierType</td><td>string</td><td><p>Option markup calculation type.<br><br>One of:</p><p><code>PERCENT</code> - price modifier applied as a percent increase to the product price.</p><p><code>ABSOLUTE</code> - price modifier applied as an absolute increase to the product price (default).</p></td></tr><tr><td>hexCodes</td><td>array of strings</td><td><p>List of HEX codes. </p><p></p><p>Defines what color must be displayed when user changes color in the <code>SWATCHES</code> option, for example: <code>["#fff000"]</code>.<br><br>Requires <code>useImageAsSwatchSelector</code> to be <code>true</code>.</p></td></tr><tr><td>changeTime</td><td>number</td><td>UNIX timestamp of the latest change in the product option.</td></tr><tr><td>imageId</td><td>string</td><td>Internal ID of the product image.<br><br>Defines what product image must be displayed when user changes color in the <code>SWATCHES</code> option. <br><br>Requires <code>useImageAsSwatchSelector</code> to be <code>true</code>.</td></tr></tbody></table>

#### shipping

<table><thead><tr><th>Field</th><th width="160">Type</th><th>Description</th></tr></thead><tbody><tr><td>type</td><td>string</td><td>One of: <code>"GLOBAL_METHODS"</code>, <code>"SELECTED_METHODS"</code>, <code>"FLAT_RATE"</code>, <code>"FREE_SHIPPING"</code>. <code>"GLOBAL_METHODS"</code> – all standard shipping methods set up in store settings; <code>"SELECTED_METHODS"</code> – <br><br>Ecwid will use <code>enabledMethods</code> and <code>disabledMethods</code> list to make shipping calculations; <code>"FLAT_RATE"</code> – sets flat rate for product's shipping, see <code>flatRate</code> field.</td></tr><tr><td>methodMarkup</td><td>number</td><td>Additional product shipping cost added to any shipping methods.</td></tr><tr><td>flatRate</td><td>number</td><td>Flat rate cost for shipping the product. If set, shipping costs for it will not be calculated.</td></tr><tr><td>disabledMethods</td><td>array of strings</td><td>IDs of shipping methods that need to be excluded from calculation when this product is in cart. <br><br>Full list of shipping method IDs is available thorugh the <a href="ref:store-profile">Store profile</a> call.</td></tr><tr><td>enabledMethods</td><td>array of strings</td><td>IDs of shipping methods which will only be shown when this product is in cart. No other shipping methods will be shown.<br><br>Full list of shipping method IDs is available thorugh the <a href="ref:store-profile">Store profile</a> call.</td></tr></tbody></table>

#### categories

| Field   | Type    | Description                         |
| ------- | ------- | ----------------------------------- |
| id      | number  | Internal category ID.               |
| enabled | boolean | Defines if the category is enabled. |

#### combinations

| Field                                | Type                                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------------------------------ | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| id                                   | number                                                     | Internal ID for the product variation.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| combinationNumber                    | number                                                     | <p>Ordered variation number displayed in Ecwid admin.<br><br>Starts with <code>1</code> and iterates by 1.</p>                                                                                                                                                                                                                                                                                                                                               |
| options                              | array of objects [options (variation)](#options-variation) | Set of selected product option values that identify this variation.                                                                                                                                                                                                                                                                                                                                                                                          |
| sku                                  | string                                                     | <p>Variation SKU.<br><br>If empty, variation inherits the base product's SKU.</p>                                                                                                                                                                                                                                                                                                                                                                            |
| thumbnailUrl                         | string                                                     | Link to the variation image resized to fit 400x400px container.                                                                                                                                                                                                                                                                                                                                                                                              |
| imageUrl                             | string                                                     | Link to the variation image resized to fit 1200x1200px container.                                                                                                                                                                                                                                                                                                                                                                                            |
| smallThumbnailUrl                    | string                                                     | Link to the variation image resized to fit 160x160px container.                                                                                                                                                                                                                                                                                                                                                                                              |
| hdThumbnailUrl                       | string                                                     | Link to the variation image resized to fit 800x800px container.                                                                                                                                                                                                                                                                                                                                                                                              |
| originalImageUrl                     | string                                                     | Link to the full-sized variation image.                                                                                                                                                                                                                                                                                                                                                                                                                      |
| instock                              | boolean                                                    | Defines if the variation is in stock (`quantity` is more than `0`).                                                                                                                                                                                                                                                                                                                                                                                          |
| quantity                             | number                                                     | <p>Number of variation items in stock. </p><p></p><p>If the variation has unlimited stock (<code>unlimited</code> is <code>true</code>), this field is not returned.</p>                                                                                                                                                                                                                                                                                     |
| unlimited                            | boolean                                                    | Defines if the variation has unlimited stock.                                                                                                                                                                                                                                                                                                                                                                                                                |
| price                                | number                                                     | Base variation price without any modifiers.                                                                                                                                                                                                                                                                                                                                                                                                                  |
| defaultDisplayedPrice                | number                                                     | <p>Variation price as it's shown on the storefront for logged out customers with default location (store location).</p><p><br>Pre-selected product options or variations modify the price.<br></p><p><strong>Includes taxes</strong></p>                                                                                                                                                                                                                     |
| defaultDisplayedPriceFormatted       | string                                                     | <p>Formatted variant (curency symbol and delimeter settings) of <code>defaultDisplayedPrice</code> based on the store's format settings.<br><br>For example, <code>€11,00</code></p>                                                                                                                                                                                                                                                                         |
| lowestPrice                          | number                                                     | Variation's lowest price for EU store.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| lowestPriceSettings                  | object [lowestPriceSettings](#lowestpricesettings)         | <p>Variation's lowest price settings contain only one field: <code>lowestPriceEnabled</code> <br><br>It defines if the lowest price is enabled for the variation.</p>                                                                                                                                                                                                                                                                                        |
| defaultDisplayedLowestPrice          | number                                                     | <p>Variation lowest price as it's shown on the storefront for logged out customers with default location (store location).<br><br><strong>Includes taxes</strong></p>                                                                                                                                                                                                                                                                                        |
| defaultDisplayedLowestPriceFormatted | string                                                     | <p>Formatted variant (curency symbol and delimeter settings) of <code>defaultDisplayedLowestPrice</code> based on the store's format settings.<br><br>For example, <code>€11,00</code></p>                                                                                                                                                                                                                                                                   |
| wholesalePrices                      | array of objects [wholesalePrices](#wholesaleprices)       | Sorted list of wholesale price tiers specific to the variation: "minimum quantity = price" pairs.                                                                                                                                                                                                                                                                                                                                                            |
| weight                               | number                                                     | Variation's weight for calculating shipping costs.                                                                                                                                                                                                                                                                                                                                                                                                           |
| volume                               | number                                                     | Variation volume for calculations shipping costs, fractional number, `0` by default.                                                                                                                                                                                                                                                                                                                                                                         |
| warningLimit                         | number                                                     | Minimum amount of variation in stock to trigger an automated "low stock" email notification for the store owner.                                                                                                                                                                                                                                                                                                                                             |
| attributes                           | array of objects [attributes](#attributes)                 | List of variation attributes and their values.                                                                                                                                                                                                                                                                                                                                                                                                               |
| compareToPrice                       | number                                                     | Pre-sale price for the variation.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| minPurchaseQuantity                  | number                                                     | <p>Sets minimum product purchase quantity. <br><br>Default value is <code>null</code>.</p>                                                                                                                                                                                                                                                                                                                                                                   |
| maxPurchaseQuantity                  | number                                                     | <p>Sets maximum product purchase quantity. <br><br>Default value is <code>null</code>.</p>                                                                                                                                                                                                                                                                                                                                                                   |
| outOfStockVisibilityBehaviour        | boolean                                                    | <p>Defines if a variation is visible and/or can be pre-ordered when out-of-stock. <br><br>Requires enabled pre-orders on the store level: <code>allowPreordersForOutOfStockProducts</code> setting in <code>/profile</code> endpoint.<br><br>Supported values:<br><code>SHOW</code> - Show out-of-stock variation, but adding it to the cart is disabled.<br><code>ALLOW\_PREORDER</code> - Show out-of-stock variation and allow adding it to the cart.</p> |
| alt                                  | object [alt](#alt)                                         | Image description for the "alt" HTML attribute and its translations.                                                                                                                                                                                                                                                                                                                                                                                         |

#### options (variation)

| Field           | Type                                 | Description                                          |
| --------------- | ------------------------------------ | ---------------------------------------------------- |
| name            | string                               | Name of the selected option.                         |
| nameTranslated  | object [translations](#translations) | Available translations for the product option name.  |
| value           | string                               | Value of the selected option.                        |
| valueTranslated | object [translations](#translations) | Available translations for the product option value. |

#### attributes

<table><thead><tr><th>Field</th><th width="185">Type</th><th>Description</th></tr></thead><tbody><tr><td>id</td><td>number</td><td>Internal attribute ID. </td></tr><tr><td>name</td><td>string</td><td>Attribute name visible on the storefront.</td></tr><tr><td>nameTranslated</td><td>object <a href="#translations">translations</a></td><td>Available translations for the attribute name.</td></tr><tr><td>value</td><td>string</td><td>Value of the attribute for this product.</td></tr><tr><td>valueTranslated</td><td>object <a href="#translations">translations</a></td><td>Available translations for the attribute value.</td></tr><tr><td>type</td><td>string</td><td>Attribute type. There are user-defined attributes, general attributes and attributes pre-defined by Ecwid, for example, "price per unit". <br><br>One of:<br><code>CUSTOM</code><br><code>UPC</code><br><code>BRAND</code><br><code>GENDER</code><br><code>AGE_GROUP</code><br><code>COLOR</code><br><code>SIZE</code><br><code>PRICE_PER_UNIT</code><br><code>UNITS_IN_PRODUCT</code></td></tr><tr><td>show</td><td>string</td><td>Defines if an attribute is visible on a product page. <br><br>One of:<br><code>NOTSHOW</code> - Not visible.<br><code>DESCR</code> - Visible under the product description.<br><code>PRICE</code> - Visible under the product price</td></tr></tbody></table>

#### files

| Field       | Type   | Description                                                                                                                                                                                                                   |
| ----------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| id          | number | Internal ID of the file attached to the product.                                                                                                                                                                              |
| name        | string | File name visible to clients.                                                                                                                                                                                                 |
| description | string | File description visible to clients.                                                                                                                                                                                          |
| size        | number | File size in bytes (64-bit integer).                                                                                                                                                                                          |
| adminUrl    | string | <p>Direct link to the file.<br><br><strong>Important</strong>: to download the file, add your API access token to this URL like this: <code><https://app.ecwid.com/api/v3/4870020/products/37208340/files/7215102></code></p> |

#### relatedProducts

| Field           | Type                                       | Description                                                       |
| --------------- | ------------------------------------------ | ----------------------------------------------------------------- |
| productIds      | array of numbers                           | List of related product IDs.                                      |
| relatedCategory | object [relatedCategory](#relatedcategory) | Describes the "N random related products from a category" option. |

#### relatedCategory

| Field        | Type    | Description                                                                                                  |
| ------------ | ------- | ------------------------------------------------------------------------------------------------------------ |
| enabled      | boolean | Defines if the "N random related products from a category" option is enabled.                                |
| categoryId   | number  | <p>ID of the related category. <br><br>Empty value means that related products can be from any category.</p> |
| productCount | number  | Number of random products from the given category.                                                           |

#### dimensions

| Field  | Type   | Description                                         |
| ------ | ------ | --------------------------------------------------- |
| length | number | Length of a product for calculating shipping costs. |
| width  | number | Width of a product for calculating shipping costs.  |
| height | number | Height of a product for calculating shipping costs. |

#### tax

| Field              | Type             | Description                                                                                                                |
| ------------------ | ---------------- | -------------------------------------------------------------------------------------------------------------------------- |
| taxable            | boolean          | Defines if taxes can be applied to the product.                                                                            |
| enabledManualTaxes | array of numbers | <p>List of internal IDs for manual taxes. <br><br>Empty if no manual taxes are enabled or automatic taxes are enabled.</p> |
| taxClassCode       | string           | Tax class code for the product that determines the taxability of the products for a certain region.                        |

#### compositeComponents

| Field         | Type   | Description                                                             |
| ------------- | ------ | ----------------------------------------------------------------------- |
| productId     | number | ID of the product in this composite product.                            |
| combinationId | number | ID of the product variation in this composite product.                  |
| quantity      | number | Quantity of the product or product variation in this composite product. |

#### translations

Object with text field translations in the `"lang": "text"` format, where the `"lang"` is an ISO 639-1 language code. For example:

```
{
    "en": "Sample text",
    "nl": "Voorbeeldtekst"
}
```

Translations are available for all active store languages. Only the default language translations are returned if no other translations are provided for the field. Find active store languages with <mark style="color:green;">`GET`</mark> `/profile` request > `languages` > `enabledLanguages`.

### Response JSON

A JSON object with the following fields:

| Field | Type   | Description                         |
| ----- | ------ | ----------------------------------- |
| id    | number | Internal ID of the created product. |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ecwid.com/api-reference/rest-api/products/create-product.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
