Validate CSV Mappings
POST/api/tiktok-shop/integration-instances/:integration_instance_id/products/csv-mappings/validate
Parse/preview half of the two-step CSV import — mirrors Shopify's Validate Bulk Mapping CSV, but operates per-SKU (TikTok lists each SKU as its own variant, keyed on tiktok_sku_id).
Any valid API token can call this endpoint — no specific scope required. Manage tokens.
Validates the uploaded CSV WITHOUT applying anything, then returns the resolved {tiktok_shop_product_sku_id, tiktok_sku_id, sku_product_id} pairings the frontend previews and posts back to the Apply CSV Mappings endpoint, plus counts and any invalid/skipped rows.
File must be CSV/TXT, max 10 MB. Required columns: tiktok_sku_id, map_to_sku. Rows with an empty map_to_sku are counted in skipped_count. Rows whose tiktok_sku_id isn't found for this integration, or whose map_to_sku product code doesn't match a SKU.io product, are returned in invalid_rows (with a per-row error).
Response: { valid_count, skipped_count, invalid_rows[], mappings[] }.
Request
Responses
- 200
- 401
- 403
- 404
- 422
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.