---
title: "Create multiple parcels in bulk"
method: POST
path: "/api/v{version}/parcels/bulk"
tags: ["orders"]
---

# Create multiple parcels in bulk

`POST /api/v{version}/parcels/bulk`

Creates up to 100 parcels in a single request. 
                Returns detailed success/failure information for each parcel.

                Response Status Codes:
                - 200 OK: All parcels created successfully
                - 207 Multi-Status: Partial success (some parcels created, some failed)
                - 400 Bad Request: All parcels failed validation or creation

## Path parameters

- `version` string, required

## Headers

- `X-Tenant` string, required

## Request body

- CreateBulkParcelsRequest
  - `parcels` SingleParcelCreationRequest[], nullable
    - `customer` ParcelCustomerDto
      - `customerId` string, uuid
      - `name` string, nullable
      - `phone` PhoneDto
        - `number1` string, nullable
        - `number2` string, nullable
        - `number3` string, nullable
    - `deliveryAddress` DeliveryAddressInputDto
      - `cityTerritoryId` string, uuid
      - `districtTerritoryId` string, uuid
      - `street` string, nullable
    - `hubId` string, uuid, nullable
    - `orderedProducts` OrderedProductDto[], nullable
      - `productId` string, uuid
      - `productName` string, nullable
      - `productSku` string, nullable
      - `unitPrice` number, double
      - `quantity` integer
      - `length` number, double
      - `width` number, double
      - `height` number, double
      - `weight` number, double, nullable
      - `stockType` string, nullable
    - `deliveryType` string, nullable
    - `description` string, nullable
    - `amount` number, double
    - `weight` ParcelWeightDto
      - `weight` number, double
      - `dimensionalWeight` number, double, nullable
    - `externalId` string, nullable
    - `hubStockId` string, uuid, nullable
    - `stateId` string, uuid, nullable

## Response `200`

OK

- CreateBulkParcelsResponse
  - `totalRequested` integer
  - `successCount` integer
  - `failureCount` integer
  - `successes` BulkParcelSuccess[], nullable
    - `index` integer
    - `parcelId` string, uuid
    - `trackingNumber` string, nullable
    - `externalId` string, nullable
  - `failures` BulkParcelFailure[], nullable
    - `index` integer
    - `errorCode` string, nullable
    - `errorMessage` string, nullable
    - `externalId` string, nullable

## Other responses

- `207` — Multi-Status
- `400` — Bad Request

---

[API](https://skmtc.net/zrexpress/apis/zrexpress-api.md) · [All operations](https://skmtc.net/zrexpress/apis/zrexpress-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zrexpress/zrexpress-api/versions/99b075e0b641/schema)
