# LTL Reprint Shipment

The LTL Reprint Shipment API is used to reprint shipments and generate shipment labels. <br/>

Endpoint: POST /api/v1/ltl/shipments/reprint
Version: 1.0.0
Security: bearerAuth

## Header parameters:

  - `X-PB-Developer-Partner-Id` (string)
    The Developer Partner ID is assigned by PB to uniquely identify a Developer's strategic business partners. If the developer is the sole business partner, this field isn't required.

  - `X-PB-LocationId` (string)
    "This is the Location ID assigned as per the Developer's and Partner's parsed locations, to which all transactions will be billed.
<br /> Partner's location will be used for billing if it is configured, however, in case Partner's location is not given, then the Developer's location will be taken.
Developer's location will be the default value. <br /> Additionally, Developers and Partners can use carriers belong to this location only."

  - `X-PB-TransactionId` (string)
    A unique Transaction ID provided by the partner, which is used to enable debugging and linking between the client's transaction and the system.

## Request fields (application/json):

  - `shipmentId` (string, required)
    Unique identifier of the shipment for which the label or document needs to be reprinted.
    Example: 794987603748

  - `printerAliasName` (string, required)
    Alias name of the printer configured in the system where the reprinted label or document will be sent.
    Example: ZPLtoSheltonTest

## Response 200 fields (application/json):

  - `shipmentId` (string)
    Unique identifier of the shipment.
    Example: 794987622191

  - `masterTrackingNumber` (string)
    This is a master tracking number assigned to the LTL shipment, representing the entire shipment across all parcels or handling units. This number can be used to track the overall shipment status.
    Example: 794987622191

  - `bolNumber` (string)
    Bill of Lading (BOL) number assigned to the shipment.
    Example: 794987622191

  - `labelLayout` (array)
    Documents generated at the shipment level (for example, BOL, MERGED_LABEL).
Each entry contains the content location/encoding and document attributes.
    Example: [{"contentType":"URL","contents":"https://225934331380-sending-service-dev.s3-fips.us-east-1.amazonaws.com/fedex-ltl/BOL_794998063229_1773817724491588264.pdf?..................","fileFormat":"PDF","si…

  - `labelLayout.contentType` (string)
    How the document is returned. URL is supported for `PDF`and BASE64 is supported for `ZPL2`.
    Enum: "URL", "BASE64"

  - `labelLayout.fileFormat` (string)
    File format of the document. As of now, only shipment labels can be generated in ZPL2 format. For all other document types, only PDF is supported.
    Enum: "PDF", "ZPL2"

  - `labelLayout.size` (string)
    Document size/layout.
    Example: DOC_8X11

  - `labelLayout.type` (string)
    Document type.
    Example: SHIPPING_LABEL

  - `rates` (array)
    Rate details returned for the shipment.

  - `rates.currencyCode` (string)
    Currency in which the charges are calculated.
    Example: USD

  - `rates.baseCharge` (number)
    Base transportation charge for the LTL shipment.
    Example: 1600.1

  - `rates.serviceId` (string)
    Carrier-specific LTL service identifier.
    Example: FEDEX_FREIGHT_ECONOMY

  - `rates.totalCarrierCharge` (number)
    Total amount payable to the carrier for this service.
    Example: 1600.1

  - `rates.deliveryCommitment` (object)
    Estimated delivery information for the LTL service.

  - `rates.deliveryCommitment.estimatedDeliveryDateTime` (string)
    Estimated delivery date and time for the shipment.
    Example: 2026-02-20T17:00:00Z

  - `rates.deliveryCommitment.minEstimatedNumberOfDays` (string)
    Minimum estimated transit duration label returned by the carrier.
    Example: THREE_DAYS

  - `rates.publishedTotalCarrierCharge` (number)
    Published carrier charge, if applicable.
    Example: 0

  - `rates.handlingUnitCount` (integer)
    Number of handling units associated with the LTL shipment.
    Example: 0

  - `rates.parcels` (array)
    Packages included in the LTL shipment for this rate option.

  - `rates.parcels.parcelType` (string)
    Type of handling unit used for the LTL package (for example, CARTON, PALLET).
    Example: CARTON

  - `rates.parcels.parcel` (object)
    Package dimensions and weight used for rating.

  - `rates.parcels.parcel.length` (number)
    Length of the package.
    Example: 100

  - `rates.parcels.parcel.height` (number)
    Height of the package.
    Example: 10

  - `rates.parcels.parcel.width` (number)
    Width of the package.
    Example: 10

  - `rates.parcels.parcel.dimUnit` (string)
    Unit of measurement for dimensions.
    Example: IN

  - `rates.parcels.parcel.weightUnit` (string)
    Unit of measurement for weight.
    Example: OZ

  - `rates.parcels.parcel.weight` (number)
    Weight of the package.
    Example: 1600

  - `rates.parcels.freightClass` (string)
    Freight classification used for LTL rating.
    Enum: "Class 50", "Class 55", "Class 60", "Class 65", "Class 70", "Class 77.5", "Class 85", "Class 92.5", "Class 100", "Class 110", "Class 125", "Class 150", "Class 175", "Class 200", "Class 250", "Class 300", "Class 400", "Class 500"

  - `rates.parcels.proNumber` (string)
    PRO Number
    Example: 794987622191

  - `references` (object)
    Optional reference fields for customer/internal tracking.

  - `references.reference1` (string)
    Reference value 1.
    Example: ref1_123456

  - `references.reference2` (string)
    Reference value 2.
    Example: ref2_SendTech

  - `fromAddress` (object)
    The complete address of the Sender.

  - `fromAddress.name` (string, required)
    The name of the Sender to which this address points.
    Example: Sender Name

  - `fromAddress.addressLine1` (string, required)
    The addressLine1 contains the Flat number, Building or Apartment Name/number (if any) or company name (if not residential) of the Sender.  `Max length = 35`.
    Example: 1600 Amphitheatre Parkway

  - `fromAddress.addressLine2` (string)
    The addressLine2 contains Street address or Landmark (if any).
    Example: near abc street

  - `fromAddress.addressLine3` (string)
    The addressLine3 contains P.O. Box (if any) near the address.
    Example: near xyz street

  - `fromAddress.company` (string)
    The name of the company, in case if the senders address is not residential.
    Example: PB

  - `fromAddress.email` (string)
    This must be senders's valid email. Email is required if the customer is using GoFor Carrier. Sender email is required for RMG b2b shipment.  `Max length = 50`
    Example: testuser@gmail.com

  - `fromAddress.phone` (string, required)
    This is sender's phone number. Enter the digits with or without spaces or hyphens. The maximum limit of characters for Phone number are 10 digits.
    Example: 6502530000

  - `fromAddress.cityTown` (string, required)
    The name of the city or town the Sender's address belongs to.  `Max length = 30`.
    Example: Mountain View

  - `fromAddress.stateProvince` (string, required)
    "The name of the State or Province the Sender belongs to. It is the `2-letter` State or Province Code for US or Canadian address(es).
 Below is the hyperlink for CA country that will navigate to its Province/State Codes page. Similarly, respective country users can check for their country- State/Province codes.
 Please switch to the `Search` tab, select `Country codes` radio button, enter the required country name or country code, and then click `SEARCH` button.  `Max length = 2`"
    Example: CA

  - `fromAddress.postalCode` (string, required)
    The Postal Code or ZIP Code of the address.  For CA addresses, use a `six-character` alphanumeric string Postal Code in this format: 'A1A 1A1'.  While for US addresses, use either the `5-digit` or `9-digit` ZIP Code in one of the following formats: '12345' or '12345-6789'.  `Max length = 10`
    Example: 94043

  - `fromAddress.inductionPostalCode` (string)
    The postal code where the shipment is tendered to the carrier. If an induction postal code is specified in the "fromAddress", it will be used for rate calculations and determining manifest eligibility instead of the standard postal code. If not specified, the postal code from the "fromAddress" will be used.
    Example: 06905

  - `fromAddress.countryCode` (string, required)
    "The country in which the sender's address is located. The value will be the two-character ISO Code of the country from the ISO country list.  Use ISO 3166-1 Alpha-2 standard values. For best results this should be included, especially if the country name does not appear in any of the unparsedAddressLines.
 Below is the hyperlink, please select `Country codes` and then click `SEARCH` button.  `Max length = 2`"
    Example: US

  - `fromAddress.residential` (boolean)
    The specified address can be Residential or Official. In case if the address is Residential, the boolean value will be 'true', else it will take 'false'.
    Example: true

  - `toAddress` (object)
    The complete address of the Recipient or Department (in case if the address is not pointed to any individual recipient).

  - `toAddress.name` (string, required)
    The name of the Recipient.
    Example: Recipient Name

  - `toAddress.addressLine1` (string, required)
    The addressLine1 contains the Flat number, Building or Apartment Name/number (if any) or company name (if not residential) of the Recipient.  `Max length = 35`.
    Example: 350 Fifth Avenue

  - `toAddress.addressLine2` (string)
    The addressLine2 contains Street address or Landmark (if any).
    Example: near abc street

  - `toAddress.addressLine3` (string)
    The addressLine3 contains P.O. Box (if any) near the address.
    Example: near xyz street

  - `toAddress.cityTown` (string, required)
    The name of the city or town the Recipient belongs to.  `Max length = 30`.
    Example: New York

  - `toAddress.stateProvince` (string, required)
    "The name of the State or Province the Sender belongs to. It is the `2-letter` State or Province Code for US or Canadian address(es).
 Below is the hyperlink for CA country that will navigate to its Province/State Codes page. Similarly, respective country users can check for their country- State/Province codes.
 Please switch to the `Search` tab, select `Country codes` radio button, enter the required country name or country code, and then click `SEARCH` button .  `Max length = 2`"
    Example: NY

  - `toAddress.postalCode` (string, required)
    "The Postal Code or ZIP Code of the address. For CA addresses, use a `six-character` alphanumeric string Postal Code in this format: 'A1A 1A1'. While for US addresses, use either the `5-digit` or `9-digit` ZIP Code in one of the following formats: '12345' or '12345-6789'. `Max length = 30`"
    Example: 10118

  - `toAddress.countryCode` (string, required)
    "The country in which the recipient's address is located. The value will be the two-character ISO Code of the country from the ISO country list.  Use ISO 3166-1 Alpha-2 standard values. For best results this should be included, especially if the country name does not appear in any of the unparsedAddressLines.
 Below is the hyperlink, please select `Country codes` and then click `SEARCH` button.  `Max length = 10`"
    Example: US

  - `toAddress.company` (string)
    The name of the company, in case if the recipient address is not residential. Recipient company is required for RMG b2b shipment.
    Example: PB

  - `toAddress.phone` (string, required)
    This is Recipient's phone number. Enter the digits with or without spaces or hyphens.  `Max length = 15`.
    Example: 2127363100

  - `toAddress.email` (string)
    This must be recipient's valid email. Email is required if the customer is using GoFor Carrier.  `Max length = 50`
    Example: recipient@gmail.com

  - `toAddress.residential` (boolean)
    The specified address can be Residential or Official. In case if the address is Residential, the boolean value will be 'true', else it will take 'false'.
    Example: true

  - `toAddress.isPOBox` (boolean)
    Checks if the specified address has the PO Box. In case if Yes, the boolean value will be 'true', else it will take 'false'.
    Example: true

## Response 400 fields (application/json):

  - `errors` (array)
    List of errors.

  - `errors.errorCode` (string)
    This error can be validation_error or internal_error or not_found or already_exists
    Example: validation_error

  - `errors.errorDescription` (string)
    The HTTP 400 Bad Request response status code indicates that the server cannot process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).
    Example: Custom Fields not found

## Response 401 fields (application/json):

  - `message` (string, required)
    This is HTTP 401 Unauthorized response status code, that indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource.

