---
title: "Add Zones in Bulk"
method: POST
path: "/v2/locations/zones"
---

# Add Zones in Bulk

`POST /v2/locations/zones`

Create up to 100 zones in a single request.

## Query parameters

- `inheritLocale` boolean

## Headers

- `Authorization` string
- `X-CAP-API-OAUTH-TOKEN` string

## Request body

- object[]
  - `code` string, required — Unique zone code. Lowercase letters, digits, periods, underscores, hyphens. Max 50 characters.
  - `name` string, required — Display name. Letters, digits, underscores, and spaces. Cannot equal root. Max 100 characters.
  - `areaParentCode` string, required — Code of the parent zone. Must be an existing active zone.
  - `language` string — IETF BCP 47 language code (e.g. en-IN). Required when inheritLocale is false.
  - `currency` string — ISO 4217 currency code (e.g. INR). Required when inheritLocale is false.
  - `timezone` string — IANA timezone name (e.g. Asia/Kolkata). Required when inheritLocale is false.
  - `description` string — Free-text description of the zone.
  - `isActive` boolean — Whether the zone is active. Defaults to true when omitted.
  - `externalIds` object — Key-value pairs of external identifiers. Max five entries. Keys and values must be non-blank and max 200 characters each.
  - `customFields` object — Custom field key-value pairs. Keys must match custom fields configured for the org.

## Response `201`

All zones created successfully.

- BulkResponseList
  - `response` object[]
    - `entityId` integer — System ID of the updated concept. Present when the concept was identified, regardless of whether the update succeeded. Absent when the concept could not be identified, or when an unexpected error occurs.
    - `result` object — Echo of the submitted request object for this concept.
    - `errors` object[]
      - `status` boolean
      - `code` integer
      - `message` string
    - `warnings` object[]
      - `status` boolean
      - `code` integer
      - `message` string
  - `totalCount` integer — Total number of concept records in the request.
  - `failureCount` integer — Number of concepts that failed to update.

## Other responses

- `207` — Partial success — some zones created, some failed.
- `400` — All items failed, more than 100 items in the request, or empty request body.

---

[API](https://skmtc.net/capillarytech/apis/sample-api.md) · [All operations](https://skmtc.net/capillarytech/apis/sample-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/capillarytech/sample-api/revisions/de241f2ed9b3/schema)
