KintsugiKintsugi

Recategorize products in bulk

POST/products/recategorize

Move products in one organization from one category/subcategory to another. Every product matching existingCategory/existingSubcategory is reassigned to newCategory/newSubcategory, which must resolve to a supported tax code or the request returns 400. Pass statusList to move only products currently in those approval statuses. The reassignment runs asynchronously; the response is a 202 with orgsQueued. Send the target organization as Organization-Id when your credential owns more than one.

Authorization

Api-KeystringRequired

Your secret API key. Include it with every request.

Headers

Api-Versiondate

Release date, as YYYY-MM-DD. Defaults to 2026-07-21.

Organization-Idstring

Target organization id (Organization-Id selector).

Connection-Idstring

Target connection id; resolves to its organization.

Entity-Idstring

Platform entity id; resolves to a connection's organization.

Entity-Sourcestring

Optional source to disambiguate an Entity-Id.

Body

existingCategoryPublicProductCategoryEnumRequired

Current top-level tax category of the products to move.

Available options:DigitalMiscPhysicalServices
existingSubcategorystringRequired

Current tax subcategory display label of the products to move (e.g. 'General Clothing'). With existingCategory it selects which products recategorize.

newCategoryPublicProductCategoryEnumRequired

New top-level tax category to assign to the matched products.

Available options:DigitalMiscPhysicalServices
newSubcategorystringRequired

New tax subcategory display label to assign (e.g. 'Catering'). With newCategory it must resolve to a supported product tax code; an unrecognized pair returns 400.

statusListPublicProductStatusEnum[]

Optional approval-status filter: only move products currently in one of these statuses. Omit to move every product matching the existing category/subcategory pair regardless of status.

Available options:APPROVEDPARTIALLY_APPROVEDPENDINGARCHIVED

Response

orgsQueuedintegerRequired

Number of organizations queued for recategorization. Always 1: a recategorize targets the single organization resolved from your credential and any Organization-Id selector.

202

Successful Response

400

The request was invalid.

401

Authentication failed or was missing.

403

The credential is not permitted for this request.

404

The requested resource was not found.

422

The request failed validation.

cURL
POST /products/recategorize
-H "Api-Key: ***"
-H "Api-Version: 2026-07-21"
{
"existingCategory": "Digital",
"existingSubcategory": "General Clothing",
"newCategory": "Digital",
"newSubcategory": "Catering",
"statusList": [
"APPROVED"
]
}
Response
{
"orgsQueued": 1
}
Recategorize products in bulk (2026-07-21) | Kintsugi API Reference