Skip to content
Guides
CatalogProducts
catalog:update

Update a product

Updates the supplied product fields. Variant entries declare create or update; update requires variantId. The list replaces the active variant set and omitted variants are archived.

PATCH/v1/catalog/products/{productId}

Updates the supplied product fields. Variant entries declare create or update; update requires variantId. The list replaces the active variant set and omitted variants are archived.

Authorization

bearerAuth
AuthorizationBearer <token>

OAuth2 access token issued by Ecomiq Auth.

In: header

Path Parameters

productId*string

Identifier of the product.

Header Parameters

x-Store-Id?string

Store the request acts on. Not needed when the token is bound to a store.

Authorization*string

OAuth 2.0 bearer token.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X PATCH "https://example.com/v1/catalog/products/7204558912004325301" \  -H "x-Store-Id: <store-id>" \  -H "Authorization: Bearer <token>" \  -H "Content-Type: application/json" \  -d '{    "name": "Example resource",    "sku": "SKU-001",    "slug": "example-resource",    "description": "Example description.",    "summary": "example",    "brandId": "7204558912004325301",    "clearBrand": false,    "categoryId": "7204558912004325301"  }'
{  "id": "7204558912004325301",  "storeId": "7204558912004325301",  "sellerId": "7204558912004325301",  "sellerApprovalPolicy": "manualReview",  "name": "Example resource",  "description": "Example description.",  "slug": "example-resource",  "summary": "example",  "type": "product",  "condition": "new",  "discountPercentage": 1,  "currency": "PEN",  "taxRate": 1,  "taxIncluded": false,  "brand": {    "id": "7204558912004325301",    "storeId": "7204558912004325301",    "name": "Example resource",    "slug": "example-resource",    "order": 1,    "icon": "example",    "keywords": [      "example"    ]  },  "variants": [    {      "id": "7204558912004325301",      "storeId": "7204558912004325301",      "productId": "7204558912004325301",      "version": 1,      "packageId": "7204558912004325301",      "name": "Example resource",      "sku": "SKU-001",      "barcode": "7751234567890",      "countryOfOrigin": "example",      "hsCode": "example_code",      "order": 1,      "isDefault": false,      "price": 1,      "compareAtPrice": 1,      "costPrice": 1,      "currency": "PEN",      "isDigital": false,      "trackInventory": false,      "allowBackorders": false,      "lowStockThreshold": 1,      "weight": 1,      "width": 1,      "height": 1,      "length": 1,      "unitOfMeasure": "kilogram",      "onHand": 1,      "committed": 1,      "available": 1,      "options": [        {          "name": "Example resource",          "key": "example",          "value": "example"        }      ],      "images": [        {          "imageId": "7204558912004325301",          "order": 1,          "isPrimary": false        }      ],      "inventories": [        {          "id": "7204558912004325301",          "locationId": "7204558912004325301",          "onHand": 1,          "committed": 1,          "available": 1,          "incoming": 1,          "unavailable": 1,          "version": 1,          "createdOn": "2026-08-01T15:30:00Z",          "updatedOn": "2026-08-01T15:30:00Z"        }      ],      "status": "outOfStock",      "createdOn": "2026-08-01T15:30:00Z",      "updatedOn": "2026-08-01T15:30:00Z"    }  ],  "price": 1,  "compareAtPrice": 1,  "costPrice": 1,  "totalOnHand": 1,  "available": 1,  "committed": 1,  "totalVariants": 1,  "activeVariants": 1,  "vendor": "example",  "tags": [    "example"  ],  "specifications": [    {      "name": "Example resource",      "key": "example",      "value": "example"    }  ],  "images": [    {      "id": "7204558912004325301",      "url": "https://example.com/resource",      "name": "Example resource",      "width": 1,      "height": 1,      "isPrimary": false,      "order": 1    }  ],  "category": {    "id": "7204558912004325301",    "storeId": "7204558912004325301",    "name": "Example resource",    "slug": "example-resource",    "order": 1,    "path": "example",    "requiresSizeGuide": false,    "icon": "example"  },  "bundleItems": [    {      "productId": "7204558912004325301",      "variantId": "7204558912004325301",      "productName": "Example resource",      "variantName": "Example resource",      "imageUrl": "https://example.com/resource",      "sku": "SKU-001",      "unitPrice": 1,      "quantity": 1,      "available": 1    }  ],  "packageId": "7204558912004325301",  "shippingProfileId": "7204558912004325301",  "status": "draft",  "moderationReason": "Example note.",  "metaTitle": "Example title",  "metaDescription": "Example description.",  "metaKeywords": [    "example"  ],  "featuredUntil": "2026-08-01T15:30:00Z",  "isFeatured": false,  "minOrderQuantity": 1,  "maxOrderQuantity": 1,  "isDigital": false,  "hasVariants": false,  "hasOptions": false,  "hasModifiers": false,  "hasActivity": false,  "hasPriceLists": false,  "hasReviews": false,  "hasSizeGuide": false,  "modifierGroups": [    {      "id": "7204558912004325301",      "name": "Example resource",      "isRequired": false,      "selectionType": "single",      "minSelections": 1,      "order": 1,      "status": "active",      "options": [        {          "id": "7204558912004325301",          "name": "Example resource",          "priceDelta": 1,          "isDefault": false,          "order": 1,          "status": "active",          "imageUrl": "https://example.com/resource"        }      ]    }  ],  "sizeGuide": {    "id": "7204558912004325301",    "name": "Example resource",    "slug": "example-resource",    "description": "Example description.",    "imageUrl": "https://example.com/resource",    "gender": "unisex",    "measurementType": "body",    "unit": "cm",    "notes": "Example note.",    "rows": [      {        "label": "example",        "sizeKey": "example",        "order": 1,        "measurements": [          {            "key": "example",            "name": "Example resource",            "min": 1,            "max": 1,            "value": 1,            "description": "Example description."          }        ]      }    ]  },  "views": 1,  "salesCount": 1,  "reviewsCount": 1,  "collections": [    {      "id": "7204558912004325301",      "name": "Example resource"    }  ],  "createdOn": "2026-08-01T15:30:00Z",  "updatedOn": "2026-08-01T15:30:00Z",  "lastActivityOn": "2026-08-01T15:30:00Z"}