Skip to content

Create Shipment

Request

Note: This Request sample includes the full set of supported fields across all carriers. However, not all fields are applicable to every carrier. When making API calls from the doc portal, ensure you include only the parameters supported by the specific carrier you are integrating with. If unsupported fields are included, the request may fail.
To simplify integration and avoid errors, refer to the Postman Collection.
To explore which label types, label formats, label sizes, parcel types, services, and special services are supported by each carrier, see the Carrier Catalog. Detailed field descriptions are also provided below.

The Create Shipment API is used to create shipments and generate shipment labels. A shipment refers to the process of packing and transporting an item from a source location to a destination location using a carrier service. The API supports both domestic and international shipments.

Domestic Shipments

  • Both the toAddress and fromAddress addresses must be within the same country.
  • Requires carrier services and associated special services.

International Shipments

  • The toAddress must be in a different country than the fromAddress.
  • Requires international carrier services, special services, and customs information.

The V2 Create Shipment API compares shipping rates, services, and options across multiple carriers. It selects the best shipping solution based on criteria such as cost, delivery speed, or other business rules. This automates decision-making and eliminates the need for manual analysis of carrier data. It supports following RateShop types:

1. By Carrier:

  • Manually specify the carrier and service for shipment creation.
  • Provides more customization than V1 Create Shipment.

2. By RuleSet

  • Automatically select the best carrier and service based on predefined rules (e.g., cheapest, fastest). For example:
  • Shipments weighing up to 3kg use a "Standard" service type with carrier A.
  • Shipments exceeding 3kg use an "Over-weight" service type with carrier B.
  • Rules are fully client-defined, allowing for dynamic decision-making based on shipment parameters like weight, dimensions, and destination.

3. By RateGroup

  • Use predefined rate groups to select a carrier and service dynamically.For example:
  • Clients can choose between the fastest delivery or the cheapest service rate among a predefined group of carriers.
  • The system automatically determines and selects the best carrier and service, without the need for manual comparisons.

4. By ShipViaCode

  • Instead of passing multiple fields (carrier, carrier account, parcel type, service, and special services) every time in your request payload, you can:

    • Generate a Ship Via Code once, with all those values defined.

    • Use that single code in your create shipment requests.

    • The carrier, account, service, parcel type, and special service values from that code will then automatically apply.

  • If parcel type, service, or special services are also passed in the request payload, they will be overridden by the values defined in the Custom Carrier Code.

5. By byExternalSystemCode

  • This enables shipment creation using an external System Code (For SPE users).

  • When an ExternalSystemCode is passed in the request, the system retrieves all shipment configuration details (carrier, account, parcel type, service, and special services) linked to that code in the legacy system.

Notes

  • The rateShopBy field determines the variant to use (carrier, ruleSet, or rateGroup).

  • Ensure that variant-specific fields are correctly populated:

    • byCarrier: carrierAccountId, carrier, and service
    • byRuleSet: ruleType and shipOption. The value of shipOption is Ship Via Code. Ship Via Code is configured as part of the automation rule.
    • byRateGroup: ruleType and rateGroupId
    • byShipViaCode: code
    • byExternalSystemCode: externalSystemCode, carrierCode, serviceCode and parcelTypeCode
  • Define special services in one of two ways - by using a specialServiceId or by specifying special service objects such as deliveryConfirmation, handling, insurance, or returnOptions. These two cannot be used together in the same request.

Security
bearerAuth
Query
isReturnboolean

Applies only to USPS, UPS, FedEx, Purolator, and CPC carriers.

  • For UPS: If isReturn is set, either the returnOptions object must be provided (when using individual service objects) or serviceId: PRL must be specified (when using specialService). Otherwise, the request will fail.
  • For FedEx, Purolator, and CPC: If isReturn is set to true, the returnOptions object is optional.
  • For USPS: For USPS returns, the account is not charged when the return label is created. Charges for the return shipment are applied only after the Scan-Based Return is inducted.
includeDeliveryCommitmentstring

When set to true (default), the response includes delivery commitment information. Set to false to exclude delivery commitment details from the response.

Default:true
Headers
X-PB-Developer-Partner-Idstring

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-LocationIdstring

The X-PB-LocationId header identifies the enterprise, division, or partner location under which a shipment is processed and billed. If this header is not provided, the system automatically uses the enterprise-level location that was created during developer account onboarding. This default location is then used for shipment processing, carrier selection, and billing.

Location Scope

  • Carrier accounts and services available in a request must belong to the specified location or the default enterprise location.
  • Attempting to use carriers or services that are not configured for the resolved location will result in a validation error.

Requirement Rules

  • The X-PB-LocationId header is optional when the shipment origin country code matches the enterprise's default address country code.
  • The X-PB-LocationId header is required when the shipment origin country code differs from the enterprise's default address country code.
  • If the header is required but not provided, the API returns a validation error indicating that the location must be specified for the given shipment origin.
X-PB-TransactionIdstring

A unique Transaction ID provided by the partner, which is used to enable debugging and linking between the client's transaction and the system.

X-PB-Default-IDstring

A unique identifier assigned to the Default while its creation using CreateDefaults API.

Bodyapplication/jsonrequired
One of:
fromAddressobject(fromAddressV2)

The complete address of the Sender. Read: How to create Defaults. The fromAddress is selected using the following order of precedence:

Request Body → Default ID → Location ID

  • fromAddress provided in the request payload is used if available.
  • If not available in request payload, The Default ID (fromAddress defined in Default API) is used.
  • If provided neither in the request nor in the default, the fromAddress associated with the resolved location is used.
  • If fromAddress cannot be resolved from any source, the request fails with a validation error. Note: fromAddress is required.
Example:
{ "name": "Sender Name", "addressLine1": "1600 Amphitheatre Parkway", "addressLine2": "near abc street", "addressLine3": "near xyz street", "company": "PB", "email": "testuser@gmail.com", "phone": "6502530000", "cityTown": "Mountain View", "stateProvince": "CA", "postalCode": "94043", "inductionPostalCode": "06905", "countryCode": "US", "residential": true }
toAddressobject(toAddressV2)required

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

Example:
{ "name": "Recipient Name", "addressLine1": "350 Fifth Avenue", "addressLine2": "near abc street", "addressLine3": "near xyz street", "cityTown": "New York", "stateProvince": "NY", "postalCode": "10118", "countryCode": "US", "company": "PB", "phone": "2127363100", "email": "recipient@gmail.com", "residential": true, "isPOBox": true }
soldToAddressobject(soldToAddressV2)

Billing address of the buyer responsible for the shipment payment. It can be domestic or international address.

  • If the importer is the same as the final recipient, the toAddress and soldToAddress must match.
  • If the importer is different from the final recipient, enter the importer address in the soldToAddress and enter the final recipient's address in the toAddress.
additionalAddressesArray of objects(additionalAddresses)

A list of additional addresses associated with the shipment.

  • Each object includes an address and its designated type, such as BROKER or other parties involved in customs or shipping processes.
  • Additional address could be domestic or International both.
altReturnAddressobject(altReturnAddress)

This is an optional field. if a package shipped from Location_A to Location_B needs to return to Location_C. The alternate address will be printed on the label. Use this object to specify a return address different from the fromAddress. Supported by FedEx, UPS, and Purolator. The altReturnAddress is selected using the following order of precedence: Request Body → Location ID

  • The altReturnAddress provided in the request payload is used if available.
  • If not provided in the request, the altReturnAddress associated with the resolved location is used.
  • If altReturnAddress is not available from any source, it is treated as optional and is not included in the request. In this case, package will be returened to the Shipper address. Note: altReturnAddress is not supported in Default ID.
parcelobject(parcelV2)

The details of the Parcel.

Example:
{ "length": 10, "width": 10, "height": 10, "dimUnit": "IN", "weightUnit": "OZ", "weight": 10, "packageValue": 10 }
parcelTypestringrequired

Parcel Type is required for creating a shipment while rating a parcel, which varies as per Carrier selection.
ParcelType can have categories like Package, Envelopes, Paks, Boxes, Tube, etc.
Max length = 30

Example:"PKG"
rateTypeIdstring

Type of rate requested like COMMERCIAL, ONE_RATE, RETAIL,

rateShopBystringrequired

RateShop, which is attached to an Enterprise or Location, is done through four approaches: by Carrier, by RateGroup, by RuleSet and by shipViaCode**.
Through Carrier, customers can choose the carriers as per requirement, based on which services, parcel types, and special services can be selected, and RateShop is done.
Through RateGroup, customers can select the RateGroup, which has been divided into two categories: Cheapest (w.r.t. price) and Fastest (w.r.t. delivery hours).
Through RuleSet, customers can define the Condition/rule for selecting carriers and their services, so they do not need to worry for Rate Shopping every time they create Shipment. For example, For a particular location, they can set one definite carrier, or apply RateGroup - Cheapest/Fastest. Similarly, for a particular amount like below $1000 Dollars, they can select a definite carrier service, based on RateGroup.
Through shipViaCode, customers can create a shipment using a single code (Custom Carrier Code) that represents a specific combination of carrier, carrier account, parcel type, service, and special services.

Enum:"carrier""rateGroup""ruleSet""shipViaCode"
Example:"carrier"
byCarrierobject(byCarrierV2)

Groups a shipment by carrier and service to determine rating, label generation, and routing behavior. Validation Rules

  • One of the following fields must be provided in the byCarrier object:
    • carrierAccountId
    • carrier
  • If both fields are provided, carrierAccountId takes precedence and any carrier-level properties are ignored.
  • If neither field is provided, the request fails validation.
    • When carrierAccountId is provided, it must be associated with the resolved location (the provided X-PB-LocationId, or the enterprise default location if location is omitted). Otherwise, the request fails.
  • When carrierAccountId is provided, it must be associated with the resolved location (the provided X-PB-LocationId, or the enterprise default location if location is omitted). Otherwise, the request fails.

Location and Carrier Resolution

Carrier accounts used for shipment processing are resolved based on the location identified by the X-PB-LocationId request header. If the header is not provided, the enterprise default location created during developer onboarding is used.

X-PB-LocationIdLocation UsedCarriers Configured at Location/Division/EnterpriseCarrier AccountsBehavior
ProvidedProvided Location IDOne carrierOne accountThe available account is selected and the shipment is created.
ProvidedProvided Location IDOne carrierMultiple accountsThe oldest onboarded account is selected and the shipment is created.
ProvidedProvided Location IDMultiple carriersAnyRequest fails validation. carrierAccountId or carrier must be specified.
ProvidedProvided Location IDOne carrier at each levelMultiple accountsThe oldest onboarded account across all levels is selected, and the shipment is created.
Not ProvidedEnterprise Default LocationOne carrierOne accountThe available account is selected and the shipment is created.
Not ProvidedEnterprise Default LocationOne carrierMultiple accountsThe oldest onboarded account is selected and the shipment is created.
Not ProvidedEnterprise Default LocationMultiple carriersAnyRequest fails validation. carrierAccountId or carrier must be specified.
Not ProvidedEnterprise Default LocationOne carrier at each levelMultiple accountsThe oldest onboarded account across all levels is selected, and the shipment is created.
Example:
{ "carrierAccountId": "YNp3883Bap3L", "carrier": "USPS", "service": "EM" }
shipmentOptionsobject

Shipment Options have an added feature that is Manifest.
With Manifest, the Mail Center agent can print the Manifest (End of day records of all created shipment) of selected carrier.

Example:
{ "addToManifest": true, "shipperID": "1234567890" }
carrierPaymentsArray of any(carrierPayments)

Defines how carrier charges are billed to a third party. Use this field to specify account and charge type details for transportation and/or duties and taxes. This field is optional and currently supported for FedEx, UPS, DHL Express and Purolator.

  • If no party (who will pay for TRANSPORTATION_CHARGES or duties and taxes) is explicitly specified during shipment creation, the charges will automatically default to the sender (shipper). To direct charges to a different party, the appropriate bill-to details must be provided in the request.
docTabobject

This option is used to provide additional information into the label's additional space. It is supported only for doc size 4x6_75.

Example:
{ "templateName": "1", "toAddressName": { "displayName": "CUS", "value": "", "row": 1, "column": 1 }, "parcelTrackingNumber": { "displayName": "TRK", "value": "", "row": 2, "column": 1 }, "carrier": { "displayName": "CAR", "value": "", "row": 3, "column": 1 }, "serviceId": { "displayName": "SER", "value": "", "row": 1, "column": 2 }, "dateOfShipment": { "displayName": "DATE", "value": "", "row": 2, "column": 2 }, "pieceNumber": { "displayName": "PKG#", "value": "", "row": 3, "column": 2 }, "packageTotalCarrierCharge": { "displayName": "PCHG", "value": "", "row": 3, "column": 3 }, "totalCarrierCharge": { "displayName": "TCHG", "value": "", "row": 2, "column": 3 }, "packageWeight": { "displayName": "PWGT", "value": "", "row": 1, "column": 3 }, "totalWeight": { "displayName": "TWGT", "value": "", "row": 1, "column": 4 }, "customField1": { "displayName": "INV", "value": "010610000388302031320259999950", "row": 2, "column": 4 } }
specialServicesArray of objects(SpecialService)

It provides a carrier based special or extra service, which also varies as per selected service and parcel type. User can override this value by defining it at shipment level.

Provide either the specialserviceId or the specialservice objects such as deliveryConfirmation, handling, insurance and returnOptions, but not both.

Example:
[ { "inputParameters": [ {} ], "specialserviceId": "Ins" } ]
deliveryConfirmationobject

Indicates the supporting special service or document as an evidence of shipment delivery.

Provide either the specialserviceId or the specialservice objects such as deliveryConfirmation, handling, insurance and returnOptions, but not both.

For the delivery confirmation, user can select any of the following special services, but they may vary as per the carrier selection.

  • Signature Required/ Indirect Signature Required : SIGNATURE
  • Delivery confirmation: DELIVERY_CONFIRMATION
  • Proof of age required (18 years) Adult Signature Required: ADULT_SIGNATURE
  • Proof of age required (19 years): ADULT_SIGNATURE_19
  • No Signature Required: NO_SIGNATURE
  • Direct Signature Required: DIRECT_SIGNATURE
  • Chain of Signature: CHAIN_OF_SIGNATURE

Carrier specific options:

  • UPS supports SIGNATURE and ADULT_SIGNATURE.
  • FedEx supports SIGNATURE, ADULT_SIGNATURE, NO_SIGNATURE, and DIRECT_SIGNATURE.
  • Purolator supports ADULT_SIGNATURE, NO_SIGNATURE, and CHAIN_OF_SIGNATURE.
  • GoFor supports SIGNATURE.
  • CPC supports SIGNATURE, DELIVERY_CONFIRMATION, ADULT_SIGNATURE, ADULT_SIGNATURE_19, and NO_SIGNATURE.
handlingobject

Few shipments need a special handling, and the reason can be fragile items or highly secured shipments. There might be other case scenarios. In a simple term, this field defines shipment handling, which provides users a capability to select handling options.

Provide either the specialserviceId or the specialservice objects such as deliveryConfirmation, handling, insurance and returnOptions, but not both.


User can select any of the following handling options (special services), but they may vary as per the carrier selection.

  • Hold For Pickup: HOLD_FOR_PICKUP
  • Saturday Delivery: SATURDAY_DELIVERY
  • UPS Premium Care: PREMIUM_CARE
  • Direct Delivery Only: DIRECT_DELIVERY_ONLY
  • Additional Handling: ADDITIONAL_HANDLING

Carrier specific options:

  • UPS supports all handling options mentioned above.
  • FedEx supports HOLD_FOR_PICKUP, SATURDAY_DELIVERY, and ADDITIONAL_HANDLING.
  • Purolator supports HOLD_FOR_PICKUP, SATURDAY_DELIVERY, and ADDITIONAL_HANDLING.
insuranceobject

Indicates the insurance coverage, which is selected by users while create shipment - rate shopping. User can select below-mentioned special service for insurance:

  • Declared Value Surcharge: INSURANCE

Carrier specific options:

  • UPS, FedEx, Purolator, and CPC support special service INSURANCE.

Provide either the specialserviceId or the specialservice objects such as deliveryConfirmation, handling, insurance and returnOptions, but not both.

referencesobject(referenceV2)

References are tags or information that is printed on Shipping Label based on the customer's requirement.
Reference Fields can have values/indication like department name, invoice no., package description, purchase order no., carrier note, cost account no., transportation no., or PO no., print custom message etc.
Each of the reference field can have only one indication/value.

Example:
{ "reference1": "custome message", "reference2": "SendTech", "reference3": "98437", "reference4": "Overnight Shipping", "poNumber": "R2W 2H2", "department": "Name department", "additionalReference1": "612987641", "additionalReference2": "989", "shippingNotes": "Handle with care.", "ShipperReference": "REF123456789", "transportationReference": "TRANSREF987654321" }
metadataArray of objects

Additional metadata that needs to be stored for this shipment can be added here.
Supported values are Cost Account Name, Cost Account Id, Cost Account Code, Account Code and Company Code.
If Cost Account metadata is provided, all three Cost Account fields are required.

Example:
[ { "name": "costAccountName", "value": "costAccountName" }, { "name": "costAccountId", "value": "costAccountId" }, { "name": "costAccountCode", "value": "Code" }, { "name": "accountCode", "value": "code" }, { "name": "companyCode", "value": "code" } ]
labelSizestringrequired

Defines the label size of the Shipment, that is, the Shipping Label is available in different Doc Size.
Max length = 10

Enum:"DOC_8X11""DOC_4X8""DOC_4X6"
Example:"DOC_4X6"
labelTypestringrequired

Defines the type of the Shipment. QR_CODE supported for carrier USPS only as of now.
Max length = 14

Enum:"SHIPPING_LABEL""QR_CODE"
Example:"SHIPPING_LABEL"
labelFormatstringrequired

"Defines the file/format in which the label is printed.
For ZPL2, DOC_4X6 will be supported, while for PDF, both the sizes are supported. QR_CODE can be generated only in GIF format. Max length = 14"

Enum:"PDF""ZPL2""PNG""GIF"
Example:"ZPL2"
contentTypestring

Specifies how the label content is encoded.
URL is supported for PDF and GIF.
BASE64 is supported for ZPL2, PNG, and GIF.

Enum:"URL""BASE64"
Example:"BASE64"
printerAliasNamestring

Refers to a printer connected (directly or via network) to a computer. Max length = 60

Example:"test"
dateOfShipmentstring, (date)

The date when shipment is created/shipped. The format of the Date is YYYY-MM-DD.
Note: For FedEx US shipments, when a shipment date is provided in the request, the specified value is used for shipment processing. If no shipment date is provided, Carrier processes it as per their system.

Example:"2024-03-20"
deliveryOptionobject

There are two options of delivery: deliverBy and useBestNextDate, where customer can schedule the delivery date in deliverBy.
In case if the customer's scheduled deliverBy date falls under Holiday, then useBestNextDate will be used by our system. Then, we will mark the second option and deliver the same.

Example:
{ "deliverBy": "2025-10-30", "useBestNextDate": false }
returnOptionsobject

This object defines return shipment options. It should be passed when requesting return labels. Supported only for carriers UPS and FedEx as of now.
For UPS, this object is required.
For FedEx, this object is optional.
Note: The returnOptions object must be sent with the isReturn query parameter.

Provide either the specialserviceId or the specialservice objects such as deliveryConfirmation, handling, insurance and returnOptions, but not both.

customsobject

Customs information required for international shipments and optional for domestic shipments.

  • Required only for RMG carrier in domestic shipment requests.
  • Must include customsItems and customsInfo objects.
curl -i -X POST \
  'https://api-sandbox.sendpro360.pitneybowes.com/shipping/api/v2/shipments?isReturn=true&includeDeliveryCommitment=true' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-PB-Default-ID: string' \
  -H 'X-PB-Developer-Partner-Id: string' \
  -H 'X-PB-LocationId: string' \
  -H 'X-PB-TransactionId: string' \
  -d '{
    "fromAddress": {
      "name": "Sender Name",
      "addressLine1": "1600 Amphitheatre Parkway",
      "addressLine2": "near abc street",
      "addressLine3": "near xyz street",
      "company": "PB",
      "email": "testuser@gmail.com",
      "phone": "6502530000",
      "cityTown": "Mountain View",
      "stateProvince": "CA",
      "postalCode": "94043",
      "inductionPostalCode": "06905",
      "countryCode": "US",
      "residential": true
    },
    "toAddress": {
      "name": "Recipient Name",
      "addressLine1": "350 Fifth Avenue",
      "addressLine2": "near abc street",
      "addressLine3": "near xyz street",
      "cityTown": "New York",
      "stateProvince": "NY",
      "postalCode": "10118",
      "countryCode": "US",
      "company": "PB",
      "phone": "2127363100",
      "email": "recipient@gmail.com",
      "residential": true,
      "isPOBox": true
    },
    "parcel": {
      "length": 10,
      "width": 10,
      "height": 10,
      "dimUnit": "IN",
      "weightUnit": "OZ",
      "weight": 10,
      "packageValue": 10
    },
    "parcelType": "PKG",
    "rateShopBy": "carrier",
    "byCarrier": {
      "carrierAccountId": "YNp3883Bap3L",
      "carrier": "USPS",
      "service": "EM"
    },
    "shipmentOptions": {
      "addToManifest": true,
      "shipperID": "1234567890"
    },
    "specialServices": [
      {
        "inputParameters": [
          {
            "name": "INPUT_VALUE",
            "value": "100"
          }
        ],
        "specialserviceId": "Ins"
      }
    ],
    "metadata": [
      {
        "name": "costAccountName",
        "value": "costAccountName"
      },
      {
        "name": "costAccountId",
        "value": "costAccountId"
      },
      {
        "name": "costAccountCode",
        "value": "Code"
      },
      {
        "name": "accountCode",
        "value": "code"
      },
      {
        "name": "companyCode",
        "value": "code"
      }
    ],
    "references": {
      "reference1": "custome message",
      "reference2": "SendTech",
      "reference3": "98437",
      "reference4": "Overnight Shipping",
      "poNumber": "R2W 2H2",
      "department": "Name department",
      "additionalReference1": "612987641",
      "additionalReference2": "989",
      "shippingNotes": "Handle with care.",
      "ShipperReference": "REF123456789",
      "transportationReference": "TRANSREF987654321"
    },
    "labelSize": "DOC_4X6",
    "labelType": "SHIPPING_LABEL",
    "labelFormat": "PDF",
    "contentType": "URL",
    "dateOfShipment": "2025-10-28",
    "deliveryOption": {
      "deliverBy": "2025-10-30",
      "useBestNextDate": false
    }
  }'

Responses

The shipment has been created successfully.

Bodyapplication/json
One of:
correlationIdstring

Key assigned by the shipping system to the transaction.

Example:"3e2a71cc421e40b7970db9d540b1c7f2"
shipmentIdstring

The shipmentId, a unique identifier for an individual Shipment.

Example:"FEDEX2200626443337314"
parcelTrackingNumberstring

The Tracking number given to the Parcel for tracking purpose.

Example:329039098457
carrierAccountIdstring

Unique identifier of the carrier account under which shipments is processed.

Example:"GOaVO7vExxxx"
labelLayoutArray of objects
Example:
[ { "contentType": "URL", "contents": "https://prv-labels-cls.gcs.pitneybowes.com/usps/910187923/outbound/label/5ecfa0ecc6454caeb90c55d35229de90.pdf", "fileFormat": "PDF", "size": "DOC_4X6", "type": "SHIPPING_LABEL" } ]
parcelobject(parcelV2)

The details of the Parcel.

Example:
{ "length": 10, "height": 10, "width": 10, "dimUnit": "IN", "weightUnit": "OZ", "weight": 10, "packageValue": 10 }
rateobject(rateResponseV2)
Example:
{ "baseCharge": 27.6, "carrier": "USPS", "currencyCode": "USD", "deliveryCommitment": {}, "inductionPostalCode": "06905", "parcelType": "PKG", "rateTypeId": "CONTRACT_RATES", "serviceId": "EM", "specialServices": [], "totalCarrierCharge": 27.6, "destinationZone": "1", "isHazmat": false }
referencesobject(referenceV2)

References are tags or information that is printed on Shipping Label based on the customer's requirement.
Reference Fields can have values/indication like department name, invoice no., package description, purchase order no., carrier note, cost account no., transportation no., or PO no., print custom message etc.
Each of the reference field can have only one indication/value.

Example:
{ "reference1": "custome message", "reference2": "SendTech" }
printStatusstring

Status of the Printed Label.

Example:"submitted"
printErrorobject
fromAddressobject(fromAddressV2Response)

The complete address of the Sender.

Example:
{ "addressLine1": "1600 Amphitheatre Pkwy", "addressLine2": "Near Abc Street Near Xyz Street", "cityTown": "Mountain View", "company": "PB", "countryCode": "US", "email": "testuser@gmail.com", "name": "Sender Name", "phone": "6502530000", "postalCode": "94043-1351", "residential": false, "stateProvince": "CA", "inductionPostalCode": "06905", "status": "VALIDATED_AND_NOT_CHANGED" }
toAddressobject(toAddressV2Response)

The complete address of the Reciepient.

Example:
{ "addressLine1": "350 5th Ave", "addressLine2": "Near Abc Street Near Xyz Street", "cityTown": "New York", "company": "PB", "countryCode": "US", "email": "recipient@gmail.com", "name": "Recipient Name", "phone": "2127363100", "postalCode": "10118-0110", "residential": false, "stateProvince": "NY", "status": "VALIDATED_AND_NOT_CHANGED", "isPOBox": true }
soldToAddressobject(soldToAddress)

Billing address of the buyer responsible for the shipment payment. It can be domestic or international address.

  • Incase of FedEx and UPS when the soldToAddress is missing in the request, the toAddress is used as the final address.
  • If the importer is the same as the final recipient, the toAddress and soldToAddress must match.
  • If the importer is different from the final recipient, enter the importer address in the soldToAddress and enter the final recipient's address in the toAddress.
additionalAddressesArray of objects(additionalAddresses)

A list of additional addresses associated with the shipment.

  • Each object includes an address and its designated type, such as BROKER or other parties involved in customs or shipping processes.
  • Additional address could be domestic or International both.
shipmentOptionsobject(shipmentOptions)
Example:
{ "addToManifest": true, "receiptOption": "noOptions", "shipperId": "2000084646", "billingWeight": "16.00" }
carrierPaymentsArray of any(carrierPayments)

Defines how carrier charges are billed to a third party. Use this field to specify account and charge type details for transportation and/or duties and taxes. This field is optional and currently supported for FedEx, UPS, DHL Express and Purolator.

  • If no party (who will pay for TRANSPORTATION_CHARGES or duties and taxes) is explicitly specified during shipment creation, the charges will automatically default to the sender (shipper). To direct charges to a different party, the appropriate bill-to details must be provided in the request.
Response
{ "correlationId": "6270e32715df4c4884a2008f943fe179", "shipmentId": "USPS2200613202723337", "parcelTrackingNumber": "9470109109628000114503", "carrierAccountId": "GOaVO7vERQxO", "labelLayout": [ { "contentType": "URL", "contents": "https://prv-labels-cls.gcs.pitneybowes.com/usps/910187923/outbound/label/5ecfa0ecc6454caeb90c55d35229de90.pdf", "fileFormat": "PDF", "size": "DOC_4X6", "type": "SHIPPING_LABEL" } ], "parcel": { "length": 10, "height": 10, "width": 10, "dimUnit": "IN", "weightUnit": "OZ", "weight": 10, "packageValue": 10 }, "rate": { "baseCharge": 27.6, "carrier": "USPS", "currencyCode": "USD", "deliveryCommitment": {}, "inductionPostalCode": "06905", "parcelType": "PKG", "rateTypeId": "CONTRACT_RATES", "serviceId": "EM", "specialServices": [], "totalCarrierCharge": 27.6, "destinationZone": "1", "isHazmat": false }, "references": { "reference1": "custome message", "reference2": "SendTech" }, "fromAddress": { "addressLine1": "1600 Amphitheatre Pkwy", "addressLine2": "Near Abc Street Near Xyz Street", "cityTown": "Mountain View", "company": "PB", "countryCode": "US", "email": "testuser@gmail.com", "name": "Sender Name", "phone": "6502530000", "postalCode": "94043-1351", "residential": false, "stateProvince": "CA", "inductionPostalCode": "06905", "status": "VALIDATED_AND_NOT_CHANGED" }, "toAddress": { "addressLine1": "350 5th Ave", "addressLine2": "Near Abc Street Near Xyz Street", "cityTown": "New York", "company": "PB", "countryCode": "US", "email": "recipient@gmail.com", "name": "Recipient Name", "phone": "2127363100", "postalCode": "10118-0110", "residential": false, "stateProvince": "NY", "status": "VALIDATED_AND_NOT_CHANGED", "isPOBox": true }, "shipmentOptions": { "addToManifest": true, "receiptOption": "noOptions", "shipperId": "2000084646", "billingWeight": "16.00" } }