Skip to main content
POST
Create or update orders by external identifier (v2)
Create or update multiple orders in one call, keyed by your own external identifiers. Use it for batch work: importing orders from an external system, or updating many orders at once by their external IDs.
Create or Update Orders by External Identifier behavior: For each order with an external_id, Nash will check if an order with that external ID already exists. If it exists, the order will be updated; if not, a new order will be created. A hard failure on one order does not fail the batch; the rest still commit. The response returns a results array (one entry per input order, in the same order as the request) with success or failed status, plus a summary of the counts.
Updating archived orders will also unarchive them.
Common uses:
  • Bulk importing orders from external systems
  • Synchronizing order data between systems
  • Batch updating multiple orders by external identifier

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
orders
OrderInput · object[]
required

List of orders to create

Response

OK

Response for POST /v2/orders/upsert/bulk.

The orders specialisation of the generic BulkUpsertResponse envelope: data on each result is a full BulkUpsertOrderData (the upserted order). The {results, summary} shape and the success/failed per-row status come from the generic base in server.serializers.bulk.

results
BulkUpsertResult[BulkUpsertOrderData] · object[]
required

One entry per input row, in the same order as the request.

summary
BulkUpsertSummary · object
required

Aggregate counts of each outcome.