POST /v1/indexes/products/documents/batch 🔒 Bearer

Batch upsert

Insert or update up to 1,000 documents per request.

The fastest way to push documents at scale. Skryx accepts up to 1,000 documents per request and indexes them in parallel.

# Body parameters

Name Type Required Description
documents array required Up to 1,000 documents. Each must include an id.
action enum optional, default upsert upsert (insert-or-replace), create (fail on duplicate), update (partial merge — only the fields you send are touched).

# Response

{
  "data": {
    "imported": 1000,
    "failed": 0,
    "errors": []
  }
}

If any document fails, the others still succeed. The errors array contains { id, error, message } entries for failed rows so you can retry exactly those.

# Idempotency

Batch upsert is idempotent on id — re-sending the same payload produces the same final state. Safe to retry on network errors.

esc
POST /v1/indexes/products/documents/batch