Carrier and Method Selection API
Determine the carrier ship method that meets your needs with Shipium's Carrier and Method Selection API.
Get started
To use the Carrier and Method Selection API, you must first set up your account to use Shipium's Carrier and Method Selection service. Information about carrier and method selection within the Shipium platform and setting up your organization's account to use the service can be found in the Carrier and Method Selection documentation.
The rest of this document provides instructions for using the API.
Determine carrier and ship method with the Carrier and Method Selection API
The Shipium Carrier and Method Selection API assumes you're using one of the authentication mechanisms detailed in our authentication documentation. The endpoint for Carrier and Method Selection API calls is included in the table below.
API type | API endpoint |
---|---|
POST | https://api.shipium.com/api/v1/deliveryexperience/shipment/{shipiumShipmentId}/carrierSelection |
Authentication for API Calls
In the cURL example on this page, the environment variable
AUTHSTRING
is used to handle authorization. The recipe below shows how to set it correctly for both API Key and OAuth users.
Example cURL call
This example shows a request to run the carrier selection process on an existing shipment:
curl --request POST \
--url https://api.shipium.com/api/v1/deliveryexperience/shipment/shipiumShipmentId/carrierSelection \
--header 'accept: application/json' \
--header $AUTHSTRING \
--header 'content-type: application/json' \
--data 'INSERT REQUEST BODY FROM BELOW'
Example request body
The following fields should be included in your JSON request.
{
"currencyCode": "usd",
"shippedDateTime": "2024-03-21T17:29:51.571Z",
"packagingType": {
"packagingMaterial": "box",
"packagingSizeName": "13x12x10 Box",
"packagingTypeId": "ebd94f8b-d390-4c9c-987f-b88343f5bf45",
"linearDimensions": {
"linearUnit": "in",
"length": 13,
"width": 12,
"height": 10
},
"packagingWeight": {
"weightUnit": "lb",
"weight": 50
}
},
"asOfDate": "2024-03-21T17:29:51.571Z",
"includeEvaluatedServiceMethodsInResponse": true,
"includeInjectionProfiles": true,
"injectionParameters": [
{
"injectionProfileId": "0c3bdcfd-765b-4084-954e-76aa59dbd41d",
"injectionSiteId": "3feb958c-414e-49f4-b15b-68f8f1cd02df"
}
],
"testMode": true,
"simulation": true,
"simulationParameters": {
"deliveryExperienceParameters": {
"additionalDaysToProcess": 0,
"timeInTransitSourcePreference": [
"partner_provided"
],
"weekendConsideredTransitDay": true,
"shipiumCalculatedPercent": 0,
"shipiumMlModelPercent": 0
},
"costingConfigurationParameters": {
"costCurrency": "usd",
"totalUpgradeCostTolerance": 0,
"upgradeOverCheapestCostTolerance": 0
},
"simulationTntPrefixId": "2a104405-01fd-4fef-83e2-7b7353573c0c",
"mlCacheEnabled": true,
"ignoreRuleSets": true
}
}
Example response body
{
"carrierSelectionId": "1c17e8e3-24a6-452c-b85b-b319bebdb9f9",
"shipiumShipmentId": "e117a666-78ea-425d-a78a-6ffee127b6e3",
"partnerShipmentId": "shipment123",
"shipiumTenantId": "ec93ca14-e85d-4a29-964e-9e55117b21c6",
"partnerTenantId": "tenant123",
"carrierDecision": {
"status": "success",
"statusDetails": "success",
"partnerId": "56fb8f99-925a-4c62-af23-68d9e68171f8",
"carrierAccountId": "ba9258de-4f59-4ecc-81bc-773b25c6306d",
"serviceMethodIdentifier": "1f19ca28-9798-42b2-9e8c-f9c3a72c9bab:dXBzbWktcGFyY2VsLXNlbGVjdC1zZXJ2aWNlLW1ldGhvZDo6NDNjYTI3ZDctZmUzNi00YjI1LTk4MDAtYTdmMTE2ZDIyMTQxOjdiODExNzA0LTlhMTYtNGQzYi1iODQ5LTQzYzcyNzk0MTVhYzpmZTFlMjg1Mi1kNTBiLTQ5OGQtOGIxMC05MGJiMWM5ODFjZTA6dXBzbWk6NWExZWE3MjgtNGJhMi00Y2M2LTg5MmMtMWYxMjJmMzUwNzc1Ojo",
"carrier": "upsmi",
"carrierServiceName": "UPS Mail Innovations Parcel Select",
"thirdPartyBilling": true,
"includeEvaluatedServiceMethodsInResponse": true,
"carrierEstimatedPriceDetails": {
"currencyCode": "usd",
"shippingCost": 0,
"insuranceCost": 0,
"accessorials": 0,
"duty": 0,
"taxes": 0,
"totalCost": 0,
"adjustedLabelCost": 0,
"carrierCompareCost": 0,
"carrierInvoiceCost": 0,
"operationalCost": 0
},
"serviceMethodName": "UPS Mail Innovations Parcel Select",
"carrierServiceMethodId": "upsmi-parcel-select-service-method",
"ruleSetProcessingResultSummary": {
"result": "selection_made",
"selectedCarrierServiceMethodIdentifiers": [
"upsmi-parcel-select-service-method"
],
"ruleMakingSelection": {
"ruleId": "c86a6865-da6a-48b2-be27-1e910b3127f5",
"ruleUrn": "61ec67e9-8d54-4285-ab4d-f7d599ed968c",
"name": "rule123"
},
"ruleSetUrn": "6c3b0780-1d66-4254-ba6d-060264be8873",
"processingTimestamp": "2024-03-21T17:29:51.621Z"
},
"details": {
"requestParams": {
"currencyCode": "usd",
"shippedDateTime": "2024-03-21T17:29:51.621Z",
"packagingType": {
"packagingMaterial": "box",
"packagingSizeName": "13x12x10 Box",
"packagingTypeId": "ebd94f8b-d390-4c9c-987f-b88343f5bf45",
"linearDimensions": {
"linearUnit": "in",
"length": 13,
"width": 12,
"height": 10
},
"packagingWeight": {
"weightUnit": "lb",
"weight": 50
}
},
"asOfDate": "2024-03-21T17:29:51.621Z",
"includeEvaluatedServiceMethodsInResponse": true,
"includeInjectionProfiles": true,
"injectionParameters": [
{
"injectionProfileId": "5c9f0961-1fe7-43d4-b314-664681c032a5",
"injectionSiteId": "f4800e9e-eb9f-43c0-baa7-8c04dc971c6f"
}
],
"testMode": true,
"simulation": true,
"simulationParameters": {
"deliveryExperienceParameters": {
"additionalDaysToProcess": 0,
"timeInTransitSourcePreference": [
"partner_provided"
],
"weekendConsideredTransitDay": true,
"shipiumCalculatedPercent": 0,
"shipiumMlModelPercent": 0
},
"costingConfigurationParameters": {
"costCurrency": "usd",
"totalUpgradeCostTolerance": 0,
"upgradeOverCheapestCostTolerance": 0
},
"simulationTntPrefixId": "65d25756-a4e4-4ebf-8461-0d6327d11f6",
"mlCacheEnabled": true,
"ignoreRuleSets": true
}
},
"availableServiceMethods": [
{
"partnerId": "f657deeb-647b-4625-910b-53ea2c5e1458",
"carrierAccountId": "f887c2d0-c524-4dc8-a4c2-6c3c08f0c120",
"carrierSettingsId": "427027fb-47f2-4471-90c5-1e8b4bca4238",
"originId": "7fc6c76b-e681-4ce0-80ce-e439b76d3977",
"carrierRateId": "8c79ad21-3a08-4ffe-9ca7-f1a950dac678",
"serviceMethodIdentifier": "urn:carrierrate:86c6230a-4a2b-4f9b-8b71-a51627bbbcb2:1",
"carrier": "UPS",
"carrierServiceMethodId": "ups-ground-service-method",
"carrierServiceName": "UPS(MO)",
"serviceMethodName": "UPS SurePost",
"fulfillmentContextId": "string",
"effectiveShipDate": "2024-03-21T17:29:51.621Z",
"estimatedInjectionDate": "2024-03-21T17:29:51.621Z",
"partnerInjectionProfileId": "a46d73be-f3cf-4ac0-852c-cf7217f106ea",
"shipiumInjectionProfileId": "a742cd42-80b3-4749-a464-8e04edc883dd",
"partnerInjectionSiteId": "cb320ed4-73d9-456b-8151-907c4d6aaf07",
"shipiumInjectionSiteId": "dd21aec2-f169-4c44-b706-541698491474",
"injectionSiteName": "Injection Site 1A",
"transportationType": "ground",
"destinationType": "residential"
}
],
"serviceMethodsAfterFiltering": [
{
"partnerId": "f657deeb-647b-4625-910b-53ea2c5e1458",
"carrierAccountId": "f887c2d0-c524-4dc8-a4c2-6c3c08f0c120",
"carrierSettingsId": "427027fb-47f2-4471-90c5-1e8b4bca4238",
"originId": "7fc6c76b-e681-4ce0-80ce-e439b76d3977",
"carrierRateId": "8c79ad21-3a08-4ffe-9ca7-f1a950dac678",
"serviceMethodIdentifier": "urn:carrierrate:86c6230a-4a2b-4f9b-8b71-a51627bbbcb2:1",
"carrier": "UPS",
"carrierServiceMethodId": "ups-ground-service-method",
"carrierServiceName": "UPS(MO)",
"serviceMethodName": "UPS SurePost",
"fulfillmentContextId": "string",
"effectiveShipDate": "2024-03-21T17:29:51.621Z",
"estimatedInjectionDate": "2024-03-21T17:29:51.621Z",
"partnerInjectionProfileId": "a46d73be-f3cf-4ac0-852c-cf7217f106ea",
"shipiumInjectionProfileId": "a742cd42-80b3-4749-a464-8e04edc883dd",
"partnerInjectionSiteId": "cb320ed4-73d9-456b-8151-907c4d6aaf07",
"shipiumInjectionSiteId": "dd21aec2-f169-4c44-b706-541698491474",
"injectionSiteName": "Injection Site 1A",
"transportationType": "ground",
"destinationType": "residential"
}
],
"zonesByServiceMethodIdentifier": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"calculatedRates": [
{
"destinationAddressType": "residential",
"destinationCountryCode": "US",
"effectiveShipDate": "2019-10-28T14:34:55.123456Z",
"destinationPostalCode": "87121",
"linearDimensions": {
"linearUnit": "in",
"length": 13,
"width": 12,
"height": 10
},
"packagingMaterial": "box",
"partnerId": "76abb3d4-8990-4f80-aa13-4c2007cb852a",
"physicalWeight": 2.3,
"rateCurrency": "usd",
"serviceMethodIdentifier": "urn:carrierrate:86c6230a-4a2b-4f9b-8b71-a51627bbbcb2:1",
"weightUnit": "lb",
"zoneId": "[usps-zone-2]",
"carrierId": "usps",
"createdAt": "2020-09-17T11:36:18-07:00",
"actualWeight": 3,
"dimWeight": 2,
"rateResultType": "rate_match",
"rateResultDetails": "rate_match",
"billableWeight": 3,
"lineItems": [
{
"name": "base",
"rate": 2.3,
"carrierSurchargeId": "123451239874980",
"lineItemType": "surcharge",
"hiddenFromCarrierCompare": true,
"hiddenFromInvoice": true,
"hiddenFromOperational": true
}
],
"rate": 3.75,
"carrierCompareCost": 3.5,
"carrierInvoiceCost": 2.7,
"operationalCost": 2.7,
"adjustedCost": 0,
"carrierRateRequestInfo": {
"serviceMethodIdentifier": "urn:carrierrate:86c6230a-4a2b-4f9b-8b71-a51627bbbcb2:1",
"carrierRateId": "8c79ad21-3a08-4ffe-9ca7-f1a950dac678",
"carrierSettingsId": "427027fb-47f2-4471-90c5-1e8b4bca4238",
"zoneId": "[usps-zone-2]",
"saturdayDelivery": true
}
}
],
"filteredServiceMethods": [
{
"filterReason": "string",
"filterReasons": [
"string"
],
"serviceMethodIdentifier": "urn:carrierrate:86c6230a-4a2b-4f9b-8b71-a51627bbbcb2:1"
}
],
"estimatedDeliverySelectionDetails": {
"desiredDeliveryDate": "2024-03-21T17:29:51.621Z",
"estimatedDeliveryDate": "2024-03-21T17:29:51.621Z",
"cheapestCost": 0,
"selectedCost": 0,
"selectedAdjustedCost": 0,
"selectedCostOverCheapest": 0,
"selectedBucket": "string",
"selectedCarrierServiceMethodId": "upsmi-parcel-select-service-method",
"selectedServiceMethodIdentifier": "urn:carrierrate:86c6230a-4a2b-4f9b-8b71-a51627bbbcb2:1",
"selectedDeliveryEstimateProvenance": "string",
"selectedEffectiveShipDate": "2024-03-21T17:29:51.621Z",
"selectedEstimatedInjectionDate": "2024-03-21T17:29:51.621Z",
"estimatedDeliveryMatchInfo": {
"timeInTransitDataType": "partner_provided",
"redisKey": "string",
"rawTimeInTransit": 0,
"timeInTransitDays": 0,
"timeInTransitModel": "string",
"matchInfo": "string"
},
"estimatedDeliveryDateId": "905f1b41-ed19-4ded-99e6-8248ae74951c",
"upgradeCostingConfiguration": {
"costCurrency": "usd",
"totalUpgradeCostTolerance": 0,
"upgradeOverCheapestCostTolerance": 0
},
"upgradeSpendLimit": 0,
"upgradeSpendAtDecisionTime": 0,
"timeInTransitSourcePreference": [
"partner_provided"
],
"deliveryDateRequestedAt": "2024-03-21T17:29:51.621Z",
"ignoreUpgradeSpendLimits": true,
"serviceMethodResults": [
{
"carrierServiceMethodId": "ups-ground-service-method",
"carrierAccountId": "ba9258de-4f59-4ecc-81bc-773b25c6306d",
"serviceMethodIdentifier": "1f19ca28-9798-42b2-9e8c-f9c3a72c9bab:dXBzbWktcGFyY2VsLXNlbGVjdC1zZXJ2aWNlLW1ldGhvZDo6NDNjYTI3ZDctZmUzNi00YjI1LTk4MDAtYTdmMTE2ZDIyMTQxOjdiODExNzA0LTlhMTYtNGQzYi1iODQ5LTQzYzcyNzk0MTVhYzpmZTFlMjg1Mi1kNTBiLTQ5OGQtOGIxMC05MGJiMWM5ODFjZTA6dXBzbWk6NWExZWE3MjgtNGJhMi00Y2M2LTg5MmMtMWYxMjJmMzUwNzc1Ojo",
"labelCost": 0,
"adjustedLabelCost": 0,
"costOverCheapest": 0,
"effectiveShipDate": "2024-03-21T17:29:51.621Z",
"estimatedInjectionDate": "2024-03-21T17:29:51.621Z",
"estimatedDeliveryDate": "2024-03-21T17:29:51.621Z",
"bucket": "string",
"estimatedDeliveryMatchInfo": {
"timeInTransitDataType": "partner_provided",
"redisKey": "string",
"rawTimeInTransit": 0,
"timeInTransitDays": 0,
"timeInTransitModel": "string",
"matchInfo": "string"
},
"provenanceId": "773410ba-b7dd-47b2-b812-11e9bf8c61bd",
"estimatedDeliveryDateId": "905f1b41-ed19-4ded-99e6-8248ae74951c",
"timeInTransitSourcePreference": [
"partner_provided"
],
"requestedAt": "2024-03-21T17:29:51.621Z",
"ignoreUpgradeSpendLimits": true,
"saturdayDeliveryEnabled": true,
"sundayDeliveryEnabled": true
}
],
"saturdayDeliveryRequested": true,
"sundayDeliveryRequested": true
},
"asOfDate": "2024-03-21T17:29:51.621Z",
"failoverList": [
"1f19ca28-9798-42b2-9e8c-f9c3a72c9bab:dXBzbWktcGFyY2VsLXNlbGVjdC1zZXJ2aWNlLW1ldGhvZDo6NDNjYTI3ZDctZmUzNi00YjI1LTk4MDAtYTdmMTE2ZDIyMTQxOjdiODExNzA0LTlhMTYtNGQzYi1iODQ5LTQzYzcyNzk0MTVhYzpmZTFlMjg1Mi1kNTBiLTQ5OGQtOGIxMC05MGJiMWM5ODFjZTA6dXBzbWk6NWExZWE3MjgtNGJhMi00Y2M2LTg5MmMtMWYxMjJmMzUwNzc1Ojo"
],
"serviceLevel": "string",
"originatingPostalCode": "98103"
},
"effectiveShipDateTime": "2024-03-21T17:29:51.621Z",
"estimatedInjectionDateTime": "2024-03-21T17:29:51.621Z",
"injectionDetails": {
"requestInjectionProfileId": "5fb44000-2e9c-4d31-aec7-46036323c2ce",
"partnerInjectionProfileId": "a46d73be-f3cf-4ac0-852c-cf7217f106ea",
"shipiumInjectionProfileId": "a742cd42-80b3-4749-a464-8e04edc883dd",
"requestInjectionSiteId": "f7092716-1b4b-4ce6-b4a6-e18b11f16c9d",
"partnerInjectionSiteId": "cb320ed4-73d9-456b-8151-907c4d6aaf07",
"shipiumInjectionSiteId": "dd21aec2-f169-4c44-b706-541698491474",
"injectionCostDetails": {
"injectionLineItemRate": 2.3,
"injectionLineItemCurrencyCode": "usd",
"injectionRateModifier": {
"modifierType": "flat",
"modifierValue": 0
}
}
}
},
"carrierSelectionDateTime": "2024-03-21T17:29:51.621Z",
"carrierSelectionExpiration": "2024-03-21T17:29:51.621Z"
}
Request and response fields for API calls
The following table provides required and optional fields for calling the Carrier and Method Selection API. You can find additional support in the Carrier and Method Selection API Reference.
Request field | Required/Optional | Field properties | Description |
---|---|---|---|
currencyCode | Required | String Example: USD | Currency in which all the rates for shipping carrier selection costs will be calculated |
shippedDateTime | Optional | String ($date-time) Example: 2019-10-29T09:12:33.123456Z | The timestamp for when a partner shipped the product from their warehouse; the timestamp must be a valid ISO 8601 timestamp. |
packagingType.packagingMaterial | Optional | String Values include: - box - envelope - flat_pack | The type of packaging used to create the package for the shipment |
packagingType.packagingSizeName | Optional | String Example: 13x12x10 Box | A custom name for the packaging |
packagingType.packagingTypeId | Optional | String Example: ebd94f8b-d390-4c9c-987f-b88343f5bf45 | The packagingTypeId that was used for this package. When this value is present, the dimensions defined in the partner are used. When this value is absent, linearDimensions is required. |
packagingType.linearDimensions .linearUnit | Optional, but required if the packagingTypeId is not included | String Values include: - cm (centimeter) - in (inch) | The unit in which linear dimensions are provided |
packagingType.linearDimensions .length | Required | String Commercial or Residential | The type of location for the address; see the note below about the information provided for this field |
packagingType.linearDimensions .width | Optional, but required if the packagingTypeId is not included | Number ($float) Example: 12 | The second longest linear dimension (i.e., the second longest side of a box or envelope) |
packagingType.linearDimensions .height | Optional, but required if the packagingTypeId is not included | Number ($float) Example: 10 | The least long linear dimension (i.e., the shortest side of a box or envelope). Note on envelopes: This height should represent the highest product you would reasonably put in this envelope before losing more than 10% of the length of the envelope in other dimensions. |
packagingType.packagingWeight .weightUnit | Optional | String Values include: - g (gram) - kg (kilogram) - lb (pound) - oz (ounce) | The unit in which weight values are provided |
packagingType.packagingWeight .weight | Optional | Number ($float) Example: 50 | The value of the weight |
asOfDate | Optional (for Simulation) | String ($date-time) | Designed for simulation mode only. Date used to re-create a carrier selection as of a certain point in time. This field not being set is assumed to mean "now". |
includeEvaluatedServiceMethods InResponse | Optional | BooleanTrue or False | If true , a request will expand information on the response to include unselected service methods that made it through filtering. |
includeInjectionProfiles | Optional | BooleanTrue or False | If true , service methods from the configured injection profiles will be considered during carrier selection. |
injectionParameters .injectionProfileId | Optional | String | The Shipium ID or the partner-provided ID of an injection profile that should be considered during carrier selection |
injectionParameters .injectionSiteId | Optional, but must be paired with injectionProfileId | String | The Shipium ID or the partner-provided ID of an injection site that should be considered during carrier selection. If an injection site ID is specified, it must be accompanied by an injection profile ID. |
testMode | Optional | BooleanTrue or False | If true , no actual labels are created, only a representation of the label. No money is charged to the underlying account. |
simulation | Optional | BooleanTrue or False | Setting this value to true will run a carrier selection rate calculation only and not store the results. Setting this to true also allows setting of the field asOfDate to a value in the past. |
simulationParameters .deliveryExperienceParameters .additionalDaysToProcess | Optional, for Simulation | Integer ($int32) | Parameter used to override your configuration for additional days to process |
simulationParameters .deliveryExperienceParameters .timeInTransitSourcePreference | Optional, for Simulation | String Values are: - partner_provided - shipium_calculated - shipium_ml_model - shipium_cached_ml_model - carrier_default | Parameter used to override your configuration for time in transit data source |
simulationParameters .deliveryExperienceParameters .weekendConsideredTransitDay | Optional, for Simulation | BooleanTrue or False | Parameter used to override your configuration for weekends considered as transit days |
simulationParameters .deliveryExperienceParameters .shipiumCalculatedPercent | Optional, for Simulation | Number ($float) | Parameter used to override your configuration for Shipium-calculated percentage for a simulation |
simulationParameters .deliveryExperienceParameters .shipiumMlModelPercent | Optional, for Simulation | Number ($float) | Parameter used to override your configuration for Shipium MI model percentage for a simulation |
simulationParameters .costingConfigurationParameters .costCurrency | Optional, for Simulation | String Ex.: USD | The currency of your organization's costing tolerance |
simulationParameters .costingConfigurationParameters .upgradeOverCheapestCostTolerance | Optional, for Simulation | Number ($float) | This value will override your organization's configured highest value above the cheapest cost you allow. |
simulationParameters .costingConfigurationParameters .totalUpgradeCostTolerance | Optional, for Simulation | Number ($float) | This value will override your organization's configured maximum value that you will allow for any upgrade. |
simulationParameters .simulationTntPrefixId | Optional, for Simulation | String | If a simulation is using different TNTs provided by your organization (partner provided), then this is the ID to let Shipium know which set to use. |
simulationParameters .mlCacheEnabled | Optional, for Simulation | BooleanTrue or False | If true , allows a simulation to use the ML cache for TNT values |
simulationParameters .ignoreRuleSets | Optional, for Simulation | BooleanTrue or False | If the shipment is a simulation and this flag is true , rule sets will be ignored. |
The Carrier and Method Selection response attributes are defined in the following table.
Response attribute | Description |
---|---|
carrierSelectionId | Unique ID of the carrier selection for later reference |
shipiumShipmentId | The unique identifier for the shipment |
partnerShipmentId | The optional unique identifier that may be used for the shipment |
shipiumTenantId | The Shipium-generated tenant ID; when present, this is used to indicate the tenant associated with the shipment. |
partnerTenantId | The tenant ID provided by your organization; when present, this is used to indicate the tenant associated with the shipment. |
carrierDecision.status | Defines the result of the carrier selection call; values returned will be success , no_decision , or [uncosted](https://docs.shipium.com/v2.0/docs/labels-without-costing) . |
carrierDecision.statusDetails | Details explaining the result status; pertinent when the status is no_decision |
carrierDecision.partnerId | Your organization's unique ID |
carrierDecision.carrierAccountId | Unique ID of the carrier account selected for shipping |
carrierDecision.serviceMethodIdentifier | Identifier of the specific version of the service method of the shipping carrier selected |
carrierDecision.carrier | The carrier that was used for delivering the package to your customer |
carrierDecision.carrierServiceName | The name of the carrier service method selected |
carrierDecision.thirdPartyBilling | Indicates if the selected service method will be billed to a third party |
carrierDecision.includeEvaluatedServiceMethods InResponse | Indicates if you expressed in the request to include the evaluated carrier service methods in the response |
carrierDecision.carrierEstimatedPriceDetails .currencyCode | Currency in which all price line items are stored |
carrierDecision.carrierEstimatedPriceDetails .shippingCost | The cost of the shipment charged by the carrier |
carrierDecision.carrierEstimatedPriceDetails .insuranceCost | The cost of the insurance added to the shipment |
carrierDecision.carrierEstimatedPriceDetails .accessorials | Costs added to the shipment outside the normal basics of dock-to-dock transportation such as special equipment required, lift gates, or non-commercial destinations |
carrierDecision.carrierEstimatedPriceDetails.duty | Cost of duties added to the shipment |
carrierDecision.carrierEstimatedPriceDetails.taxes | Cost of taxes added to the shipment |
carrierDecision.carrierEstimatedPriceDetails.totalCost | The total cost of the shipment |
carrierDecision.carrierEstimatedPriceDetails .adjustedLabelCost | Cost used for carrier selection adjusted based on limit minimums |
carrierDecision.carrierEstimatedPriceDetails .carrierCompareCost | Cost expected to be provided in the carrier response. not including custom adjustments or hidden surcharges |
carrierDecision.carrierEstimatedPriceDetails .carrierInvoiceCost | Expected cost that the carrier will charge |
carrierDecision.carrierEstimatedPriceDetails .operationalCost | Carrier invoice cost plus operational costs such as injection line haul |
carrierDecision.serviceMethodName | Name of the carrier service method selected during the carrier selection process |
carrierDecision.carrierServiceMethodId | Maps to the unique internal Shipium ID that represents a carrier service method definition; see Supported Carriers for a list of carrier service method IDs. |
carrierDecision.ruleSetProcessingResultSummary.result | Description of the result of the rule set processing; values returned will be selection_made or no_selection . |
carrierDecision.ruleSetProcessingResultSummary .selectedCarrierServiceMethodIdentifiers | Ordered list of service methods selected by the rule set processing if a selection was made |
carrierDecision.ruleSetProcessingResultSummary .ruleMakingSelection.ruleId | The unique ID of the rule processed |
carrierDecision.ruleSetProcessingResultSummary .ruleMakingSelection.ruleUrn | The URN of the rule processed |
carrierDecision.ruleSetProcessingResultSummary .ruleMakingSelection.name | The name of the rule processed |
carrierDecision.ruleSetProcessingResultSummary .ruleSetUrn | Versioned identifier of the rule set processed |
carrierDecision.ruleSetProcessingResultSummary .processingTimestamp | The timestamp at which the rule set was processed |
carrierDecision.details.requestParams.currencyCode | Currency in which all the rates for shipping carrier selection costs will be calculated |
carrierDecision.details.requestParams.shippedDateTime | Date the shipment is expected to leave the warehouse |
carrierDecision.details.requestParams.packagingType .packagingMaterial | The type of packaging used to create the package for the shipment |
carrierDecision.details.requestParams.packagingType .packagingSizeName | A custom name for the packaging |
carrierDecision.details.requestParams.packagingType .packagingTypeId | Either the Shipium-generated packaging type ID or the packaging type ID provided by your organization that was used for this package |
carrierDecision.details.requestParams.packagingType .linearDimensions | The linear measurements for the physical size of the package |
carrierDecision.details.requestParams.packagingType .packagingWeight.weightUnit | The unit in which weight values are provided |
carrierDecision.details.requestParams.packagingType .packagingWeight.weight | The value of the weight |
carrierDecision.details.requestParams.asOfDate | Date used to re-create a carrier selection as of a certain point in time |
carrierDecision.details.requestParams .includeEvaluatedServiceMethodsInResponse | Indicates if you expressed in the request to include the evaluated carrier service methods in the response |
carrierDecision.details.requestParams .includeInjectionProfiles | When true , service methods from the configured injection profiles will be considered during carrier selection. |
carrierDecision.details.requestParams .injectionParameters.injectionProfileId | The Shipium ID or the ID you provided of an injection profile that should be considered during carrier selection |
carrierDecision.details.requestParams .injectionParameters.injectionSiteId | The Shipium ID or the ID you provided of an injection site that should be considered during carrier selection |
carrierDecision.details.requestParams.testMode | Indicates that carrier selection will consider carriers and service methods in test mode |
carrierDecision.details.requestParams.simulation | Indicates if the carrier selection call is a simulation only |
carrierDecision.details.requestParams .simulationParameters | Parameters to override your organization's delivery experience configurations for a simulation |
carrierDecision.details.availableServiceMethods .partnerId | Your organization's unique ID |
carrierDecision.details.availableServiceMethods .carrierAccountId | Unique ID of the carrier account linked to this service method |
carrierDecision.details.availableServiceMethods .carrierSettingsId | Unique ID of the carrier settings linked to this service method |
carrierDecision.details.availableServiceMethods .originId | Unique ID of the origin linked to this service method |
carrierDecision.details.availableServiceMethods .carrierRateId | Unique ID of the carrier rate |
carrierDecision.details.availableServiceMethods .serviceMethodIdentifier | Specific version of the carrier rate |
carrierDecision.details.availableServiceMethods.carrier | The service method carrier |
carrierDecision.details.availableServiceMethods .carrierServiceMethodId | Unique ID of the service method for the carrier |
carrierDecision.details.availableServiceMethods .carrierServiceName | Name of the carrier as defined by your organization |
carrierDecision.details.availableServiceMethods .serviceMethodName | Name of the service method for the carrier |
carrierDecision.details.availableServiceMethods .fulfillmentContextId | The Shipium identifier for the fulfillment context associated with this service method |
carrierDecision.details.availableServiceMethods .effectiveShipDate | The estimated date that the service method will leave the origin |
carrierDecision.details.availableServiceMethods .estimatedInjectionDate | The estimated date that the service method will arrive at the injection site |
carrierDecision.details.availableServiceMethods .partnerInjectionProfileId | Unique to your organization's asset ID that you provided to the injection profile |
carrierDecision.details.availableServiceMethods .shipiumInjectionProfileId | Injection profile identifier |
carrierDecision.details.availableServiceMethods .partnerInjectionSiteId | Unique to your organization's asset ID that you provided to the injection site |
carrierDecision.details.availableServiceMethods .shipiumInjectionSiteId | Injection site identifier |
carrierDecision.details.availableServiceMethods .injectionSiteName | Injection site name |
carrierDecision.details.availableServiceMethods .transportationType | Transportation type of the service method |
carrierDecision.details.availableServiceMethods .destinationType | Destination type of the service method |
carrierDecision.details.serviceMethodsAfterFiltering | Carrier service methods remaining after eligibility filters |
carrierDecision.details.zonesByServiceMethodIdentifier | Mapping of service method identifier to zone calculated; only service methods remaining after the service method filter step will have zone information here. |
carrierDecision.details.calculatedRates .destinationAddressType | The type of address for this destination |
carrierDecision.details.calculatedRates .destinationCountryCode | The ISO 3166-1 country code for the destination address |
carrierDecision.details.calculatedRates .effectiveShipDate | A valid ISO 8601 timestamp representing the time that was used when looking at rate tables |
carrierDecision.details.calculatedRates .destinationPostalCode | A destination country code appropriate postal code for the destination address |
carrierDecision.details.calculatedRates .linearDimensions | The linear measurements for the physical size of the package |
carrierDecision.details.calculatedRates.packagingMaterial | The type of packaging use to create the package |
carrierDecision.details.calculatedRates.partnerId | The Shipium-generated partner ID |
carrierDecision.details.calculatedRates.physicalWeight | The weight of the package and all its contents |
carrierDecision.details.calculatedRates.rateCurrency | The currency of the rate |
carrierDecision.details.calculatedRates .serviceMethodIdentifier | An urn used to find the service method/carrier rate |
carrierDecision.details.calculatedRates.weightUnit | The unit in which the weight fields are represented |
carrierDecision.details.calculatedRates.zoneId | The zone ID that was used for rate shopping |
carrierDecision.details.calculatedRates.carrierId | The carrier ID for the carrier that was used for rate shopping |
carrierDecision.details.calculatedRates.createdAt | When the rate response was created |
carrierDecision.details.calculatedRates.actualWeight | Weight calculated based on physical weight |
carrierDecision.details.calculatedRates.dimWeight | Weight calculated based on linear dimensions |
carrierDecision.details.calculatedRates.rateResultType | Result from trying to match against rate tables |
carrierDecision.details.calculatedRates.rateResultDetails | Information on why or why not a rate result was calculated |
carrierDecision.details.calculatedRates.billableWeight | Weight that was used to generate the rate |
carrierDecision.details.calculatedRates.lineItems.name | The name of the rate modification |
carrierDecision.details.calculatedRates.lineItems.rate | The amount of the rate modification |
carrierDecision.details.calculatedRates.lineItems .carrierSurchargeId | The identifier for the carrier surcharge |
carrierDecision.details.calculatedRates.lineItems .lineItemType | The type of rate line item for this rate modification |
carrierDecision.details.calculatedRates.lineItems .hiddenFromCarrierCompare | Indicates line item exclusion from the carrier compare cost |
carrierDecision.details.calculatedRates.lineItems .hiddenFromInvoice | Indicates line item exclusion from the carrier invoice cost |
carrierDecision.details.calculatedRates.lineItems .hiddenFromOperational | Indicates line item exclusion from the operational cost |
carrierDecision.details.calculatedRates.rate | List of rate modifications that were used to calculate the rate |
carrierDecision.details.calculatedRates.carrierCompareCost | Estimated cost not including hidden surcharges or rate sheet modifiers your organization has |
carrierDecision.details.calculatedRates.carrierInvoiceCost | Expected cost that the carrier will charge |
carrierDecision.details.calculatedRates.operationalCost | Carrier invoice cost plus operational costs such as injection line haul |
carrierDecision.details.calculatedRates.adjustedCost | The cost after being adjusted based on limit minimums |
carrierDecision.details.calculatedRates .carrierRateRequestInfo.serviceMethodIdentifier | Unique identifier of the service method to be passed back in the response |
carrierDecision.details.calculatedRates .carrierRateRequestInfo.carrierRateId | Unique identifier of the carrier rate |
carrierDecision.details.calculatedRates .carrierRateRequestInfo.carrierSettingsId | Unique identifier of the carrier settings |
carrierDecision.details.calculatedRates .carrierRateRequestInfo.zoneId | Unique identifier of the zone |
carrierDecision.details.calculatedRates .carrierRateRequestInfo.saturdayDelivery | If true , this indicates that there is a request for Saturday delivery. |
carrierDecision.details.filteredServiceMethods .filterReason | The first reason that this service method was filtered |
carrierDecision.details.filteredServiceMethods .filterReasons | The list of reasons that this service method was filtered |
carrierDecision.details.filteredServiceMethods .serviceMethodIdentifier | The string used to identify the service method for your organization |
carrierDecision.details.estimatedDeliverySelectionDetails .desiredDeliveryDate | The provided desired delivery date |
carrierDecision.details.estimatedDeliverySelectionDetails .estimatedDeliveryDate | The estimated delivery date |
carrierDecision.details.estimatedDeliverySelectionDetails .cheapestCost | The cost for the cheapest option after filtration |
carrierDecision.details.estimatedDeliverySelectionDetails .selectedCost | The cost for the option that was selected |
carrierDecision.details.estimatedDeliverySelectionDetails .selectedAdjustedCost | The cost for the option that was selected after adjusting to meet miniumum limits |
carrierDecision.details.estimatedDeliverySelectionDetails .selectedCostOverCheapest | The cost of the selected item over the cheapest option |
carrierDecision.details.estimatedDeliverySelectionDetails .selectedBucket | The bucket containing the selected service method |
carrierDecision.details.estimatedDeliverySelectionDetails .selectedCarrierServiceMethodId | The carrier service method ID of the selected service method |
carrierDecision.details.estimatedDeliverySelectionDetails .selectedServiceMethodIdentifier | The string used to identify the service method for your organization |
carrierDecision.details.estimatedDeliverySelectionDetails .selectedDeliveryEstimateProvenance | The provenance of the data that was used to calculate estimated shipping days |
carrierDecision.details.estimatedDeliverySelectionDetails .selectedEffectiveShipDate | The ship date used to determine the estimated delivery date |
carrierDecision.details.estimatedDeliverySelectionDetails .selectedEstimatedInjectionDate | If injection, the ship date used to determine the estimated delivery date |
carrierDecision.details.estimatedDeliverySelectionDetails .estimatedDeliveryMatchInfo.timeInTransitDataType | The type of time-in-transit data used to generate the estimated delivery date |
carrierDecision.details.estimatedDeliverySelectionDetails .estimatedDeliveryMatchInfo.redisKey | The Redis key used to retrieve the time-in-transit data, if Redis is the estimate source |
carrierDecision.details.estimatedDeliverySelectionDetails .estimatedDeliveryMatchInfo.rawTimeInTransit | The raw time-in-transit value from the source |
carrierDecision.details.estimatedDeliverySelectionDetails .estimatedDeliveryMatchInfo.timeInTransitDays | The number of days the package is expected to take in transit |
carrierDecision.details.estimatedDeliverySelectionDetails .estimatedDeliveryMatchInfo.timeInTransitModel | The ML model used to retrieve the time-in-transit data, if ML is the estimate source |
carrierDecision.details.estimatedDeliverySelectionDetails .estimatedDeliveryMatchInfo.matchInfo | Information about the time-in-transit data match |
carrierDecision.details.estimatedDeliverySelectionDetails .estimatedDeliveryDateId | The identifier of the data that was used to calculate the estimated delivery day |
carrierDecision.details.estimatedDeliverySelectionDetails .upgradeCostingConfiguration | Your organization's configuration describing your costing tolerances |
carrierDecision.details.estimatedDeliverySelectionDetails .upgradeSpendLimit | The cumulative limit that you have set on upgrade spend |
carrierDecision.details.estimatedDeliverySelectionDetails .upgradeSpendAtDecisionTime | The upgrade spend at the time of the carrier selection decision |
carrierDecision.details.estimatedDeliverySelectionDetails .timeInTransitSourcePreference | The data source preference list that was used to retrieve time-in-transit data |
carrierDecision.details.estimatedDeliverySelectionDetails .deliveryDateRequestedAt | The time that the estimated delivery date was requested |
carrierDecision.details.estimatedDeliverySelectionDetails .ignoreUpgradeSpendLimits | Indicates that upgrade spend limits were ignored in the carrier selection |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.carrierServiceMethodId | Carrier service method ID |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.carrierAccountId | ID for your organization's carrier account |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.serviceMethodIdentifier | The string used to identify the service method for your organization |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.labelCost | The cost provided back from the label |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.adjustedLabelCost | The cost after being adjusted based on limit minimums |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.costOverCheapest | The cost over the cheapest option |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.effectiveShipDate | The date we expect the shipment to leave the facility |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.estimatedInjectionDate | The date we expect the shipment to arrive at the injection site |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.estimatedDeliveryDate | The date that we estimate this will arrive at the customer |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.bucket | The bucket into which this service method was sorted |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.estimatedDeliveryMatchInfo | Details on the data that was used to get the estimated delivery date |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.provenanceId | The provenance of the data that was used to calculate estimated shipping days |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.estimatedDeliveryDateId | The identifier of the data that was used to calculate the estimated delivery date |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.timeInTransitSourcePreference | The data source preference list that was used to retrieve time-in-transit data |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.requestedAt | The time that the estimate was requested |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.ignoreUpgradeSpendLimits | Indicates that upgrade spend limits were ignored in the carrier selection |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.saturdayDeliveryEnabled | Indicates that Saturday delivery was enabled during the calculation of the estimated delivery date |
carrierDecision.details.estimatedDeliverySelectionDetails .serviceMethodResults.sundayDeliveryEnabled | Indicates that Sunday delivery was enabled during the calculation of the estimated delivery date |
carrierDecision.details.estimatedDeliverySelectionDetails .saturdayDeliveryRequested | Indicates that Saturday delivery was requested, either explicitly or because the desired delivery date falls on a Saturday |
carrierDecision.details.estimatedDeliverySelectionDetails .sundayDeliveryRequested | Indicates that Sunday delivery was requested because the desired delivery date falls on a Sunday |
carrierDecision.details.asOfDate | Date used to re-create a carrier selection as of a certain point in time |
carrierDecision.details.failoverList | Ordered list of service method identifiers to be used for failover |
carrierDecision.details.serviceLevel | Service level of the selected service method |
carrierDecision.details.originatingPostalCode | Postal code of the shipment's origination |
carrierDecision.effectiveShipDateTime | The earliest that a shipment can leave the fulfillment center, or origin, based on the shipped date time and the schedules for that origin and the carriers |
carrierDecision.estimatedInjectionDateTime | The estimate date that the shipment will arrive at the injection site |
carrierDecision.injectionDetails.requestInjectionProfileId | You can provide either partnerInjectionProfileId or shipiumInjectionProfileId in the request, and this attribute records / indicates the injection profile identifier you provided in the request. |
carrierDecision.injectionDetails.partnerInjectionProfileId | Unique to the asset ID that you provided to the injection profile. |
carrierDecision.injectionDetails.shipiumInjectionProfileId | Injection profile identifier |
carrierDecision.injectionDetails.requestInjectionSiteId | You can provide either partnerInjectionSiteId or shipiumInjectionSiteId in the request, and this attribute records / indicates the injection site identifier you provided in the request. |
carrierDecision.injectionDetails.partnerInjectionSiteId | Unique to the partner asset ID that you provided to the injection site |
carrierDecision.injectionDetails.shipiumInjectionSiteId | Injection site identifier |
carrierDecision.injectionDetails.injectionCostDetails .injectionLineItemRate | The amount of the rate modification |
carrierDecision.injectionDetails.injectionCostDetails .injectionLineItemCurrencyCode | The currency of the rate |
carrierDecision.injectionDetails.injectionCostDetails .injectionRateModifier.modifierType | The type of the injection rate modifier |
carrierDecision.injectionDetails.injectionCostDetails .injectionRateModifier.modifierValue | The value of the modification |
carrierSelectionDateTime | The ISO-8601 formatted date when the carrier selection decision was made |
carrierSelectionExpiration | The ISO-8601 formatted date defining the point in time when the carrier selection details expire and cannot be acted upon |
Resources
Your Shipium team member is available to help along the way. However, you might find these resources helpful:
Updated 3 months ago