Upload a CSV file to create or update products in bulk. The CSV must include a GTIN column (also accepts barcode, upc, ean, or gtin-8 / gtin-12 / gtin-13 / gtin-14). Optional columns: product_name (also name / title), brand, manufacturer, description, image_url (also image / photo_url), country_of_origin (also country / origin), net_content (also size / weight / volume). Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Imported products are claimed for the authenticated user’s organization with BRAND_CLAIMED authority. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.
Documentation Index
Fetch the complete documentation index at: https://docs.closient.com/llms.txt
Use this file to discover all available pages before exploring further.
CSV file to import. Must be UTF-8 encoded.
OK
Outcome of a single CSV upload to POST /import/csv.
The four counters (created / updated / skipped /
error_count) sum to total_rows for any successful request.
The endpoint returns 200 even when individual rows fail — per-row
failures are reported in errors rather than aborting the whole
upload. A non-empty errors list is therefore expected on partial
success and is not itself an error condition.
Total number of data rows processed (excluding the header row).
x >= 0Number of new products created from the upload.
x >= 0Number of existing products updated (matched by GTIN).
x >= 0Number of rows skipped because they were duplicates of an earlier row or yielded no changes.
x >= 0Number of rows that failed validation. Equals the length of errors.
x >= 0Per-row validation failures. Empty when every row imported cleanly.