Update product variation

Update a specific product variation details referring to its ID.

You can use the checkLowStockNotification as a request parameter. If true, makes Ecwid check whether the low stock email notification needs to be sent to merchant after request is sent.


AuthorizationstringoAuth token with mandatory Bearer before it. Example: Bearer e***s0, where e***s0 should be replaced with your oAuth token.

Request body

A JSON object of type 'Variation' with the following fields:


optionsArray<OptionValue>Set of options that identifies this variation. An array of name-value pairs
skustringVariation SKU. Omitted if the variation inherits the base product's SKU
quantitynumberAmount of the variation items in stock
inStockbooleantrue if the variation is in stock (quantity is more than zero) or has unlimited quantity. false otherwise.
unlimitedbooleantrue if the variation has unlimited stock (that is, never runs out)
pricenumberVariation price. Omitted if the variation inherits the base product's price
isShippingRequiredbooleantrue if variation requires shipping, false otherwise
wholesalePricesArray<WholesalePrice>Sorted array of the variation's wholesale price tiers (quantity limit and price). Omitted if the variation inherits the base product's tiered price settings
costPricenumberPurchase price (the price at which the seller bought the product from the supplier). A positive number, 0 by default. The field is not shown in the UI and can be used for reports and profit calculations
weightnumberVariation weight in the units defined in store settings. Omitted if the variation inherits the base product's weight.
warningLimitnumberThe minimum 'warning' amount of the product items in stock for this variation, if set. When the variation in stock amount reaches this level, the store administrator gets an email notification. Omitted if the variation inherits the base product's settings
attributesArray<AttributeValue>Variation's UPC attribute and its value
dimensions<VariationDimensions>Variation dimensions info
compareToPricenumberVariation's sale price displayed strike-out in the customer frontend Omitted if empty
If null — deleting a configured value.
externalReferenceIdstringExternal ID for products synced from external services (e.g. POS)
minPurchaseQuantitynumberSets minimum product variation purchase quantity.
maxPurchaseQuantitynumberSets maximum product variation purchase quantity.


namestringOption name
nameTranslated<Translations>Available translations for product option name
valuestringOption value
valueTranslated<Translations>Available translations for product option value


<ISO_LANG_CODE>stringTranslations for each available language. If no other translations are provided, the default language translation is returned. See available languages in store language settings


quantitynumberNumber of product items on this wholesale tier
pricenumberProduct price on the tier


idnumberUnique attribute ID. See Product Classes for the information on attribute IDs
aliasstringOne of UPC, BRAND. This can be used instead of id to quickly update the basic variation attributes without numeric id: UPC and brand
typestringSupported special values: UPC, BRAND, PRICE_PER_UNIT, UNITS_IN_PRODUCT, CUSTOM
valuestringAttribute value


lengthnumberLength of a variation
widthnumberWidth of a variation
heightnumberHeight of a variation


A JSON object of type 'UpdateStatus' with the following fields:


updateCountnumberThe number of updated variations (1 or 0 depending on whether the update was successful)


In case of error, Ecwid responds with an error HTTP status code

HTTP codes

HTTP StatusMeaning
400Request parameters are malformed
402The "Product Variations" feature are not available on the merchant plan
404The product or variation is not found
409The specified sku or options variation already exists
415Unsupported content-type: expected application/json or text/json
500Cannot get the variation because of an error on the server