Bulk Import Products from CSV
Queue a bulk CSV product import for the authenticated organization. Upload a CSV file with multipart/form-data or send JSON with inline csvText or a stored documentId. The API creates import rows, queues enrichment and product writes through Inngest, and returns a bulk_... job ID to poll with GET /api/v1/jobs/. Cancel in-flight imports with POST /api/v1/jobs//cancel.
Authorizations
Bearer API key for server-to-server access. Session auth is also supported in first-party UI flows.
Body
CSV file containing product rows.
Comma-separated marketplace list, e.g. shopee,lazada.
Comma-separated country list, e.g. sg,my.
Optional for API-key requests; required for session-authenticated requests across multiple organizations.
Optional display name override. Defaults to the uploaded file name.
JSON object mapping CSV headers to import fields, e.g. {"sku":"SKU","title":"Product Name"}.
JSON object mapping marketplace keys to connected store IDs.
JSON array of zero-based CSV row indexes to import.
standard, enterprise keep_first, keep_last, merge_fields_prefer_non_empty, fail_job Optional confidence threshold between 0 and 1, or the string null.
Optional enrichment model override.
JSON object with enrichment workflow options such as sourceImagesAutomatically, enableRichDescription, and autoAssignMarketplaceTaxonomy.