rate.quote (object $destination, object $items, object $methodInfo)Request shipping and handling quotes based on a set of order items and a destination zip code.
The following excerpts show only the package_count and packages properties of a single rate, plus related properties where they matter.Two identical packages are listed separately, so the array length matches package_count:
A rate can still succeed when package dimensions are unknown. In that case ShipStream estimates the rate from item data and returns null for the unknown dimensions.When no item or included packaging has a known weight, the package reports null for both weight fields. Known dimensions remain available:
If “adult” then the package(s) will be shipped with the Adult Signature Required option (21 years or older). If “any” then the package(s) will be shipped with the “Direct” signature required (recipient of any age). If “indirect” then the package(s) will be shipped with the “Indirect” signature required (if “Indirect” is not supported by the carrier, this option will fall back to ‘any’). If not specified will default to “none”.
Each rate has its own packages. Different shipping methods can pack the same items differently, so compare packages per rate. When a virtual shipping method selects the cheapest or fastest method, the packages come from the method selected at each warehouse.Dimensions describe the packing solution selected for the rate and can be estimates rather than measured boxes. Use each package’s dimension_unit and weight_unit fields to interpret its measurements.
Estimated actual packed weight used for the quote, including packaging weight accounted for by the rating calculation. This differs from dimensional or billable weight. null when no item or included packaging has a known weight; otherwise the reported weight includes known contributions, even if another component’s weight is missing.