Search products

Search or filter products in a store catalog. The response provides full details of found products.

Request and response example

Request:

curl --location 'https://app.ecwid.com/api/v3/1003/products' \
--header 'Authorization: Bearer secret_ab***cd'

Response:

{
    "total": 2,
    "count": 2,
    "offset": 0,
    "limit": 100,
    "items": [
        {
            "id": 692730761,
            "sku": "123123",
            "thumbnailUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591923.jpg",
            "unlimited": true,
            "inStock": true,
            "name": "Toys",
            "nameTranslated": {
                "cs": "",
                "en": "Toys"
            },
            "price": 10,
            "priceInProductList": 10,
            "defaultDisplayedPrice": 10,
            "defaultDisplayedPriceFormatted": "€10,00",
            "tax": {
                "taxable": true,
                "defaultLocationIncludedTaxRate": 10,
                "enabledManualTaxes": [
                    947976181
                ],
                "taxClassCode": "default"
            },
            "lowestPrice": 10,
            "defaultDisplayedLowestPrice": 10,
            "defaultDisplayedLowestPriceFormatted": "€10,00",
            "lowestPriceSettings": {
                "lowestPriceEnabled": true
            },
            "isShippingRequired": false,
            "hasFreeShipping": false,
            "url": "https://store1003.company.site/products/toys",
            "autogeneratedSlug": "toys-692730761",
            "customSlug": "",
            "created": "2024-09-04 07:20:11 +0000",
            "updated": "2024-09-04 07:20:12 +0000",
            "createTimestamp": 1725434411,
            "updateTimestamp": 1725434412,
            "productClassId": 0,
            "enabled": true,
            "options": [],
            "warningLimit": 1,
            "fixedShippingRateOnly": false,
            "fixedShippingRate": 0,
            "shipping": {
                "type": "GLOBAL_METHODS",
                "methodMarkup": 0,
                "flatRate": 0,
                "disabledMethods": [],
                "enabledMethods": []
            },
            "defaultCombinationId": 0,
            "imageUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591921.jpg",
            "smallThumbnailUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591920.jpg",
            "hdThumbnailUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591922.jpg",
            "originalImageUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591919.jpg",
            "originalImage": {
                "url": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591919.jpg",
                "width": 225,
                "height": 225
            },
            "borderInfo": {
                "dominatingColor": {
                    "red": 255,
                    "green": 255,
                    "blue": 255,
                    "alpha": 255
                },
                "homogeneity": true
            },
            "description": "",
            "descriptionTranslated": {
                "cs": "",
                "en": ""
            },
            "galleryImages": [],
            "media": {
                "images": [
                    {
                        "id": "0",
                        "isMain": true,
                        "orderBy": 0,
                        "image160pxUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591920.jpg",
                        "image400pxUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591923.jpg",
                        "image800pxUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591922.jpg",
                        "image1500pxUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591921.jpg",
                        "imageOriginalUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4519591919.jpg",
                        "alt": {
                            "translated": {}
                        }
                    }
                ],
                "videos": []
            },
            "categoryIds": [],
            "categories": [],
            "defaultCategoryId": 0,
            "seoTitle": "Toys",
            "seoTitleTranslated": {
                "cs": "",
                "en": "Toys"
            },
            "seoDescription": "",
            "seoDescriptionTranslated": {
                "cs": "",
                "en": ""
            },
            "favorites": {
                "count": 0,
                "displayedCount": "0"
            },
            "attributes": [],
            "files": [
                {
                    "id": 96178524,
                    "name": "image.jpeg",
                    "description": "",
                    "size": 12006,
                    "adminUrl": "https://app.ecwid.com/api/v3/1003/products/692730761/files/96178524"
                }
            ],
            "relatedProducts": {
                "productIds": [],
                "relatedCategory": {
                    "enabled": false,
                    "categoryId": 0,
                    "productCount": 5
                }
            },
            "combinations": [],
            "dimensions": {
                "length": 0,
                "width": 0,
                "height": 0
            },
            "shippingPreparationTime": {},
            "showDeliveryTimeInStorefront": false,
            "volume": 0,
            "showOnFrontpage": 11,
            "isSampleProduct": false,
            "googleItemCondition": "NEW",
            "isGiftCard": false,
            "discountsAllowed": true,
            "nameYourPriceEnabled": false,
            "subscriptionSettings": {
                "subscriptionAllowed": false,
                "oneTimePurchaseAllowed": true,
                "recurringChargeSettings": [
                    {
                        "recurringInterval": "MONTH",
                        "recurringIntervalCount": 1
                    }
                ]
            },
            "googleProductCategory": 412,
            "googleProductCategoryName": "Food, Beverages & Tobacco",
            "productCondition": "NEW",
            "outOfStockVisibilityBehaviour": "SHOW"
        },
        {
            "id": 689454040,
            "sku": "00001",
            "thumbnailUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679704.jpg",
            "unlimited": true,
            "inStock": true,
            "name": "Best Pizza",
            "nameTranslated": {
                "cs": "",
                "en": "Best Pizza"
            },
            "price": 50,
            "priceInProductList": 50,
            "defaultDisplayedPrice": 50,
            "defaultDisplayedPriceFormatted": "€50,00",
            "tax": {
                "taxable": true,
                "defaultLocationIncludedTaxRate": 10,
                "enabledManualTaxes": [
                    947976181
                ],
                "taxClassCode": "default"
            },
            "lowestPrice": 50,
            "defaultDisplayedLowestPrice": 50,
            "defaultDisplayedLowestPriceFormatted": "€50,00",
            "lowestPriceSettings": {
                "lowestPriceEnabled": true
            },
            "compareToPrice": 40,
            "compareToPriceFormatted": "€40,00",
            "compareToPriceDiscount": -10,
            "compareToPriceDiscountFormatted": "€-10,00",
            "compareToPriceDiscountPercent": -25,
            "compareToPriceDiscountPercentFormatted": "",
            "defaultDisplayedCompareToPrice": 40,
            "defaultDisplayedCompareToPriceFormatted": "€40,00",
            "defaultDisplayedCompareToPriceDiscount": -10,
            "defaultDisplayedCompareToPriceDiscountFormatted": "€-10,00",
            "defaultDisplayedCompareToPriceDiscountPercent": -25,
            "defaultDisplayedCompareToPriceDiscountPercentFormatted": "",
            "isShippingRequired": true,
            "hasFreeShipping": false,
            "weight": 0.5,
            "url": "https://store1003.company.site/products/pizza",
            "autogeneratedSlug": "pizza-689454040",
            "customSlug": "pizza",
            "created": "2024-08-19 08:49:01 +0000",
            "updated": "2024-09-05 07:58:07 +0000",
            "createTimestamp": 1724057341,
            "updateTimestamp": 1725523087,
            "productClassId": 0,
            "enabled": true,
            "options": [
                {
                    "type": "RADIO",
                    "name": "Size",
                    "nameTranslated": {
                        "cs": "",
                        "en": "Size"
                    },
                    "choices": [
                        {
                            "text": "24",
                            "textTranslated": {
                                "cs": "",
                                "en": "24"
                            },
                            "priceModifier": 0,
                            "priceModifierType": "ABSOLUTE"
                        },
                        {
                            "text": "28",
                            "textTranslated": {
                                "cs": "",
                                "en": "28"
                            },
                            "priceModifier": 10,
                            "priceModifierType": "ABSOLUTE"
                        },
                        {
                            "text": "32",
                            "textTranslated": {
                                "cs": "",
                                "en": "32"
                            },
                            "priceModifier": 20,
                            "priceModifierType": "ABSOLUTE"
                        }
                    ],
                    "required": true
                }
            ],
            "warningLimit": 1,
            "fixedShippingRateOnly": false,
            "fixedShippingRate": 0,
            "shipping": {
                "type": "GLOBAL_METHODS",
                "methodMarkup": 0,
                "flatRate": 0,
                "disabledMethods": [],
                "enabledMethods": []
            },
            "defaultCombinationId": 0,
            "imageUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679702.jpg",
            "smallThumbnailUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679701.jpg",
            "hdThumbnailUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679703.jpg",
            "originalImageUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679700.jpg",
            "originalImage": {
                "url": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679700.jpg",
                "width": 683,
                "height": 512
            },
            "borderInfo": {
                "dominatingColor": {
                    "red": 129,
                    "green": 96,
                    "blue": 73,
                    "alpha": 255
                },
                "homogeneity": false
            },
            "description": "",
            "descriptionTranslated": {
                "cs": "",
                "en": ""
            },
            "galleryImages": [],
            "media": {
                "images": [
                    {
                        "id": "0",
                        "isMain": true,
                        "orderBy": 0,
                        "image160pxUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679701.jpg",
                        "image400pxUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679704.jpg",
                        "image800pxUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679703.jpg",
                        "image1500pxUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679702.jpg",
                        "imageOriginalUrl": "https://d2j6dbq0eux0bg.cloudfront.net/images/1003/4493679700.jpg",
                        "alt": {
                            "main": "alt_tag",
                            "translated": {
                                "en": "alt_tag",
                                "cz": "alt_tag_cz"
                            }
                        }
                    }
                ],
                "videos": []
            },
            "categoryIds": [],
            "categories": [],
            "defaultCategoryId": 0,
            "seoTitle": "Best Pizza",
            "seoTitleTranslated": {
                "cs": "",
                "en": "Best Pizza"
            },
            "seoDescription": "",
            "seoDescriptionTranslated": {
                "cs": "",
                "en": ""
            },
            "favorites": {
                "count": 0,
                "displayedCount": "0"
            },
            "attributes": [],
            "files": [],
            "relatedProducts": {
                "productIds": [],
                "relatedCategory": {
                    "enabled": false,
                    "categoryId": 0,
                    "productCount": 5
                }
            },
            "combinations": [
                {
                    "id": 421616046,
                    "combinationNumber": 2,
                    "options": [
                        {
                            "name": "Size",
                            "nameTranslated": {
                                "cs": "",
                                "en": "Size"
                            },
                            "value": "32",
                            "valueTranslated": {
                                "cs": "",
                                "en": "32"
                            }
                        }
                    ],
                    "inStock": true,
                    "unlimited": true,
                    "attributes": [],
                    "defaultDisplayedPrice": 70,
                    "defaultDisplayedPriceFormatted": "€70,00",
                    "dimensions": {
                        "length": 0,
                        "width": 0,
                        "height": 0
                    },
                    "volume": 0,
                    "outOfStockVisibilityBehaviour": "SHOW",
                    "lowestPrice": 50,
                    "defaultDisplayedLowestPrice": 50,
                    "defaultDisplayedLowestPriceFormatted": "€50,00",
                    "lowestPriceSettings": {
                        "lowestPriceEnabled": true
                    },
                    "alt": {
                        "main": "alt_tag",
                        "translated": {
                            "cz": "alt_tag_cz",
                            "en": "alt_tag"
                        }
                    }
                },
                {
                    "id": 421616047,
                    "combinationNumber": 1,
                    "options": [
                        {
                            "name": "Size",
                            "nameTranslated": {
                                "cs": "",
                                "en": "Size"
                            },
                            "value": "28",
                            "valueTranslated": {
                                "cs": "",
                                "en": "28"
                            }
                        }
                    ],
                    "inStock": true,
                    "unlimited": true,
                    "attributes": [],
                    "defaultDisplayedPrice": 60,
                    "defaultDisplayedPriceFormatted": "€60,00",
                    "dimensions": {
                        "length": 0,
                        "width": 0,
                        "height": 0
                    },
                    "volume": 0,
                    "outOfStockVisibilityBehaviour": "SHOW",
                    "lowestPrice": 50,
                    "defaultDisplayedLowestPrice": 50,
                    "defaultDisplayedLowestPriceFormatted": "€50,00",
                    "lowestPriceSettings": {
                        "lowestPriceEnabled": true
                    },
                    "alt": {
                        "main": "alt_tag",
                        "translated": {
                            "cz": "alt_tag_cz",
                            "en": "alt_tag"
                        }
                    }
                }
            ],
            "dimensions": {
                "length": 0,
                "width": 0,
                "height": 0
            },
            "shippingPreparationTime": {},
            "showDeliveryTimeInStorefront": false,
            "volume": 0,
            "showOnFrontpage": 10,
            "isSampleProduct": false,
            "googleItemCondition": "NEW",
            "isGiftCard": false,
            "discountsAllowed": true,
            "nameYourPriceEnabled": false,
            "subscriptionSettings": {
                "subscriptionAllowed": false,
                "oneTimePurchaseAllowed": true,
                "recurringChargeSettings": [
                    {
                        "recurringInterval": "MONTH",
                        "recurringIntervalCount": 1
                    }
                ]
            },
            "googleProductCategory": 412,
            "googleProductCategoryName": "Food, Beverages & Tobacco",
            "productCondition": "NEW",
            "outOfStockVisibilityBehaviour": "SHOW"
        }
    ]
}

Access scopes

Requires the following access scope: read_catalog

Path params

ParamTypeDescription
storeIdnumberEcwid store ID.

Query params

All query params are optional.

ParamTypeDescription
productIdnumberInternal Ecwid product ID or multiple IDs separated by a comma. If this field is specified, other search parameters are ignored.
skustringProduct or variation SKU. Ecwid will return details of a product containing that SKU, if SKU value is an exact match. If SKU is specified, other search parameters are ignored, except for product ID.
keywordstringSearch term. Add * at the end of the keyword to disable the exact match search. Search supports any language enabled in the store and specified in the lang param.
Supported fields:

- name
- description
- SKU (including variations SKU)
- options
- category name
- gallery image descriptions
- attributes values (except for hidden attributes). Any special characters must be URI-encoded.
searchMethodstringAddition to keyword. STOREFRONT – emulates search on the storefront CP – emulates search in Ecwid admin
externalReferenceIdstringProduct ID in linked POS. Includes both product IDs and product variation IDs.
categorynumberSearch term for finding products assigned to a specific category by its ID.
categoriesnumberSearch term for finding products assigned to specified category IDs. For example: 0,123456,138470508.
includeProductsFromSubcategoriesbooleanSet true to get products from the subcategories of specified categories.
priceFromnumberMinimum product price.
priceTonumberMaximum product price.
createdFromstringProduct creation date/time (lower bound). Supported formats: UNIX timestamp, date/time. Examples: 1447804800, 2023-01-15 19:27:50
createdTostringProduct creation date/time (upper bound). Supported formats: UNIX timestamp, date/time. Examples: 1447804800, 2023-01-15 19:27:50
updatedFromstringProduct update date/time (lower bound). Supported formats: UNIX timestamp, date/time. Examples: 1447804800, 2023-01-15 19:27:50
updatedTostringProduct update date/time (upper bound). Supported formats: UNIX timestamp, date/time. Examples: 1447804800, 2023-01-15 19:27:50
sortBystringSort order for found products. Supported values:

RELEVANCE (default)
DEFINED_BY_STORE_OWNER
ADDED_TIME_DESC
ADDED_TIME_ASC
NAME_ASC
NAME_DESC
PRICE_ASC
PRICE_DESC
UPDATED_TIME_ASC
UPDATED_TIME_DESC

When category search term is set, DEFINED_BY_STORE_OWNER is used automatically.
enabledbooleanSet true to get only enabled products.
Set false to get only disabled products.
isGiftCardbooleanSet true to get gift cards only.
Set false to receive gift cards only.
inStockbooleanSet true to get only in-stock products.
Set false to get only out-of-stock products.
discountsAllowedbooleanSet true to get only products with allowed discounts.
Set false to get only products where discounts are not allowed.
visibleInStorefrontbooleanSet true to get only products visible on the storefront.
Set false to get only hidden products.
isCustomerSetPricebooleanSet true to get only products with customer-defined prices.
Set false to get only products without customer-defined prices.
onsalestringSet onsale to get only items currently on sale.
Set notonsale to get only items currently not on sale.
inventorystringSet instock to get only in-stock products.
Set outofstock to get only out-of-stock products.
baseUrlstringSet base URL for URLs in response. If not specified, Ecwid will use main URL from store settings.
cleanUrlsbooleanSet true to force receiving clean URLs – catalog links without hashbang (/#!/). By default Ecwid checks if this setting is enabled for the store and responds with matching URLs.
slugsWithoutIdsbooleanSet trueto receive product page slugs without IDs. By default Ecwid checks if this setting is enabled for the store and responds with matching URLs.
option_{optionName}={optionValue}stringFilter by product option name and one or several comma-separated values for that option. A product will appear in the response if it has an option with a specified name that has any of the specified values.

For example, a product has an option named Size with three values 24, 26, and 30. Then the following search term will find the product: option_Size=24,22. Even when the product doesn't have an option value 22.
attribute_{attributeName}={attributeValue}stringFilter by product attribute name and one or several comma-separated values for that attribute. A product will appear in the response if it has an attribute with a specified name that has any of the specified values.

For example, a product has an attribute named Brand with an Ecwid value. Then the following search term will find the product: attribute_Brand=Ecwid,Lightspeed. Even when the product doesn't have a Lightspeed attribute value.
offsetnumberSet offset from the beginning of the returned items list by a margin of 100 (for paging).
responseFieldsstringLimit JSON response by specific fields. If specified, all missing fields will be removed from the response body.
Example: ?responseFields=total,items(id,name,price,quantity)

Example of using responseFields param:

curl --location 'https://app.ecwid.com/api/v3/1003/products?responseFields=total,items(id,name,price,quantity)' \
--header 'Authorization: Bearer secret_ab***cd'
{
    "total": 2,
    "items": [
        {
            "id": 692730761,
            "name": "Toys",
            "price": 10
        },
        {
            "id": 689454040,
            "name": "Best Pizza",
            "price": 50
        }
    ]
}

Headers

The Authorization header with a secret access token is required.

HeaderFormatDescription
AuthorizationBearer secret_ab***cdAccess token of the application.

Response

A JSON object with the following fields:

FieldTypeDescription
totalnumberThe total number of found items (might be more than the number of returned items)
countnumberThe total number of the items returned in this batch
offsetnumberOffset from the beginning of the returned items list (for paging)
limitnumberMaximum possible number of returned items in this request.
itemsArray itemsThe items list

items

FieldTypeDescription
idnumberUnique integer product identifier
skustringProduct SKU. Items with options can have several SKUs specified in the product variations.
quantitynumberAmount of product items in stock. This field is omitted for the products with unlimited stock
unlimitedbooleantrue if the product has unlimited stock
inStockbooleantrue if the product or any of its variations is in stock (quantity is more than zero) or has unlimited quantity. false otherwise.
namestringProduct title
nameTranslatedObject translations Available translations for product name
pricenumberBase product price
priceInProductListnumberProduct price displayed in a storefront. May differ from the price value when the product has options and variations and the default variation's price is different from the base product price. Does not include taxes
defaultDisplayedPricenumberProduct price displayed in a storefront for logged out customer for default location (store location). May differ from the price value when the product has options and variations and the default variation's price is different from the base product price. It also includes taxes
defaultDisplayedPriceFormattedstringFormatted display of defaultDisplayedPrice in the store's formatting for prices
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
taxObject taxDetailed information about product's taxes
wholesalePricesArray wholesalePricesSorted array of wholesale price tiers (quantity limit and price pairs)
compareToPricenumberProduct pre-sale price with the same value as specified in Ecwid admin (without taxes), e.g. 40.
compareToPriceFormattedstringFormatted display of compareToPrice with a currency symbol, e.g. €44,00.

Includes taxes when a store uses net prices (prices don't include taxes). Displayed as strikethrough price on the storefront.
compareToPriceDiscountnumberDiscount from the sale price, e.g. -11.
compareToPriceDiscountFormattedstringFormatted discount from the sale price, e.g. €11,00.
compareToPriceDiscountPercentnumberDiscount percent from the sale price, e.g. -25.
compareToPriceDiscountPercentFormattedstringSale price discount percent (with percent sign), e.g. -25%.
defaultDisplayedCompareToPricenumberProduct pre-sale price including taxes, e.g. 44.
defaultDisplayedCompareToPriceFormattedstringFormatted display of compareToPrice with a currency symbol, e.g. €44,00. Includes taxes when a store uses net prices. Displayed as strikethrough price on the storefront.
defaultDisplayedCompareToPriceDiscountnumberDiscount from the sale price, e.g. -11.
defaultDisplayedCompareToPriceDiscountFormattedstringFormatted discount from the sale price, e.g. €11,00.
defaultDisplayedCompareToPriceDiscountPercentnumberDiscount percent from the sale price, e.g. -25.
defaultDisplayedCompareToPriceDiscountPercentFormattedstringSale price discount percent (with percent sign), e.g. -25%.
lowestPricenumberDEPRECATED Use lowestPriceSettings instead.
defaultDisplayedLowestPricenumberDEPRECATED Use lowestPriceSettings instead.
defaultDisplayedLowestPriceFormattedstringDEPRECATED Use lowestPriceSettings instead.
lowestPriceSettingsObject lowestPriceSettings Product lowest price settings for EU stores. Learn more
isShippingRequiredbooleantrue if product requires shipping, false otherwise
weightnumberProduct weight in the units defined in store settings. Omitted for intangible products
urlstringURL of product details page in the storefront. URL will be provided in SEO-friendly format if Ecwid knows the store uses them.
autogeneratedSlugstringA default slug generated for the product URL.
customSlugstringA custom slug set for the product URL.
createdstringDate and time of the product creation. Example: 2014-07-30 10:32:37 +0000
updatedstringProduct last update date/time
createTimestampnumberThe date of product creation in UNIX Timestamp format, e.g 1427268654
updateTimestampnumberProduct last update date in UNIX Timestamp format, e.g 1427268654
productClassIdnumberId of the class (type) that this product belongs to. 0 value means the product is of the default 'General' class. See also: Product types and attributes in Ecwid
enabledbooleantrue if product is enabled, false otherwise. Disabled products are not displayed in the store front.
optionsArray optionsA list of the product options. Empty ([]) if no options are specified for the product.
warningLimitnumberThe minimum 'warning' amount of the product items in stock, if set. When the product quantity reaches this level, the store administrator gets an email notification.
fixedShippingRateOnlybooleanLegacy function – see shipping field instead. true if shipping cost for this product is calculated as 'Fixed rate per item' (managed under the "Tax and Shipping" section of the product management page in Ecwid Control panel). false otherwise. With this option on, the fixedShippingRate field specifies the shipping cost of the product
fixedShippingRatenumberLegacy function – see shipping field instead. When fixedShippingRateOnly is true, this field sets the product fixed shipping cost per item. When fixedShippingRateOnly is false, the value in this field is treated as an extra shipping cost the product adds to the global calculated shipping
shippingObject shippingShipping settings of this product
defaultCombinationIdnumberIdentifier of the default product variation, which is defined by the default values of product options.
originalImageObject originalImageOriginal image information
descriptionstringProduct description in HTML
descriptionTranslatedObject translations Available translations for product description
galleryImagesArray galleryImagesList of the product gallery images (for updating alt tags and sort order)
mediaObject mediaDetails about product images and videos.
categoryIdsArray of numbersPrivate token: List of the categories, which the product belongs to. Public token: List of the enabled categories the product belongs to. Any token: If no categories provided, product is displayed on the store front page, see showOnFrontpage field, or all categories of that product are disabled
categoriesArray categoriesList of the categories the product belongs to. If empty, product belogs to the storefront page, see showOnFrontpage field.
defaultCategoryIdnumberDefault category ID of the product. If value is 0, then product does not have a default category and is not shown anywhere in storefront
seoTitlestringPage title to be displayed in search results on the web. Recommended length is under 55 characters. Is empty if value wasn't changed by merchant from the product itself
seoTitleTranslatedstringTranslations of the page title to be displayed in search results on the web
seoDescriptionstringPage description to be displayed in search results on the web. Recommended length is under 160 characters. Is empty if value wasn't changed by merchant from the product itself
seoDecriptionTranslatedstringTranslations of the page description to be displayed in search results on the web
favoritesObject favoritesStats showing how many times the product was added to favorites on the storefront.
attributesArray attributesList of product attributes and their values.
filesArray filesDownloadable files (E-goods) attached to the product
relatedProductsObject relatedProductsList of related products displayed as "You may also like" products of the product.
combinationsArray combinationsList of the product variations.
dimensionsObject dimensionsProduct dimensions info.
volumenumberProduct volume, fractional number, 0 by default.
showOnFrontpagenumberA positive number indicates the position (index) of a product in the store front page – the smaller the number, the higher the product is displayed on a page. A missing field means the product is not shown in the store front page (for private tokens)
subscriptionSettingsObject subscriptionSettingsSubscription settings.
isSampleProductbooleantrue if this product is a sample one (sample product when Ecwid store is initially created). false otherwise. Read only field
isGiftCardbooleantrue if a product is a gift card. false if it's a regular store product. Read only field
discountsAllowedbooleantrue if Ecwid can apply discounts to this product at checkout. false otherwise
externalReferenceIdstringExternal ID for products synced from external services (e.g. POS)
outOfStockVisibilityBehaviourstringIndicates whether an out of stock product should visible or not. One of: SHOW, HIDE, ALLOW_PREORDER.
minPurchaseQuantitynumberSets minimum product purchase quantity. null by default. Not visible if the value was not assigned.
maxPurchaseQuantitynumberSets maximum product purchase quantity. null by default. Not visible if the value was not assigned.
reviewsCollectingAllowedbooleanWhen true, allows to collect, check, and publish reviews for this product in store.
ratingnumberAverage product rating.
reviewsPublishednumberNumber of published reviews.
reviewsModeratednumberNumber of reviews waiting for merchant's approval.

favorites

FieldTypeDescription
countnumberThe actual number of 'likes' of this product
displayedCountstringThe displayed number of likes. May differ from the count if, for example, the value is more than 1000, than it will show 1K instead of the precise number

wholesalePrices

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

lowestPriceSettings

FieldTypeDescription
lowestPriceEnabledbooleanIf true, lowest price is enabled for the product and shown on the storefront.
manualLowestPricenumberManually entered lowest price for the last 30 days before any discounts or taxes applied.
defaultDisplayedManualLowestPricenumbermanualLowestPrice with taxes applied.
defaultDisplayedManualLowestPriceFormattedstringFormatted display of defaultDisplayedManualLowestPrice using store format settings.
automaticLowestPricenumberAutomatically calculated lowest price for the last 30 days before any discounts or taxes applied. Read-only
defaultDisplayedAutomaticLowestPricenumberautomaticLowestPrice with taxes applied. Read-only
defaultDisplayedAutomaticLowestPriceFormattedstringFormatted display of defaultDisplayedAutomaticLowestPrice using store format settings. Read-only

options

FieldTypeDescription
typestringOne of SELECT, RADIO, CHECKBOX, TEXTFIELD, TEXTAREA, DATE, FILES, SIZE
namestringProduct option name, e.g. Color
nameTranslatedObject translationsAvailable translations for product option name
choicesArray choicesAll possible option selections for the types SELECT, CHECKBOX or RADIO or SIZE. This field is omitted for the product option with no selection (e.g. text, datepicker or upload file options)
defaultChoicenumberThe number, starting from 0, of the option's default selection. Only presents if the type is SELECT or RADIO or SIZE
requiredbooleantrue if this option is required, false otherwise. Default is false

shipping

FieldTypeDescription
typestringOne of: "GLOBAL_METHODS", "SELECTED_METHODS", "FLAT_RATE", "FREE_SHIPPING". "GLOBAL_METHODS" – all standard shipping methods set up in store settings; "SELECTED_METHODS" – Ecwid will use enabledMethods and disabledMethods list to make shipping calculations; "FLAT_RATE" – sets flat rate for product's shipping, see flatRate field.
methodMarkupnumberAdditional cost for shipping methods set by merchant (global and selected)
flatRatenumberFlat rate cost for shipping this product
disabledMethodsArray of stringsIDs of shipping methods that need to be excluded from calculation when this product is in cart. IDs can be retrieved in Store profile
enabledMethodsArray of stringsIDs of shipping methods which will only be shown when this product is in cart. No other shipping methods will be shown. IDs can be retrieved in Store profile

originalImage

FieldTypeDescription
urlstringUrl of an original image
widthnumberWidth of an image (px)
heightnumberHeight of an image (px)

galleryImages

FieldTypeDescription
idnumberId of an image in the gallery
urlstringURL of an image
thumbnailstringURL of a thumbnail (160px)
originalImageUrlstringURL of an original image
imageUrlstringURL of an image (1200px)
hdThumbnailUrlstringURL of an HD-thumbnail (800px)
thumbnailUrlstringURL of a big thumbnail (400px)
smallThumbnailUrlstringURL of a thumbnail (160px)
widthnumberWidth of an image (px)
heightnumberHeight of an image (px)
orderBynumberConsecutive number of an image in the gallery
borderInfoObject borderInfoBorder information

borderInfo

FieldTypeDescription
dominatingColorObject dominatingColorDominating color information
homogeneitybooleantrue if an image is homogeneous. false otherwise

dominatingColor

FieldTypeDescription
rednumberRed color (from 0 to 255, RGB)
greennumberGreen color (from 0 to 255, RGB)
bluenumberBlue color (from 0 to 255, RGB)
alphanumberAlpha channel (from 0 to 255)

media

FieldTypeDescription
imagesArray imagesDetails about product images.
videosArray videosDetails about product videos.

images

FieldTypeDescription
idstringInternal image ID in a string number
altObject altImage description in "alt" attribute and its translations
orderBynumberThe sort weight of the image in the gallery images list. The less the number, the closer the image to the beginning of the gallery
isMainbooleantrue if this is a main product image. false if gallery image
image160pxUrlstringURL of the product thumbnail resized to fit 160x160px
image400pxUrlstringURL of the product thumbnail displayed on the product list pages. Thumbnails size is defined in the store settings. Default size of the biggest dimension is 400px
image800pxUrlstringProduct HD thumbnail URL resized to fit 800x800px
image1500pxUrlstringURL of the product image resized to fit 1500x1500px
imageOriginalUrlstringURL of the image in its original resolution
externalIdstringImage ID for Lightspeed R-Series/X-Series image sync. Read-only

alt

FieldTypeDescription
mainstringText image description displayed in "alt" image attribute
translationsObject translationsTranslations for the "alt" image description

videos

FieldTypeDescription
idnumberInternal video ID
videoCoverIdnumberID of the cover image for the video (from 'images')
urlbooleanURL to the video file
embedHtmlstringEmbedded code for the video file
providerNamestringVideo hosting provider name (could be empty)
titlestringVideo title (could be empty)
image160pxUrlstringURL of the video cover image resized to fit 160x160px
image400pxUrlstringURL of the video cover image resized to fit 400x400px
image800pxUrlstringURL of the video cover image resized to fit 800x800px
image1500pxUrlstringURL of the video cover image resized to fit 1500x1500px
imageOriginalUrlstringRL of the video cover image in its original resolution

categories

FieldTypeDescription
idnumberCategory ID
enabledbooleantrue if category is enabled, false otherwise

attributes

FieldTypeDescription
idnumberUnique attribute ID. See Product types for the information on attribute IDs
namestringAttribute displayed name
nameTranslatedObject translationsAvailable translations for product attribute name
valuestringAttribute value
valueTranslatedObject translationsAvailable translations for product attribute value
typestringAttribute type. There are user-defined attributes, general attributes and special 'price per unit’ attributes. The 'type’ field contains one of the following: CUSTOM, UPC, BRAND, GENDER, AGE_GROUP, COLOR, SIZE, PRICE_PER_UNIT, UNITS_IN_PRODUCT
showstringDefines if an attribute is visible on a product page. Supported values: NOTSHOW, DESCR, PRICE. The value PRICE = DESCR.

files

FieldTypeDescription
idnumberInternal ID of the file
namestringFile name
descriptionstringFile description defined by the store administrator
sizenumberFile size, bytes (64-bit integer)
adminUrlstringDirect link to the file. Important: to download the file, add your API token to this URL like this: https://app.ecwid.com/api/v3/4870020/products/37208340/files/7215102?token=YOUR-API-TOKEN

relatedProducts

FieldTypeDescription
productIdsArray of numbersIDs of the related products
relatedCategoryObject relatedCategoryDescribes the "N random related products from a category" option

relatedCategory

FieldTypeDescription
enabledbooleantrue if the "N random related products from a category" option is enabled. false otherwise
categoryIdnumberId of the related category. Zero value means "any category", that is, random products from the whole store.
productCountnumberNumber of random products from the given category to be shown as related

combinations

FieldTypeDescription
idnumberVariation ID
combinationNumbernumberVariation # number, which is displayed in the variations table in Control panel
optionsArray optionsSet of options that identifies this variation. An array of name-value pairs.
skustringVariation SKU. Omitted if the variation inherits the base product's SKU
thumbnailUrlstringURL of the product variation thumbnail displayed on the product list pages. Thumbnails size is defined in the store settings. Default size of biggest dimension is 400px. Omitted if the variation inherits the base product's image. The original uploaded product image is available in the originalImageUrl field.
imageUrlstringURL of the product variation image resized to fit 1500x1500px. Omitted if the variation inherits the base product's image. The original uploaded product image is available in the originalImageUrl field.
smallThumbnailUrlstringURL of the product variation thumbnail resized to fit 160x160px. Omitted if the variation inherits the base product's image. The original uploaded product image is available in the originalImageUrl field.
hdThumbnailUrlstringProduct variation HD thumbnail URL resized to fit 800x800px. Omitted if the variation inherits the base product's image.
originalImageUrlstringURL of the original not resized product variation image. Omitted if the variation inherits the base product's image.
quantitynumberAmount of the variation items in stock. If sku is omitted, then quantity of the variation is nested from base product. If sku is present, the variation has its own quantity value.
unlimitedbooleantrue if the variation has unlimited stock (that is, never runs out)
pricenumberVariation price. Omitted if the variation inherits the base product's price.
wholesalePricesArray wholesalePricesSorted array of the variation's wholesale price tiers (quantity limit and price). Omitted if the variation inherits the base product's tiered price settings.
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 attributesList of variation attributes and their values.
compareToPricenumberVariation's sale price displayed strike-out in the customer frontend Omitted if empty
minPurchaseQuantitynumberSets minimum product variation purchase quantity. Default value is taken from a base product. Not visible if the value is not assigned.
maxPurchaseQuantitynumberSets maximum product variation purchase quantity. Default value is taken from a base product. Not visible if the value is not assigned.
outOfStockVisibilityBehaviourstringIndicates whether an out of stock product should visible or not. One of: SHOW, HIDE, ALLOW_PREORDER.

options

FieldTypeDescription
namestringOption name
nameTranslatedObject translationsAvailable translations for product option name
valuestringOption value
valueTranslatedObject translationsAvailable translations for product option value

choices

FieldTypeDescription
textstringOption selection text, e.g. 'Green'
textTranslatedObject translationsAvailable translations for product option selection text
priceModifiernumberPercent or absolute value of the option's price markup. Positive, negative and zero values are allowed. Default is 0
priceModifierTypestringOption markup calculation type. PERCENT or ABSOLUTE. Default is ABSOLUTE.

translations

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

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

Translations for each available language. If no other translations are provided, the default language translations is returned. See available languages in store language settings.

dimensions

FieldTypeDescription
lengthnumberLength of a product
widthnumberWidth of a product
heightnumberHeight of a product

subscriptionSettings

FieldTypeDescription
subscriptionAllowedbooleantrue if the product can be sold as subscription ("Sell as subscription" product setting enabled). false otherwise.
oneTimePurchaseAllowedbooleantrue if the product can be purchased once, with no further charges on a regular basis. false otherwise.
oneTimePurchasePricenumberThe cost of the product by subscription with a one-time purchase, null by default.
oneTimePurchasePriceFormattedstringThe cost of the product for a one-time purchase, formatted according to the settings for displaying prices in the store.
oneTimePurchaseMarkupnumberThe difference between the price of the product when subscribing and a one-time purchase in absolute values. Calculated automatically when oneTimePurchasePrice that isn’t equal to price is set.
oneTimePurchaseMarkupFormattedstringThe difference between the price of the product when subscribing and a one-time purchase in absolute values. Formatted according to the settings for displaying prices in the store. Updated automatically when the oneTimePurchaseMarkup is changed.
oneTimePurchaseMarkupPercentnumberThe difference between the price of the product when subscribing and a one-time purchase as a percentage. Calculated automatically when oneTimePurchasePrice that isn’t equal to price is set.
oneTimePurchaseMarkupPercentFormattedstringThe difference between the price of the product when subscribing and a one-time purchase as a percentage. Formatted according to the settings for displaying prices in the store. Updated automatically when the oneTimePurchaseMarkupPercent is changed.
recurringChargeSettingsObject recurringChargeSettingsRecurring charge settings.

recurringChargeSettings

FieldTypeDescription
recurringIntervalstringCharge recurring interval. Supported values: DAY, WEEK, MONTH, YEAR.
recurringIntervalCountnumberCharge recurring interval. Supported values: for DAY - 1 (daily), for WEEK - 1 (weekly), 2 (biweekly), for MONTH - 1 (monthly), 3 (quarterly), for YEAR - 1 (annually).
subscriptionPriceWithSignUpFeenumberThe cost of the product for the first subscription order.
subscriptionPriceWithSignUpFeeFormattedstringThe cost of the product for the first subscription order. Formatted according to the settings for displaying prices in the store. Updated automatically when the subscriptionPriceWithSignUpFee is changed.
signUpFeenumberThe size of the markup that is imposed on the first order.
signUpFeeFormattedstringThe size of the markup that is imposed on the first order. Formatted according to the settings for displaying prices in the store. Updated automatically when the signUpFee is changed.

tax

FieldTypeDescription
taxablebooleantrue to apply taxes to this product, false otherwise
defaultLocationIncludedTaxRatenumberDefault tax rate (%) for including into product price. Is a sum of all enabled taxes included in product price for the store location. Read only
enabledManualTaxesArray of numbersArray of internal Ecwid tax IDs, as listed in Store profile. Empty array if no manual taxes are enabled or automatic taxes are enabled
taxClassCodestringA unique tax class code for the product that determine the taxability of the products for a certain region. If not specified the default value is Default
Language
Click Try It! to start a request and see the response here!