Import Lot Backfill CSV
POST/api/inventory-expiry/lot-backfill
Upload a lot-data backfill CSV (multipart/form-data). The file is parsed, then a tray-tracked job is dispatched that splits the named quantities off each product's existing un-lotted FIFO stock into dated lots (cost preserved). Returns the tracked_job_log_id so the frontend can follow progress via the tracked job log endpoints; per-row outcomes (assigned / partial / skipped / failed) are reported in the job summary.
Body: multipart/form-data with a single file field. Accepted mime: csv, txt. Max size: 10 MB.
Authentication: Requires Bearer token. Scope: scope.rw:inventory (write) + permission inventory.adjust.
inventory:writeGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Request
Responses
- 200
- 401
- 403
- 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.
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.