---
title: "Get Truckload shipment by unique system id"
method: GET
path: "/api/v4/tl/shipments/{id}"
tags: ["TL: Tracking"]
---

# Get Truckload shipment by unique system id

`GET /api/v4/tl/shipments/{id}`

## Request

- Base URL: `https://na12.api.project44.com`
- URL: `https://na12.api.project44.com/api/v4/tl/shipments/{id}`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `/api/v4/oauth2/token`
- TypeScript: <https://skmtc.dev/project44/apis/project44-rest-api/docs/api/v4/tl/shipments/:id/get.ts> (a function with typed inputs; its response is checked against the schema)

Use this endpoint to return a truckload shipment with a given unique system id.<h4><b>Required Fields</h4></b>
<ul><li> id </li></ul>

## Path parameters

- `id` integer, required

## Response `200`

OK

- TruckloadShipment
  - `apiConfiguration` TruckloadShipmentApiConfiguration: Contains fields used to configure the truckload shipment API.
    - `enableIntelligentMatching` boolean: If set to true, project44 will attempt to automatically assign an equipment identifier on the shipment for telematics enabled carriers. If validation passes by customer or carrier, that equipment identifier will take precedent. This does not include mobile phone numbers. If set to false, project44 will not automatically assign an equipment identifier on the shipment. (default: 'true')
    - `fallBackToDefaultAccountGroup` boolean: If set to 'true' and the provided capacity provider account group code is invalid, the default capacity provider account group will be used. When 'false', an error will be returned if the provided capacity provider account group code is invalid. (default: 'false')
    - `webhookEndpointConfigName` string: A unique name used to identify the Webhook Endpoint.
  - `attributes` ShipmentAttribute[]: A list of up to 25 attributes (name/value pairs) to associate with this shipment. These values will be returned unchanged with each status response for the shipment and can also be used to group together related shipments in reporting scenarios, e.g. all shipments tracked for "division":"Central". The attribute names have to be unique within the list. These attributes may optionally be predefined by your organization's admin
    - `name` string: The name for an attribute. Must be unique.
    - `predefined` boolean
    - `value` string: The value for an attribute.
    - `values` string[]: The values for an attribute.
  - `capacityProviderAccountGroup` CapacityProviderAccountGroup: The requested capacity provider account group containing the account used for authentication with the capacity provider's API.
    - `accounts` CapacityProviderAccount[]: Capacity provider accounts used for authentication with the capacity providers' APIs. For quoting, defaults to all accounts within the account group. For shipment, shipment status, and image, one and only one account is required.
      - `code` string: The code for the requested capacity provider account that was used for authentication with the capacity provider's API.
    - `code` string: The code for the capacity provider account group that contains all accounts against which an operation is to be performed. Capacity provider account groups are set up through the project44 Self-Service Portal. If no key is specified, the 'Default' account group will be used.
  - `carrierIdentifier` CapacityProviderIdentifier: A capacity provider identifier object.
    - `type` 'SCAC' | 'DOT_NUMBER' | 'MC_NUMBER' | 'P44_EU' | 'SYSTEM' | 'P44_GLOBAL' | 'VAT': Capacity provider identifier type.
    - `value` string: Capacity provider identifier value.
  - `contents` TruckloadShipmentContent[]: Contents of the shipment, including temperature set point and thresholds for temperature sensitive shipments.
    - `maxTemperatureThreshold` number, float: Max temperature threshold (in Celsius) for alerts
    - `minTemperatureThreshold` number, float: Min temperature threshold (in Celsius) for alerts
    - `temperatureSetPoint` number, float: Desired SetPoint (in Celsius) for shipment breached alerts
  - `equipmentIdentifierChanges` TruckloadEquipmentIdentifierChange[]: A list of equipment identifier changes that should be applied to the shipment
    - `timestamp` string: The moment when the equipment identifier change should happen
    - `type` 'MOBILE_PHONE_NUMBER' | 'VEHICLE_ID' | 'LICENSE_PLATE' | 'SENSITECH_DEVICE_ID' | 'EMERSON_DEVICE_ID' | 'TIVE_DEVICE_ID' | 'CONTAINER_ID': The type of the equipment identifier, should be one of MOBILE_PHONE_NUMBER, VEHICLE_ID, LICENSE_PLATE, SENSITECH_DEVICE_ID, EMERSON_DEVICE_ID, TIVE_DEVICE_ID or CONTAINER_ID
    - `value` string: The value of the equipment identifier
  - `equipmentIdentifiers` TruckloadEquipmentIdentifier[]: A user-defined list of equipment identifiers identifying truckload equipment that can be tracked, such as cell phones and electronic logging devices (ELDs). These need not be unique to this shipment.
    - `shouldDelete` boolean: Optional field indicating whether equipment identifier should be deleted.
    - `type` 'MOBILE_PHONE_NUMBER' | 'VEHICLE_ID' | 'LICENSE_PLATE' | 'SENSITECH_DEVICE_ID' | 'TIVE_DEVICE_ID': The type of the equipment identifier.
    - `value` string: The value of the equipment identifier. Cell phone numbers will be obfuscated in project44 responses for privacy reasons.
  - `id` integer: The project44-generated id for the shipment. This may not be provided when creating a shipment, but will always be returned in the shipment confirmation. This id may be used in subsequent API calls to reference a shipment.
  - `idleDuration` integer: Computed value representing how long (in minutes) shipment is being Idle. This value is available while whole status history is being requested.
  - `masterShipmentId` string, uuid: The project44-generated id for tracking an intermodal shipment. This id may be used in subsequent API calls to reference a shipment.
  - `pointsOfInterest` TruckloadShipmentPointOfInterest[]: A user-defined list of all the point of interest for the shipment.
    - `geoCoordinates` GeoCoordinates
      - `latitude` number, float: The approximate geographic latitude of a location, using the WGS84 coordinate system.
      - `longitude` number, float: The approximate geographic longitude of a location, using the WGS84 coordinate system.
    - `location` Location: A physical location.
      - `address` Address: A postal address.
        - `addressLines` string[]: Street name, number, direction, PO box, etc. Only three address lines are currently permitted.
        - `city` string: Name of city, town, etc.
        - `country` 'US' | 'CA' | 'MX' | 'AG' | 'BB' | 'BS' | 'BZ' | 'CR' | 'CU' | 'DM' | 'DO' | 'GD' | 'GT' | 'HN' | 'HT' | 'JM' | 'KN' | 'LC' | 'NI' | 'PA' | 'SV' | 'TT' | 'VC' | 'AI' | 'AW' | 'BL' | 'BM' | 'BQ' | 'CW' | 'GL' | 'GP' | 'KY' | 'MF' | 'MQ' | 'MS' | 'PM' | 'PR' | 'SX' | 'TC' | 'UM' | 'VG' | 'VI' | 'AT' | 'BE' | 'BG' | 'CY' | 'CZ' | 'DK' | 'DE' | 'EE' | 'ES' | 'FI' | 'FR' | 'GB' | 'GR' | 'HR' | 'HU' | 'IE' | 'IT' | 'LT' | 'LU' | 'LV' | 'MT' | 'NL' | 'PL' | 'PT' | 'RO' | 'SE' | 'SK' | 'SI' | 'CH' | 'IS' | 'LI' | 'NO' | 'AL' | 'ME' | 'MK' | 'RS' | 'TR' | 'AD' | 'AX' | 'BA' | 'BV' | 'BY' | 'FO' | 'GG' | 'GI' | 'IM' | 'IO' | 'JE' | 'MC' | 'MD' | 'SJ' | 'SM' | 'TF' | 'UA' | 'VA' | 'AE' | 'AF' | 'AM' | 'AZ' | 'BD' | 'BH' | 'BN' | 'BT' | 'CN' | 'GE' | 'HK' | 'ID' | 'IL' | 'IN' | 'IQ' | 'IR' | 'JO' | 'JP' | 'KG' | 'KH' | 'KP' | 'KR' | 'KW' | 'KZ' | 'LA' | 'LB' | 'LK' | 'MM' | 'MN' | 'MO' | 'MV' | 'MY' | 'NP' | 'OM' | 'PH' | 'PK' | 'PS' | 'QA' | 'RU' | 'SA' | 'SG' | 'SY' | 'TH' | 'TJ' | 'TL' | 'TM' | 'TW' | 'UZ' | 'VN' | 'YE' | 'AO' | 'BF' | 'BI' | 'BJ' | 'BW' | 'CD' | 'CF' | 'CG' | 'CI' | 'CM' | 'CV' | 'DJ' | 'DZ' | 'EG' | 'EH' | 'ER' | 'ET' | 'GA' | 'GH' | 'GM' | 'GN' | 'GQ' | 'GW' | 'HM' | 'KE' | 'KM' | 'LR' | 'LS' | 'LY' | 'MA' | 'MG' | 'ML' | 'MR' | 'MU' | 'MW' | 'MZ' | 'NA' | 'NE' | 'NG' | 'RE' | 'RW' | 'SC' | 'SD' | 'SH' | 'SL' | 'SN' | 'SO' | 'SS' | 'ST' | 'SZ' | 'TD' | 'TG' | 'TN' | 'TZ' | 'UG' | 'YT' | 'ZA' | 'ZM' | 'ZW' | 'AR' | 'BO' | 'BR' | 'CL' | 'CO' | 'EC' | 'FK' | 'GF' | 'GS' | 'GY' | 'PE' | 'PY' | 'SR' | 'UY' | 'VE' | 'AS' | 'AU' | 'CC' | 'CK' | 'CX' | 'FJ' | 'FM' | 'GU' | 'KI' | 'MH' | 'MP' | 'NC' | 'NF' | 'NR' | 'NU' | 'NZ' | 'PF' | 'PG' | 'PN' | 'PW' | 'SB' | 'TK' | 'TO' | 'TV' | 'VU' | 'WF' | 'WS' | 'AQ' | 'EL' | 'UK' | 'XK' | 'XS' | 'XI', enum: Abbreviation of country (using ISO 3166 standards). (default: 'US')
        - `postalCode` string: The ZIP or postal code.
        - `state` string: Abbreviation of state, province, district, etc.
      - `contact` Contact: Contact information.
        - `companyName` string: Company name.
        - `contactName` string: Contact name. May be required for shipments.
        - `email` string: Email address. May be required for shipments.
        - `faxNumber` string: Fax number. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
        - `faxNumberCountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
        - `phoneNumber` string: Phone number. May be required for shipments. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
        - `phoneNumber2` string: Alternate phone number. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
        - `phoneNumber2CountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
        - `phoneNumberCountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
    - `locationIdentifiers` LocationIdentifier[]: The identifiers associated with the user-defined point of interest location, to be used with the Stop Location API.
      - `type` 'EXTERNAL' | 'SYSTEM': The type of the location identifier. Must be either SYSTEM (Project44-supplied) or EXTERNAL (customer-supplied).
      - `value` string: The value of the location identifier.
    - `pointOfInterestDescription` string: The optionally user-defined description of this point of interest. This is a freeform field.
    - `pointOfInterestId` string: The user-defined id that uniquely identifies point of interest.
    - `pointOfInterestName` string: The optionally user-defined name of this point of interest. This is a freeform field. Project44 will default the name of each point of interest, if no name is provided.
    - `pointOfInterestType` 'GENERAL' | 'TRUCK_CHANGE': The type of point of interest indicating whether this is a general point of interest or point of interest for truck change.
    - `shouldDelete` boolean: Optional field to mark point of interest for deletion.
  - `sensors` TruckloadShipmentSensor[]: A list of sensors to track.
    - `identifier` TruckloadShipmentSensorIdentifier
      - `type` 'TEMPERATURE': The type of the sensor identifier.
      - `value` string: The value of the sensor identifier.
    - `max` number, double: The max value for triggering over max status.
    - `min` number, double: The min value for triggering under min status.
    - `target` number, double: The target value.
  - `scope` string[]
  - `shipmentDetails` TruckloadTrackingShipmentDetails: Contains fields which pertain to the shipment contents.
    - `lineItems` TruckloadShipmentLineItem[]: Line Items for this shipment.
      - `commodityCode` string: This code dictates the duty rating, as well as alerts you to any import or export restrictions.
      - `contact` Contact: Contact information.
        - `companyName` string: Company name.
        - `contactName` string: Contact name. May be required for shipments.
        - `email` string: Email address. May be required for shipments.
        - `faxNumber` string: Fax number. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
        - `faxNumberCountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
        - `phoneNumber` string: Phone number. May be required for shipments. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
        - `phoneNumber2` string: Alternate phone number. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
        - `phoneNumber2CountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
        - `phoneNumberCountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
      - `deliveryStopNumber` integer: A reference to the stop number where this item will be delivered.
      - `description` string: Shipper's description for this item.
      - `freightClass` '50' | '55' | '60' | '65' | '70' | '77.5' | '85' | '92.5' | '100' | '110' | '125' | '150' | '175' | '200' | '250' | '300' | '400' | '500': The freight class for this item.
      - `handlingUnitPackageType` 'PLT' | 'BALE' | 'BOX' | 'BUNDLE' | 'CASE' | 'CRATE' | 'DRUM' | 'REEL' | 'ROLL' | 'SKID' | 'CONTAINER': The packaging used to handle the lineItem during transport.
      - `handlingUnitQuantity` integer: Quantify of handling units (Cases, pallets, etc) that constitute the lineItem.
      - `involvedParties` Party[]: A list of parties and their identifiers related to the line item. These are your customers receiving this line item or your suppliers providing this line item.
        - `addressInfo` PartyAddress: A postal address.
          - `addressLines` string[]: Street name, number, direction, PO box, etc. Only three address lines are currently permitted.
          - `addressLabel` string: The project44-generated label for the address persisted in location-service.
          - `city` string: Name of city, town, etc.
          - `country` 'US' | 'CA' | 'MX' | 'AG' | 'BB' | 'BS' | 'BZ' | 'CR' | 'CU' | 'DM' | 'DO' | 'GD' | 'GT' | 'HN' | 'HT' | 'JM' | 'KN' | 'LC' | 'NI' | 'PA' | 'SV' | 'TT' | 'VC' | 'AI' | 'AW' | 'BL' | 'BM' | 'BQ' | 'CW' | 'GL' | 'GP' | 'KY' | 'MF' | 'MQ' | 'MS' | 'PM' | 'PR' | 'SX' | 'TC' | 'UM' | 'VG' | 'VI' | 'AT' | 'BE' | 'BG' | 'CY' | 'CZ' | 'DK' | 'DE' | 'EE' | 'ES' | 'FI' | 'FR' | 'GB' | 'GR' | 'HR' | 'HU' | 'IE' | 'IT' | 'LT' | 'LU' | 'LV' | 'MT' | 'NL' | 'PL' | 'PT' | 'RO' | 'SE' | 'SK' | 'SI' | 'CH' | 'IS' | 'LI' | 'NO' | 'AL' | 'ME' | 'MK' | 'RS' | 'TR' | 'AD' | 'AX' | 'BA' | 'BV' | 'BY' | 'FO' | 'GG' | 'GI' | 'IM' | 'IO' | 'JE' | 'MC' | 'MD' | 'SJ' | 'SM' | 'TF' | 'UA' | 'VA' | 'AE' | 'AF' | 'AM' | 'AZ' | 'BD' | 'BH' | 'BN' | 'BT' | 'CN' | 'GE' | 'HK' | 'ID' | 'IL' | 'IN' | 'IQ' | 'IR' | 'JO' | 'JP' | 'KG' | 'KH' | 'KP' | 'KR' | 'KW' | 'KZ' | 'LA' | 'LB' | 'LK' | 'MM' | 'MN' | 'MO' | 'MV' | 'MY' | 'NP' | 'OM' | 'PH' | 'PK' | 'PS' | 'QA' | 'RU' | 'SA' | 'SG' | 'SY' | 'TH' | 'TJ' | 'TL' | 'TM' | 'TW' | 'UZ' | 'VN' | 'YE' | 'AO' | 'BF' | 'BI' | 'BJ' | 'BW' | 'CD' | 'CF' | 'CG' | 'CI' | 'CM' | 'CV' | 'DJ' | 'DZ' | 'EG' | 'EH' | 'ER' | 'ET' | 'GA' | 'GH' | 'GM' | 'GN' | 'GQ' | 'GW' | 'HM' | 'KE' | 'KM' | 'LR' | 'LS' | 'LY' | 'MA' | 'MG' | 'ML' | 'MR' | 'MU' | 'MW' | 'MZ' | 'NA' | 'NE' | 'NG' | 'RE' | 'RW' | 'SC' | 'SD' | 'SH' | 'SL' | 'SN' | 'SO' | 'SS' | 'ST' | 'SZ' | 'TD' | 'TG' | 'TN' | 'TZ' | 'UG' | 'YT' | 'ZA' | 'ZM' | 'ZW' | 'AR' | 'BO' | 'BR' | 'CL' | 'CO' | 'EC' | 'FK' | 'GF' | 'GS' | 'GY' | 'PE' | 'PY' | 'SR' | 'UY' | 'VE' | 'AS' | 'AU' | 'CC' | 'CK' | 'CX' | 'FJ' | 'FM' | 'GU' | 'KI' | 'MH' | 'MP' | 'NC' | 'NF' | 'NR' | 'NU' | 'NZ' | 'PF' | 'PG' | 'PN' | 'PW' | 'SB' | 'TK' | 'TO' | 'TV' | 'VU' | 'WF' | 'WS' | 'AQ' | 'EL' | 'UK' | 'XK' | 'XS' | 'XI', enum: Abbreviation of country (using ISO 3166 standards). (default: 'US')
          - `id` string, uuid: The project44-generated identifier for the address persisted in location-service.
          - `postalCode` string: The ZIP or postal code.
          - `state` string: Abbreviation of state, province, district, etc.
        - `contactInfo` BookingContact
          - `companyName` string: Name of the Company with whom the Contact is associated.
          - `email` string, email: The Contact's email address.
          - `familyName` string: The Contact's last or family name.
          - `givenName` string: The Contact's first or given name.
          - `mobilePhoneNumber` string: The Contact's mobile phone number.
          - `phoneNumber` string: The Contact's work or other primary phone number.
        - `identifyingCodes` IdentifyingCodes
          - `codeListProvider` 'WAVE' | 'CARX' | 'ESSD' | 'IDT' | 'BOLE' | 'EDOX' | 'IQAX' | 'SECR' | 'TRGO' | 'ETEU' | 'TRAC' | 'BRIT' | 'GSBN' | 'WISE' | 'GLEIF' | 'W3C' | 'DNB' | 'FMC' | 'DCSA' | 'ZZZ': An enumeration.
          - `codeListName` 'DID' | 'LEI' | 'DUNS': An enumeration.
          - `partyCode` string: Code to identify the party as provided by the code list provider
        - `locationIdentifiers` RatingLocationIdentifier[]: Identifiers for the location of the party.
          - `type` 'UNKNOWN' | 'AIRPORT_IATA' | 'AIRPORT_ICAO' | 'PORT_UN_LOCODE' | 'RAIL_SPLC' | 'DATA_PROVIDER_LOCATION_CODE' | 'LOCODE': An enumeration.
          - `value` string
        - `partyType` 'SHIPPER' | 'CONSIGNEE' | 'BILL_TO' | 'NOTIFY_PARTY' | 'BOOKING_AGENT' | 'CARRIER_BOOKING_OFFICE': An enumeration.
        - `vatNumber` string: Optional, VAT number of the listed party, if applicable.
      - `itemIdentifiers` LineItemIdentifier[]: Useful identifiers that can be attached to this item.
        - `type` 'PURCHASE_ORDER' | 'SKU' | 'CONTAINER_NUMBER' | 'PALLET_NUMBER' | 'DELIVERY_NUMBER' | 'PICKUP_NUMBER' | 'VIN': The identifier type used for this line item identifier.
        - `value` string: The value used for this line item identifier.
      - `itemPackageType` 'BAG' | 'BALE' | 'BOX' | 'BUCKET' | 'BUNDLE' | 'CAN' | 'CARTON' | 'CASE' | 'COIL' | 'CRATE' | 'CYLINDER' | 'DRUM' | 'PAIL' | 'PLT' | 'PIECES' | 'REEL' | 'ROLL' | 'SKID' | 'TOTE' | 'TUBE' | 'EACH' | 'FLAT' | 'LOOSE': The type of packaging used for the items inside the handling unit.
      - `itemQuantity` integer: The number of items inside the handling unit.
      - `monetaryValue` MonetaryValue: A monetary value expressing amount and currency type.
        - `amount` number: The value of the shipment
        - `currency` 'USD' | 'CAD' | 'MXN' | 'EUR', enum: The currency of the shipment value
      - `pickupStopNumber` integer: A reference to the stop number where this item will be picked up.
      - `subLineItems` TruckloadShipmentSubLineItem[]: The sub-line items for this item.
        - `commodityCode` string: This code dictates the duty rating, as well as alerts you to any import or export restrictions.
        - `contact` Contact: Contact information.
          - `companyName` string: Company name.
          - `contactName` string: Contact name. May be required for shipments.
          - `email` string: Email address. May be required for shipments.
          - `faxNumber` string: Fax number. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
          - `faxNumberCountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
          - `phoneNumber` string: Phone number. May be required for shipments. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
          - `phoneNumber2` string: Alternate phone number. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
          - `phoneNumber2CountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
          - `phoneNumberCountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
        - `description` string: Shipper's description for this item.
        - `freightClass` '50' | '55' | '60' | '65' | '70' | '77.5' | '85' | '92.5' | '100' | '110' | '125' | '150' | '175' | '200' | '250' | '300' | '400' | '500': The freight class for this item.
        - `involvedParties` Party[]: A list of parties and their identifiers related to the line item. These are your customers receiving this line item or your suppliers providing this line item.
          - `addressInfo` PartyAddress: A postal address.
            - `addressLines` string[]: Street name, number, direction, PO box, etc. Only three address lines are currently permitted.
            - `addressLabel` string: The project44-generated label for the address persisted in location-service.
            - `city` string: Name of city, town, etc.
            - `country` 'US' | 'CA' | 'MX' | 'AG' | 'BB' | 'BS' | 'BZ' | 'CR' | 'CU' | 'DM' | 'DO' | 'GD' | 'GT' | 'HN' | 'HT' | 'JM' | 'KN' | 'LC' | 'NI' | 'PA' | 'SV' | 'TT' | 'VC' | 'AI' | 'AW' | 'BL' | 'BM' | 'BQ' | 'CW' | 'GL' | 'GP' | 'KY' | 'MF' | 'MQ' | 'MS' | 'PM' | 'PR' | 'SX' | 'TC' | 'UM' | 'VG' | 'VI' | 'AT' | 'BE' | 'BG' | 'CY' | 'CZ' | 'DK' | 'DE' | 'EE' | 'ES' | 'FI' | 'FR' | 'GB' | 'GR' | 'HR' | 'HU' | 'IE' | 'IT' | 'LT' | 'LU' | 'LV' | 'MT' | 'NL' | 'PL' | 'PT' | 'RO' | 'SE' | 'SK' | 'SI' | 'CH' | 'IS' | 'LI' | 'NO' | 'AL' | 'ME' | 'MK' | 'RS' | 'TR' | 'AD' | 'AX' | 'BA' | 'BV' | 'BY' | 'FO' | 'GG' | 'GI' | 'IM' | 'IO' | 'JE' | 'MC' | 'MD' | 'SJ' | 'SM' | 'TF' | 'UA' | 'VA' | 'AE' | 'AF' | 'AM' | 'AZ' | 'BD' | 'BH' | 'BN' | 'BT' | 'CN' | 'GE' | 'HK' | 'ID' | 'IL' | 'IN' | 'IQ' | 'IR' | 'JO' | 'JP' | 'KG' | 'KH' | 'KP' | 'KR' | 'KW' | 'KZ' | 'LA' | 'LB' | 'LK' | 'MM' | 'MN' | 'MO' | 'MV' | 'MY' | 'NP' | 'OM' | 'PH' | 'PK' | 'PS' | 'QA' | 'RU' | 'SA' | 'SG' | 'SY' | 'TH' | 'TJ' | 'TL' | 'TM' | 'TW' | 'UZ' | 'VN' | 'YE' | 'AO' | 'BF' | 'BI' | 'BJ' | 'BW' | 'CD' | 'CF' | 'CG' | 'CI' | 'CM' | 'CV' | 'DJ' | 'DZ' | 'EG' | 'EH' | 'ER' | 'ET' | 'GA' | 'GH' | 'GM' | 'GN' | 'GQ' | 'GW' | 'HM' | 'KE' | 'KM' | 'LR' | 'LS' | 'LY' | 'MA' | 'MG' | 'ML' | 'MR' | 'MU' | 'MW' | 'MZ' | 'NA' | 'NE' | 'NG' | 'RE' | 'RW' | 'SC' | 'SD' | 'SH' | 'SL' | 'SN' | 'SO' | 'SS' | 'ST' | 'SZ' | 'TD' | 'TG' | 'TN' | 'TZ' | 'UG' | 'YT' | 'ZA' | 'ZM' | 'ZW' | 'AR' | 'BO' | 'BR' | 'CL' | 'CO' | 'EC' | 'FK' | 'GF' | 'GS' | 'GY' | 'PE' | 'PY' | 'SR' | 'UY' | 'VE' | 'AS' | 'AU' | 'CC' | 'CK' | 'CX' | 'FJ' | 'FM' | 'GU' | 'KI' | 'MH' | 'MP' | 'NC' | 'NF' | 'NR' | 'NU' | 'NZ' | 'PF' | 'PG' | 'PN' | 'PW' | 'SB' | 'TK' | 'TO' | 'TV' | 'VU' | 'WF' | 'WS' | 'AQ' | 'EL' | 'UK' | 'XK' | 'XS' | 'XI', enum: Abbreviation of country (using ISO 3166 standards). (default: 'US')
            - `id` string, uuid: The project44-generated identifier for the address persisted in location-service.
            - `postalCode` string: The ZIP or postal code.
            - `state` string: Abbreviation of state, province, district, etc.
          - `contactInfo` BookingContact
            - `companyName` string: Name of the Company with whom the Contact is associated.
            - `email` string, email: The Contact's email address.
            - `familyName` string: The Contact's last or family name.
            - `givenName` string: The Contact's first or given name.
            - `mobilePhoneNumber` string: The Contact's mobile phone number.
            - `phoneNumber` string: The Contact's work or other primary phone number.
          - `identifyingCodes` IdentifyingCodes
            - `codeListProvider` 'WAVE' | 'CARX' | 'ESSD' | 'IDT' | 'BOLE' | 'EDOX' | 'IQAX' | 'SECR' | 'TRGO' | 'ETEU' | 'TRAC' | 'BRIT' | 'GSBN' | 'WISE' | 'GLEIF' | 'W3C' | 'DNB' | 'FMC' | 'DCSA' | 'ZZZ': An enumeration.
            - `codeListName` 'DID' | 'LEI' | 'DUNS': An enumeration.
            - `partyCode` string: Code to identify the party as provided by the code list provider
          - `locationIdentifiers` RatingLocationIdentifier[]: Identifiers for the location of the party.
            - `type` 'UNKNOWN' | 'AIRPORT_IATA' | 'AIRPORT_ICAO' | 'PORT_UN_LOCODE' | 'RAIL_SPLC' | 'DATA_PROVIDER_LOCATION_CODE' | 'LOCODE': An enumeration.
            - `value` string
          - `partyType` 'SHIPPER' | 'CONSIGNEE' | 'BILL_TO' | 'NOTIFY_PARTY' | 'BOOKING_AGENT' | 'CARRIER_BOOKING_OFFICE': An enumeration.
          - `vatNumber` string: Optional, VAT number of the listed party, if applicable.
        - `itemIdentifiers` LineItemIdentifier[]: Useful identifiers that can be attached to this item.
          - `type` 'PURCHASE_ORDER' | 'SKU' | 'CONTAINER_NUMBER' | 'PALLET_NUMBER' | 'DELIVERY_NUMBER' | 'PICKUP_NUMBER' | 'VIN': The identifier type used for this line item identifier.
          - `value` string: The value used for this line item identifier.
        - `itemPackageType` 'BAG' | 'BALE' | 'BOX' | 'BUCKET' | 'BUNDLE' | 'CAN' | 'CARTON' | 'CASE' | 'COIL' | 'CRATE' | 'CYLINDER' | 'DRUM' | 'PAIL' | 'PLT' | 'PIECES' | 'REEL' | 'ROLL' | 'SKID' | 'TOTE' | 'TUBE' | 'EACH' | 'FLAT' | 'LOOSE': The type of packaging used for the items inside the handling unit.
        - `itemQuantity` integer: The number of items inside the handling unit.
        - `monetaryValue` MonetaryValue: A monetary value expressing amount and currency type.
          - `amount` number: The value of the shipment
          - `currency` 'USD' | 'CAD' | 'MXN' | 'EUR', enum: The currency of the shipment value
        - `totalWeight` Weight
          - `weight` number: The numeric decimal value of this weight.
          - `weightUnit` 'LB' | 'KG': The unit of measurement for this weight.
      - `totalWeight` Weight
        - `weight` number: The numeric decimal value of this weight.
        - `weightUnit` 'LB' | 'KG': The unit of measurement for this weight.
  - `shipmentIdentifiers` TruckloadShipmentIdentifier[]: A user-defined list of shipment identifiers that are unique to this shipment and carrier identifier. These may be used in subsequent API calls along with the carrier identifier to reference a shipment. They may also be used by project44 to track the shipment. Only one shipment identifier of each type may be provided.
    - `type` 'BILL_OF_LADING' | 'ORDER': The type of the shipment identifier.
    - `value` string: The value of the shipment identifier.
  - `shipmentLegId` string, uuid: The project44-generated id for the truckload shipment. This id may be used in subsequent API calls to reference a shipment.
  - `shipmentStops` TruckloadShipmentStop[]: A user-defined list of all the shipment stops for the shipment, including stop locations and appointment windows. This list must contain the shipment's origin and destination and any stops of interest in between (other pickup or delivery locations).
    - `additionalAppointmentWindows` TruckloadAdditionalAppointmentWindow[]: Optional user-defined field in which one or many additional appointment windows can be provided on the stop. The associated appointmentWindow values will always be the default window in terms of measuring on time performance. The time zone identifier (e.g., 'America/Chicago') for this date time window is an optional field. If not provided the system will default to the timezone local to the stop. Please note, we will always report back the timezone for the additional appointment window as local to the stop.
      - `appointmentStatus` 'PENDING' | 'REJECTED' | 'BOOKED' | 'CANCELLED' | 'COMPLETED' | 'PENDING_CARRIER' | 'PENDING_INTERNAL' | 'NONE_AVAILABLE': This is the state of the appointment as determined by the source appointment management system. This status is used to represent where the appointment is within its lifecycle, it does not represent the physical state of the asset fulfilling the appointment.
      - `appointmentWindow` ZonedDateTimeWindow: A date and time range, including a time zone, representing a window of availability.
        - `endDateTime` string, date-time: End date and time of this window in the applicable time zone. (format: yyyy-MM-dd'T'HH:mm:ss)
        - `localTimeZoneIdentifier` string: The time zone identifier (e.g., 'America/Chicago') for this date time window.
        - `startDateTime` string, date-time: Start date and time of this window in the applicable time zone.(default: current date, format: yyyy-MM-dd'T'HH:mm:ss)
      - `identifiers` AdditionalAppointmentWindowIdentifier[]: A list of identifiers of the additional appointment windows to a shipment.
        - `type` 'DOCK' | 'BOOKING_ID': The type of additional appointment window identifier.
        - `value` string: The value of additional appointment window identifier.
      - `type` 'STRATEGIC' | 'SLOT_BOOKING_PICKUP' | 'SLOT_BOOKING_DELIVERY' | 'SLOT_BOOKING_PICKUP_DELIVERY': The type of appointment window.
    - `appointmentWindow` ZonedDateTimeWindow: A date and time range, including a time zone, representing a window of availability.
      - `endDateTime` string, date-time: End date and time of this window in the applicable time zone. (format: yyyy-MM-dd'T'HH:mm:ss)
      - `localTimeZoneIdentifier` string: The time zone identifier (e.g., 'America/Chicago') for this date time window.
      - `startDateTime` string, date-time: Start date and time of this window in the applicable time zone.(default: current date, format: yyyy-MM-dd'T'HH:mm:ss)
    - `externalArrivalEstimate` TruckloadExternalArrivalEstimate: External arrival estimate object that contains the source and the actual date and time value.
      - `dateTime` string: The date and time value of the external arrival estimate. (format: yyyy-MM-dd'T'HH:mm:ssZ)
      - `source` 'SHIPPER' | 'CARRIER' | 'UNKNOWN': The source of the external arrival estimate.
    - `geoCoordinates` GeoCoordinates
      - `latitude` number, float: The approximate geographic latitude of a location, using the WGS84 coordinate system.
      - `longitude` number, float: The approximate geographic longitude of a location, using the WGS84 coordinate system.
    - `involvedParties` Party[]: A list of parties and their identifiers related to the shipment stop. These are your customers receiving freight at this stop or your suppliers providing freight from this stop. This field is only functional in tracking at this time.
      - `addressInfo` PartyAddress: A postal address.
        - `addressLines` string[]: Street name, number, direction, PO box, etc. Only three address lines are currently permitted.
        - `addressLabel` string: The project44-generated label for the address persisted in location-service.
        - `city` string: Name of city, town, etc.
        - `country` 'US' | 'CA' | 'MX' | 'AG' | 'BB' | 'BS' | 'BZ' | 'CR' | 'CU' | 'DM' | 'DO' | 'GD' | 'GT' | 'HN' | 'HT' | 'JM' | 'KN' | 'LC' | 'NI' | 'PA' | 'SV' | 'TT' | 'VC' | 'AI' | 'AW' | 'BL' | 'BM' | 'BQ' | 'CW' | 'GL' | 'GP' | 'KY' | 'MF' | 'MQ' | 'MS' | 'PM' | 'PR' | 'SX' | 'TC' | 'UM' | 'VG' | 'VI' | 'AT' | 'BE' | 'BG' | 'CY' | 'CZ' | 'DK' | 'DE' | 'EE' | 'ES' | 'FI' | 'FR' | 'GB' | 'GR' | 'HR' | 'HU' | 'IE' | 'IT' | 'LT' | 'LU' | 'LV' | 'MT' | 'NL' | 'PL' | 'PT' | 'RO' | 'SE' | 'SK' | 'SI' | 'CH' | 'IS' | 'LI' | 'NO' | 'AL' | 'ME' | 'MK' | 'RS' | 'TR' | 'AD' | 'AX' | 'BA' | 'BV' | 'BY' | 'FO' | 'GG' | 'GI' | 'IM' | 'IO' | 'JE' | 'MC' | 'MD' | 'SJ' | 'SM' | 'TF' | 'UA' | 'VA' | 'AE' | 'AF' | 'AM' | 'AZ' | 'BD' | 'BH' | 'BN' | 'BT' | 'CN' | 'GE' | 'HK' | 'ID' | 'IL' | 'IN' | 'IQ' | 'IR' | 'JO' | 'JP' | 'KG' | 'KH' | 'KP' | 'KR' | 'KW' | 'KZ' | 'LA' | 'LB' | 'LK' | 'MM' | 'MN' | 'MO' | 'MV' | 'MY' | 'NP' | 'OM' | 'PH' | 'PK' | 'PS' | 'QA' | 'RU' | 'SA' | 'SG' | 'SY' | 'TH' | 'TJ' | 'TL' | 'TM' | 'TW' | 'UZ' | 'VN' | 'YE' | 'AO' | 'BF' | 'BI' | 'BJ' | 'BW' | 'CD' | 'CF' | 'CG' | 'CI' | 'CM' | 'CV' | 'DJ' | 'DZ' | 'EG' | 'EH' | 'ER' | 'ET' | 'GA' | 'GH' | 'GM' | 'GN' | 'GQ' | 'GW' | 'HM' | 'KE' | 'KM' | 'LR' | 'LS' | 'LY' | 'MA' | 'MG' | 'ML' | 'MR' | 'MU' | 'MW' | 'MZ' | 'NA' | 'NE' | 'NG' | 'RE' | 'RW' | 'SC' | 'SD' | 'SH' | 'SL' | 'SN' | 'SO' | 'SS' | 'ST' | 'SZ' | 'TD' | 'TG' | 'TN' | 'TZ' | 'UG' | 'YT' | 'ZA' | 'ZM' | 'ZW' | 'AR' | 'BO' | 'BR' | 'CL' | 'CO' | 'EC' | 'FK' | 'GF' | 'GS' | 'GY' | 'PE' | 'PY' | 'SR' | 'UY' | 'VE' | 'AS' | 'AU' | 'CC' | 'CK' | 'CX' | 'FJ' | 'FM' | 'GU' | 'KI' | 'MH' | 'MP' | 'NC' | 'NF' | 'NR' | 'NU' | 'NZ' | 'PF' | 'PG' | 'PN' | 'PW' | 'SB' | 'TK' | 'TO' | 'TV' | 'VU' | 'WF' | 'WS' | 'AQ' | 'EL' | 'UK' | 'XK' | 'XS' | 'XI', enum: Abbreviation of country (using ISO 3166 standards). (default: 'US')
        - `id` string, uuid: The project44-generated identifier for the address persisted in location-service.
        - `postalCode` string: The ZIP or postal code.
        - `state` string: Abbreviation of state, province, district, etc.
      - `contactInfo` BookingContact
        - `companyName` string: Name of the Company with whom the Contact is associated.
        - `email` string, email: The Contact's email address.
        - `familyName` string: The Contact's last or family name.
        - `givenName` string: The Contact's first or given name.
        - `mobilePhoneNumber` string: The Contact's mobile phone number.
        - `phoneNumber` string: The Contact's work or other primary phone number.
      - `identifyingCodes` IdentifyingCodes
        - `codeListProvider` 'WAVE' | 'CARX' | 'ESSD' | 'IDT' | 'BOLE' | 'EDOX' | 'IQAX' | 'SECR' | 'TRGO' | 'ETEU' | 'TRAC' | 'BRIT' | 'GSBN' | 'WISE' | 'GLEIF' | 'W3C' | 'DNB' | 'FMC' | 'DCSA' | 'ZZZ': An enumeration.
        - `codeListName` 'DID' | 'LEI' | 'DUNS': An enumeration.
        - `partyCode` string: Code to identify the party as provided by the code list provider
      - `locationIdentifiers` RatingLocationIdentifier[]: Identifiers for the location of the party.
        - `type` 'UNKNOWN' | 'AIRPORT_IATA' | 'AIRPORT_ICAO' | 'PORT_UN_LOCODE' | 'RAIL_SPLC' | 'DATA_PROVIDER_LOCATION_CODE' | 'LOCODE': An enumeration.
        - `value` string
      - `partyType` 'SHIPPER' | 'CONSIGNEE' | 'BILL_TO' | 'NOTIFY_PARTY' | 'BOOKING_AGENT' | 'CARRIER_BOOKING_OFFICE': An enumeration.
      - `vatNumber` string: Optional, VAT number of the listed party, if applicable.
    - `location` Location: A physical location.
      - `address` Address: A postal address.
        - `addressLines` string[]: Street name, number, direction, PO box, etc. Only three address lines are currently permitted.
        - `city` string: Name of city, town, etc.
        - `country` 'US' | 'CA' | 'MX' | 'AG' | 'BB' | 'BS' | 'BZ' | 'CR' | 'CU' | 'DM' | 'DO' | 'GD' | 'GT' | 'HN' | 'HT' | 'JM' | 'KN' | 'LC' | 'NI' | 'PA' | 'SV' | 'TT' | 'VC' | 'AI' | 'AW' | 'BL' | 'BM' | 'BQ' | 'CW' | 'GL' | 'GP' | 'KY' | 'MF' | 'MQ' | 'MS' | 'PM' | 'PR' | 'SX' | 'TC' | 'UM' | 'VG' | 'VI' | 'AT' | 'BE' | 'BG' | 'CY' | 'CZ' | 'DK' | 'DE' | 'EE' | 'ES' | 'FI' | 'FR' | 'GB' | 'GR' | 'HR' | 'HU' | 'IE' | 'IT' | 'LT' | 'LU' | 'LV' | 'MT' | 'NL' | 'PL' | 'PT' | 'RO' | 'SE' | 'SK' | 'SI' | 'CH' | 'IS' | 'LI' | 'NO' | 'AL' | 'ME' | 'MK' | 'RS' | 'TR' | 'AD' | 'AX' | 'BA' | 'BV' | 'BY' | 'FO' | 'GG' | 'GI' | 'IM' | 'IO' | 'JE' | 'MC' | 'MD' | 'SJ' | 'SM' | 'TF' | 'UA' | 'VA' | 'AE' | 'AF' | 'AM' | 'AZ' | 'BD' | 'BH' | 'BN' | 'BT' | 'CN' | 'GE' | 'HK' | 'ID' | 'IL' | 'IN' | 'IQ' | 'IR' | 'JO' | 'JP' | 'KG' | 'KH' | 'KP' | 'KR' | 'KW' | 'KZ' | 'LA' | 'LB' | 'LK' | 'MM' | 'MN' | 'MO' | 'MV' | 'MY' | 'NP' | 'OM' | 'PH' | 'PK' | 'PS' | 'QA' | 'RU' | 'SA' | 'SG' | 'SY' | 'TH' | 'TJ' | 'TL' | 'TM' | 'TW' | 'UZ' | 'VN' | 'YE' | 'AO' | 'BF' | 'BI' | 'BJ' | 'BW' | 'CD' | 'CF' | 'CG' | 'CI' | 'CM' | 'CV' | 'DJ' | 'DZ' | 'EG' | 'EH' | 'ER' | 'ET' | 'GA' | 'GH' | 'GM' | 'GN' | 'GQ' | 'GW' | 'HM' | 'KE' | 'KM' | 'LR' | 'LS' | 'LY' | 'MA' | 'MG' | 'ML' | 'MR' | 'MU' | 'MW' | 'MZ' | 'NA' | 'NE' | 'NG' | 'RE' | 'RW' | 'SC' | 'SD' | 'SH' | 'SL' | 'SN' | 'SO' | 'SS' | 'ST' | 'SZ' | 'TD' | 'TG' | 'TN' | 'TZ' | 'UG' | 'YT' | 'ZA' | 'ZM' | 'ZW' | 'AR' | 'BO' | 'BR' | 'CL' | 'CO' | 'EC' | 'FK' | 'GF' | 'GS' | 'GY' | 'PE' | 'PY' | 'SR' | 'UY' | 'VE' | 'AS' | 'AU' | 'CC' | 'CK' | 'CX' | 'FJ' | 'FM' | 'GU' | 'KI' | 'MH' | 'MP' | 'NC' | 'NF' | 'NR' | 'NU' | 'NZ' | 'PF' | 'PG' | 'PN' | 'PW' | 'SB' | 'TK' | 'TO' | 'TV' | 'VU' | 'WF' | 'WS' | 'AQ' | 'EL' | 'UK' | 'XK' | 'XS' | 'XI', enum: Abbreviation of country (using ISO 3166 standards). (default: 'US')
        - `postalCode` string: The ZIP or postal code.
        - `state` string: Abbreviation of state, province, district, etc.
      - `contact` Contact: Contact information.
        - `companyName` string: Company name.
        - `contactName` string: Contact name. May be required for shipments.
        - `email` string: Email address. May be required for shipments.
        - `faxNumber` string: Fax number. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
        - `faxNumberCountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
        - `phoneNumber` string: Phone number. May be required for shipments. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
        - `phoneNumber2` string: Alternate phone number. E.164 or North American Number Plan (NANP) phone numbers are accepted. If a phone number is passed in without the associated country code field, the number will be treated as a number that adheres to the NANP standard. The number will be returned in responses in the NANP format: '[+123 ]123-456-7890[, ext. 123456]'. If the associated country code field is passed in as well, the number will be treated as a number that adheres to the E.164 international phone number standard. The number will be returned in a response in the E.164 format: '[+123 ]12345678910[, ext. 123456]'. In requests, only digits and an optional 'X' (or lowercase 'x') marking the start of an extension will be used. Any other characters included for formatting will be stripped -- project44 will provide the phone number to the capacity provider in the format they accept. There must be at least ten digits before the optional 'X' (for the area code, central office code, and station code for NANP numbers or simply the subscriber number for E.164 numbers). For NANP numbers, no more than thirteen, with the first digits exceeding ten being interpreted as the country code when the country code. The number of digits after the optional 'X' must be less than seven. Examples of acceptable NANP phone numbers: '123-456-7890 x 32', '(123)456-7890 ext 30', '1234567890', '11234567890', '+55-123-456-7890 ext. 312412', '123-456-7890, ext. 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]123-456-7890[, ext. 123456]'. Examples of acceptable E.164 phone numbers: '20-1234-5678 x 1234', '(20) 1234-5678x1234', '2012345678', '20 1234-5678 ext 1234'. In responses, phone numbers will be returned in the following format: '[+123 ]2012345678[, ext. 1234]'.
        - `phoneNumber2CountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
        - `phoneNumberCountryCode` string: The country code associated with the phone number. If this is blank, the phone number will be treated as a number that adheres to the North American Number Plan (NANP) format. Acceptable country codes formats: '+123' or '123'.
    - `locationIdentifiers` LocationIdentifier[]: The identifiers associated with the user-defined stop location, to be used with the Stop Location API.
      - `type` 'EXTERNAL' | 'SYSTEM': The type of the location identifier. Must be either SYSTEM (Project44-supplied) or EXTERNAL (customer-supplied).
      - `value` string: The value of the location identifier.
    - `stopDescription` string: Description related to the stop.
    - `stopName` string: The optionally user-defined name of this stop. This is a freeform field. Project44 will default the name of each stop based on the stop number, if no name is provided.
    - `stopNumber` integer: The user-defined stop number, where '1' is for the origin and the destination has the largest number, with any stops in between ordered by appointment time.
    - `stopType` 'PICKUP' | 'DELIVERY' | 'DELIVERY_PICKUP': The type of stop indicating whether this stop is a pickup location, destination location, or both.
    - `uuid` string, uuid: UUID that uniquely identifies stop. Automatically generated when shipment is created and will be ignored if provided in the POST request. In a PUT request, will use a provided stop UUID only if it matches an already-persisted stop UUID, and returns a 400 if it does not match any. If no stop UUID is provided in a PUT request, will check whether the provided stop is effectively the same as an already persisted stop and will use the existing UUID if that's the case. Otherwise, will generate and return a new UUID in response to the PUT request. Here, two shipment stops are considered effectively the same if they match across stop number, tenant location id, stop name, stop type, and involved parties.
  - `shippingDetails` TruckloadShippingDetails: Contains fields which influence the way project44 calculates arrival estimates for stops.
    - `hazmatDetails` TruckloadShipmentHazmatDetails: Contains fields that describe what hazardous materials the shipment contains, if any.
      - `hazardClasses` string[]: User-defined list of hazardous materials, if any that are included in the shipment.
    - `multipleDrivers` boolean: If set to 'true', indicates that the shipment is using a team of drivers and is therefore not constrained by the "11 hours of service" limit for an individual driver. This allows project44 to change its estimations around when a shipment can, and cannot be delivered.
    - `truckDetails` TruckloadShipmentTruckDetails: Contains fields describing properties of the truck.
      - `truckDimensions` TruckloadShipmentTruckDimensions: Contains fields describing the size of the truck.
        - `height` number: Indicates the height of the truck where excessive lengths may require the driver to choose alternative routes.
        - `length` number: Indicates the length of the truck where excessive lengths may require the driver to choose alternative routes.
        - `unitOfMeasure` 'IN' | 'CM' | 'FT' | 'M': Length measurement units (default: 'FT').
        - `width` number: Indicates the width of the truck where excessive lengths may require the driver to choose alternative routes.
      - `truckType` 'AUTO_CARRIER' | 'B_TRAIN' | 'CONESTOGA' | 'CONTAINER' | 'CONTAINER_INSULATED' | 'CONTAINER_REFRIGERATED' | 'CONVEYOR' | 'DOUBLE_DROP' | 'DROP_DECK_LANDOLL' | 'DUMP_TRAILER' | 'FLAT_BED' | 'FLATBED_AIR_RIDE' | 'FLATBED_CONESTOGA' | 'FLATBED_DOUBLE' | 'FLATBED_HAZMAT' | 'FLATBED_HOTSHOT' | 'FLATBED_MAXI' | 'FLATBED_STEP_DECK' | 'FLATBED_OVERDOMENSION' | 'FLATBED_OVERDIMENSION' | 'FLATBED_CHAINS' | 'FLATBED_SIDES' | 'FLATBED_TARPS' | 'FLATBED_TEAM' | 'FLATBED_VAN_REEFER' | 'HOPPER_BOTTOM' | 'INSULATED_VAN_REEFER' | 'LOWBOY' | 'LOWBOY_REM_GOOSENECK' | 'LOWBOY_OVERDIMENSION' | 'MOVING_VAN' | 'PNEUMATIC' | 'POWER_ONLY' | 'REEFER' | 'REEFER_AIR_RIDE' | 'REEFER_DOUBLE' | 'REEFER_HAZMAT' | 'REEFER_INTERMODAL' | 'REEFER_LOGISTICS' | 'REEFER_VENTED_VAN' | 'REEFER_PALLET_EXCHANGE' | 'REEFER_TEAM' | 'REMOVABLE_GOOSENECK' | 'STEP_DECK' | 'STEP_DECK_REM_GOOSENECK' | 'STEP_DECK_CONESTOGA' | 'STRAIGHT_BOX_TRUCK' | 'STRETCH_TRAILER' | 'TANKER_ALUMINUM' | 'TANKER_INTERMODAL' | 'TANKER_STEEL' | 'TRUCK_AND_TRAILER' | 'DRY_VAN' | 'VAN' | 'VAN_AIR_RIDE' | 'VAN_BLANKET_WRAP' | 'VAN_CONESTOGA' | 'VAN_DOUBLE' | 'VAN_HAZMAT' | 'VAN_HOTSHOT' | 'VAN_INSULATED' | 'VAN_INTERMODAL' | 'VAN_LIFT_GATE' | 'VAN_LOGISTICS' | 'VAN_OPEN_TOP' | 'VAN_FLATBED' | 'VAN_FLATBED_TARPS' | 'VAN_FLATBET' | 'VAN_FLATBET_TARPS' | 'VAN_REEFER' | 'VAN_PALLET_EXCHANGE' | 'VAN_ROLLER_BED' | 'VAN_TRIPLE' | 'VAN_VENTED' | 'VAN_CURTAINS' | 'VAN_TEAM': The type of truck being requested.
      - `weight` integer: Indicates the weight of the truck where excessive weight may require the driver to choose alternative routes.
      - `weightUnitOfMeasure` 'LB' | 'KG': Weight measurement units (default: 'LB').
  - `trackingDetails` TruckloadTrackingMethodDetails[]: Contains information about how we obtain tracking data for the shipment. Currently, this list always includes either zero or one active tracking method. Future versions will be able to combine data from more than one tracking method. In that case, the primary tracking method will be listed first.
    - `equipmentIdentifier` TruckloadEquipmentIdentifier
      - `shouldDelete` boolean: Optional field indicating whether equipment identifier should be deleted.
      - `type` 'MOBILE_PHONE_NUMBER' | 'VEHICLE_ID' | 'LICENSE_PLATE' | 'SENSITECH_DEVICE_ID' | 'TIVE_DEVICE_ID': The type of the equipment identifier.
      - `value` string: The value of the equipment identifier. Cell phone numbers will be obfuscated in project44 responses for privacy reasons.
    - `equipmentIdentifierSource` 'CUSTOMER' | 'CARRIER' | 'AUTOMATIC': Source of the equipment identifier assigned to the shipment.
    - `trackingType` 'MOBILE_PHONE' | 'TELEMATICS' | 'API': Type of the tracking data source.

## Other responses

- `400`: Invalid request
- `401`: Invalid or missing credentials
- `403`: User not authorized to perform this operation

---

[API](https://skmtc.dev/project44/apis/project44-rest-api.md) - [All operations](https://skmtc.dev/project44/apis/project44-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/project44/apis/project44-rest-api/revisions/cdf9675e2294?raw)
