Request a Quote
Use this endpoint to obtain a price quote for a freight shipment using contracted rates. The quote_id
returned by the carrier must be supplied when scheduling a pickup for your shipment. The quote ID will be included on the BOL you give to the carrier at the time of pickup, allowing them to match the shipment to the original quote and invoice it correctly.
Requirements
Name | Type | Required | Description |
---|---|---|---|
carrier_id | string | ✔ | The unique carrier_id of your LTL carrier. Use the list connected carriers call to get the carrier_id for each of your connected carriers. |
shipment | Shipment Object | ✔ | Must be included in the request body. This object wraps shipment information requried by the carrier to generate a quote. |
shipment_measurements | Shipment Measurement Object | ✔ | Must be included in the request body. The dimensions and weight consumed by the shipment once loaded in the trailer. |
The following sections explain the objects and properties required for the request body in more detail.
Shipment Object
When you create a quote or spot-quote, the request is wrapped in a shipment
object. Shipments are the gatekeeper to more advanced functionality inside ShipStation API.
The following table lists the properties required inside of the shipment
object.
Name | Type | Required | Description |
---|---|---|---|
service_code | string | ✔ | The service level requested for this quote. |
pickup_date | string | ✔ | The shipment date of the quote. Date Format: YYYY-MM-DD |
packages[] | Array of objects | ✔ | An array holding a list of package objects that contain information about the physical freight being sent. |
options | Options Object | The accessorial services required for pickup. | |
ship_from | Ship From Object | ✔ | The address and contact details for the location where freight will be picked up. |
ship_to | Ship To Object | ✔ | The address and contact details for the location where the freight will be sent. |
bill_to | Object | ✔ | The address and contact details for the billing contact. |
requested_by | Requested by Object | ✔ | The name and contact details for the company making the request. |
Package Object
This object represents the physical freight that you are shipping. LTL shipments are typically packed in containers such as pallets, skids, or oversized boxes. Your LTL carrier will typically refer to these as container types. These special container types are referred to as packages in ShipStation API.
Name | Type | Required | Description |
---|---|---|---|
code | string | ✔ | The code for this package type. |
freight_class | number | ✔ | The NMFC freight class for your freight. |
nmfc_code | string | The NMFC commodity code / item number. | |
description | string | ✔ | The description of the item(s) in this container. |
dimensions | Dimensions Object | ✔ | The dimensions of the package. |
weight | Weight Object | ✔ | The weight of the package. |
quantity | number | ✔ | The number of packages of this type. |
stackable | boolean | ✔ | Indicates whether or not this package can be safely stacked. |
hazardous_materials | boolean | ✔ | Indicates whether or not the package contains hazardous materials. |
Dimensions Object
This object represents the physical dimensions of the package.
Name | Type | Required | Description |
---|---|---|---|
width | number | ✔ | The value of the width of the package. |
height | number | ✔ | The value of the height of the package. |
length | number | ✔ | The value of the length of the package. |
unit | string | ✔ | The unit of measure for the dimensions. Valid values include inches and centimeters |
Weight Object
This object represents the weight of the package.
Name | Type | Required | Description |
---|---|---|---|
value | number | ✔ | The value of the weight of the package. |
unit | string | ✔ | The unit of measure of the weight. Valid values include grams , kilograms , ounces , and pounds . |
Shipment Measurements Object
This object represents the dimensions and weight consumed by the shipment once loaded in the trailer.
Name | Type | Required | Description |
---|---|---|---|
total_linear_length | Total Linear Length Object | ✔ | The total linear length of the shipment as it will be loaded into the trailer, calculated based on the length of an individual container, factoring in whether containers can be stacked and/or fit widthwise in the trailer. |
total_width | Total Width Object | ✔ | The total width of the shipment configuration as it will be loaded into the trailer. |
total_height | Total Height Object | The total height of the shipment configuration as it will be loaded into the trailer. | |
total_weight | Total Weight Object | The total weight of the shipment configuration as it will be loaded into the trailer. |
Total Linear Length, Width, Height Objects
These objects represent the linear length, width, and height of the shipment once loaded in the trailer.
Name | Type | Required | Description |
---|---|---|---|
value | number | ✔ | The value of the linear length of the shipment. |
unit | string | ✔ | The unit of measure of the linear length. Valid values include inches , and centimeters . |
Total Weight Object
This object represents the weight of the shipment once loaded in the trailer.
Name | Type | Required | Description |
---|---|---|---|
value | number | ✔ | The value of the weight of the shipment. |
unit | string | ✔ | The unit of measure of the weight. Valid values include grams , kilograms , ounces , and pounds . |
Options Object
This object represents the optional accessorial services you require for this pickup. For example, does this pickup require a lift gate on the trailer? These extra services are referred to as options in ShipStation API. Refer to the accessorial services for the carrier to get the required attributes for your selected service.
Name | Type | Required | Description |
---|---|---|---|
code | string | ✔ | The carrier's code for this service option. |
attributes | Object | Some carriers require additional supplemental information about an accessorial service like name or phone . See list accessorial services for details. |
Ship From & Ship To Object
This object represents the address and contact information needed for the Ship From and Ship To properties.
Name | Type | Required | Description |
---|---|---|---|
account | string | Optional account number may be included. | |
address | Address Object | ✔ | The address of the location. |
contact | Contact Object | ✔ | The information for the contact person. |
Bill To Object
This object represents the billing information for this pickup.
Name | Type | Required | Description |
---|---|---|---|
type | string | ✔ | The type of billing. Valid values include consignee , shipper , or third_party . |
payment_terms | string | ✔ | The payment terms. Valid values include collect , prepaid , or third_party . |
account | string | The account number to bill for this pickup. | |
address | Address Object | The address of the location. | |
contact | Contact Object | The information for the contact person. |
Requested By Object
This object represents the requester of this pickup.
Name | Type | Required | Description |
---|---|---|---|
company_name | string | ✔ | Name of the company making the pickup request. |
contact | Contact Object | ✔ | The information for the contact person. |
Address & Contact Objects
This object represents address and contact information.
Address Object
name | type | Required | Description |
---|---|---|---|
company_name | string | ✔ | The name of the company associated with this address. |
address_line1 | string | ✔ | The first line of the street address. For some addresses, this may be the only line. Other addresses may require 2 or 3 lines. |
address_line2 | string | The second line of the street address. For some addresses, this line may not be needed. | |
address_line3 | string | The third line of the street address. For some addresses, this line may not be needed. | |
city_locality | string | ✔ | The city or locality of the shipment address. |
state_province | string | ✔ | The state or province of the shipment address. |
postal_code | string | ✔ | The postal code of the shipment address. |
country_code | string | ✔ | The two letter ISO 3166-1 alpha-2 country code. |
residential | boolean | Indicates whether or not this is a residential address. Defaults to false . |
Contact Object
name | type | Required | Description |
---|---|---|---|
name | string | ✔ | The name of the contact. |
phone_number | string | ✔ | The phone number of the contact. |
email | string | ✔ | The email address of the contact. |
Response Body
The response object returned from sucessful requests to this endpoint will contain the parameters listed in the below table:
Name | Type | Required | Description |
---|---|---|---|
carrier_message | string | ✔ | This optional message includes notes about the quote if provided by the carrier. |
charges[] | Charges Object | ✔ | An array of objects containing an itemized breakdown of the charges for the quote. |
effective_date | string | The date that the quote becomes active. This is provided if supported by the carrier. Format: YYYY-MM-DD. | |
estimated_delivery_days | number | ✔ | This number represents the estimated number of days between pickup and delivery if provided by the carrier. |
expiration_date | string | Quote expiration information if supported by the carrier in format YYYY-MM-DD | |
pickup_date | string | ✔ | This is the scheduled date of the pickup. Format: YYYY-MM-DD. |
quote_id | string | ✔ | This quote ID is generated and attached to this quote. This ID can be used to schedule a pickup based on this quote. |
quote_type | string | ✔ | The string returned will be contract . If you create a spot-quote, then spot is the string returned. |
service | Service Object | ✔ | This object contains service level information provided by the carrier and will include carrier_description and code . |
shipment | Shipment Object | ✔ | ShipStation API creates this object to encompass all of the information provided for this shipment. |
Charges Object
This object represents an individual item in the quote. It includes the type
and amount
for a charge, and may optionally include a description
if provided by the carrier.
Name | Type | Required | Description |
---|---|---|---|
amount | Amount Object | ✔ | This object represents the monetary amount of the associated charge. |
description | string | This is a description of the item that is provided by the carrier. | |
type | string | ✔ | This represents the type of the charge and witll return total , discount , accessorial , container , or uncategorized |
Amount Object
This object includes the currency type and amount for a line item in the quote.
Name | Type | Required | Description |
---|---|---|---|
currency | string | ✔ | Three letter currency code. |
value | string | ✔ | The amount of this value, represented as a string to avoid floating point rounding issues. |
Service Object
This object contains service level information provided by the carrier.
Name | Type | Required | Description |
---|---|---|---|
carrier_description string | ✔ | The description of the shipment provided by the carrier. | |
code | string | ✔ | This service code provided by the carrier. |
Shipment Object
ShipStation API creates this shipment object to encompass the information provided for the quote.
Name | Type | Required | Description |
---|---|---|---|
bill_to | Object | ✔ | account , address , contact , payment_terms , and type associated with the billing contact. |
delivery_date | string | The date that the quote is scheduled to be delivered. Format: YYYY-MM-DD. | |
options[] | Array of Objects | The accessorial services associated with this shipment. | |
packages[] | Array of Objects | ✔ | An array of objects containing information about the physical freight being sent for this shipment. |
pickup_date | string | ✔ | The scheduled date of the pickup. Format: YYYY-MM-DD. |
requested_by | Object | ✔ | This object contains service level information provided by the carrier and will include carrier_description and code . |
ship_from | Object | ✔ | ShipStation API creates this object to encompass all of the information provided for this shipment. |
ship_to | Object | ✔ | The address and contact details for the location where the freight will be sent for this shipment. |
shipment_id | string | The ID associated with this shipment. Currently this ID is only used for internal purposes. |
Example Request & Response
POST /v-beta/ltl/quotes/:carrier_id
Example response: