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
toAddressandfromAddressaddresses must be within the same country. - Requires carrier services and associated special services.
International Shipments
- The
toAddressmust be in a different country than thefromAddress. - 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
ExternalSystemCodeis 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
rateShopByfield determines the variant to use (carrier,ruleSet, orrateGroup).Ensure that variant-specific fields are correctly populated:
- byCarrier:
carrierAccountId,carrier, andservice - byRuleSet:
ruleTypeandshipOption. The value of shipOption is Ship Via Code. Ship Via Code is configured as part of the automation rule. - byRateGroup:
ruleTypeandrateGroupId - byShipViaCode:
code - byExternalSystemCode:
externalSystemCode,carrierCode,serviceCodeandparcelTypeCode
- byCarrier:
Define special services in one of two ways - by using a
specialServiceIdor by specifying special service objects such asdeliveryConfirmation,handling,insurance, orreturnOptions. These two cannot be used together in the same request.
Applies only to USPS, UPS, FedEx, Purolator, and CPC carriers.
- For UPS: If
isReturnis set, either thereturnOptionsobject must be provided (when using individual service objects) orserviceId: PRLmust be specified (when using specialService). Otherwise, the request will fail. - For FedEx, Purolator, and CPC: If
isReturnis set totrue, thereturnOptionsobject 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.
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-LocationIdheader is optional when the shipment origin country code matches the enterprise's default address country code. - The
X-PB-LocationIdheader 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.
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
fromAddressprovided in the request payload is used if available.- If not available in request payload, The Default ID (
fromAddressdefined in Default API) is used. - If provided neither in the request nor in the default, the
fromAddressassociated with the resolved location is used. - If
fromAddresscannot be resolved from any source, the request fails with a validation error. Note:fromAddressis required.
{ "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 }
The complete address of the Recipient or Department (in case if the address is not pointed to any individual recipient).
{ "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 }
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
toAddressandsoldToAddressmust match. - If the importer is different from the final recipient, enter the importer address in the
soldToAddressand enter the final recipient's address in thetoAddress.
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.
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
altReturnAddressprovided in the request payload is used if available. - If not provided in the request, the
altReturnAddressassociated with the resolved location is used. - If
altReturnAddressis 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:altReturnAddressis not supported in Default ID.
The details of the Parcel.
{ "length": 10, "width": 10, "height": 10, "dimUnit": "IN", "weightUnit": "OZ", "weight": 10, "packageValue": 10 }
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
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.
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:
carrierAccountIdcarrier
- If both fields are provided,
carrierAccountIdtakes precedence and any carrier-level properties are ignored. - If neither field is provided, the request fails validation.
- When
carrierAccountIdis 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
- When
carrierAccountIdis 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-LocationId | Location Used | Carriers Configured at Location/Division/Enterprise | Carrier Accounts | Behavior |
|---|---|---|---|---|
| Provided | Provided Location ID | One carrier | One account | The available account is selected and the shipment is created. |
| Provided | Provided Location ID | One carrier | Multiple accounts | The oldest onboarded account is selected and the shipment is created. |
| Provided | Provided Location ID | Multiple carriers | Any | Request fails validation. carrierAccountId or carrier must be specified. |
| Provided | Provided Location ID | One carrier at each level | Multiple accounts | The oldest onboarded account across all levels is selected, and the shipment is created. |
| Not Provided | Enterprise Default Location | One carrier | One account | The available account is selected and the shipment is created. |
| Not Provided | Enterprise Default Location | One carrier | Multiple accounts | The oldest onboarded account is selected and the shipment is created. |
| Not Provided | Enterprise Default Location | Multiple carriers | Any | Request fails validation. carrierAccountId or carrier must be specified. |
| Not Provided | Enterprise Default Location | One carrier at each level | Multiple accounts | The oldest onboarded account across all levels is selected, and the shipment is created. |
{ "carrierAccountId": "YNp3883Bap3L", "carrier": "USPS", "service": "EM" }
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.
{ "addToManifest": true, "shipperID": "1234567890" }
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.
This option is used to provide additional information into the label's additional space. It is supported only for doc size 4x6_75.
{ "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 } }
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.
[ { "inputParameters": [ { … } ], "specialserviceId": "Ins" } ]
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.
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.
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.
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.
{ "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" }
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.
[ { "name": "costAccountName", "value": "costAccountName" }, { "name": "costAccountId", "value": "costAccountId" }, { "name": "costAccountCode", "value": "Code" }, { "name": "accountCode", "value": "code" }, { "name": "companyCode", "value": "code" } ]
Defines the label size of the Shipment, that is, the Shipping Label is available in different Doc Size.
Max length = 10
Defines the type of the Shipment. QR_CODE supported for carrier USPS only as of now.
Max length = 14
"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"
Specifies how the label content is encoded.
URL is supported for PDF and GIF.
BASE64 is supported for ZPL2, PNG, and GIF.
Refers to a printer connected (directly or via network) to a computer. Max length = 60
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.
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.
{ "deliverBy": "2025-10-30", "useBestNextDate": false }
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.
- Sandbox Serverhttps://api-sandbox.sendpro360.pitneybowes.com/shipping/api/v2/shipments
- Production Server (uses live data)https://api.sendpro360.pitneybowes.com/shipping/api/v2/shipments
- Sandbox Server for Canadahttps://api-ppd.shipping360.pitneybowes.com/ca/shipping/api/v2/shipments
- Production Server for Canadahttps://api.shipping360.pitneybowes.com/ca/shipping/api/v2/shipments
- By Carrier
- By RateGroup
- By RuleSet
- By ShipCode
- By ExternalCode
- International Shipment
- Military Mail Shipment
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
}
}'The shipment has been created successfully.
Key assigned by the shipping system to the transaction.
The shipmentId, a unique identifier for an individual Shipment.
The Tracking number given to the Parcel for tracking purpose.
Unique identifier of the carrier account under which shipments is processed.
[ { "contentType": "URL", "contents": "https://prv-labels-cls.gcs.pitneybowes.com/usps/910187923/outbound/label/5ecfa0ecc6454caeb90c55d35229de90.pdf", "fileFormat": "PDF", "size": "DOC_4X6", "type": "SHIPPING_LABEL" } ]
The details of the Parcel.
{ "length": 10, "height": 10, "width": 10, "dimUnit": "IN", "weightUnit": "OZ", "weight": 10, "packageValue": 10 }
{ "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 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.
{ "reference1": "custome message", "reference2": "SendTech" }
The complete address of the Sender.
{ "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" }
The complete address of the Reciepient.
{ "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 }
Billing address of the buyer responsible for the shipment payment. It can be domestic or international address.
- Incase of FedEx and UPS when the
soldToAddressis missing in the request, thetoAddressis used as the final address. - If the importer is the same as the final recipient, the
toAddressandsoldToAddressmust match. - If the importer is different from the final recipient, enter the importer address in the
soldToAddressand enter the final recipient's address in thetoAddress.
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.
{ "addToManifest": true, "receiptOption": "noOptions", "shipperId": "2000084646", "billingWeight": "16.00" }
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.
- domesticShipmentResponseV2
- internationalShipmentResponseV2
- MilitaryMailShipmentResponseV2
{ "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" } }