---
title: "Generate individual parcel labels as PDF"
method: POST
path: "/api/v{version}/parcels/labels/individual/pdf"
tags: ["orders"]
---

# Generate individual parcel labels as PDF

`POST /api/v{version}/parcels/labels/individual/pdf`

## Request

- Base URL: `https://api.zrexpress.app`
- URL: `https://api.zrexpress.app/api/v{version}/parcels/labels/individual/pdf`
- Auth: HTTP bearer and API key in header `X-Api-Key`
- TypeScript: <https://skmtc.dev/zrexpress/apis/zrexpress-api/docs/api/v:version/parcels/labels/individual/pdf/post.ts> (a function with typed inputs; its response is checked against the schema)

Generates individual PDF files for each parcel label (max 100 parcels). Supports A4 format (4 labels per page) or A6 format (1 label per page). Returns an array of tracking numbers with their PDF file URLs and list of failed tracking numbers. Permissions requises : SupplierAdminRole, SupplierParcelsManagerRole.

## Path parameters

- `version` string, required

## Headers

- `X-Tenant` string, required

## Request body

- GenerateIndividualLabelsPdfRequest
  - `trackingNumbers` string[], nullable, required
  - `format` PdfLabelFormat
    - `value` string, nullable

## Response `200`

OK

- GenerateIndividualLabelsPdfResponse
  - `parcelLabelFiles` ParcelLabelPdfFile[], nullable
    - `trackingNumber` string, nullable
    - `fileUrl` string, nullable
  - `failedTrackingNumbers` string[], nullable

## Changes

- **2026-11-03** `652262902df9`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/zrexpress/apis/zrexpress-api/changes/api/v:version/parcels/labels/individual/pdf/post.md)

---

[API](https://skmtc.dev/zrexpress/apis/zrexpress-api.md) - [All operations](https://skmtc.dev/zrexpress/apis/zrexpress-api/llms.txt) - [OpenAPI document](https://skmtc.dev/zrexpress/apis/zrexpress-api/revisions/652262902df9?raw)
