Upload Batches

Create upload batch

Upload a group of files (e.g. one shipment's paperwork) and let Wove's object-creation pipeline create the shipments, shipment events or customs entries they describe.

Processing is asynchronous: the batch is returned with status pending, moves to processing, and ends as completed or failed. Poll GET /api/v1/external/upload-batches/{batchId} and read createdEntities once it has completed.

Required scopes: documents:write, plus the write scope of every type in allowedObjectTypes (shipment / shipment_event → shipments:write, customs_entry → customs:write). When allowedObjectTypes is omitted the batch is unrestricted and requires shipments:write.

post/api/v1/external/upload-batches

Request

Request body multipart/form-data

filesstring[] required

1-50 files, up to 50 MB each. Zip archives are expanded.

labelstring

Display label for the batch

notestring

Free-text context for the pipeline (stands in for an email body)

branchIdstring

Branch to assign. Must belong to your organization.

allowedObjectTypesstring[]

Restricts what the batch may create. Send the field repeated or as one comma-separated value. Any other value is rejected with 400. Omit for an unrestricted batch.

entryType'01' | '11' | 'export' | 'in_bond' | 'ca_b3' | 'ca_clvs' | 'ca_type_f'

Customs entry type hint for customs-entry batches. Unrecognized values are ignored.

filingCountrystring

ISO-2 filing country hint for customs-entry batches

Example request

{
  "label": "Shipment 1",
  "filingCountry": "US"
}

Response

Batch created and queued for processing

successboolean

Example response

{
  "success": true,
  "data": {
    "id": "1017334964043997186",
    "label": "Shipment 1",
    "filingCountry": "US",
    "createdEntities": [
      {
        "entityType": "shipment",
        "entityId": "1015989120405430278"
      }
    ]
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.