Transaction batch failures
API Reference
Transaction batch failures
Download CSV or JSON reports listing failed transaction rows for a batch import job, including row numbers, error codes, and validation messages.
GET
Transaction batch failures
Endpoints
β¦/failures.csvβ CSV file download (Content-Disposition: attachment)β¦/failuresβ JSON body
Authentication
transactions:create, entities:bulk_import, events:create.
HTTP responses
CSV columns
Legacy CSV rows (no
code column) are normalized on download when possible.
JSON response
boolean
Always
true when job exists.string
Batch job id.
string
transaction_batchstring
queued | running | completed | failed | β¦array
Row failures:
{ externalId, code, message }. Empty when all rows succeeded or job failed entirely before per-row collection.object
Present when
status=failed for whole-batch errors (e.g. INVALID_ENTITY_REFERENCES): { code, message, details? }.boolean
true when more than 500 failures exist. The response sample is hydrated from the stored failures.csv; download the CSV for the complete list.number
Total failed rows reported by the job artifact.
With
batchErrorHandling=rollback_all (multipart upload default), an insert error or invalid entity refs (strict validation) aborts the batch: 0 rows created; ref detail goes to failures.csv (S3) and jobFailure, not a giant metadata array. With continue_collect_errors or stop_keep_success, invalid refs and other row failures are recorded per row and valid rows are created (or processing stops at the first failure, depending on policy).Skipped rows (duplicates)
skipped are not failures: the transaction was not inserted because another
transaction with the same externalId already existed in your organization. This endpoint lists
which ones, so you can tell a duplicate re-upload from a real problem.
Same authentication and permissions as the failures endpoints.
SKIPS_NOT_AVAILABLE means the job has no stored report: jobs that finished before this endpoint
existed, jobs with nothing skipped, and jobs sent with skipDuplicates=false (duplicates are
resolved by the database and only counted, not listed).
See also: Failure codes, Create batch transactions.