openapi: 3.0.1 info: license: name: © 2024 project44 - Terms of Use url: https://www.project44.com/terms description: Version 4.0.0 of project44's API title: project44 REST API version: 4.0.0 x-logo: url: /img/p44logo.png servers: - url: https://na12.api.project44.com description: NA - Endpoint for project44 tenants created in the NA region - url: https://eu12.api.project44.com description: EU - Endpoint for project44 tenants created in the EU region - url: https://na12.api.sandbox.p-44.com description: >- Sandbox - Endpoint for project44 tenants created in the sandbox environment tags: - name: Manage Client Applications - name: Generate Tokens - name: Unified Shipment Tracking - name: FTL Modal Tracking - name: Shipment Attributes - name: 'TL: Connected Capacity' - name: Stop Location Management - name: Webhook - name: Deprecated FTL Webhooks components: schemas: AccessGroup: type: object properties: id: type: string description: The unique identifier of the access group format: uuid xml: wrapped: true description: >- A group within the tenant used to group together users that should be entitled the same subset of data. Accessorial: type: object properties: appointmentDetails: allOf: - $ref: '#/components/schemas/AppointmentDetails' description: >- Optional attribute to indicate the pickup and delivery appointment details type when accessorial code APTP or APTD is present in the accessorial codes list. codes: type: array items: $ref: '#/components/schemas/AccessorialCode' description: An array to hold the list of services requested for the shipment. cod: allOf: - $ref: '#/components/schemas/Cod' description: >- Required when accessorial code COD is present in the accessorial codes list. fullValueCoverageDetails: allOf: - $ref: '#/components/schemas/FullValueCoverageDetails' description: >- Required when accessorial code FVC is present in the accessorial codes list. hazardousDetails: allOf: - $ref: '#/components/schemas/HazardousDetailsContact' description: >- Required if accessorial codes list contains HAZ and/or if any commodity line item's hazardous flag is set to true. limitedAccessType: allOf: - $ref: '#/components/schemas/LimitedAccessType' description: >- Optional attribute to indicate the limited access type when accessorial code LTDAP or LTDAD is present in the accessorial codes list. markDetails: allOf: - $ref: '#/components/schemas/MarkDetails' description: >- Required when accessorial code MARK is present in the accessorial codes list. sortAndSegregateDetails: allOf: - $ref: '#/components/schemas/SortAndSegregateDetails' description: >- Required when accessorial code SRT is present in the accessorial codes list. timeCriticalDetails: allOf: - $ref: '#/components/schemas/TimeCriticalDetails' description: >- Optional attribute to indicate the time critical details when accessorial code TCS is present in the accessorial codes list. AccessorialCode: enum: - APTD - APTP - COD - EXPD - FVC - GTD_AM - GTD_NOON - GTD_PM - HAZ - IDL - INBD - IPU - LFTD - LFTP - LTDAD - LTDAP - MARK - MNC - OVR - PPD - PSC - PSH - PSN - REP - RES - SRT - SS - TCS type: string description: Accessorial codes AccessorialService: description: An accessorial service requested of a carrier tendering a shipment. properties: code: description: >- The code for the requested accessorial service. A list of accessorial service codes supported by project44 is provided in the API reference data section. type: string title: AccessorialService type: object AccessorialServiceConfiguration: description: Contains fields used to configure the rate quote accessorial services. properties: allowUnacceptedAccessorials: description: >- If set to 'true', rate quotes will be allowed from capacity providers that do not accept one or more requested accessorial services. The default behavior is to reject a rate quote with an error from any capacity provider that does not accept every requested accessorial service in the query. (default: 'false') type: boolean fetchAllGuaranteed: description: >- If set to 'true', rate quotes for all possible guaranteed service levels (e.g., guaranteed by noon or guaranteed by 3pm) will be retrieved from each capacity provider, based on what each provider offers. (default: 'false') type: boolean fetchAllInsideDelivery: description: >- If set to 'true', rate quotes for all possible inside delivery accessorial services will be retrieved from each capacity provider, based on what each provider offers. (default: 'false') type: boolean fetchAllServiceLevels: description: >- If set to 'true', rate quotes for all possible service levels (e.g., guaranteed or expedited) will be retrieved from each capacity provider, based on what each provider offers. (default: 'false') type: boolean title: AccessorialServiceConfiguration type: object AdditionalAppointmentWindowIdentifier: description: >- A user defined additional appointment window identifier to be used in lists. properties: type: description: The type of additional appointment window identifier. enum: - DOCK - BOOKING_ID type: string value: description: The value of additional appointment window identifier. type: string title: AdditionalAppointmentWindowIdentifier type: object AdditionalOrderIdentifier: type: object properties: type: type: string enum: - CONTRACT - LOAD - MANUFACTURER - PROMOTION - SEASON - VENDOR - LAUNCH_CODE value: type: string description: Additional terms to describe the order. AdditionalReference: type: object properties: name: type: string description: Indicates the name of the reference number being provided. value: type: string description: >- Additional reference number that correlates to the additional reference name. Address: required: [] type: object properties: addressLines: maxItems: 3 minItems: 0 type: array description: >- Street name, number, direction, PO box, etc. Only three address lines are currently permitted. items: type: string description: >- Street name, number, direction, PO box, etc. Only three address lines are currently permitted. city: type: string description: Name of city, town, etc. country: $ref: '#/components/schemas/CountryCode' postalCode: type: string description: The ZIP or postal code. state: type: string description: Abbreviation of state, province, district, etc. description: A postal address. AlternateRateQuote: description: >- An alternate rate quote provided along with the primary rate quote from a single carrier. properties: capacityProviderQuoteNumber: description: >- The capacity provider's identifier for this alternate rate quote, if provided. type: string deliveryDateTime: description: >- The delivery date and time for this alternate rate quote in the timezone of the destination location, if provided. (format: yyyy-MM-dd'T'HH:mm:ss) format: date-time type: string rateQuoteDetail: $ref: '#/components/schemas/RateQuoteDetail' serviceLevel: $ref: '#/components/schemas/ServiceLevel' transitDays: description: >- The number of service days to deliver the shipment being quoted after it is picked up, if provided. format: int32 type: integer transitDaysRange: $ref: '#/components/schemas/IntegerRange' title: AlternateRateQuote type: object ApiConfiguration: type: object properties: bookingWebhookName: type: string description: >- An optional name of the webhook that will receive updates for this booking. ApiError: description: >- Representation of an error that occurs during API execution and results in a 4xx or 5xx HTTP status code. properties: errorMessage: description: Description of the error. type: string errors: description: >- (Optional) Collection of Message objects which provide further information as to the cause of this error. items: $ref: '#/components/schemas/Message' type: array httpMessage: description: Description of the HTTP status code. type: string httpStatusCode: description: The value of the HTTP status code. format: int32 type: integer supportReferenceId: description: >- A reference identifier used by project44 support to assist with certain error messages. type: string title: ApiError type: object AppointmentDetails: type: object properties: delivery: allOf: - $ref: '#/components/schemas/DeliveryAppointmentDetails' description: Delivery appointment details. pickup: allOf: - $ref: '#/components/schemas/PickupAppointmentDetails' description: Pickup appointment details. AppointmentRequiredAccessorial: required: [] type: object properties: code: enum: - APPOINTMENT_REQUIRED type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_bool_' description: Flag denoting requirement. additionalProperties: false description: Accessorial which flags the explicit need for appointment service. ArrivalStatus: description: arrival status. properties: code: description: Code of the arrival status (EARLY, LATE, ON_TIME). enum: - UNKNOWN - EARLY - ON_TIME - LATE type: string duration: $ref: '#/components/schemas/TimeDuration' title: ArrivalStatus type: object AssetTrackingSubscription: properties: equipmentIdentifier: $ref: '#/components/schemas/EquipmentIdentifier' expirationDateTime: description: >- Optional time to stop tracking as asset. This is a date-time with an offset from UTC/Greenwich in the ISO-8601 calendar system, such as 2019-12-03T10:15:30+01:00. If not provided, it will be set to six months from the enrollment time. type: string id: format: uuid type: string webhookName: description: >- The name of the previously registered webhook. This indicates where to send the asset tracking information. type: string title: AssetTrackingSubscription type: object Attribute: description: Contains a key and value for custom attributes. properties: name: description: The name for an attribute. Must be unique. type: string values: description: The values for an attribute. items: type: string type: array title: Attribute type: object AutomatedFailureReason: enum: - ERROR_CREDENTIALS - NO_RESPONSE_CARRIER - INTERNAL_ERROR_CARRIER - UNKNOWN_ERROR_CARRIER - INTERNAL_ERROR_VCS - UNKNOWN_ERROR_VCS - UNSUPPORTED_EQUIPMENT_TYPE - UNSUPPORTED_MODE - UNSUPPORTED_COUNTRY - UNSUPPORTED_STOP_TYPE - MISSING_DATA - INVALID_DATA type: string description: An enumeration. AvailableVehicles: properties: terminatingCapacity: $ref: '#/components/schemas/TerminatingCapacity' title: AvailableVehicles type: object AvailableVehiclesPage: properties: paginationInfo: $ref: '#/components/schemas/PaginationInfo' results: description: List of resources contained on this page. items: $ref: '#/components/schemas/AvailableVehicles' type: array title: AvailableVehiclesPage type: object AvailableVehiclesQuery: properties: address: $ref: '#/components/schemas/Address' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' includeMyShipments: description: Allows users to exclude shipments belonging to their tenant. type: boolean radius: description: >- Search radius for capacity. Default is 25 miles or 40 km if no value is submitted. Valid values are any integer between 10-50 for miles and 16-80 for km. format: int32 type: integer radiusUnit: description: Unit of the search radius for capacity. Default is miles. enum: - FT - M - MI - KM type: string sharingPool: description: >- Optional parameter that will only return results from a specified pool. This will only apply to customers in more than 1 pool. type: string timeRange: $ref: '#/components/schemas/OffsetDateTimeWindow' truckType: description: >- Optional parameter that will return available capacity specific to the type of truck requested. enum: - 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 type: string title: AvailableVehiclesQuery type: object BasicInventoryItemSearchCriteria: description: >- BasicInventoryItemSearchCriteria contains criteria used to search inventory item data. properties: consumeByDateTimeRange: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' hazardClasses: description: >- Search for items with hazard classes that match the provided hazard classes. items: type: string type: array ids: description: Search for items with ids that match the provided ids. items: type: string type: array inventoryIdentifiers: description: >- Search for items with inventory identifiers that match the provided inventory identifiers (InventoryIdentifier.type, InventoryIdentifier.description, InventoryIdentifier.value). items: $ref: '#/components/schemas/InventoryIdentifier' type: array manufacturedDateTimeRange: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' orderIds: description: Search for items with order ids that match the provided order ids. items: type: string type: array packagedDateTimeRange: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' perUnitCost: $ref: '#/components/schemas/MonetaryValueRangeFilter' perUnitRetailValue: $ref: '#/components/schemas/MonetaryValueRangeFilter' perishable: description: >- Search for items which are perishable (true) or non-perishable (false). type: boolean searchText: description: >- Provide a multi field text search across the full inventory item object. type: string sellByDateTimeRange: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' shipmentIds: description: >- Search for items with shipment ids that match the provided shipment ids. These must be project44-generated masterShipmentIds. items: format: uuid type: string type: array skus: description: >- Search for items with stock keeping units that match the provided stock keeping units. items: type: string type: array taxable: description: Search for items which are taxable (true) or non-taxable (false). type: boolean upcs: description: >- Search for items with universal product codes that match the provided universal product codes. items: type: string type: array title: BasicInventoryItemSearchCriteria type: object BasicInventoryOrderSearchCriteria: description: >- BasicInventoryOrderSearchCriteria contains criteria used to search inventory order data. properties: additionalOrderIdentifierCriteria: description: >- Search for orders with additional identifiers matching the list of identifiers provided. If a combination value/values + type with an operator is provided, it performs a search operation with value matching the criteria for the given type. If just a type or value/values is provided with an operator, the search criteria with type or value matching the criteria. items: $ref: '#/components/schemas/InventoryOrderIdentifierCriteria' type: array billToLocationAddressText: description: >- Search for orders whose bill-to location match the given address fields (i.e. postalCode, addressLines, city, state, country). type: string destinationLocationAddressText: description: >- Search for orders whose destination location match the given address fields. (i.e. postalCode, addressLines, city, state, country). type: string hasShipmentIds: description: >- Search for the existence of shipmentIds on an order. If value is 'true', it searches for orders that contain shipments. If the value is 'false', it searches for orders that contain no shipments. If the value is null, this criterion is excluded. If this is used in combination with 'shipmentIds' search criteria, it might cause unexpected results. type: boolean ids: description: Search for orders with ids that match the provided ids. items: type: string type: array launchDateTime: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' orderAttributes: description: Search for orders that contain the provided custom attributes. items: $ref: '#/components/schemas/InventoryOrderAttributeFilter' type: array orderHealthCriteria: description: >- Search for orders based on arrival status, duration range / delta, target date range, or the combination of any. items: $ref: '#/components/schemas/OrderHealthCriteria' type: array orderIdentifierCriteria: description: >- ${InventoryOrderSearchCriteria.apiModel.orderIdentifierCriteria.value} items: $ref: '#/components/schemas/OrderIdentifierCriteria' type: array orderIdentifiers: description: >- Search for orders with identifiers that match the provided order identifiers. items: type: string type: array orderItemAdditionalIdentifierCriteria: description: >- ${InventoryOrderSearchCriteria.apiModel.orderItemInventoryIdentifierCriteria.value} items: $ref: '#/components/schemas/OrderItemAdditionalIdentifierCriteria' type: array orderItemDescriptionCriteria: description: >- ${InventoryOrderSearchCriteria.apiModel.orderItemDescriptionCriteria.value} items: $ref: '#/components/schemas/OrderItemDescriptionCriteria' type: array orderItemIdentifierCriteria: description: >- ${InventoryOrderSearchCriteria.apiModel.orderItemIdentifierCriteria.value} items: $ref: '#/components/schemas/OrderItemIdentifierCriteria' type: array orderLocationCriteria: description: ${InventoryOrderSearchCriteria.apiModel.orderLocationCriteria.value} items: $ref: '#/components/schemas/OrderLocationCriteria' type: array orderSubmissionDateTime: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' orderTagCriteria: description: >- Search for items with order tags based matching the list of tags provided.If a combination value/values + type with an operator is provided, it performs a search operation with value matching the criteria for the given type. If just a type or value/values is provided with an operator, the search criteria with type or value matching the criteria. items: $ref: '#/components/schemas/InventoryOrderTagCriteria' type: array orderTypes: description: Search for orders with types that match the provided types. items: enum: - PURCHASE_ORDER - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - INVOICE - DELIVERY type: string type: array originLocationAddressText: description: >- Search for orders whose origin location match the given address fields. (i.e. postalCode, addressLines, city, state, country). type: string originalDeliveryDateTimeWindowEnd: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' originalDeliveryDateTimeWindowStart: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' pagination: $ref: '#/components/schemas/PaginationParameters' relatedOrderIds: description: >- Search for orders that contain related orders matching the provided ids. items: type: string type: array searchText: description: >- Provide a multi field text search across the full inventory order object. type: string shipmentIds: description: >- Search for orders with shipment ids that match the provided shipment ids. These must be project44-generated masterShipmentIds. items: format: uuid type: string type: array sort: description: >- A collection of fields on which to sort the search results, and the direction of the sort for each field. items: $ref: '#/components/schemas/InventoryOrderSortField' type: array statusCodes: description: Search for orders containing any of the provided status codes. items: enum: - SUBMITTED - RECEIVED - PROCESSING - ACCEPTED - FULFILLED - REJECTED - CANCELED type: string type: array supplierReadyDateTimeWindowEnd: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' supplierReadyDateTimeWindowStart: $ref: '#/components/schemas/OffsetDateTimeRangeFilter' vendorLocationAddressText: description: >- Search for orders whose vendor location match the given address fields (i.e. postalCode, addressLines, city, state, country). type: string title: BasicInventoryOrderSearchCriteria type: object Body_create_document_documents_post: required: [] type: object properties: document: type: string upload_file: type: string format: binary Body_search_documents_documents_search_post: type: object properties: identifiers: allOf: - $ref: '#/components/schemas/IdentifierWrapper' description: List of logistics identifiers. Only equal operator is supported. name: allOf: - $ref: '#/components/schemas/NameWrapper' description: The name of the document to search for type: allOf: - $ref: '#/components/schemas/TypeWrapper' description: List of document types to filter. Only equal operator is supported. Bol: required: [] type: object properties: function: type: string description: The intent for the submitted request. default: Create isTest: type: boolean description: >- Indicates whether or not the submitted request is intended to be a test or not. default: false requestedPickupDate: type: string description: The intended Ship Date. format: date-time requestorRole: allOf: - $ref: '#/components/schemas/RequestorRoleCode' description: Identifies the party making the request. specialInstructions: type: string description: >- Special delivery instructions that need to be followed for the shipment's delivery. BookedShipment: required: [] type: object properties: attributes: maxItems: 5 type: array items: $ref: '#/components/schemas/CustomAttribute' description: >- An optional user-defined set of custom attributes to associate with this shipment. These are descriptors and identifiers which apply to the entire shipment and they are not shared with any carriers. bookings: type: array items: $ref: '#/components/schemas/Booking' description: A list of all bookings related to the shipment. createdDateTime: type: string description: The datetime when the shipment was created. format: date-time identifiers: maxItems: 20 type: array items: $ref: '#/components/schemas/LogisticsIdentifier' id: type: string description: The project44-generated shipment identifier format: uuid lastModifiedDateTime: type: string description: The datetime when the shipment was last updated. format: date-time name: type: string description: >- The descriptive name or otherwise human-readable description of the shipment created; this is not visible to the carrier. notes: maxLength: 300 type: string description: >- An optional, shipper-provided free-text space for notes on the shipment. routeInfo: $ref: '#/components/schemas/RouteInfo' description: >- The overall shipper's construct of the material good(s) to be transported by the carrier. BookedShipmentPage: required: [] type: object properties: paginationInfo: allOf: - $ref: '#/components/schemas/PaginationInfo' description: Pagination information about a collection of resources. results: type: array items: $ref: '#/components/schemas/BookedShipment' description: List of resources contained on this page. description: >- A paginated response containing results and information about the current page. Booking: required: [] type: object properties: attributes: type: array items: $ref: '#/components/schemas/CustomAttribute' description: >- A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier. apiConfiguration: allOf: - $ref: '#/components/schemas/ApiConfiguration' description: Field for configuring the behavior of this API. automatedFailureReason: allOf: - $ref: '#/components/schemas/AutomatedFailureReason' description: >- The reason a booking may not have been properly requested, or its response from the carrier may not have been retrieved for bookings which are relayed to the carrier through an automated means (EDI, API). bookingSourceMethod: allOf: - $ref: '#/components/schemas/BookingSourceMethod' description: Shipper made booking request by WebGUI or API default: API capacityProviderIdentifier: allOf: - $ref: '#/components/schemas/CapacityProviderIdentifier' description: >- Reference to the desired carrier to transport the shipment across the booking's specified route segments. carrierContacts: type: array items: $ref: '#/components/schemas/BookingContact' description: >- Individuals representing the carrier to whom the booking should be sent. These contacts are not notify parties nor any individuals working with or on behalf of the shipper. carrierResponseMethod: allOf: - $ref: '#/components/schemas/CarrierResponseMethod' description: Carrier expected to answer by API/EDI or email default: EMAIL carrierRejectionNotes: maxLength: 300 type: string description: >- A free-text space for the carrier to provide extra information as to why they may reject the booking request. carrierProvidedIdentifiers: maxItems: 20 type: array items: $ref: '#/components/schemas/LogisticsIdentifier' description: >- Carrier-supplied identifiers for the shipment to be transported. Fully mutable. createdDateTime: type: string description: The datetime when the booking was created. format: date-time expirationDateTime: type: string description: >- The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required. format: date-time id: type: string description: The project44-generated identifier for the booking. format: uuid lastModifiedDateTime: type: string description: The datetime when the shipment was last updated. format: date-time masterShipmentId: type: string description: >- Once `BOOKED`, the booking initiates a tracked shipment within project44. With this identifier, the shipper may seek the trackable shipment through the rest of the project44 platform. format: uuid notes: maxLength: 300 type: string description: >- An optional, shipper-provided free-text space for notes on the shipment. rateIdentifiers: minItems: 1 type: array items: $ref: '#/components/schemas/RateIdentifier' description: >- A list of at least one identifier as reference to the original source of the rate applicable to the booking. Typically a spot quote or a contract ID. routeSegmentIds: minItems: 1 type: array items: type: string format: uuid description: List of route-segment ids which apply to the booking. routeSegments: type: array items: $ref: '#/components/schemas/RouteSegmentWithStops' description: >- A list of locations from/to which the shipment load is expected to be transported, organized as pairs. rejectionReason: allOf: - $ref: '#/components/schemas/BookingRejectionReason' description: >- Descriptive information as to why a carrier could not accept a booking, if applicable. shipmentId: type: string description: >- The project44-generated identifier for the shipment which parents the booking. Optional when created with a Shipment in one request. Required when creating a booking separately. format: uuid shipmentDetails: type: array items: $ref: '#/components/schemas/ShipmentDetails' description: >- Descriptive information about the load to be transported; if the load does not change between route segments, this body is expected to be the same across each route-segment body. shipperContactInfo: allOf: - $ref: '#/components/schemas/BookingContact' description: Contact method to reach the shipper making the booking request. shippingDetails: anyOf: - $ref: '#/components/schemas/BookingTruckloadShippingDetails' - $ref: '#/components/schemas/OceanShippingDetails' description: >- Information about how a load should be handled in transportation, specific to mode; When carrier respond to booking, this field also contains specific carrier's response information. status: allOf: - $ref: '#/components/schemas/BookingStatus' description: >- A descriptive state of the booking; Starting as `PROCESSING` when created, this booking may be `BOOKED`, `UNDER_REVIEW`, or `REJECTED by the carrier, and `CANCELLED` by the shipper. Or it may `EXPIRE` if it remains in the `PROCESSING` or `UNDER_REVIEW` states beyond its set expiration datetime. default: PROCESSING shipmentIdentifiers: type: array items: $ref: '#/components/schemas/LogisticsIdentifier' description: >- Shipper-supplied identifiers for the shipment to be transported. Passed through from the parenting shipment and shared with the carrier. totalRate: allOf: - $ref: '#/components/schemas/MonetaryValue' description: >- Optionally include the rate for transporting the load to the stops specified in the booking. transportationMode: $ref: '#/components/schemas/TransportationMode' description: >- A representation of a booking initiated by a shipper and accepted/rejected by a carrier. A booking describes the segments between locations to transport a load. BookingContact: required: [] type: object properties: companyName: type: string description: Name of the Company with whom the Contact is associated. email: type: string description: The Contact's email address. format: email familyName: type: string description: The Contact's last or family name. givenName: type: string description: The Contact's first or given name. mobilePhoneNumber: type: string description: The Contact's mobile phone number. phoneNumber: type: string description: The Contact's work or other primary phone number. BookingEBOLContact: required: [] type: object properties: email: type: string description: Email address of the location's contact person. format: email name: type: string description: Name of the location's contact person. phone: type: string description: >- Ten digit phone number, without country code and/or dashes, for the destination location's contact person. phoneExt: type: string description: Phone extension for the location's contact person. BookingEBOLHandlingUnit: required: [] type: object properties: count: type: integer description: Number of handling units being described. dimensionsUnit: allOf: - $ref: '#/components/schemas/DimensionsUnit' description: >- The unit of measurement for dimensions. Defaults to Inches (Imperial) if not passed.Valid Values: Inches or Centimeters. height: type: integer description: The height of the handling units being described. length: type: integer description: The length of the handling units being described. lineItems: type: array items: $ref: '#/components/schemas/BookingLineItem' description: The list of line items related to the shipment. stackable: type: boolean description: >- Identifies whether or not the freight being described can be stacked on one another. default: false type: allOf: - $ref: '#/components/schemas/HandlingUnitTypeCode' description: Type of the handling units being described. tareWeight: type: integer description: Weight of the skids/pallets/slips used in the shipment. weight: type: integer description: Total weight for the specified handling units. weightUnit: allOf: - $ref: '#/components/schemas/BookingEBOLWeightUnit' description: >- The unit of measurement for weight. Defaults to Pounds (Imperial) if not passed. default: Pounds width: type: integer description: The width of the handling units being described. BookingEBOLLocation: required: [] type: object properties: account: type: string description: Company's account number/id. address1: type: string description: Primary Address line for the location. address2: type: string description: Secondary Address line for the location. city: type: string description: City Name for the location. country: allOf: - $ref: '#/components/schemas/CountryCode' description: Three letter country code for the destination location. contact: allOf: - $ref: '#/components/schemas/BookingEBOLContact' description: Object containing contact details for the location. locationId: type: string description: Company's location id. name: type: string description: Company name associated with the location. postalCode: maxLength: 6 minLength: 5 type: string description: >- The 5-digit (or 6-characters for Canada) zip code for the destination location. stateProvince: allOf: - $ref: '#/components/schemas/StateProvinceCode' description: Two letter state/province code for the destination location. BookingEBOLWeightUnit: enum: - Pounds - Kilograms type: string description: An enumeration. BookingHandlingUnit: required: [] type: object properties: description: type: string description: Free text space to describe the handling unit. dimensions: allOf: - $ref: '#/components/schemas/Dimensions' description: >- The physical dimensions of the handling unit. Take care that this should reference the per quantity size of the chosen handling unit type. freightClass: allOf: - $ref: '#/components/schemas/FreightClass' description: >- Freight class of this handling unit. Required for LTL shipments only. handlingUnitType: allOf: - $ref: '#/components/schemas/HandlingUnitType' description: The packaging used to handle the unit during transport. hazmatDetail: allOf: - $ref: '#/components/schemas/HazmatDetail' description: >- Provides important information about the hazardous materials to be transported, as required by theUS Department of Transportation (DOT). Only required for shipment requests. items: type: array items: $ref: '#/components/schemas/Item' description: The items for this handling unit, if applicable. monetaryValue: allOf: - $ref: '#/components/schemas/MonetaryValue' description: The monetary value of the handling unit. nmfcItemCode: type: string description: NMFC prefix code for all packages composing this line item. nmfcSubCode: type: string description: NMFC suffix code for all packages composing this line item. quantity: type: integer description: Quantity of the handling unit type that is specified below. stackable: type: boolean description: Whether the packages composing are stackable or not. default: false weight: allOf: - $ref: '#/components/schemas/BookingWeight' description: >- The weight of the handling unit. Take care that this should reference the per quantity weight of the chosen handling unit type. description: Handling units managed by the shipper to be transported by the carrier. BookingLineItem: required: [] type: object properties: classification: allOf: - $ref: '#/components/schemas/ClassificationCode' description: Classification of the line item being described. description: type: string description: Description of the freight being described. hazardous: type: boolean description: >- Identifies whether or not the freight being described contains hazardous materials. hazardousDescription: type: string description: >- Conditionally required when 'hazardous' is 'true'. Provides a detailed description of the hazardous item.Example: UN 1090, Acetone, 3, PG II hazardousDetails: allOf: - $ref: '#/components/schemas/HazardousDetails' description: Details related to the hazardous line item. nmfc: type: string description: NMFC code of the freight being described. nmfcSub: type: string description: The Sub value for the NMFC of the freight being described. pieces: type: integer description: Number of individual pieces for the line item being described. packagingType: allOf: - $ref: '#/components/schemas/PackagingTypeCode' description: >- Packaging type for the individual pieces of the line item being described. weight: type: integer description: Total weight for the specified line item. weightUnit: allOf: - $ref: '#/components/schemas/BookingEBOLWeightUnit' description: >- The unit of measurement for weight. Defaults to Pounds (Imperial) if not passed.Valid Values: Pounds or Kilograms. default: Pounds BookingLocation: type: object properties: address: $ref: '#/components/schemas/Address' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' id: type: string format: uuid identifiers: type: array items: $ref: '#/components/schemas/LocationIdentifier' name: type: string timeZone: type: string BookingPage: required: [] type: object properties: paginationInfo: allOf: - $ref: '#/components/schemas/PaginationInfo' description: Pagination information about a collection of resources. results: type: array items: $ref: '#/components/schemas/Booking' description: List of resources contained on this page. description: >- A paginated response containing results and information about the current page. BookingParty: required: [] type: object properties: addressInfo: allOf: - $ref: '#/components/schemas/Address' description: Address of the listed party. contactInfo: allOf: - $ref: '#/components/schemas/BookingContact' description: Individual contact information for the party. partyType: allOf: - $ref: '#/components/schemas/PartyType' description: >- The relationship the shipper has to the party, relevant to the shipment. vatNumber: type: string description: Optional, VAT number of the listed party, if applicable. BookingRejection: required: [] type: object properties: notes: maxLength: 300 type: string description: >- Free text space to supply extra detail regarding why the carrier may not be able to accept a particular booking from a shipper. reason: allOf: - $ref: '#/components/schemas/BookingRejectionReason' description: >- The codified reason why a carrier would reject a booking from a carrier. BookingRejectionReason: enum: - COST_NOT_AGREED - SHORT_ON_STAFF - NOT_WITHIN_SCOPE - TRANSIT_TIME_TOO_SHORT - REQUESTED_EQUIPMENT_NOT_AVAILABLE - OTHER type: string description: The reason a carrier may opt not to accept a booking from a shipper. BookingResponse: required: [] type: object properties: details: anyOf: - $ref: '#/components/schemas/OceanBookingResponseDetails' - $ref: '#/components/schemas/TruckloadBookingResponseDetails' description: Further response details applicable to the booking. routeSegments: minItems: 1 type: array items: $ref: '#/components/schemas/RouteSegmentResponse' description: >- List of the accepted dates to travel the route-segments requested by the shipper. All of the route-segments requested by the shipper in the booking must be included. shipmentIdentifiers: type: array items: $ref: '#/components/schemas/LogisticsIdentifier' description: >- Methods for identifying the shipment; usually a BOOKING_NUMBER or BOL. description: >- The carrier's approval of a booking. The carrier should supply any identifiers they have for the shipment in their response. BookingSourceMethod: enum: - API - WEBAPP type: string description: Method by which a shipper initiates a request for a booking. BookingStatus: enum: - PROCESSING - UNDER_REVIEW - BOOKED - REJECTED - CANCELLED - EXPIRED type: string description: >- A descriptive state for a booking. Bookings start out in a `PROCESSING` state, only to be `BOOKED` or `REJECTED` by a carrier. A booking may enter the `UNDER_REVIEW` state after `PROCESSING` if the response must be polled after request. The state may shift to `CANCELLED` due to actions caused by either party in any state. A booking is `EXPIRED` if it sits in the `PROCESSING` or `UNDER_REVIEW` status upon the time which it is set to expire. BookingTruckloadShippingDetails: required: [] type: object properties: accessorials: type: array items: anyOf: - $ref: '#/components/schemas/RefrigeratedAccessorial' - $ref: '#/components/schemas/LiftgateAccessorial' - $ref: '#/components/schemas/TarpsAccessorial' - $ref: '#/components/schemas/StrapsAccessorial' - $ref: '#/components/schemas/ChainsAccessorial' - $ref: '#/components/schemas/DeckHeightAccessorial' - $ref: '#/components/schemas/CraneAccessorial' - $ref: '#/components/schemas/CallBeforeArrivalAccessorial' - $ref: '#/components/schemas/DockRequiredAccessorial' - $ref: '#/components/schemas/LockedGateAccessorial' - $ref: '#/components/schemas/FirstComeFirstServedAccessorial' - $ref: '#/components/schemas/AppointmentRequiredAccessorial' - $ref: '#/components/schemas/WhiteGloveAccessorial' - $ref: '#/components/schemas/HazmatAccessorial' - $ref: '#/components/schemas/ExcessiveLengthAccessorial' - $ref: '#/components/schemas/GuaranteedServiceLevelAccessorial' - $ref: '#/components/schemas/OtherAccessorial' description: >- Optional list of descriptors which detail any add-ons or declarations applicable which may be noteworthy to the carrier. flatbedType: allOf: - $ref: '#/components/schemas/FlatbedType' description: >- The sub-equipment type of flatbed. Only applicable, and required, with a FLATBED trailer type. loadPreference: allOf: - $ref: '#/components/schemas/TruckLoadPreferenceType' description: The preferred load occupancy of the truck. trailerType: allOf: - $ref: '#/components/schemas/TrailerType' description: The equipment type of the trailer. trailerLength: allOf: - $ref: '#/components/schemas/Length' description: >- Total requested trailer length in feet or meters; must not exceed 53 Feet or 17 meters. trailerVolume: allOf: - $ref: '#/components/schemas/Volume' description: Total requested Trailer volume BookingWeight: required: [] type: object properties: unit: allOf: - $ref: '#/components/schemas/WeightUnit' description: The unit of measurement for this weight. value: minimum: 0 type: number description: The numeric decimal value of this weight. CallBeforeArrivalAccessorial: required: [] type: object properties: code: enum: - CALL_BEFORE_ARRIVAL type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_bool_' description: Flag denoting requirement. additionalProperties: false description: >- Accessorial which flags the explicit need for call before arrival to a stop service. CapacityProvider: properties: capacityProviderIdentifiers: description: >- A list of capacity provider identifiers that can be used to reference this capacity provider. items: $ref: '#/components/schemas/CapacityProviderIdentifier' type: array name: description: The name of this capacity provider. type: string supportedServices: description: >- A list of services by transportation mode supported by this capacity provider within project44. items: $ref: '#/components/schemas/CapacityProviderService' type: array type: description: The type of this capacity provider, either carrier or 3PL/broker. enum: - CARRIER - BROKER type: string title: CapacityProvider type: object CapacityProviderAccount: description: >- The capacity provider account that was used for authentication with the capacity provider's API. properties: code: description: >- The code for the requested capacity provider account that was used for authentication with the capacity provider's API. type: string title: CapacityProviderAccount type: object CapacityProviderAccountFieldDefinition: properties: code: description: >- The project44 code for this field. This is the name of the field within CapacityProviderAccountInfo -- e.g., 'credential1' or 'accountFlag1'. type: string constraint: description: >- The constraints on this field -- whether it is required, conditionally required, or optional. If a field is not applicable to an account definition, it won't show up at all in the list. enum: - REQUIRED - CONDITIONALLY_REQUIRED - OPTIONAL type: string name: description: >- The display name of this field. For capacity-provider-specific fields like 'credential1', this name will be what the capacity provider calls this field -- e.g., 'Authentication Key' or 'Login Name'. type: string title: CapacityProviderAccountFieldDefinition type: object CapacityProviderAccountGroup: description: >- The requested capacity provider account group containing the account used for authentication with the capacity provider's API. properties: accounts: description: >- 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. items: $ref: '#/components/schemas/CapacityProviderAccount' type: array code: description: >- 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. type: string title: CapacityProviderAccountGroup type: object CapacityProviderAccountGroupInfo: description: >- The details necessary to get or instantiate a new capacity provider group. properties: code: description: >- The unique, user-provided code used to identify this account group. Typically, an account group will correspond to a single customer or a single customer location. Account group codes are provided in shipment lifecycle APIs to identify a particular account. This field may be provided when creating an account group but is not required when creating or updating a set of capacity provider accounts in the capacity provider account management API. type: string id: description: >- The project44-generated id of the capacity provider account group. This id may not be provided when creating a capacity provider account group, but it is required when updating one or when creating or updating a capacity provider account set. format: int64 type: integer name: description: >- The user-provided name to be assigned to this group. This field may be provided when creating an account group but is not required when creating or updating a set of capacity provider accounts in the capacity provider account management API. type: string title: CapacityProviderAccountGroupInfo type: object CapacityProviderAccountGroupInfoCollection: description: >- A collection of details necessary to get or instantiate a new capacity provider group. properties: groups: description: List of multiple capacity provider account groups. items: $ref: '#/components/schemas/CapacityProviderAccountGroupInfo' type: array title: CapacityProviderAccountGroupInfoCollection type: object CapacityProviderAccountInfo: description: Capacity provider account information. properties: accountDefinitionIdentifier: description: >- Capacity provider account definition identifier is used to distinguish capacity provider accounts when a specific capacity provider has more then one account definition for different services. Use the "Capacity Provider Metadata" API to get account definition information for a capacity provider. type: string accountFlag1: description: >- A boolean flag related to the your account with the capacity provider, defined by the applicable capacity provider account definition (e.g., for UPGF, this is 'enable density-based rating'). type: boolean accountNumber1: description: >- The first account number with the capacity provider if this capacity provider account type has account numbers. This may be a bill-to account number, a shipper account number, a consignee account number, or some other account number. type: string accountNumber2: description: >- The second account number with the capacity provider if this capacity provider account type has account numbers. This may be a bill-to account number, a shipper account number, a consignee account number, or some other account number. type: string billToLocationId: description: >- The project44-generated id of the bill-to location. Locations can be created, updated, and retrieved through the location management API. type: string credential1: description: >- The first password, authentication key, or other credentials with the capacity provider, if this capacity provider account type has one of these. This field will not appear in any response object. type: string credential2: description: >- The second password, authentication key, or other credentials with the capacity provider, if this capacity provider account type has one of these. type: string credential3: description: >- The third password, authentication key, or other credentials with the capacity provider, if this capacity provider account type has one of these. type: string directionCode: description: >- The direction or shipment terms of the your account with the capacity provider -- the party responsible for the shipment. enum: - SHIPPER - CONSIGNEE - THIRD_PARTY type: string enableDirectionOverride: description: >- Whether or not direction for this capacity provider account can be overridden in an API request. The direction for some capacity provider accounts should never be overridden, while others need to be changed depending on the origin and destination of a shipment or other factors. Whether this override should be enabled depends primarily on the capacity provider. (default: 'false') type: boolean enablePaymentTermsOverride: description: >- Whether or not payment terms for this capacity provider account can be overridden in an API request. The payment terms for some capacity provider accounts should never be overridden, while others need to be changed depending on the origin and destination of a shipment or other factors. Whether this override is enabled depends primarily on the capacity provider. (default: 'false') type: boolean id: description: >- The project44-generated id of the capacity provider account. This id may not be provided when creating a capacity provider account, but it is required when updating one. format: int64 type: integer oAuth2LoginUrl: type: string oAuth2SignupUrl: type: string paymentTermsCode: description: >- The payment terms of the customer's account with the capacity provider -- the party responsible for payment. enum: - PREPAID - COLLECT - THIRD_PARTY type: string username1: description: >- The username of the account, if this capacity provider account type has a username. type: string title: CapacityProviderAccountInfo type: object CapacityProviderAccountInfoDefinition: properties: accountDefinitionIdentifier: description: >- The project44 account definition identifier for this capacity provider account definition, to be passed in the CapacityProviderAccountInfo to identify this account. type: string accountFieldDefinitions: description: >- A list of account fields and their definitions, indicating which fields on CapacityProviderAccountInfo are required, conditionally required, and optional, and what the capacity provider itself calls these fields to make locating the information within the capacity provider's system easy. Only those fields that may be passed in CapacityProviderAccountInfo for this specific account definition and capacity provider are listed here. items: $ref: '#/components/schemas/CapacityProviderAccountFieldDefinition' type: array name: description: >- The project44 name for this account for reference or display purposes. type: string supportedServices: description: >- A list of supported services by transportation mode supported by this capacity provider via this specific account type. Capacity providers that have multiple account definitions often use each for a distinct subset of their supported services -- e.g., one account definition may be for volume LTL rating, another may be for LTL imaging, and a third may be for their remaining supported services. items: $ref: '#/components/schemas/CapacityProviderService' type: array title: CapacityProviderAccountInfoDefinition type: object CapacityProviderAccountInfos: description: Contains one or more account definitions for a capacity provider. properties: accounts: description: >- Only one account for each of the capacity provider's account definitions may be provided. On update, accounts in this list may reference ids of existing accounts or may be completely new accounts without ids if replacement is desired. Use the "Capacity Provider Metadata" API to get account definition information for a capacity provider. This API will indicate all fields that must be specified on CapacityProviderAccountInfo for each account type for a given capacity provider. items: $ref: '#/components/schemas/CapacityProviderAccountInfo' type: array capacityProviderIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' code: description: >- The code identifier for the account set. This must be unique to the capacity provider account group this account set resides in. type: string group: $ref: '#/components/schemas/CapacityProviderAccountGroupInfo' id: description: >- The project44-generated id of the capacity provider account set. This id may not be provided when creating a capacity provider account set, but it is required when updating one. format: int64 type: integer title: CapacityProviderAccountInfos type: object CapacityProviderAccountInfosCollection: description: A collection of one or more account definitions for a capacity provider. properties: accounts: description: >- List of capacity provider accounts, possible across multiple account groups. items: $ref: '#/components/schemas/CapacityProviderAccountInfos' type: array title: CapacityProviderAccountInfosCollection type: object CapacityProviderCollection: properties: capacityProviders: description: A list of all capacity providers matching the query. items: $ref: '#/components/schemas/CapacityProvider' type: array title: CapacityProviderCollection type: object CapacityProviderIdentifier: required: [] type: object properties: type: allOf: - $ref: '#/components/schemas/CapacityProviderIdentifierType' description: >- The type of identifier provided to distinguish the Capacity Provider. value: type: string description: Capacity Provider identifier. description: >- A Capacity Provider identifier object used to identify a carrier or a broker responsible for transporting a shipment, containing two key-value pairs: type and value. CapacityProviderIdentifierType: enum: - FFW_SCAC - CARRIER_SCAC - DOT_NUMBER - MC_NUMBER - P44_EU - SYSTEM - P44_GLOBAL type: string description: The type of identifier provided to distinguish the Capacity Provider. CapacityProviderMetadata: properties: accountDefinitions: description: >- A list of capacity provider account definitions for this capacity provider. Each of these corresponds to a CapacityProviderAccountInfo that could be passed as part of a CapacityProviderAccountInfos when creating a capacity provider account for this capacity provider via the capacity provider account management APIs. items: $ref: '#/components/schemas/CapacityProviderAccountInfoDefinition' type: array capacityProvider: $ref: '#/components/schemas/CapacityProvider' title: CapacityProviderMetadata type: object CapacityProviderService: properties: mode: description: >- The transportation mode of this service provided by a capacity provider. enum: - PARCEL - LTL - VOLUME_LTL - TRUCKLOAD - OCEAN - RAIL type: string type: description: The type of this service provided by a capacity provider. enum: - RATING - DISPATCH - TRACKING - IMAGING type: string title: CapacityProviderService type: object CargoMeasurements: type: object properties: dimensions: allOf: - $ref: '#/components/schemas/Dimensions' description: The height, length, width dimensions of the cargo volume: allOf: - $ref: '#/components/schemas/Volume' description: The volume of the cargo weight: allOf: - $ref: '#/components/schemas/BookingWeight' description: The weight of the cargo CarrierEvent: required: [] type: object properties: description: type: string description: A human readable description of this event. dateTime: type: string description: >- The actual time when this event occurred. Should only be populated for events that have already happened. format: date-time location: $ref: '#/components/schemas/CarrierLocation' plannedDateTime: type: string description: >- The planned time when this event is scheduled to occur. If plannedEndDateTime is set, this is the start of the planned window of time for the event. format: date-time plannedEndDateTime: type: string description: >- The end of the planned window of time for the event. Only valid for `ARRIVAL_AT_STOP` events. format: date-time source: type: string description: The source providing event information. enum: - UNKNOWN - CARRIER - CONTRACT sourceIdentifiers: maxItems: 250 minItems: 0 type: array description: >- Identifies the specific carrier or data provider from which this event was sourced. items: $ref: '#/components/schemas/LogisticsIdentifier' type: type: string description: The type of event that occurred. enum: - UNKNOWN - TRACKING_INITIATE - TRACKING_START - ARRIVAL_AT_STOP - DEPARTURE_FROM_STOP - LOAD_ONTO_VEHICLE - UNLOAD_FROM_VEHICLE - TRACKING_END_DUE_TO_TIMEOUT - TRACKING_END_BY_USER - TRACKING_COMPLETE - GATE_IN - GATE_OUT - FLIGHT_BOOKING - MANIFEST - RECEIVE_FROM_SHIPPER - CONSIGNEE_NOTIFY - DELIVERY - WARNING - EXCEPTION - TRACKING_STOP - EXCEPTION_LATE_DEPARTURE - EXCEPTION_MISSED_CONNECTION - GATE_IN_FULL - GATE_IN_EMPTY - GATE_OUT_EMPTY - GATE_OUT_FULL - LOAD - DISCHARGE - EXCEPTION_DELAYED - EXCEPTION_DELIVERY_MISSED - EXCEPTION_HELD - EXCEPTION_PICKUP_MISSED - AVAILABLE - ENTERED_GEOFENCE - EXITED_GEOFENCE - INFO - OUT_FOR_DELIVERY - PICKED_UP - RETURN_TO_SENDER - TRACKING_FAILED - UNAUTHORIZED - PICKUP_MISSED - SURVEY - HELD - RELEASE - DELAYED - DELIVERY_MISSED - ENTERED_INNER_GEOFENCE - EXITED_INNER_GEOFENCE - ENTERED_OUTER_GEOFENCE - EXITED_OUTER_GEOFENCE - ENTERED_FINAL_GEOFENCE - EXITED_FINAL_GEOFENCE - IDLE - DRIVER_DENY_TRACKING - UNKNOWN_EQUIPMENT_IDENTIFIER - MISSING_EQUIPMENT_IDENTIFIER - DISPATCH - CUSTOMS_HOLD - CUSTOMS_CLEARANCE - CUSTOMS_DOCS_FILING - CUSTOMS_TRANSIT_DOCS_ISSUED - CUSTOMS_TRANSIT_DOCS_CLOSED - CARRIER_HOLD - RECEIVE_FROM_CARRIER - ISSUE_FREIGHT_BILL - FREIGHT_ON_HAND - READY_FOR_CARRIAGE - LAST_FREE_DAY - MISSING_CARRIER - STUFF - STRIP - SEAL_INSPECTION - SEAL_REMOVAL - SEAL_RESEAL - HANDOVER - DOCUMENT_ADD - DOCUMENT_REMOVE - REMOVE_FROM_BOOKING - COST_UPDATE - SHARING_STOPPED - ROLLED_OVER description: An event is something that occurs at a point in time for a shipment. CarrierEventsAndPositions: type: object properties: events: maxItems: 250 minItems: 0 type: array description: Events that occurred for a shipment. items: $ref: '#/components/schemas/CarrierEvent' identifiers: maxItems: 250 minItems: 0 type: array description: >- Any standardized 3rd party identifier. Can be used to identify a shipment, freight, vehicle, carrier, or other freight entity. items: $ref: '#/components/schemas/LogisticsIdentifier' positions: maxItems: 500 minItems: 0 type: array description: Locations where a shipment has been recorded. items: $ref: '#/components/schemas/CarrierPosition' description: Contains shipment information like identifiers, events, and positions. CarrierLanePerformance: properties: carrier: $ref: '#/components/schemas/ConnectedCarrierContact' destinationMarket: description: >- Destination market of lane. Market is defined as the 3ZIP in the United States, and the Level-2 administrative region (County/District) everywhere else. type: string last30DaysDeliveryScheduleReliability: description: >- Percentage of tracked shipments in the past 30 days that were delivered within 2 hours of the scheduled time format: int32 type: integer last30DaysPercentTracked: description: >- Percentage of shipments in the past 30 days where tracking was initiated which received at least one tracking update format: int32 type: integer last30DaysPickupScheduleReliability: description: >- Percentage of tracked shipments in the past 30 days that were picked up within 2 hours of the scheduled time format: int32 type: integer last30DaysShipmentVolume: description: Number of shipments tracked in the past 30 days enum: - VOLUME_0_TO_10_SHIPMENTS - VOLUME_11_TO_50_SHIPMENTS - VOLUME_51_TO_100_SHIPMENTS - VOLUME_101_OR_MORE_SHIPMENTS type: string last365DaysDeliveryScheduleReliability: description: >- Percentage of tracked shipments in the past 365 days that were delivered within 2 hours of the scheduled time format: int32 type: integer last365DaysPercentTracked: description: >- Percentage of shipments in the past 365 days where tracking was initiated which received at least one tracking update format: int32 type: integer last365DaysPickupScheduleReliability: description: >- Percentage of tracked shipments in the past 365 days that were picked up within 2 hours of the scheduled time format: int32 type: integer last365DaysShipmentVolume: description: Number of shipments tracked in the past 365 days enum: - VOLUME_0_TO_10_SHIPMENTS - VOLUME_11_TO_50_SHIPMENTS - VOLUME_51_TO_100_SHIPMENTS - VOLUME_101_OR_MORE_SHIPMENTS type: string originMarket: description: >- Origin market of lane. Market is defined as the 3ZIP in the United States, and the Level-2 administrative region (County/District) everywhere else. type: string performanceByMonth: description: Average monthly performance for the past 12 months items: $ref: '#/components/schemas/MonthlyCarrierPerformance' type: array title: CarrierLanePerformance type: object CarrierLanePerformanceCollection: properties: carrierLanePerformances: description: List of responses items: $ref: '#/components/schemas/CarrierLanePerformance' type: array title: CarrierLanePerformanceCollection type: object CarrierLanePerformanceQuery: properties: carrierIdentifier: $ref: '#/components/schemas/ConnectedCarrierIdentifier' destination: $ref: '#/components/schemas/Address' minimumDeliveryScheduleReliability: description: >- Return only results where the percentage of tracked shipments in the past 365 days that were delivered within 2 hours of the scheduled time is above the given value format: int32 type: integer minimumPickupScheduleReliability: description: >- Return only results where the percentage of tracked shipments in the past 365 days that were picked up within 2 hours of the scheduled time is above the given value format: int32 type: integer minimumTrackingPercentage: description: >- Return only results where the percentage of tracked shipments in the past 365 days which received at least one tracking update is above the given value format: int32 type: integer minimumVolume: description: >- Return only results where the number of shipments tracked in the past 365 days is above the given value enum: - VOLUME_0_TO_10_SHIPMENTS - VOLUME_11_TO_50_SHIPMENTS - VOLUME_51_TO_100_SHIPMENTS - VOLUME_101_OR_MORE_SHIPMENTS type: string origin: $ref: '#/components/schemas/Address' sortBy: description: >- Use the following metric to sort results. Defaults to SHIPMENT_VOLUME enum: - SHIPMENT_VOLUME - RECENT_SHIPMENT_VOLUME - DELIVERY_SCHEDULE_RELIABILITY - PICKUP_SCHEDULE_RELIABILITY - PERCENT_TRACKED - RECENT_PERCENT_TRACKED type: string sortDirection: description: >- Sort results by ascending or descending values of the selected metric. Defaults to DESC (descending). enum: - ASC - DESC type: string title: CarrierLanePerformanceQuery type: object CarrierLocation: type: object properties: address: $ref: '#/components/schemas/Address' coordinates: $ref: '#/components/schemas/GeoCoordinates' identifiers: type: array description: List of standard identifiers associated with this location. items: $ref: '#/components/schemas/TrackedShipmentStopLocationIdentifier' name: type: string description: The name of the location. timeZone: type: string description: >- TZ database identifier of the time zone at the stop (https://www.iana.org/time-zones) description: The location of a stop. CarrierPerformance: properties: carrier: $ref: '#/components/schemas/ConnectedCarrierContact' last30DaysDeliveryScheduleReliability: description: >- Percentage of tracked shipments in the past 30 days that were delivered within 2 hours of the scheduled time format: int32 type: integer last30DaysPercentTracked: description: >- Percentage of shipments in the past 30 days where tracking was initiated which received at least one tracking update format: int32 type: integer last30DaysPickupScheduleReliability: description: >- Percentage of tracked shipments in the past 30 days that were picked up within 2 hours of the scheduled time format: int32 type: integer last30DaysShipmentVolume: description: Number of shipments tracked in the past 30 days enum: - VOLUME_0_TO_10_SHIPMENTS - VOLUME_11_TO_50_SHIPMENTS - VOLUME_51_TO_100_SHIPMENTS - VOLUME_101_OR_MORE_SHIPMENTS type: string last365DaysDeliveryScheduleReliability: description: >- Percentage of tracked shipments in the past 365 days that were delivered within 2 hours of the scheduled time format: int32 type: integer last365DaysPercentTracked: description: >- Percentage of shipments in the past 365 days where tracking was initiated which received at least one tracking update format: int32 type: integer last365DaysPickupScheduleReliability: description: >- Percentage of tracked shipments in the past 365 days that were picked up within 2 hours of the scheduled time format: int32 type: integer last365DaysShipmentVolume: description: Number of shipments tracked in the past 365 days enum: - VOLUME_0_TO_10_SHIPMENTS - VOLUME_11_TO_50_SHIPMENTS - VOLUME_51_TO_100_SHIPMENTS - VOLUME_101_OR_MORE_SHIPMENTS type: string performanceByMonth: description: Average monthly performance for the past 12 months items: $ref: '#/components/schemas/MonthlyCarrierPerformance' type: array title: CarrierPerformance type: object CarrierPerformanceCollection: properties: carrierPerformances: description: List of responses items: $ref: '#/components/schemas/CarrierPerformance' type: array title: CarrierPerformanceCollection type: object CarrierPerformanceQuery: properties: carrierIdentifier: $ref: '#/components/schemas/ConnectedCarrierIdentifier' minimumDeliveryScheduleReliability: description: >- Return only results where the percentage of tracked shipments in the past 365 days that were delivered within 2 hours of the scheduled time is above the given value format: int32 type: integer minimumPickupScheduleReliability: description: >- Return only results where the percentage of tracked shipments in the past 365 days that were picked up within 2 hours of the scheduled time is above the given value format: int32 type: integer minimumTrackingPercentage: description: >- Return only results where the percentage of tracked shipments in the past 365 days which received at least one tracking update is above the given value format: int32 type: integer minimumVolume: description: >- Return only results where the number of shipments tracked in the past 365 days is above the given value enum: - VOLUME_0_TO_10_SHIPMENTS - VOLUME_11_TO_50_SHIPMENTS - VOLUME_51_TO_100_SHIPMENTS - VOLUME_101_OR_MORE_SHIPMENTS type: string sortBy: description: >- Use the following metric to sort results. Defaults to SHIPMENT_VOLUME enum: - SHIPMENT_VOLUME - RECENT_SHIPMENT_VOLUME - DELIVERY_SCHEDULE_RELIABILITY - PICKUP_SCHEDULE_RELIABILITY - PERCENT_TRACKED - RECENT_PERCENT_TRACKED type: string sortDirection: description: >- Sort results by ascending or descending values of the selected metric. Defaults to DESC (descending). enum: - ASC - DESC type: string title: CarrierPerformanceQuery type: object CarrierPosition: required: [] type: object properties: dateTime: type: string description: >- The timestamp denoting when the shipment was detected at the given coordinates. format: date-time latitude: maximum: 90 minimum: -90 type: number description: The geographic latitude, using the WGS84 coordinate system. format: float longitude: maximum: 180 minimum: -180 type: number description: The geographic longitude, using the WGS84 coordinate system. format: float description: >- The geographic coordinates where a shipment was located at a given point in time. CarrierResponseMethod: enum: - API - EDI - EMAIL type: string description: Method by which a carrier responds to bookings. CarrierRouteDiscovery: type: object properties: identifiers: maxItems: 250 minItems: 0 type: array description: A list of identifiers that the given route segments pertain to. items: $ref: '#/components/schemas/LogisticsIdentifier' routeSegments: maxItems: 50 minItems: 0 type: array description: The expected movements related to the given identifiers. items: $ref: '#/components/schemas/CarrierRouteSegment' description: The route information for the given identifiers. CarrierRouteSegment: required: [] type: object properties: fromStop: $ref: '#/components/schemas/CarrierStopLocation' identifiers: maxItems: 250 minItems: 0 type: array description: Identifiers relevant to this route segment. items: $ref: '#/components/schemas/LogisticsIdentifier' toStop: $ref: '#/components/schemas/CarrierStopLocation' transportationMode: type: string description: >- The transportation mode used to move the specified identifiers from the fromStop to the toStop. enum: - AIR - OCEAN - RAIL - UNKNOWN - TRUCKLOAD - PARCEL - LTL - BARGE description: >- Describes the movement of the given identifiers from one stop to another. CarrierStopLocation: type: object properties: location: $ref: '#/components/schemas/CarrierLocation' type: type: string description: The type of the stop. enum: - UNKNOWN - ORIGIN - DESTINATION - TRANSFER - OTHER - PORT_OF_LOADING - TRANSSHIPMENT_PORT - PORT_OF_DISCHARGE - PICKUP - DELIVERY - RETURN - WAREHOUSE - HUB - AIRPORT description: A shipment stop. ChainsAccessorial: required: [] type: object properties: code: enum: - CHAINS type: string details: allOf: - $ref: '#/components/schemas/QuantityKind' description: Count and size of chains. additionalProperties: false description: >- Accessorial which delineates the expected size and number of chains used in shipping. Charge: description: An individual charge provided in a rate quote. properties: amount: description: >- The actual amount charged by the capacity provider (adds into the total). This amount may be negative (e.g., for discounts). type: number amountInPreferredCurrency: description: >- A list of individual charges making up the total, if provided, in the preferred currency requested. Also returned for alternate rate quotes. type: number code: description: >- Code that identifies this line item charge. A list of charge codes used by project44 is provided in the API reference data section. type: string description: description: >- Readable description of the line item charge, often originating from the capacity provider. type: string itemFreightClass: description: >- If this is an item charge, the freight class of the line item, if provided. This field is not returned for volume LTL quotes. type: string itemWeight: description: >- If this is an item charge, the weight of the line item, if provided. If a preferred system of measurement was provided, the weight will be converted as necessary. type: number itemWeightUnit: description: >- If this is an item charge, the weight measurement unit for the provided line item weight. If a preferred system of measurement was provided, the weight will be converted as necessary. enum: - LB - KG type: string rate: description: >- Rate used by the capacity provider to calculate this charge (e.g., an amount charged per lb, per piece, per mile, etc.). This rate may be negative (e.g., for discounts). type: number title: Charge type: object ClassificationCode: enum: - '50' - '55' - '60' - '65' - '70' - '77.5' - '85' - '92.5' - '100' - '110' - '125' - '150' - '175' - '200' - '250' - '300' - '400' - '500' type: string description: An enumeration. ClientApplication: description: Contains the attributes of an OAuth 2.0 client application. properties: id: description: >- The id of the client application, generated and assigned by project44. It is an alphanumeric id. In OAuth 2.0, this is referred to as the "client_id". This id is not considered a secret, but it is generally known only to you, your application, and project44, and is part of your application's credentials, along with the client secret, which are required to authenticate your application to generate access tokens for use with project44's other APIs. If provided via HTTP Basic Authentication when generating an access token, this id is the "username" part of the base64-encoded Authorization header value. readOnly: true type: string name: description: >- Your name for the client application. Every application is required to have a name. type: string secret: description: >- The secret part of the client application's credentials, generated and assigned by project44. In OAuth 2.0, this is referred to as the "client_secret". It cannot be retrieved again after the first time project44 returns it to you, but a new secret can be set for an application via the "new-secret" endpoint. It is confidential and should be stored encrypted at rest in a secure location for your application's use only. It is needed to authenticate your application to generate access tokens for use with project44's other APIs. If provided via HTTP Basic Authentication when generating an access token, this secret is the "password" part of the base64-encoded Authorization header value. readOnly: true type: string title: ClientApplication type: object ClientApplicationCollection: description: Contains a list of client applications. properties: clientApplications: description: >- The list of client applications registered in your project44 account. items: $ref: '#/components/schemas/ClientApplication' type: array title: ClientApplicationCollection type: object Cod: type: object properties: amount: type: string description: >- Amount to be received for the COD. Valid Formats: ##.## (2 decimal places only). currency: allOf: - $ref: '#/components/schemas/Currency' description: >- Optional attribute to indicate currency of declaredValue. Defaults to USD. default: USD customerCheckAcceptable: type: boolean description: Indicates whether or not a customer check or cash is acceptable. remitTo: allOf: - $ref: '#/components/schemas/RemitTo' description: >- Required when accessorial code COD is present in the accessorial codes list. terms: allOf: - $ref: '#/components/schemas/CodTermCode' description: Payment terms associated with the COD. CodTermCode: enum: - Collect - Prepaid type: string description: An enumeration. Commodities: required: [] type: object properties: handlingUnits: type: array items: $ref: '#/components/schemas/BookingEBOLHandlingUnit' description: A list of the quantity of certain handling unit types. lineItemLayout: allOf: - $ref: '#/components/schemas/LineItemLayoutType' description: >- Valid values: Nested or Stacked.Nested: Indicates if the Handling Unit/Line Item relationship is known. If this value is used, each Line Item associated to a Handling Unit is conditionally required to be passed within that Handling Unit's object. Stacked: Indicates if the Handling Unit/Line Item relationship is not known. If this value is used, Line Items may passed within any Handling Unit object. ConnectedCarrierContact: properties: address: $ref: '#/components/schemas/Address' contact: $ref: '#/components/schemas/Contact' identifiers: description: Codes used to identify carrier items: $ref: '#/components/schemas/ConnectedCarrierIdentifier' type: array name: description: Name of carrier type: string title: ConnectedCarrierContact type: object ConnectedCarrierIdentifier: description: A capacity provider identifier object. properties: type: description: ${CapacityProviderIdentifier.apiModel.type.value} enum: - SCAC - DOT_NUMBER - MC_NUMBER - P44_EU - P44_GLOBAL - VAT_NUMBER type: string value: description: ${CapacityProviderIdentifier.apiModel.value.value} type: string title: ConnectedCarrierIdentifier type: object Contact: description: Contact information. properties: companyName: description: Company name. type: string contactName: description: Contact name. May be required for shipments. type: string email: description: Email address. May be required for shipments. type: string faxNumber: description: >- 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]'. type: string faxNumberCountryCode: description: >- 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'. type: string phoneNumber: description: >- 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]'. type: string phoneNumber2: description: >- 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]'. type: string phoneNumber2CountryCode: description: >- 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'. type: string phoneNumberCountryCode: description: >- 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'. type: string title: Contact type: object ContactReference: properties: contactId: description: >- The project44-generated id of the contact. Contacts can be created, updated, and retrieved through the contact management API. type: string type: description: Relationship of this contact to the location. type: string required: [] title: ContactReference type: object CountryCode: type: string description: 'Abbreviation of country (using ISO 3166 standards). (default: ''US'')' format: enum enum: - 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 CraneAccessorial: required: [] type: object properties: code: enum: - CRANE type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_bool_' description: Flag denoting requirement. additionalProperties: false description: Accessorial which flags the explicit need for crane service. CreateBookedShipment: required: [] type: object properties: attributes: maxItems: 5 type: array items: $ref: '#/components/schemas/CustomAttribute' description: >- An optional user-defined set of custom attributes to associate with this shipment. These are descriptors and identifiers which apply to the entire shipment and they are not shared with any carriers. bookings: type: array items: $ref: '#/components/schemas/CreateUpdateBooking' description: >- A list of bookings related to the shipment to create at the same time. identifiers: maxItems: 20 type: array items: $ref: '#/components/schemas/LogisticsIdentifier' name: type: string description: >- The descriptive name or otherwise human-readable description of the shipment created; this is not visible to the carrier. notes: maxLength: 300 type: string description: >- An optional, shipper-provided free-text space for notes on the shipment. routeInfo: $ref: '#/components/schemas/RouteInfo' description: >- The overall shipper's construct of the material good(s) to be transported by the carrier. CreateUpdateBooking: required: [] type: object properties: attributes: type: array items: $ref: '#/components/schemas/CustomAttribute' description: >- A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier. apiConfiguration: allOf: - $ref: '#/components/schemas/ApiConfiguration' description: Field for configuring the behavior of this API. capacityProviderIdentifier: allOf: - $ref: '#/components/schemas/CapacityProviderIdentifier' description: >- Reference to the desired carrier to transport the shipment across the booking's specified route segments. carrierContacts: type: array items: $ref: '#/components/schemas/BookingContact' description: >- Individuals representing the carrier to whom the booking should be sent. These contacts are not notify parties nor any individuals working with or on behalf of the shipper. expirationDateTime: type: string description: >- The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required. format: date-time notes: maxLength: 300 type: string description: >- An optional, shipper-provided free-text space for notes on the shipment. rateIdentifiers: minItems: 1 type: array items: $ref: '#/components/schemas/RateIdentifier' description: >- A list of at least one identifier as reference to the original source of the rate applicable to the booking. Typically a spot quote or a contract ID. routeSegmentIds: minItems: 1 type: array items: type: string format: uuid description: List of route-segment ids which apply to the booking. shipmentId: type: string description: >- The project44-generated identifier for the shipment which parents the booking. Optional when created with a Shipment in one request. Required when creating a booking separately. format: uuid shipmentDetails: type: array items: $ref: '#/components/schemas/ShipmentDetails' description: >- Descriptive information about the load to be transported; if the load does not change between route segments, this body is expected to be the same across each route-segment body. shipperContactInfo: allOf: - $ref: '#/components/schemas/BookingContact' description: Contact method to reach the shipper making the booking request. shippingDetails: anyOf: - $ref: '#/components/schemas/CreateUpdateTruckloadShippingDetails' - $ref: '#/components/schemas/CreateUpdateOceanShippingDetails' description: >- Information about how a load should be handled in transportation, specific to mode. totalRate: allOf: - $ref: '#/components/schemas/MonetaryValue' description: >- Optionally include the rate for transporting the load to the stops specified in the booking. description: >- As a shipper, request a booking from a carrier to transport a load across 1+ route segments. CreateUpdateBookingWithId: required: [] type: object properties: attributes: type: array items: $ref: '#/components/schemas/CustomAttribute' description: >- A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier. apiConfiguration: allOf: - $ref: '#/components/schemas/ApiConfiguration' description: Field for configuring the behavior of this API. capacityProviderIdentifier: allOf: - $ref: '#/components/schemas/CapacityProviderIdentifier' description: >- Reference to the desired carrier to transport the shipment across the booking's specified route segments. carrierContacts: type: array items: $ref: '#/components/schemas/BookingContact' description: >- Individuals representing the carrier to whom the booking should be sent. These contacts are not notify parties nor any individuals working with or on behalf of the shipper. expirationDateTime: type: string description: >- The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required. format: date-time id: type: string description: The project44-generated identifier for the booking. format: uuid notes: maxLength: 300 type: string description: >- An optional, shipper-provided free-text space for notes on the shipment. rateIdentifiers: minItems: 1 type: array items: $ref: '#/components/schemas/RateIdentifier' description: >- A list of at least one identifier as reference to the original source of the rate applicable to the booking. Typically a spot quote or a contract ID. routeSegmentIds: minItems: 1 type: array items: type: string format: uuid description: List of route-segment ids which apply to the booking. shipmentId: type: string description: >- The project44-generated identifier for the shipment which parents the booking. Optional when created with a Shipment in one request. Required when creating a booking separately. format: uuid shipmentDetails: type: array items: $ref: '#/components/schemas/ShipmentDetails' description: >- Descriptive information about the load to be transported; if the load does not change between route segments, this body is expected to be the same across each route-segment body. shipperContactInfo: allOf: - $ref: '#/components/schemas/BookingContact' description: Contact method to reach the shipper making the booking request. shippingDetails: anyOf: - $ref: '#/components/schemas/CreateUpdateTruckloadShippingDetails' - $ref: '#/components/schemas/CreateUpdateOceanShippingDetails' description: >- Information about how a load should be handled in transportation, specific to mode. totalRate: allOf: - $ref: '#/components/schemas/MonetaryValue' description: >- Optionally include the rate for transporting the load to the stops specified in the booking. description: >- As a shipper, request a booking from a carrier to transport a load across 1+ route segments. CreateUpdateDocument: required: [] type: object properties: identifiers: minItems: 1 type: array items: $ref: '#/components/schemas/Identifier' description: >- The list of identifiers related to this document. When x-tenant-role is 'CARRIER' InternalEntityType.SHIPPER_TENANT_UUID is MANDATORY if you want to associate this Document to Shipment. InternalEntityType.SHIPPER_TENANT_UUID is number identifying Shipper in project44. name: type: string description: The name of this document. type: allOf: - $ref: '#/components/schemas/DocumentType' description: The type of this document. CreateUpdateOceanShippingDetails: required: [] type: object properties: accessorials: type: array items: anyOf: - $ref: '#/components/schemas/RefrigeratedAccessorial' - $ref: '#/components/schemas/LiftgateAccessorial' - $ref: '#/components/schemas/TarpsAccessorial' - $ref: '#/components/schemas/StrapsAccessorial' - $ref: '#/components/schemas/ChainsAccessorial' - $ref: '#/components/schemas/DeckHeightAccessorial' - $ref: '#/components/schemas/CraneAccessorial' - $ref: '#/components/schemas/CallBeforeArrivalAccessorial' - $ref: '#/components/schemas/DockRequiredAccessorial' - $ref: '#/components/schemas/LockedGateAccessorial' - $ref: '#/components/schemas/FirstComeFirstServedAccessorial' - $ref: '#/components/schemas/AppointmentRequiredAccessorial' - $ref: '#/components/schemas/WhiteGloveAccessorial' - $ref: '#/components/schemas/HazmatAccessorial' - $ref: '#/components/schemas/ExcessiveLengthAccessorial' - $ref: '#/components/schemas/GuaranteedServiceLevelAccessorial' - $ref: '#/components/schemas/OtherAccessorial' description: >- Optional list of descriptors which detail any add-ons or declarations applicable which may be noteworthy to the carrier. bookingType: allOf: - $ref: '#/components/schemas/OceanBookingType' description: >- The type of sea freight to be handled; the container-fill volume, or lack thereof. cargoMeasurements: allOf: - $ref: '#/components/schemas/CargoMeasurements' description: >- Volume, weight and linear dimensions of the cargo. Required when booking `ROLL_ON_ROLL_OFF` and `LESS_THAN_CONTAINER_LOAD`. containerCount: anyOf: - $ref: '#/components/schemas/FullContainerLoadContainerCount' - $ref: '#/components/schemas/OutOfGaugeContainerCount' description: >- Number of equipment requested for a booking needs to be provided here. Only required when booking `FULL_CONTAINER_LOAD` or `OUT_OF_GAUGE`. incoterm: allOf: - $ref: '#/components/schemas/IncotermType' description: >- International Commercial Terms for shipment responsibilities, according to the [ICC](https://iccwbo.org/). parties: minItems: 1 type: array items: $ref: '#/components/schemas/BookingParty' description: >- Individual shipper-represented groups which are involved with the shipment on this serviceType: allOf: - $ref: '#/components/schemas/OceanServiceType' description: >- The type of service requested for booking. In other words, is the Carrier expected to handle the shipment between ports or boat-inaccessible yards. CreateUpdateTruckloadShippingDetails: required: [] type: object properties: accessorials: type: array items: anyOf: - $ref: '#/components/schemas/RefrigeratedAccessorial' - $ref: '#/components/schemas/LiftgateAccessorial' - $ref: '#/components/schemas/TarpsAccessorial' - $ref: '#/components/schemas/StrapsAccessorial' - $ref: '#/components/schemas/ChainsAccessorial' - $ref: '#/components/schemas/DeckHeightAccessorial' - $ref: '#/components/schemas/CraneAccessorial' - $ref: '#/components/schemas/CallBeforeArrivalAccessorial' - $ref: '#/components/schemas/DockRequiredAccessorial' - $ref: '#/components/schemas/LockedGateAccessorial' - $ref: '#/components/schemas/FirstComeFirstServedAccessorial' - $ref: '#/components/schemas/AppointmentRequiredAccessorial' - $ref: '#/components/schemas/WhiteGloveAccessorial' - $ref: '#/components/schemas/HazmatAccessorial' - $ref: '#/components/schemas/ExcessiveLengthAccessorial' - $ref: '#/components/schemas/GuaranteedServiceLevelAccessorial' - $ref: '#/components/schemas/OtherAccessorial' description: >- Optional list of descriptors which detail any add-ons or declarations applicable which may be noteworthy to the carrier. flatbedType: allOf: - $ref: '#/components/schemas/FlatbedType' description: >- The sub-equipment type of flatbed. Only applicable, and required, with a FLATBED trailer type. loadPreference: allOf: - $ref: '#/components/schemas/TruckLoadPreferenceType' description: The preferred load occupancy of the truck. trailerType: allOf: - $ref: '#/components/schemas/TrailerType' description: The equipment type of the trailer. trailerLength: allOf: - $ref: '#/components/schemas/Length' description: >- Total requested trailer length in feet or meters; must not exceed 53 Feet or 17 meters. trailerVolume: allOf: - $ref: '#/components/schemas/Volume' description: Total requested Trailer volume Crs: properties: properties: properties: {} type: object type: enum: - name - link type: string title: Crs type: object CubicDimension: description: A cubic dimension. properties: height: description: Height measurement. type: number length: description: Length measurement. type: number width: description: Width measurement. type: number title: CubicDimension type: object Currency: type: string description: The currency of the shipment value format: enum enum: - USD - CAD - MXN - EUR CurrencyConversionAuditInfo: description: Currency conversion metadata. properties: conversionRate: description: The currency conversion rate applied. type: number conversionTimestamp: description: The timestamp of the currency conversion. type: string title: CurrencyConversionAuditInfo type: object CustomAttribute: required: [] type: object properties: name: maxLength: 255 minLength: 1 type: string description: The key (name) for the custom attribute. Must be unique. value: maxLength: 255 minLength: 1 type: string deprecated: true values: maxItems: 250 minItems: 1 type: array description: The values for the custom attribute. items: type: string description: The values for the custom attribute. description: >- An optional user-defined set of custom attributes to associate with this shipment. CustomerAccount: properties: accountIdentifier: description: >- The account identifier of the customer to whom this shipment belongs. This will be used to identify the mutual customer in project44's system. type: string title: CustomerAccount type: object CustomsBroker: type: object properties: address1: type: string description: Primary Address line for the customsBroker location. address2: type: string description: Secondary Address line for the customsBroker location. city: type: string description: City Name for the customsBroker location. country: allOf: - $ref: '#/components/schemas/CountryCode' description: Three letter country code for the customsBroker location. contact: allOf: - $ref: '#/components/schemas/BookingEBOLContact' description: Contact related to the customs broker. name: type: string description: Company name associated with the customsBroker location. postalCode: maxLength: 6 minLength: 5 type: string description: >- The 5-digit (or 6-characters for Canada) zip code for the customsBroker location. stateProvince: allOf: - $ref: '#/components/schemas/StateProvinceCode' description: Two letter state/province code for the customsBroker location. type: allOf: - $ref: '#/components/schemas/CustomsBrokerType' description: >- Used to identify a customs broker that is involved in a cross-border freight move.Valid Values: Import or Export.Import: customs broker handling the destination-side of the cross-border freight move.Export: customs broker handling the origin-side of the cross-border freight move. CustomsBrokerType: enum: - Import - Export type: string description: An enumeration. CustomsInfo: description: A customs broker information. properties: customsBrokerLocation: $ref: '#/components/schemas/Location' title: CustomsInfo type: object CutOffDetails: type: object properties: cutOffDatetime: type: string description: The last date and time on which it is possible to make changes format: date-time documentationCutOffDatetime: type: string description: >- The last date and time when the documentation should be sent to the carrier format: date-time vesselCutOffDatetime: type: string description: The last date and time when the container should arrive to the port format: date-time DataOriginator: type: object properties: tenantUuid: type: string description: UUID of the tenant. format: uuid tenantName: type: string description: Name of the tenant. tenantId: type: integer description: Legacy identifier of the tenant, not to be used externally. format: int64 description: Tenant that created the shared data. DataRecipient: type: object properties: tenantUuid: type: string description: UUID of the tenant. format: uuid tenantName: type: string description: Name of the tenant. tenantId: type: integer description: Legacy identifier of the tenant, not to be used externally. format: int64 description: Tenant to whom the data is shared. DateQuartiles: properties: date: description: The first date in this timespan, in ISO-8601 format type: string p25: description: The 25th percentile value of this metric in days. format: double type: number p50: description: The median value of this metric in days. format: double type: number p75: description: The 75th percentile value of this metric in days. format: double type: number title: DateQuartiles type: object DateWindow: required: [] type: object properties: end: type: string description: >- The end date (with or without time) of the requested delivery window.Required when the timeCriticalDetails.type is Delivery Window.Valid Formats: YYYY-MM-DDTHH:mm:ss.sss (ISO 8601) format: date-time start: type: string description: >- The date (with or without time) the shipment is requested to be delivered.Required when timeCriticalDetails.type is populated with any valid value.Valid Formats: YYYY-MM-DDTHH:mm:ss.sss (ISO 8601) format: date-time DeckHeight: enum: - STANDARD - DROP_DECK - DOUBLE_DROP type: string description: An enumeration. DeckHeightAccessorial: required: [] type: object properties: code: enum: - DECK_HEIGHT type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_DeckHeight_' description: Deck height Specification. additionalProperties: false description: >- Accessorial which defined the expected height of the deck on the vehicle. DeliveryAccessorials: enum: - NCDEL - LTDDEL - AIRDEL - CAMPDEL - CHRCDEL - CLUBDEL - CNVDEL - CONDEL - EDUDEL - FARMDEL - GOVDEL - GRODEL - HOSDEL - HOTLDEL - MILDEL - MINEDEL - NARDEL - NURSDEL - PARKDEL - PIERDEL - PRISDEL - SSTORDEL - UTLDEL - NBDEL - AFTRHRDEL - HDAYDEL - WEDEL - SATDEL - SUNDEL - APPTDEL - NOTIFY - INDEL - INEDEL - INGDEL - INNEDEL - UNLOADDEL - COMDEL - DCDEL - CFSDEL - DOCKDEL - DVALDEL - EMERGENCYDEL - FBEDDEL - LGDEL - MALLDEL - OVSZEDEL - PJACKDEL - RESDEL - RSRTDEL - SORTDEL - TWOMAN - XCHGDEL - XFERDEL - CSNLDDEL description: An enumeration. DeliveryAppointmentDetails: type: object properties: end: type: string description: >- Ending appointment date (with or without time) the shipment is requested to be delivered.Valid Formats: YYYY-MM-DDTHH:mm:ss.sss (ISO 8601) format: date-time start: type: string description: >- Starting appointment date (with or without time) the shipment is requested to be delivered.Required when accessorials.code list includes APTD.Valid Formats: YYYY-MM-DDTHH:mm:ss.sss (ISO 8601) format: date-time DerivedOrderHealth: description: derived order health. properties: arrivalStatus: $ref: '#/components/schemas/ArrivalStatus' estimatedTimeOfArrival: description: >- Estimated delivery date and time for this order based on its constituent shipments (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2022-11-14T12:30:00-0500). This field is generated by project44. type: string title: DerivedOrderHealth type: object DescribeShipmentResponse: required: [] type: object properties: attributes: maxItems: 25 minItems: 0 type: array description: >- An optional user-defined set of custom attributes to associate with this shipment. xml: wrapped: true items: $ref: '#/components/schemas/CustomAttribute' accessGroups: uniqueItems: true type: array description: >- This set is populated when a shipment is entitled to specific access groups, it denotes which group(s) are entitled visibility. xml: wrapped: true items: $ref: '#/components/schemas/AccessGroup' createdDateTime: type: string description: >- The date and time when this shipment was created. This value is read only and will be ignored during shipment creation. format: date-time costs: maxItems: 25 minItems: 0 type: array description: >- All costs incurred for this shipment and the assets contained within. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentCost' events: type: array description: All events that occurred for this shipment. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentEvent' id: type: string description: >- Master shipment id of the shipment. Will always be populated on the response. format: uuid identifiers: maxItems: 250 minItems: 0 type: array description: >- Used to identify a shipment.

Only the following identifier types are accepted when creating or updating a shipment: xml: wrapped: true items: $ref: '#/components/schemas/LogisticsIdentifier' lastModifiedDateTime: type: string description: >- The date and time when this shipment was last modified. This value is read only and will be ignored during shipment creation or modification. format: date-time plan: $ref: '#/components/schemas/ShipmentPlan' problems: type: array description: >- List of errors and/or warnings that occurred while processing the request xml: wrapped: true items: $ref: '#/components/schemas/Message' routeInfo: $ref: '#/components/schemas/ShipmentRouteInfo' relatedShipments: maxItems: 250 minItems: 0 type: array description: List of related shipments of the parent shipment. This is optional. xml: name: sub_shipments wrapped: true items: $ref: '#/components/schemas/SimpleTrackedShipment' shipmentShareLink: type: string description: Public link to view the shipment in the VOC. description: Response model for the describe shipment API DimensionalWeight: description: >- The Dimensional Weight which includes quantity, package type, cubic dimension details, and weight details for the inventory item properties: cubicDimension: $ref: '#/components/schemas/CubicDimension' lengthUnit: description: >- The length unit applicable for the cubic dimension details for the DimensionalWeight enum: - IN - CM - FT - M type: string packageType: description: The package type for the DimensionalWeight enum: - BAG - BALE - BOX - BUCKET - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - DRUM - PAIL - PLT - PIECES - REEL - ROLL - SKID - TOTE - TUBE type: string quantity: description: The quantity of identical packages that make up this inventory item format: int64 type: integer weight: $ref: '#/components/schemas/Weight' title: DimensionalWeight type: object Dimensions: type: object properties: height: minimum: 0 type: number length: minimum: 0 type: number unit: allOf: - $ref: '#/components/schemas/LengthUnit' description: The unit of measurement for these lengths. Defaults to FT. default: FT width: minimum: 0 type: number DimensionsUnit: enum: - Inches - Centimeters type: string description: An enumeration. DistanceMeasurement: type: object properties: unit: $ref: '#/components/schemas/DistanceUnit' value: type: number description: Numeric value of a measurement description: A measure of distance with a value and unit DistanceUnit: type: string description: Physical unit of measurement format: enum enum: - FT - M - MI - KM DockRequiredAccessorial: required: [] type: object properties: code: enum: - DOCK_REQUIRED type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_bool_' description: Flag denoting requirement. additionalProperties: false description: Accessorial which flags the explicit need for dock service. Document: required: [] type: object properties: addedByCompany: type: string description: The company name of the tenant owning this document. addedByUser: type: string description: The name of the user owning this document. createdDateTime: type: string description: >- The date and time when this document was created. This value is read only. format: date-time deletedDateTime: type: string description: >- The date and time when this document was deleted. This value is read only. format: date-time files: type: array items: $ref: '#/components/schemas/Image' description: The list of images related to this document. identifiers: minItems: 1 type: array items: $ref: '#/components/schemas/Identifier' description: >- The list of identifiers related to this document. When x-tenant-role is 'CARRIER' InternalEntityType.SHIPPER_TENANT_UUID is MANDATORY if you want to associate this Document to Shipment. InternalEntityType.SHIPPER_TENANT_UUID is number identifying Shipper in project44. id: type: string description: The id of this document. Will always be populated on response. format: uuid lastModifiedDateTime: type: string description: >- The date and time when this document was last modified. This value is read only. format: date-time name: type: string description: The name of this document. type: allOf: - $ref: '#/components/schemas/DocumentType' description: The type of this document. DocumentType: enum: - BILL_OF_LADING - HOUSE_BILL_OF_LADING - AIRWAY_BILL - COMMERCIAL_INVOICE - CUSTOMS_DOCUMENTS - PACKING_SLIP - CERTIFICATE_OF_ORIGIN - PROOF_OF_DELIVERY - DELIVERY_RECEIPT - ECMR - WEIGHT_CERTIFICATE - INSPECTION_CERTIFICATE - LETTER_OF_AUTHORIZATION - LUMPER_CERTIFICATE - INVOICE - HAZMAT_DOCUMENT - SHIPPING_LABEL - OTHER type: string description: An enumeration. DryCargoContainerCount: type: object properties: fortyFootContainerCount: type: integer description: Count of 40ft flat-rack containers default: 0 fortyFootHighCubeCount: type: integer description: Count of 40ft flat-rack high-cube containers default: 0 fortyfiveFootHighCubeCount: type: integer description: Count of 45ft flat-rack high-cube containers default: 0 twentyFootContainerCount: type: integer description: Count of 20ft flat-rack containers default: 0 Ebol: required: [] type: object properties: images: allOf: - $ref: '#/components/schemas/EbolImages' description: Images related to the eBOL request such as BOL or Shipping Labels. messageStatus: allOf: - $ref: '#/components/schemas/EbolMessageStatus' description: Object containing message status details. referenceNumbers: allOf: - $ref: '#/components/schemas/EbolReferenceNumbers' description: Reference numbers related to the eBOL request. transactionDate: type: string description: The date associated with this electronic bill of lading transaction. format: date-time version: type: string description: >- Indicates which version of the Digital LTL Council Bill of Lading spec was returned. Example: v1 EbolImages: required: [] type: object properties: bol: type: string description: Base 64 encoded PDF of the populated Bill Of Lading. shippingLabels: type: string description: Base 64 encoded PDF of the populated shipping labels. EbolMessageStatus: required: [] type: object properties: code: type: string description: Indicates response detail code. information: type: array items: $ref: '#/components/schemas/MessageStatusInformation' description: List of information related to the eBOL request. message: type: string description: Provides information pertaining to the response code. resolution: type: string description: Provides guidance pertaining to the response code. status: allOf: - $ref: '#/components/schemas/MessageStatus' description: Indicates the status of the request. EbolReferenceNumbers: required: [] type: object properties: pro: type: string description: >- Shipper's pre-assigned PRO number for the requested carrier. If one was not provided in the request, one will be auto assigned by the carrier. shipmentConfirmationNumber: type: string description: Number provided by the carrier to acknowledge they accepted the BOL. Email: required: [] type: object properties: addresses: minItems: 1 type: array items: type: string description: >- Provide one or more email addresses to receive the bol and/or shipping labels PDF. includeBol: type: boolean description: >- Used to request the bill of lading PDF to be sent to one or more email addresses. includeLabels: type: boolean description: >- Used to request the shipping labels PDF to be sent to one or more email addresses. EmergencyContact: required: [] type: object properties: name: type: string description: >- Full name of who should be contacted in the case of a hazardous materials-related issue. phone: maxLength: 10 minLength: 10 type: string description: >- Phone number of who should be contacted in the case of a hazardous materials-related issue.Valid Formats: ########## (10 digits - Area code + phone). EmissionData: description: Describes emission data. properties: cargoWeight: $ref: '#/components/schemas/WeightMeasurement' co2EmissionIntensity: $ref: '#/components/schemas/WeightPerDistanceMeasurement' distance: $ref: '#/components/schemas/DistanceMeasurement' loadFactor: description: >- Ratio of weight or volume of cargo in the shipment to the vehicle's capacity. format: float type: number totalCO2Emissions: $ref: '#/components/schemas/WeightMeasurement' vehicleInfo: $ref: '#/components/schemas/VehicleInfo' title: EmissionData type: object EquipmentIdentifier: properties: type: description: The equipment type of the tracked asset. enum: - CONTAINER_ID - RAIL_CAR_ID - TRAILER_ID type: string value: description: >- The equipment initials and number of the tracked asset, e.g., BNSF654321. type: string title: EquipmentIdentifier type: object ExceptionDetail: type: object properties: oceanBookingUpdateDetails: $ref: '#/components/schemas/OceanBookingUpdateDetails' description: Detail of the exception ExcessiveLength: required: [] type: object properties: length: maximum: 30 minimum: 6 type: integer description: Excessive Length requested in feet. additionalProperties: false ExcessiveLengthAccessorial: required: [] type: object properties: code: enum: - EXCESSIVE_LENGTH type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_ExcessiveLength_' description: Flag denoting requirement. additionalProperties: false description: Accessorial which flags the explicit need for appointment service. ExcessLengthAccessorials: enum: - ELS_6 - ELS_7 - ELS_8 - ELS_9 - ELS_10 - ELS_11 - ELS_12 - ELS_13 - ELS_14 - ELS_15 - ELS_16 - ELS_17 - ELS_18 - ELS_19 - ELS_20 - ELS_21 - ELS_22 - ELS_23 - ELS_24 - ELS_25 - ELS_26 - ELS_27 - ELS_28 - ELS_29 - ELS_30 description: An enumeration. FileType: enum: - PDF - PNG - JPEG - GIF - TIF type: string description: An enumeration. FilterSuggestionRequest: required: [] type: object properties: fieldType: type: string description: The target field for which to retrieve suggestions. enum: - ATTRIBUTE_KEY - ATTRIBUTE_VALUE - CARRIER_NAME - CARRIER_IATA - CARRIER_ICAO - CARRIER_SCAC - CARRIER_US_DOT_NUMBER - CARRIER_MC_NUMBER - CARRIER_NMC_ID - CARRIER_MASTER_ID - VESSEL_NAME - VESSEL_MMSI - VESSEL_IMO - VESSEL_CALL_SIGN - TRAILER_ID - VEHICLE_ID - LICENSE_PLATE - RAIL_CAR_ID - FLIGHT_NUMBER - DRIVER_MOBILE_PHONE_NUMBER - WAGON_ID - TRAIN_NUMBER - EXPORT_CUSTOMS_BROKER - IMPORT_CUSTOMS_BROKER - POL_QUALITY_CONTROL_PROVIDER - POD_QUALITY_CONTROL_PROVIDER - ORIGIN_LOCATION_NAME - ORIGIN_ADDRESS - ORIGIN_CITY - ORIGIN_STATE - ORIGIN_COUNTRY - ORIGIN_ZIP - ORIGIN_PORT_CODE - ORIGIN_AIRPORT_CODE - DESTINATION_LOCATION_NAME - DESTINATION_ADDRESS - DESTINATION_CITY - DESTINATION_STATE - DESTINATION_COUNTRY - DESTINATION_ZIP - DESTINATION_PORT_CODE - DESTINATION_AIRPORT_CODE - STOP_LOCATION_NAME - STOP_ADDRESS - STOP_CITY - STOP_STATE - STOP_COUNTRY - STOP_ZIP - STOP_PORT_CODE - STOP_AIRPORT_CODE - EVENT_DESCRIPTION - EVENT_LOCATION_NAME - EVENT_ADDRESS - EVENT_CITY - EVENT_STATE - EVENT_COUNTRY - EVENT_ZIP - EVENT_PORT_CODE - EVENT_AIRPORT_CODE - ORDER_IDENTIFIER_CONTRACT - ORDER_IDENTIFIER_LAUNCH_CODE - ORDER_IDENTIFIER_LOAD - ORDER_IDENTIFIER_MANUFACTURER - ORDER_IDENTIFIER_PROMOTION - ORDER_IDENTIFIER_SEASON - ORDER_IDENTIFIER_VENDOR - ORDER_ATTRIBUTE_KEY - ORDER_ATTRIBUTE_VALUE - ORDER_TAG_ANALYST - ORDER_TAG_CARRIER - ORDER_TAG_CATEGORY - ORDER_TAG_COMMODITY - ORDER_TAG_DEPARTMENT - ORDER_TAG_DIRECTOR - ORDER_TAG_FAMILY - ORDER_TAG_GROUP - ORDER_TAG_MANAGER - ORDER_TAG_SECTOR - ORDER_ORIGIN_LOCATION_ID - ORDER_ORIGIN_LOCATION_NAME - ORDER_ORIGIN_CITY - ORDER_ORIGIN_STATE - ORDER_ORIGIN_COUNTRY - ORDER_ORIGIN_POSTAL_CODE - ORDER_DESTINATION_LOCATION_ID - ORDER_DESTINATION_LOCATION_NAME - ORDER_DESTINATION_CITY - ORDER_DESTINATION_STATE - ORDER_DESTINATION_COUNTRY - ORDER_DESTINATION_POSTAL_CODE - ORDER_SUPPLIER_LOCATION_ID - ORDER_SUPPLIER_LOCATION_NAME - ORDER_SUPPLIER_CITY - ORDER_SUPPLIER_STATE - ORDER_SUPPLIER_COUNTRY - ORDER_SUPPLIER_POSTAL_CODE - ORDER_BILLING_LOCATION_ID - ORDER_BILLING_LOCATION_NAME - ORDER_BILLING_CITY - ORDER_BILLING_STATE - ORDER_BILLING_COUNTRY - ORDER_BILLING_POSTAL_CODE - LOAD_ITEM_DESCRIPTION - SHARING_RECIPIENT_TENANT_NAME - SHARING_ORIGINATOR_TENANT_NAME fieldName: type: string description: >- Optional - intended to further narrow the search scope when dealing with key-value pairs. For example, when searching with fieldType = ATTRIBUTE_VALUE, setting this to "WAREHOUSE" will return suggestions only for attributes where the key/name is "WAREHOUSE". limit: maximum: 100 minimum: 1 type: integer description: The maximum number of suggestions to return. format: int32 query: type: string description: The input with which to search. FilterSuggestionResponse: type: object properties: suggestions: type: array items: type: string description: A collection of suggestions. FirstComeFirstServedAccessorial: required: [] type: object properties: code: enum: - FIRST_COME_FIRST_SERVED type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_bool_' description: Flag denoting requirement. additionalProperties: false description: >- Accessorial which flags the explicit need for first come, first served service. FlatbedType: enum: - CONESTOGA - DOUBLE_DROP type: string description: An enumeration. ForecastableTimeDuration: type: object properties: actualDuration: $ref: '#/components/schemas/TimeDuration' estimatedDuration: $ref: '#/components/schemas/TimeDuration' description: A duration of time which may be measured and/or forecasted. FreightClass: enum: - '50' - '55' - '60' - '65' - '70' - '77.5' - '85' - '92.5' - '100' - '110' - '125' - '150' - '175' - '200' - '250' - '300' - '400' - '500' type: string description: An enumeration. FreightTerms: description: >- Details the terms of the freight ownership during transport. Specified in the quote, contract or general terms and conditions. properties: freightOwnershipType: description: >- Defines if the carrier collects the transportation charges from the buyer, or the seller prepays for the transportation charges. enum: - PREPAID - COLLECT type: string transportationPaymentType: description: Defines who pays the freight costs. enum: - ORIGIN - DESTINATION type: string title: FreightTerms type: object FullContainerLoadContainerCount: type: object properties: dryCargoCount: allOf: - $ref: '#/components/schemas/DryCargoContainerCount' description: Number of dry cargo container units. reeferCount: allOf: - $ref: '#/components/schemas/ReeferContainerCount' description: Number of refrigerated container units. description: >- Number of containers that has been fully occupied by single consignee. At least one field must be provided. FullValueCoverageDetails: required: [] type: object properties: currency: allOf: - $ref: '#/components/schemas/Currency' description: >- Optional attribute to indicate currency of monetaryValue. Defaults to USD. default: USD monetaryValue: type: string description: 'Value of the cargo. Valid Formats: ##.## (2 decimal places only).' GeoCoordinates: properties: latitude: description: >- The approximate geographic latitude of a location, using the WGS84 coordinate system. format: float type: number longitude: description: >- The approximate geographic longitude of a location, using the WGS84 coordinate system. format: float type: number title: GeoCoordinates type: object Geofence: properties: geometry: $ref: '#/components/schemas/GeoJsonObject' type: description: Geofence type. See reference documentation. enum: - TIME - DISTANCE - POLYGON type: string units: description: >- Units the value is provided in. Units must be appropriate for the type. enum: - MINUTES - METERS type: string value: description: >- Value in the appropriate units. Only used for TIME and DISTANCE type geofences. format: double type: number required: [] title: Geofence type: object GeoJsonObject: discriminator: propertyName: type properties: bbox: items: format: double type: number type: array crs: $ref: '#/components/schemas/Crs' type: type: string required: [] title: GeoJsonObject type: object grantTokenOAuth2_request: properties: client_id: description: >- The id of the client application, generated and assigned by project44 via the OAuth 2.0 client applications APIs. type: string client_secret: description: >- The secret part of the client application's credentials, generated and assigned by project44 via the OAuth 2.0 client applications APIs. type: string grant_type: description: >- The OAuth 2.0 authorization grant type, or flow, to be used by the client application. project44 supports only the "client_credentials" grant type and does not currently support grant types involving end user consent. enum: - client_credentials type: string type: object GuaranteedByHour: required: [] type: object properties: hour: maximum: 14 minimum: 8 type: integer description: Guaranteed by Hour of the day. minute: maximum: 59 minimum: 0 type: integer description: Minute of the hour. default: 0 additionalProperties: false GuaranteedServiceLevelAccessorial: required: [] type: object properties: code: enum: - GUARANTEED type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_GuaranteedByHour_' description: Flag denoting requirement. additionalProperties: false description: Accessorial which flags the explicit need for appointment service. HandlingUnit: description: >- An object that represents the physical handling unit, e.g. a pallet associated with a shipment. properties: commodityType: description: >- This code dictates the duty rating, as well as alerts you to any import or export restrictions. type: string contact: $ref: '#/components/schemas/Contact' deliveryStopNumber: description: >- A reference to the stop number where this item will be dropped off. For LTL this value should always be 2. format: int32 type: integer description: description: A brief description of the handling unit and its contents. type: string freightClasses: description: A list of freight classes for this handling unit. items: enum: - '50' - '55' - '60' - '65' - '70' - '77.5' - '85' - '92.5' - '100' - '110' - '125' - '150' - '175' - '200' - '250' - '300' - '400' - '500' type: string type: array handlingUnitDimensions: $ref: '#/components/schemas/CubicDimension' handlingUnitQuantity: description: The number of handling units identical to this one. format: int32 type: integer handlingUnitType: description: The type of the handling unit. enum: - BAG - BALE - BARREL - BOX - BUCKET - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - DRUM - PACK - PAIL - PALLET - PIECES - REEL - ROLL - SKID - TOTE - TRAY - TUBE type: string harmonizedCode: description: >- Harmonized System (HS) Code for the product as defined by the World Customers Organization, usually 6 characters in length, but up to 10 characters as defined by customs organizations by country.In the US, this would be the HTS or HTSA Code as defined by the US International Trade Commission. type: string nmfcCodes: description: A list of the NMFC codes associated with this shipment. items: $ref: '#/components/schemas/NmfcCode' type: array packages: description: The packages on/in this handling unit. items: $ref: '#/components/schemas/Package' type: array pickupStopNumber: description: >- A reference to the stop number where this item will be picked up. For LTL this value should always be 1 format: int32 type: integer stackable: description: >- True false value indicating whether or not the handling units can be stacked type: boolean totalValue: $ref: '#/components/schemas/MonetaryValue' weightPerHandlingUnit: description: Weight per handling unit. type: number title: HandlingUnit type: object HandlingUnitsDetails: type: object properties: details: type: array items: $ref: '#/components/schemas/BookingHandlingUnit' description: >- A list of details that describe the specifics of the handling units for this load. HandlingUnitType: enum: - BAG - BALE - BOX - BUCKET - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - DRUM - PAIL - PALLET - PIECES - REEL - ROLL - SKID - TOTE - TUBE type: string description: Enumeration of supported package type codes. HandlingUnitTypeCode: enum: - BAG - BAL - BBL - BSK - BIN - BOX - BXT - BCH - BDL - CAB - CAG - CAN - CBY - CAR - CTN - CAS - CSK - CHS - COL - CNT - COR - CRT - CYL - DRM - DBK - ENV - FIR - GLD - HPR - HGH - HRB - INT - JAR - JCN - KEG - KIT - LIF - LBK - LSE - MXD - OTH - PKG - PCK - PAL - PAT - PCS - PLN - RCK - REL - ROL - SKD - SLP - SPL - TNK - TBN - TRY - TRU - TRK - TUB - TBE - UNT - VPK - WRP type: string description: An enumeration. HandlingUnitTypeQuantity: description: An object that represents the quantity of each handling unit type. properties: handlingUnitType: description: The type of handling unit. enum: - BAG - BALE - BARREL - BOX - BUCKET - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - DRUM - PACK - PAIL - PALLET - PIECES - REEL - ROLL - SKID - TOTE - TRAY - TUBE type: string quantity: description: 'The quantity of this particular handling unit type. ' format: int32 type: integer title: HandlingUnitTypeQuantity type: object HazardousDetails: type: object properties: class: type: string description: Class that the hazardous material is categorized by. contractNumber: type: string description: The contract number with the hazardous materials contact. propername: type: string description: >- Proper shipping name for the hazardous material. From DOT regulations 172.101 packingGroup: type: string description: >- Hazmat Packing Group number. Not all hazmat items have a packing group. technicalName: type: string description: >- Technical name for the hazardous material. Not all hazardous items will have a technical name. From DOT regulations 172.101 unnaNumber: type: string description: >- Proper Identification Number (UN or NA) corresponding to the Proper Shipping Name. weight: type: integer description: Total weight of hazardous material covered by one description. HazardousDetailsContact: required: [] type: object properties: emergencyContact: $ref: '#/components/schemas/EmergencyContact' HazmatAccessorial: required: [] type: object properties: code: enum: - HAZMAT type: string details: $ref: '#/components/schemas/HazmatKind' additionalProperties: false description: >- Accessorial for describing the HAZMAT Class and UN Code for transportable goods. HazmatDetail: type: object properties: hazardClass: type: string description: >- The hazard class number, according to the classification system outlined by the Federal Motor Carrier Safety Administration (FMCSA). This is a one digit number or a two digit number separated by a decimal. identificationNumber: type: string description: >- The United Nations (UN) or North America (NA) number identifying the hazmat item. properShippingName: type: string description: The proper shipping name of the hazardous item. packingGroup: allOf: - $ref: '#/components/schemas/HazmatPackingGroup' description: The packing group of the hazardous item. HazmatDetails: description: >- Provides important information about the hazardous materials to be transported, as required by the US Department of Transportation (DOT). Only required for shipment requests. properties: code: description: >- The hazard class number, according to the classification system outlined by the FederalMotor Carrier Safety Administration (FMCSA). This is a one digit number or a two digit number separated by a decimal. type: string emergencyContact: $ref: '#/components/schemas/Contact' identificationNumber: description: >- The United Nations (UN) or North America (NA) number identifying the hazmat item. type: string packingGroup: description: >- The hazmat packing group for a line item, indicating the degree of danger. enum: - I - II - III - NONE type: string properShippingName: description: The proper shipping name of the hazmat item. type: string title: HazmatDetails type: object HazmatKind: required: [] type: object properties: hazmatClass: type: string description: >- The hazard class number, according to the classification system outlined by the Federal Motor Carrier Safety Administration (FMCSA). This is a one digit number or a two digit number separated by a decimal. unCode: type: string description: 4-Digit UN Code. additionalProperties: false HazmatPackingGroup: enum: - I - II - III - NONE type: string description: An enumeration. Identifier: required: [] type: object properties: type: anyOf: - $ref: '#/components/schemas/LogisticsIdentifierType' - $ref: '#/components/schemas/InternalEntityType' description: The identifier type that can identify this entity. value: type: string description: Identifier. IdentifierWrapper: required: [] type: object properties: operator: allOf: - $ref: '#/components/schemas/Operator' default: EQUALS values: type: array items: $ref: '#/components/schemas/Identifier' description: List of logistics identifiers to search for Image: required: [] type: object properties: mediaType: allOf: - $ref: '#/components/schemas/FileType' description: The media type of this image. sizeInBytes: type: integer description: The file size of this image in bytes type: allOf: - $ref: '#/components/schemas/ImageType' description: The image type of this image. url: type: string description: The url of this image. ImageApiConfiguration: description: Contains fields used to configure the image API. properties: fallBackToDefaultAccountGroup: description: >- 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') type: boolean title: ImageApiConfiguration type: object Images: required: [] type: object properties: email: $ref: '#/components/schemas/Email' includeBol: type: boolean description: >- Indicates whether or not you want an image of the populated BOL returned in the response. default: false includeShippingLabels: type: boolean description: >- Indicates whether or not you want image(s) of the shipping labels returned in the response. default: false shippingLabels: $ref: '#/components/schemas/ShippingLabels' ImageType: enum: - ORIGINAL - THUMBNAIL type: string description: An enumeration. IncotermType: enum: - EXW - FCA - FAS - FOB - CFR - CIF - CPT - CIP - DPU - DAP - DDP type: string description: >- International commercial terms according to the [ICC](https://iccwbo.org/). EXW: EX WORKS, FCA: FREE CARRIER, FAS: FREE ALONGSIDE SHIP, FOB: FREE ON BOARD, CFR: COST & FREIGHT, CIF: COST, INSURANCE & FREIGHT CPT: COST PAID TO, CIP: CARRIER & INSURANCE PAID TO, DPU: DELIVERED AT PLACE UNLOADED DAP: DELIVERED AT PLACE, DDP: DELIVERED DUTY PAID IntegerRange: description: Integer Range that contains a maximum and minimum. properties: max: description: Maximum integer in this range. format: int32 type: integer min: description: Minimum integer in this range. format: int32 type: integer title: IntegerRange type: object InternalEntityType: enum: - MASTER_SHIPMENT_ID - BOOKING_ID - STOP_ID - DRIVER_ID - TRUCKLOAD_TRACKING_ID - ORDER_ID - SHIPPER_TENANT_UUID type: string description: An enumeration. InventoryContact: description: Contact information. properties: companyName: description: Company name. type: string contactName: description: Contact name. May be required for shipments. type: string contactType: enum: - PRIMARY - SECONDARY - WAREHOUSE - TRANSPORTATION - FINANCE - OTHER type: string email: description: Email address. May be required for shipments. type: string faxNumber: description: >- 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]'. type: string faxNumberCountryCode: description: >- 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'. type: string phoneNumber: description: >- 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]'. type: string phoneNumber2: description: >- 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]'. type: string phoneNumber2CountryCode: description: >- 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'. type: string phoneNumberCountryCode: description: >- 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'. type: string title: InventoryContact type: object InventoryId: description: >- Inventory Id model to hold the system generated unique id for inventory orders and items. properties: id: description: The unique id string type: string title: InventoryId type: object InventoryIdentifier: description: >- Details the identifiers of the inventory. The value and description pair can be applicable to Department, Category, Group, Family, Vendor, Manufacturer and Promotion properties: description: description: The description for the identifier type: string type: description: The type of the identifier enum: - DEPARTMENT - SUB_DEPARTMENT - CATEGORY - GROUP - FAMILY - GENDER - VENDOR - MANUFACTURER - PROMOTION - SECTOR - DIVISION - CLASS - SUB_CLASS - CODE - SEASON type: string value: description: The value for the identifier type: string title: InventoryIdentifier type: object InventoryIdList: description: >- List of Inventory Ids to hold system generated unique ids for inventory orders and items. properties: ids: description: >- List of Inventory Ids to hold system generated unique ids for inventory orders and items. items: $ref: '#/components/schemas/InventoryId' type: array title: InventoryIdList type: object InventoryItem: description: >- Inventory Item model that contains attribute describe different types of inventory items such as id, SKU (stock keeping unit), description, UPC (universal product code), cost/retail values, quantity, dim-weight (dimensional Weight), promotional windows (seasonal items), manufactured/packaged date-time, sellBy/consumedBy date-time, perishable/taxable flags, Hazardous material details, shipment/order list, etc. properties: consumeByDateTime: description: >- The Consumed-By date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string description: description: The description of the inventory item type: string id: description: >- The unique identifier for one inventory item. This identifier should be treated as an opaque string and should be used to associate the inventory item to other orders and items. type: string inventoryDimensionalWeight: $ref: '#/components/schemas/DimensionalWeight' inventoryIdentifiers: description: The customer-defined unique identifiers for the item items: $ref: '#/components/schemas/InventoryIdentifier' type: array lineItemHazmatDetail: $ref: '#/components/schemas/LineItemHazmatDetail' manufacturedDateTime: description: >- The manufactured date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string orderIds: description: >- The list of order identifiers for the inventory item. These must be the unique project44-generated ids from the id field of orders in the system. items: type: string type: array packagedDateTime: description: >- The packaged date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string perUnitCost: $ref: '#/components/schemas/MonetaryValue' perUnitRetailValue: $ref: '#/components/schemas/MonetaryValue' perishable: description: >- The flag to indicate if inventory item is perishable (default: 'false') type: boolean promotionalDateTimeWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' sellByDateTime: description: >- The Sell-By date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string serialNumber: description: >- A customer provided number that distinguishes identical goods or items. type: string shipmentIds: description: >- The list of shipment identifiers associated with the inventory item. These values must be the project44-generated masterShipmentId from the shipments. items: format: uuid type: string type: array stockKeepingUnit: description: >- The Stock Keeping Unit (aka SKU) is the common code used to represent goods or items. type: string taxable: description: 'The flag to indicate if inventory item is taxable (default: ''false'')' type: boolean universalProductCode: description: >- The Universal Product Code (aka UPC) is the bar code value used to represent goods or items. type: string title: InventoryItem type: object InventoryItemList: description: List of Inventory Items. properties: items: description: List of Inventory Items. items: $ref: '#/components/schemas/InventoryItem' maxItems: 500 minItems: 0 type: array title: InventoryItemList type: object InventoryItemPage: description: >- A wrapper class for InventoryItem objects that represents a paginated response containing results and information about the current page. properties: paginationInfo: $ref: '#/components/schemas/PaginationInfo' results: description: List of resources contained on this page. items: $ref: '#/components/schemas/InventoryItem' type: array title: InventoryItemPage type: object InventoryLocation: properties: additionalContacts: description: Additional contact information at the location. items: $ref: '#/components/schemas/InventoryContact' type: array address: $ref: '#/components/schemas/Address' contact: $ref: '#/components/schemas/InventoryContact' id: type: string name: description: Name of the location. type: string suppliedId: description: Additional name or id of the location. type: string title: InventoryLocation type: object InventoryOrder: description: >- Inventory Order model that contains attributes that describe different types of orders such as purchase order, sales order, advanced shipment notice, etc. properties: additionalOrderIdentifiers: description: >- Semi-unique numbers or terms that describe orders. These are to be used in addition to the unique order object ID and can be used to search and filter. Examples include a vendor contract number (2108), or promotion specific term-number combination (Winter_1267). items: $ref: '#/components/schemas/InventoryOrderIdentifier' type: array attributes: description: >- An optional user-defined set of custom attributes to associate with this order. All attribute keys must be pre-defined by your organization's admin. items: $ref: '#/components/schemas/OrderCustomAttribute' type: array billToLocation: $ref: '#/components/schemas/InventoryLocation' createdDate: description: >- The date that order created in project44 system. (format: yyyy-MM-dd, example: 2025-01-01). type: string deletedDateTime: description: >- The date that the order is deleted. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string derivedOrderHealth: $ref: '#/components/schemas/DerivedOrderHealth' destinationLocation: $ref: '#/components/schemas/InventoryLocation' freightTerms: $ref: '#/components/schemas/FreightTerms' id: description: >- Unique identifier to retrieve exactly one order. This identifier should be treated as an opaque string and should be used to associate the InventoryOrder to other orders and items. type: string launchDateTime: description: >- The date when a particular launch related to the overall order is expected. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string orderIdentifier: description: Customer provided identifier. Always required. type: string orderIdentifierAuthority: description: >- Optional customer provided field. The authority is the party responsible for managing creation of the order identifier. type: string orderSubmissionDateTime: description: >- The date that the order is submitted. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string orderTags: description: >- Non-unique numbers or terms that describe how orders are managed within the organization. These are to be used in addition to the unique order object ID and can be used to filter. The expanse of these terms are generally static and they are used when searching and filtering to a specific department, team, category, or provided identifier. items: $ref: '#/components/schemas/InventoryOrderTag' type: array orderType: description: >- The type of the InventoryOrder. Required if relying on order identifier to be unique. enum: - PURCHASE_ORDER - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - INVOICE - DELIVERY type: string originLocation: $ref: '#/components/schemas/InventoryLocation' originalDeliveryDateTimeWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' relatedOrderIds: description: >- Additional orders that can be related to this order. These ids must bethe project44-generated id from another order in the system. items: type: string type: array shipmentIds: description: >- Ids of the associated shipments for the order. The order can span across multiple shipments and the shipment can have multiple orders. These values must be the project44-generated masterShipmentId from the shipments. items: format: uuid type: string type: array statusCode: description: The stage of the order lifecycle that it is currently in enum: - SUBMITTED - RECEIVED - PROCESSING - ACCEPTED - FULFILLED - REJECTED - CANCELED type: string statusCodeDateTime: description: >- The date at which the status was generated or changed. This will bedefaulted to null unless provided. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string subject: description: Descriptive name for a particular order such as 'Holiday Candles' type: string supplierReadyDateTimeWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' totalCost: $ref: '#/components/schemas/MonetaryValue' totalRetailValue: $ref: '#/components/schemas/MonetaryValue' vendorLocation: $ref: '#/components/schemas/InventoryLocation' title: InventoryOrder type: object InventoryOrderAttributeFilter: properties: name: type: string operator: enum: - EQUALS - NOT_EQUALS - CONTAINS type: string values: items: type: string type: array title: InventoryOrderAttributeFilter type: object InventoryOrderIdentifier: description: >- Inventory Order identifier model that contains additional identifiers with a type and a value. properties: type: description: The type of the identifier enum: - CONTRACT - LOAD - MANUFACTURER - PROMOTION - SEASON - VENDOR - LAUNCH_CODE - CUSTOMER_ORDER type: string value: description: The value of the identifier type: string title: InventoryOrderIdentifier type: object InventoryOrderIdentifierCriteria: description: >- Inventory order identifier criteria which allows you to search by type or value or the combination of both. properties: operator: description: ${InventoryOrderIdentifierCriteria.apiModel.operator.value} enum: - EQUALS - NOT_EQUALS - CONTAINS type: string type: description: >- Limit search results to only orders with the provided identifier type. This search will be based on operator criterion provided if value is absent, otherwise default operator for a type given is EQUALS. enum: - CONTRACT - LOAD - MANUFACTURER - PROMOTION - SEASON - VENDOR - LAUNCH_CODE - CUSTOMER_ORDER type: string value: description: >- Limit search results to only orders with the provided identifier value. This search will be based on operator criterion provided. type: string values: description: >- Limit search results to only orders with the provided identifier values. This search will be based on operator criterion provided. items: type: string type: array title: InventoryOrderIdentifierCriteria type: object InventoryOrderPage: description: >- A wrapper class for InventoryOrder objects that represents a paginated response containing results and information about the current page. properties: paginationInfo: $ref: '#/components/schemas/PaginationInfo' results: description: List of resources contained on this page. items: $ref: '#/components/schemas/InventoryOrder' type: array title: InventoryOrderPage type: object InventoryOrderSortField: properties: direction: enum: - ASC - DESC type: string fieldName: enum: - ORDER_TYPE - ORDER_IDENTIFIER - STATUS_CODE - ORDER_SUBMISSION_DATETIME - SUPPLIER_READY_WINDOW_START_DATETIME - SUPPLIER_READY_WINDOW_END_DATETIME - ORIGINAL_DELIVERY_WINDOW_START_DATETIME - ORIGINAL_DELIVERY_WINDOW_END_DATETIME - ORDER_HEALTH_ETA type: string title: InventoryOrderSortField type: object InventoryOrderTag: description: Inventory order tag which contains type, value and description. properties: description: description: The description of the tag type: string type: description: The type of the tag enum: - ANALYST - CARRIER - CATEGORY - COMMODITY - DEPARTMENT - DIRECTOR - FAMILY - GROUP - MANAGER - SECTOR - BATCH type: string value: description: The value of the tag type: string title: InventoryOrderTag type: object InventoryOrderTagCriteria: description: >- Inventory order tag criteria which allows you to search by type or value or the combination of both. properties: operator: enum: - EQUALS - NOT_EQUALS - CONTAINS type: string type: description: >- Limit search results to only orders with the provided tag type. This search will be based on operator criterion provided if value is absent, otherwise default operator for a type given is EQUALS. enum: - ANALYST - CARRIER - CATEGORY - COMMODITY - DEPARTMENT - DIRECTOR - FAMILY - GROUP - MANAGER - SECTOR - BATCH type: string value: description: >- Limit search results to only orders with the provided tag value. This search will be based on operator criterion provided. type: string values: description: >- Limit search results to only orders with the provided tag values. This search will be based on operator criterion provided. items: type: string type: array title: InventoryOrderTagCriteria type: object Invitation: required: [] type: object properties: capability: type: string description: The capability which the invitation will provide. example: TRUCKLOAD_ASSET_TRACKING enum: - TRUCKLOAD_ASSET_TRACKING createdDateTime: type: string description: The datetime when the invitation was created, in ISO-8601 format. format: date-time readOnly: true example: '2023-08-23T10:15:30Z' invitee: $ref: '#/components/schemas/Invitee' lastModifiedDateTime: type: string description: >- The datetime when the invitation was last modified, in ISO-8601 format. format: date-time readOnly: true example: '2023-08-23T10:15:30Z' status: type: string description: The current status of the invitation. readOnly: true example: ACCEPTED enum: - ACCEPTED - DECLINED - IN_PROGRESS - CANCELLED - EXPIRED description: List of invitations InvitationContact: required: [] type: object properties: email: type: string description: The email address of the contact. familyName: type: string description: The family name of the contact (surname, lastname). givenName: type: string description: The given name of the contact (name, firstname). locale: type: string description: >- The locale of the email which will be used to invite the contact, in BCP47 format. phone: type: string description: The phone number for the contact. description: Contact details of the invitee. InvitationOrganization: required: [] type: object properties: name: type: string description: Organization name. description: Organization details of the invitee. InvitationPage: type: object properties: paginationInfo: $ref: '#/components/schemas/PaginationInfo' results: type: array description: List of invitations items: $ref: '#/components/schemas/Invitation' Invitee: required: [] type: object properties: contacts: type: array description: Contact details of the invitee. items: $ref: '#/components/schemas/InvitationContact' identifiers: type: array description: The identifiers of the invitee. items: $ref: '#/components/schemas/InviteeIdentifier' organization: $ref: '#/components/schemas/InvitationOrganization' description: The entity being invited to provide the capability. InviteeIdentifier: required: [] type: object properties: type: type: string description: Invitee identifier type. example: VAT enum: - VAT - SCAC - DOT_NUMBER - MC_NUMBER - P44_EU value: type: string description: Invitee identifier value. example: PL1234567890 description: The identifiers of the invitee. Item: type: object properties: description: type: string description: Free text space to describe the line-item. identifiers: type: array items: $ref: '#/components/schemas/ItemIdentifier' description: >- Useful identifiers that can be attached to this item. Identifiers with the following type codes will be used to create Items within the project44 platform: `STOCK_KEEPING_UNIT`, `UNIVERSAL_PRODUCT_CODE`, `UNKNOWN`. Identifiers with the following type codes will be used to reference Orders within the project44 platform: `PURCHASE_ORDER`, `SALES_ORDER`, `WAREHOUSE_MOVEMENT_ORDER`, `ADVANCED_SHIPMENT_NOTICE`, `INVOICE_NUMBER`. unitQuantity: type: integer description: The quantity of identical packages that make up this item. unitType: allOf: - $ref: '#/components/schemas/PackageContainerType' description: The unit type of identical packages that make up this item. description: Item held within a larger handling unit. ItemIdentifier: required: [] type: object properties: type: allOf: - $ref: '#/components/schemas/ItemIdentifierType' description: The identifier type used for this line item identifier. value: type: string description: The value used for this line item identifier. ItemIdentifierType: enum: - CONTAINER_NUMBER - PALLET_NUMBER - DELIVERY_NUMBER - PICKUP_NUMBER - VEHICLE_IDENTIFICATION_NUMBER - SERIAL_NUMBER - PURCHASE_ORDER - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - INVOICE_NUMBER - STOCK_KEEPING_UNIT - UNIVERSAL_PRODUCT_CODE - UNKNOWN type: string description: An enumeration. Length: required: [] type: object properties: unit: allOf: - $ref: '#/components/schemas/LengthUnit' description: The unit of measurement for this length. value: minimum: 0 type: number description: The numeric decimal value of this length. LengthUnit: enum: - FT - M - IN - CM - MI - KM type: string description: An enumeration. LiftgateAccessorial: required: [] type: object properties: code: enum: - LIFTGATE type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_bool_' description: Flag denoting requirement. additionalProperties: false description: Accessorial which flags the explicit need for liftgate service. LimitedAccessCode: enum: - Airport - Church - Club - Construction - Fair - Farm - Hotel - Mine - Other - Park - Port - School - Secure - Storage - Tradeshow type: string description: Limited access codes LimitedAccessType: type: object properties: destination: allOf: - $ref: '#/components/schemas/LimitedAccessCode' description: >- Optional attribute to indicate the limited access type when accessorial code LTDAD is present in the accessorial codes list. origin: allOf: - $ref: '#/components/schemas/LimitedAccessCode' description: >- Optional attribute to indicate the limited access type when accessorial code LTDAP is present in the accessorial codes list. LineItem: description: >- An item of freight in a shipment.A line item consists of one or more packages, all of the same package type and with the same dimensions, freight class, and NMFC code. Each package, however, may have a different number of pieces and a different weight. properties: commodityType: description: >- Commodity code identifying the type of shipment. Required for insurance quotes. type: string countryOfManufacture: description: Country of manufacture of line item. enum: - 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 type: string description: description: Readable description of this line item. type: string freightClass: description: >- Freight class of all packages composing this item. Required for LTL quotes and shipments only. enum: - '50' - '55' - '60' - '65' - '70' - '77.5' - '85' - '92.5' - '100' - '110' - '125' - '150' - '175' - '200' - '250' - '300' - '400' - '500' type: string harmonizedCode: description: >- Harmonized System (HS) Code for the product as defined by the World Customers Organization, usually 6 characters in length, but up to 10 characters as defined by customs organizations by country. In the US, this would be the HTS or HTSA Code as defined by the US International Trade Commission. type: string hazmatDetail: $ref: '#/components/schemas/LineItemHazmatDetail' id: description: >- The internal p44 id assigned to this line item. Provided only for insurance line items. format: int64 type: integer insuranceAmount: description: >- The insurance amount claim of all pieces of the line item. Required for insurance quotes. type: number nmfcItemCode: description: NMFC prefix code for all packages composing this line item. type: string nmfcSubCode: description: NMFC suffix code for all packages composing this line item. type: string packageDimensions: $ref: '#/components/schemas/CubicDimension' packageType: description: 'Type of packages composing this line item. (default: ''PLT'')' enum: - BAG - BALE - BOX - BUCKET - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - DRUM - PAIL - PLT - PIECES - REEL - ROLL - SKID - TOTE - TUBE type: string stackable: description: >- Whether the packages composing this line item are stackable. (default: 'false') type: boolean totalPackages: description: 'The number of packages composing this line item. (default: ''1'')' format: int32 type: integer totalPieces: description: >- The total number of pieces across all packages composing this line item. (default: '1') format: int32 type: integer totalValue: description: >- The total value of all pieces of the line item. Required for insurance quotes. type: number totalWeight: description: Total weight of all packages composing this line item. type: number title: LineItem type: object LineItemHazmatDetail: description: >- Provides important information about the hazardous materials to be transported, as required by the US Department of Transportation (DOT). Only required for shipment requests. properties: hazardClass: description: >- The hazard class number, according to the classification system outlined by the Federal Motor Carrier Safety Administration (FMCSA). This is a one digit number or a two digit number separated by a decimal. type: string identificationNumber: description: >- The United Nations (UN) or North America (NA) number identifying the hazmat item. type: string packingGroup: description: >- The hazmat packing group for a line item, indicating the degree of danger. enum: - I - II - III - NONE type: string properShippingName: description: The proper shipping name of the hazmat item. type: string title: LineItemHazmatDetail type: object LineItemIdentifier: description: A user defined identifier for this item. properties: type: description: The identifier type used for this line item identifier. enum: - PURCHASE_ORDER - SKU - CONTAINER_NUMBER - PALLET_NUMBER - DELIVERY_NUMBER - PICKUP_NUMBER - VIN type: string value: description: The value used for this line item identifier. type: string title: LineItemIdentifier type: object LineItemLayoutType: enum: - Nested - Stacked type: string description: An enumeration. Load: description: >- A collection of goods that are being moved strictly from point A to point B. The collection of goods may contain many orders and many items of inventory and there is a single consignee for the load. The load is tied to a shipment and exactly two stops. properties: createdDateTime: description: The time of creation of load. type: string deletedDateTime: description: The datetime of deletion of load. type: string deliveryStopReference: $ref: '#/components/schemas/StopReference' description: description: A description of the overall load. type: string handlingUnits: $ref: '#/components/schemas/LoadHandlingUnits' id: description: >- The unique project44-generated id of the load. This can be null when the load is created, but will always exist in the response after the load has been created. format: uuid type: string identifiers: description: >- The identifiers that can identify this Load. This could be, but not limited to, a shipment identifier such as a BOL or an order-based identifier such as Purchase Order or ASN. items: $ref: '#/components/schemas/LogisticsIdentifier' type: array involvedParties: description: >- Parties which are specifically related to this load and the identifiers which are associated with those parties. This identifies the relationship between the load and its relevant parties. items: $ref: '#/components/schemas/Party' type: array items: description: A list of items contained within this load. items: $ref: '#/components/schemas/LoadItem' type: array masterShipmentId: description: >- The project44-generated id of the shipment with which the load is associated. format: uuid type: string pickupStopReference: $ref: '#/components/schemas/StopReference' title: Load type: object LoadCubicDimension: description: Cubic dimensions of a handling unit properties: height: description: Height of this cubic dimension. type: number length: description: Length of this cubic dimension. type: number unit: description: Unit of this cubic dimension. enum: - IN - CM - FT - M type: string width: description: Width of this cubic dimension. type: number title: LoadCubicDimension type: object LoadHandlingUnits: description: A description of handling units for a load properties: details: description: >- A list of details that describe the specifics of the handling units for this load. items: $ref: '#/components/schemas/LoadHandlingUnitsDetails' type: array title: LoadHandlingUnits type: object LoadHandlingUnitsDetails: description: Details of handling units for a load properties: cubicDimension: $ref: '#/components/schemas/LoadCubicDimension' handlingUnitType: description: The type of packaging that best describes the handling unit. enum: - BAG - BALE - BARREL - BOX - BUCKET - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - DRUM - PACK - PAIL - PALLET - PIECES - REEL - ROLL - SKID - TOTE - TRAY - TUBE type: string quantity: description: Quantity of the handling unit type that is specified below. format: int64 type: integer volume: $ref: '#/components/schemas/Volume' weight: $ref: '#/components/schemas/Weight' title: LoadHandlingUnitsDetails type: object LoadId: properties: id: format: uuid type: string title: LoadId type: object LoadItem: description: A description of an inventory item that composes a load properties: description: description: A description of this load item. type: string identifiers: description: >- Unique load item identifiers containing a type (currently 'STOCK_KEEPING_UNIT', 'UNIVERSAL_PRODUCT_CODE', or 'SERIAL_NUMBER') and a string value items: $ref: '#/components/schemas/LoadItemIdentifier' type: array orderIdentifierReferences: description: A list of references to orders to which this load item pertains. items: $ref: '#/components/schemas/OrderIdentifierReference' type: array unitQuantity: description: The quantity of identical packages that make up this load item. format: int64 type: integer unitType: description: The unit type of identical packages that make up this load item. enum: - BAG - BALE - BOX - BUCKET - PAIL - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - EACH - FLAT - LOOSE - ROLL - TUBE type: string title: LoadItem type: object LoadItemIdentifier: description: Load item identifiers contain a type and a value properties: type: description: unique field indicating the identifier type enum: - STOCK_KEEPING_UNIT - UNIVERSAL_PRODUCT_CODE - SERIAL_NUMBER - UNKNOWN type: string value: description: the string value corresponding to the type type: string title: LoadItemIdentifier type: object LoadPage: description: >- A paginated response containing results and information about the current page. properties: paginationInfo: $ref: '#/components/schemas/PaginationInfo' results: description: List of resources contained on this page. items: $ref: '#/components/schemas/Load' type: array title: LoadPage type: object LoadWebhookPayload: description: Load webhook payload allOf: - $ref: '#/components/schemas/UnifiedWebhookInterface' - type: object properties: data: $ref: '#/components/schemas/Load' - type: object properties: dataType: type: string enum: - Load - type: object properties: eventType: type: string enum: - inventory.v1.load.upserted - inventory.v1.load.deleted LocalDateTimeWindow: description: >- A date and time range, local to the applicable location, representing a window of availability. properties: date: description: >- Date for this time window in the timezone of the applicable location.(default: current date, format: yyyy-MM-dd) format: date type: string endTime: description: >- End time of this window in the timezone of the applicable location. (format: HH:mm) example: '17:00' type: string startTime: description: >- Start time of this window in the timezone of the applicable location. (format: HH:mm) example: '15:00' type: string title: LocalDateTimeWindow type: object LocalTime: type: object properties: hour: type: integer format: int32 minute: type: integer format: int32 nano: type: integer format: int32 second: type: integer format: int32 Location: description: A physical location. properties: address: $ref: '#/components/schemas/Address' contact: $ref: '#/components/schemas/Contact' title: Location type: object LocationCollection: description: A collection of physical locations. properties: locations: description: A collection of physical locations. items: $ref: '#/components/schemas/Location' type: array title: LocationCollection type: object LocationCriterion: required: [] type: object properties: operator: type: string description: Some fields do not support the CONTAINS operator. enum: - EQUALS - NOT_EQUALS - CONTAINS propertyName: type: string enum: - LOCATION_NAME - LOCATION_ADDRESS - LOCATION_CITY - LOCATION_STATE - LOCATION_COUNTRY - LOCATION_ZIP values: type: array items: type: string description: >- Match shipments based on a location property. The property to match against is specified as the propertyName. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (location.{field} EQUALS [A OR B OR C]) Example: (location.{field} NOT_EQUALS A) AND (location.{field} NOT_EQUALS B) LocationIdentifier: required: [] type: object properties: type: $ref: '#/components/schemas/LocationIdentifierType' value: type: string LocationIdentifierCriterion: type: object properties: operator: type: string description: If values is not populated, the CONTAINS operator is not supported. enum: - EQUALS - NOT_EQUALS - CONTAINS types: type: array items: type: string enum: - AIRPORT_IATA - AIRPORT_ICAO - EXTERNAL - LOCODE - NAME - PORT_UN_LOCODE - FACILITY_ID - RAIL_SPLC - RAIL_UIC - RAIL_EU_PLC - UNKNOWN values: type: array items: type: string description: >- Match shipments based on the type and value of stop location identifiers. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. For each item, filters are generated for both the type and values, and they are combined using an AND operator. Example: (identifier.type EQUALS X AND identifier.value EQUALS [A OR B OR C]) AND (identifier.type EQUALS Y AND identifier.value EQUALS [D OR F]) LocationIdentifierType: enum: - UNKNOWN - AIRPORT_IATA - AIRPORT_ICAO - PORT_UN_LOCODE - RAIL_SPLC - DATA_PROVIDER_LOCATION_CODE - LOCODE type: string description: An enumeration. LockedGateAccessorial: required: [] type: object properties: code: enum: - LOCKED_GATE type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_bool_' description: Flag denoting requirement. additionalProperties: false description: Accessorial which flags the explicit need for locked gate service. LogisticsIdentifier: required: [] type: object properties: type: $ref: '#/components/schemas/LogisticsIdentifierTypeEnum' value: type: string description: The value of this identifier. Required field. description: >- Any standardized 3rd party identifier. Can be used to identifier a shipment, freight, vehicle, carrier, or other freight entity. LogisticsIdentifierType: enum: - AIR_WAYBILL - BILL_OF_LADING - HOUSE_BILL_OF_LADING - BOOKING_NUMBER - CARRIER_IATA - CARRIER_ICAO - CARRIER_NAME - CARRIER_SCAC - FFW_SCAC - CONTAINER_ID - CUSTOMER_REFERENCE - DELIVERY_NUMBER - EXTERNAL - FLIGHT_NUMBER - ORDER - PICKUP - PRO - PURCHASE_ORDER - RAIL_CAR_ID - RAIL_WAYBILL - TRACKING_NUMBER - TRAILER_ID - UNKNOWN - VESSEL_IMO - VESSEL_NAME - WAYBILL - VESSEL_CALL_SIGN - VESSEL_MMSI - CARRIER_US_DOT_NUMBER - CARRIER_MC_NUMBER - SUBSCRIPTION_ID - HOUSE_AIR_WAYBILL - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - DRIVER_MOBILE_PHONE_NUMBER - VEHICLE_ID - LICENSE_PLATE - SENSITECH_DEVICE_ID - EMERSON_DEVICE_ID - TIVE_DEVICE_ID - VOYAGE_NUMBER - CARRIER_MASTER_ID - CARRIER_NMC_ID - CONTAINER_TYPE - TRAIN_NUMBER - WAGON_ID - CAPACITY_PROVIDER_ACCOUNT_GROUP - CAPACITY_PROVIDER_ACCOUNT_CODE - SERIAL_NUMBER - VEHICLE_IDENTIFICATION_NUMBER - REFERENCE_NUMBER - CONTAINER_PIN - INVOICE_ID - VESSEL_P44_ID type: string description: The type of identifier provided to distinguish the Shipment. LogisticsIdentifierTypeEnum: type: string description: >- The standard which defines who assigns the identifier and what it identifies. Required field. enum: - AIR_WAYBILL - BILL_OF_LADING - HOUSE_BILL_OF_LADING - BOOKING_NUMBER - CARRIER_IATA - CARRIER_ICAO - CARRIER_NAME - CARRIER_SCAC - FFW_SCAC - NVOCC_SCAC - CONTAINER_ID - CUSTOMER_REFERENCE - DELIVERY_NUMBER - EXTERNAL - FLIGHT_NUMBER - ORDER - PICKUP - PRO - PURCHASE_ORDER - RAIL_CAR_ID - RAIL_WAYBILL - TRACKING_NUMBER - TRAILER_ID - UNKNOWN - VESSEL_IMO - VESSEL_NAME - WAYBILL - VESSEL_CALL_SIGN - VESSEL_MMSI - CARRIER_US_DOT_NUMBER - CARRIER_MC_NUMBER - SUBSCRIPTION_ID - HOUSE_AIR_WAYBILL - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - DRIVER_MOBILE_PHONE_NUMBER - VEHICLE_ID - LICENSE_PLATE - SENSITECH_DEVICE_ID - EMERSON_DEVICE_ID - TIVE_DEVICE_ID - ZILLION_DEVICE_ID - VOYAGE_NUMBER - CARRIER_MASTER_ID - CARRIER_NMC_ID - CONTAINER_TYPE - TRAIN_NUMBER - WAGON_ID - CAPACITY_PROVIDER_ACCOUNT_GROUP - CAPACITY_PROVIDER_ACCOUNT_CODE - SERIAL_NUMBER - VEHICLE_IDENTIFICATION_NUMBER - REFERENCE_NUMBER - CONTAINER_PIN - VESSEL_P44_ID - EXPORT_CUSTOMS_BROKER - IMPORT_CUSTOMS_BROKER - POL_QUALITY_CONTROL_PROVIDER - POD_QUALITY_CONTROL_PROVIDER - AIRCRAFT_ICAO - AIRLINE_NAME LtlAdditionalAppointmentWindow: description: A user defined appointment window to be used in lists. properties: appointmentStatus: description: >- 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. enum: - PENDING - REJECTED - BOOKED - CANCELLED - COMPLETED - PENDING_CARRIER - PENDING_INTERNAL - NONE_AVAILABLE type: string appointmentWindow: $ref: '#/components/schemas/ZonedDateTimeWindow' identifiers: description: >- A list of identifiers of the additional appointment windows to a shipment. items: $ref: '#/components/schemas/AdditionalAppointmentWindowIdentifier' type: array type: description: The type of appointment window. enum: - STRATEGIC - SLOT_BOOKING_PICKUP - SLOT_BOOKING_DELIVERY - SLOT_BOOKING_PICKUP_DELIVERY type: string title: LtlAdditionalAppointmentWindow type: object LtlCapacityProviderPushShipment: properties: carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' customerAccount: $ref: '#/components/schemas/CustomerAccount' shipmentIdentifiers: description: >- A list of shipment identifiers that, with the exception of the EXTERNAL type, can be used to track the shipment. At least one identifier of type 'PRO' must be included in the list. The source field cannot be provided in this API. items: $ref: '#/components/schemas/LtlShipmentIdentifier' type: array shipmentStops: description: >- A list of the shipment stops for the shipment. When stop data is provided, there must be at least two stops -- one of type 'ORIGIN' and one of type 'DESTINATION'. 'ORIGIN' and 'DESTINATION' stops must have location address information including addressLines, city, state, country, postalCode and location contact information including companyName. Stops of type 'TERMINAL' (service center) may be included or added as the shipment is tracked and they are discovered. 'TERMINAL' stops must have location address information including city, state, country, postalCode and location contact information including companyName. 'TERMINAL' stops must also have terminalCode. All stop types require a stop number. The stop number represents the order for which the stops will be visited. Besides 'ORIGIN' always being stopNumber: 1, stopNumber may change as 'TERMINAL's are discovered throughout tracking (i.e. initially there may only be two known stops; 'ORIGIN' with stopNumber 1 and 'DESTINATION' with stopNumber 2. Once a 'TERMINAL' stop is discovered, the 'DESTINATION' stop will now have stopNumber 3. Stop objects contain an object called 'appointmentWindow'. These appointment windows are the requested appointment windows found on the bill of lading. If the stop type is 'ORIGIN', it is a requested pickup appointment window and if the stop type is 'DESTINATION', it is a requested delivery appointment window. items: $ref: '#/components/schemas/LtlTrackedShipmentStop' type: array sourceType: description: >- The original type of data source for where this shipment originated from. (default: API) enum: - API - EDI type: string transitDays: description: The number of days it will take to deliver the load after pickup. format: int32 type: integer title: LtlCapacityProviderPushShipment type: object LtlCapacityProviderPushShipmentArrivalEstimate: properties: estimatedArrivalWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' title: LtlCapacityProviderPushShipmentArrivalEstimate type: object LtlCapacityProviderPushStatusReason: properties: description: description: A description of the reason for the status of the status update. type: string reasonDetailCode: description: The reason detail code for the status of the status udpate. enum: - APPOINTMENT_SET - CANNOT_FIND_CONSIGNEE_ADDRESS - CANNOT_REACH_CONSIGNEE - CONS_CLOSED_FOR_HOLIDAY - CONS_DID_NOT_ORDER_FREIGHT - CONSIGNEE_CANCELLED_ORDER - CONSIGNEE_CLOSED - CONSIGNEE_DISPUTES_CHARGES - CREDIT_HOLD - DAMAGED - DAMAGED_ON_DELIVERY - DELIVERY_ATTEMPTED_APPOINTMENT - DELIVERY_ATTEMPTED_NO_DOCK_SPACE - DELIVERY_ATTEMPTED_REAR_LOAD - DELIVERY_REQUIRES_SPECIAL_EQUIPMENT - DELIVERY_SHORTAGE - DUPLICATE_SHIPMENT - EMERGENCY_DELAY_IN_TRANSIT - GENERAL_EXCEPTION - HAZARDOUS_MATERIAL - INCORRECT_ADDRESS_PROVIDED - INVALID_OR_MISSING_PURCHASE_ORDER_NUMBER - LIMITED_ACCESS_LOCATIONS - MISSING_PACKING_LIST - NO_PAYMENT_AVAILABLE_AT_DELIVERY - OVERAGE - PERMANENT_APPOINTMENT_REQUIRED - PROTECTIVE_SERVICE_REQUIRED - RECONSIGNED_TO_NEW_CONSIGNEE - REFUSED_BY_CONS_CANNOT_RECEIVE_ON_DELIVERY_DATE - REFUSED_NO_RETURN_AUTHORIZATION - SHIP_WHEN_CAPACITY_AVAILABLE - SHIPMENT_ALASKA_OR_HAWAII - SHIPMENT_TENDERED_LATE - SHORTAGE - SPOT_MARKET_SHIPMENT - WAITING_INSTRUCTIONS - WEATHER_DELAY - WEATHER_DELAY_CLEARED - WORK_STOPPAGE - WRONG_PRODUCT_SHIPPED type: string reasonSummaryCode: description: The reason summary code for the status of the status update. enum: - APPOINTMENT_ISSUE - BILLING_ISSUE - DELIVERY_ISSUE - INFO_MESSAGE - OTHER_EXCEPTION - PAPERWORK_ISSUE - SHIPMENT_ISSUE - SPOT_SHIPMENT - STAFFING_ISSUE - TRANSIT_ISSUE - VEHICLE_ISSUE - WEATHER_ISSUE type: string title: LtlCapacityProviderPushStatusReason type: object LtlCapacityProviderPushStatusUpdate: properties: arrivalEstimate: $ref: '#/components/schemas/LtlCapacityProviderPushShipmentArrivalEstimate' carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' customerAccount: $ref: '#/components/schemas/CustomerAccount' deliveryAppointmentWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' location: $ref: '#/components/schemas/Location' proIdentifier: $ref: '#/components/schemas/LtlShipmentIdentifier' shipmentIdentifiers: description: >- A list of shipment identifiers that, with the exception of the EXTERNAL type, can be used to track the shipment. At least one identifier of type 'PRO' must be included in the list. The source field cannot be provided in this API. items: $ref: '#/components/schemas/LtlShipmentIdentifier' type: array sourceType: description: >- The original type of data source for where this status update originated from. (default: API) enum: - API - EDI type: string statusCode: description: >- The project44 status code for this status update. This field must always be populated. enum: - READY_FOR_PICKUP - UPDATED_PICKUP_APPT - EXCEPTION - PICKED_UP - ARRIVED_AT_TERMINAL - REWEIGHT_RECLASS - INFO - UPDATED_DELIVERY_APPT - DEPARTED_TERMINAL - OUT_FOR_DELIVERY - DELIVERED type: string statusReason: $ref: '#/components/schemas/LtlCapacityProviderPushStatusReason' stopNumber: description: >- The stop number, where '1' is the origin and the destination has the largest number, with any stops in between ordered by appointment time. format: int32 type: integer stopType: description: >- The type of the shipment stop to which this status update corresponds, if any. For example, a status update with code 'AT_STOP' will typically have this field populated with the stop type the vehicle is at. enum: - ORIGIN - DESTINATION - TERMINAL type: string terminalCode: description: >- The service center's code. For example, the capacity provider's service center in Miami may have a code like 'MIA-123' or 'MIA'. This should match a stop code of one of the shipment stop's stop codes. type: string timestamp: description: >- The timestamp of this status update in the time zone of the location (format: yyyy-MM-dd'T'HH:mm:ssZ). If this status update has no location, the time zone should be UTC. type: string title: LtlCapacityProviderPushStatusUpdate type: object LtlDispatchedShipment: description: Shipment request used to initiate a shipment. properties: accessorialServices: description: >- List of accessorial services to be requested for this shipment. Some capacity providers support accessorial services without providing a way of requesting them through their API. To handle this, project44 sends these accessorial services through the capacity provider's pickup note API field, according to the shipment note configuration. items: $ref: '#/components/schemas/AccessorialService' type: array apiConfiguration: $ref: '#/components/schemas/ShipmentApiConfiguration' capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' capacityProviderQuoteNumber: description: >- The quote number for this shipment assigned by the capacity provider. Only a few LTL capacity providers accept a quote number when placing a shipment for pickup. Most volume LTL capacity providers, however, require a quote number. type: string carrierCode: description: >- SCAC of the carrier that is to pick up this shipment. Required only for capacity providers that support multiple SCACs. type: string currencyCode: description: >- Line items monetary value currency, contains optional currency code (ex. 'USD'). This functionality is typically used with cross-border shipments. enum: - USD - CAD - MXN - EUR type: string customsInfo: $ref: '#/components/schemas/CustomsInfo' deliveryNote: description: >- Note that applies to the delivery of this shipment. Currently, since nearly all capacity provider APIs have only a pickup note field and not a delivery note field, this delivery note will be inserted into the capacity provider's pickup note API field, according to the shipment note configuration. type: string deliveryWindow: $ref: '#/components/schemas/LocalDateTimeWindow' destinationInvolvedParties: description: >- A list of parties and their identifiers related to the destination location. These are typically your customers receiving freight at the destination. items: $ref: '#/components/schemas/Party' type: array destinationLocation: $ref: '#/components/schemas/Location' directionOverride: description: >- An override of direction for the capacity provider account used by this request, if it has 'Enable API override of direction' set as 'true' in the project44 Self-Service Portal.This functionality is typically used in situations where both inbound and outbound shipments are common for a given capacity provider and account number. enum: - SHIPPER - CONSIGNEE - THIRD_PARTY type: string emergencyContact: $ref: '#/components/schemas/Contact' enhancedHandlingUnits: description: >- A more granular representation of a line item. Required if no lineItems. Allows for order level tracking, more accurate rates, and more detailed BOLs. Currently not supported by all vendors. An enhancedHandlingUnit consists of one or more handling units, e.g. a pallet or a drum, one or more packages (the container on the handling unit e.g. a box), and package contents. NMFC codes and freight classes can be assigned at the handling unit and package level, while package contents can be associated with a DELIVERY_NUMBER, SKU_NUMBER, or PURCHASE_ORDER_NUMBER. Passing in both this field and lineItems is accepted, but at least one is required. items: $ref: '#/components/schemas/HandlingUnit' type: array handlingUnitTypeQuantities: description: >- A list of the quantity of certain handling unit types. If there are multiple types of handling units e.g. pallet, drum, box, the quantity of each handling unit type should be specified. items: $ref: '#/components/schemas/HandlingUnitTypeQuantity' type: array lengthUnit: description: >- Length measurement unit for all length values in this shipment request. (default: 'IN') enum: - IN - CM - FT - M type: string lineItems: description: >- The line items to be shipped.A line item consists of one or more packages, all of the same package type and with the same dimensions, freight class, and NMFC code. Each package, however, may have a different number of pieces and a different weight. Note that each capacity provider has a different maximum number of line items that they can accept. NOTE: This field is similar to, but not the same as, the enhancedHandlingUnits field. The enhancedHandlingUnits fields can contain more detailed information for use by both the carrier and the shipper. items: $ref: '#/components/schemas/LineItem' type: array originInvolvedParties: description: >- A list of parties and their identifiers related to the origin location. These are typically your suppliers providing freight at the origin. items: $ref: '#/components/schemas/Party' type: array originLocation: $ref: '#/components/schemas/Location' paymentTermsOverride: description: >- An override of payment terms for the capacity provider account used by this request, if it has 'Enable API override of payment terms' set as 'true' in the project44 Self-Service Portal. This functionality is typically used in situations where both inbound and outbound shipments are common for a given capacity provider and account number. enum: - PREPAID - COLLECT - THIRD_PARTY type: string pickupNote: description: >- Note that applies to the pickup of this shipment. The shipment note configuration determines the final pickup note that is sent through the capacity provider's API and whether or not part of it may be cut off. type: string pickupWindow: $ref: '#/components/schemas/LocalDateTimeWindow' requesterLocation: $ref: '#/components/schemas/Location' shipmentIdentifiers: description: >- A list of identifiers or reference numbers for this shipment. Most capacity providers accept only identifiers of types 'BILL_OF_LADING', 'PURCHASE_ORDER', and 'CUSTOMER_REFERENCE'. Only one identifier of each type may be provided. An identifier of type 'SYSTEM_GENERATED' may not be provided. An identifier of type 'EXTERNAL' may be provided and subsequently tracked with through project44 -- this identifier will not be communicated to the capacity provider. items: $ref: '#/components/schemas/LtlShipmentIdentifier' type: array totalHandlingUnits: description: >- Total numbers of packaged units that are expected to be shipped. This should match the number of units a driver should be loading onto the truck. format: int32 type: integer totalLinearFeet: description: >- The total linear feet that the shipment being quoted will take up in a trailer. Only for volume LTL shipments. format: int32 type: integer weightUnit: description: >- Weight measurement unit for all weight values in this shipment request. (default: 'LB') enum: - LB - KG type: string title: LtlDispatchedShipment type: object LtlDispatchedShipmentConfirmation: description: >- Confirmation of a shipment to be tendered by a carrier, including assigned shipment identifiers. properties: capacityProviderBolUrl: description: >- URL pointing to a PDF document of the capacity provider's Bill of Lading, if available. type: string id: description: The id of the dispatched shipment. format: int64 type: integer infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array packingVisualizationUrl: description: >- Customers who have enabled our Volume Visualizer product will find a URL to a PDF document illustrating the optimized item arrangement, for the shipment's total linear footage value. (Example: https://na12.api.project44.com/unauthenticated/linear-feet/pdf/{linearFeetVisualizationId}) type: string pickupDateTime: description: >- The pickup date and time as provided by the capacity provider in the timezone of origin location of the shipment. (format: yyyy-MM-dd'T'HH:mm:ss) format: date-time type: string pickupNote: description: >- The final note that was sent through the capacity provider's pickup note API field, as constructed by project44 according to the requested shipment note configuration. type: string shipmentIdentifiers: description: >- A list of identifiers for the confirmed shipment. Nearly all capacity providers provide a pickup confirmation number, which will appear in this list with type 'PICKUP'. A few capacity providers also provide a PRO number when a shipment is confirmed. Shipment identifiers provided by the customer will show up here, as well. items: $ref: '#/components/schemas/LtlShipmentIdentifier' type: array title: LtlDispatchedShipmentConfirmation type: object LtlImageQuery: description: Request an image of a document related to a shipment. properties: apiConfiguration: $ref: '#/components/schemas/ImageApiConfiguration' capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' destinationAddress: $ref: '#/components/schemas/Address' documentType: description: A code for the requested image's document type. enum: - BILL_OF_LADING - DELIVERY_RECEIPT - WEIGHT_CERTIFICATE - INVOICE - INSPECTION_CERTIFICATE - LETTER_OF_AUTHORIZATION - LUMPER_CERTIFICATE - PACKING_SLIP type: string imageFormat: description: >- A code for the format of the image to be returned. The capacity provider's image will be converted to this format. (default: 'PNG') enum: - PDF - TIF - PNG - GIF - JPG type: string pickupDate: description: >- The date this shipment was picked up by carrier. Some carriers require this to aid in retrieving documents. (format: yyyy-MM-dd) format: date type: string proNumber: description: PRO number identifying the shipment related to the requested image. type: string title: LtlImageQuery type: object LtlImageReference: description: Reference to an image of a document related to a shipment. properties: documentType: description: A code for this image's document type, matching what was requested. enum: - BILL_OF_LADING - DELIVERY_RECEIPT - WEIGHT_CERTIFICATE - INVOICE - INSPECTION_CERTIFICATE - LETTER_OF_AUTHORIZATION - LUMPER_CERTIFICATE - PACKING_SLIP type: string imageFormat: description: A code for this image's format, matching what was requested. enum: - PDF - TIF - PNG - GIF - JPG type: string imageUrl: description: The web URL for accessing this image. type: string infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array proNumber: description: >- PRO number identifying the shipment related to the requested image. This may be slightly different than the requested PRO number, depending on the capacity provider (e.g., leading zeros may be missing). type: string title: LtlImageReference type: object LtlShipmentArrivalEstimate: properties: estimatedArrivalWindow: $ref: '#/components/schemas/SplitOffsetDateTimeWindow' title: LtlShipmentArrivalEstimate type: object LtlShipmentCancellation: description: >- Request containing shipment identifiers identifying a shipment dispatch to cancel. properties: apiConfiguration: $ref: '#/components/schemas/LtlShipmentCancellationApiConfiguration' capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' originAddress: $ref: '#/components/schemas/Address' shipmentIdentifiers: description: >- A list of identifiers of the dispatched LTL shipment to be cancelled. Currently only one can be provided. This may not be provided when cancelling a shipment by the project44-generated id. items: $ref: '#/components/schemas/LtlShipmentIdentifier' type: array title: LtlShipmentCancellation type: object LtlShipmentCancellationApiConfiguration: description: Contains fields used to configure the LTL shipment API. properties: fallBackToDefaultAccountGroup: description: >- 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') type: boolean title: LtlShipmentCancellationApiConfiguration type: object LtlShipmentCancellationConfirmation: description: >- Confirmation of an LTL shipment dispatch cancellation including assigned shipment identifiers of the shipment. properties: infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array shipmentIdentifiers: description: >- A list of identifiers for the cancelled shipment. Shipment identifiers provided by the customer may show up here, as well. items: $ref: '#/components/schemas/LtlShipmentIdentifier' type: array title: LtlShipmentCancellationConfirmation type: object LtlShipmentIdentifier: properties: primaryForType: description: >- Only used in LTL tracking. Whether this is the primary shipment identifier for this type for the given shipment. The primary shipment identifier for a type will always be attempted before other identifiers of that type with the capacity provider. type: boolean source: description: >- Only used in LTL tracking. Whether this shipment identifier originated from the customer or the capacity provider. If the customer has provided this identifier at any point during the shipment's lifetime, this source will be 'CUSTOMER'. Otherwise, the source will be 'CAPACITY_PROVIDER'. This field is useful for ensuring uniqueness across your shipment identifiers -- you can't control whether duplicates exist among the capacity-provider-sourced identifiers, but you can ensure on your end that all of your provided identifiers are unique and query for unique shipments accordingly. enum: - CUSTOMER - CAPACITY_PROVIDER type: string type: description: The type of the shipment identifier. enum: - PRO - BILL_OF_LADING - CUSTOMER_REFERENCE - PICKUP - PURCHASE_ORDER - EXTERNAL type: string value: description: The value of the shipment identifier. type: string title: LtlShipmentIdentifier type: object LtlShipmentStatus: properties: imageReferences: description: A list of references to images of documents related to the shipment. items: $ref: '#/components/schemas/LtlTrackedShipmentImageReference' type: array infoMessages: description: >- System messages and messages from the capacity provider with severity "INFO" or "WARNING". Note that no messages with severity "ERROR" will be returned here. items: $ref: '#/components/schemas/Message' type: array latestStatusUpdate: $ref: '#/components/schemas/LtlShipmentStatusUpdate' latestStopStatuses: description: >- The most up-to-date statuses of the vehicle in relation to each stop. One and only one status will always be returned for each stop. If the shipment does not have status "COMPLETED", this list will always contain one and only one stop status with a code of either "EN_ROUTE" or "ARRIVED". items: $ref: '#/components/schemas/LtlShipmentStopStatus' type: array mapUrl: description: Publicly accessible URL to the shipment details page. type: string shipment: $ref: '#/components/schemas/LtlTrackedShipment' statusUpdates: description: If requested, all available shipment status updates. items: $ref: '#/components/schemas/LtlShipmentStatusUpdate' type: array title: LtlShipmentStatus type: object LtlShipmentStatusCollection: properties: infoMessages: description: >- Any system messages that occurred processing this request. Severity will be "INFO" or "WARNING". No messages with severity "ERROR" will be returned here. items: $ref: '#/components/schemas/Message' type: array shipmentStatuses: description: A list of shipment statuses that match the query. items: $ref: '#/components/schemas/LtlShipmentStatus' type: array title: LtlShipmentStatusCollection type: object LtlShipmentStatusReason: properties: code: description: The reason code for the status of the status update. enum: - PICKUP_INFO - PICKED_UP - PICKUP_MISSED - INTERLINE_INFO - INTERLINE_MISSED - DEPARTURE_INFO - DEPARTURE_MISSED - HELD - DELAYED - DELIVERY_INFO - DELIVERY_MISSED - DELIVERY_APPOINTMENT - DELIVERED - EXCEPTION - CANCELED - TIMED_OUT - NOT_RECEIVING_DATA_12_TO_23 - NOT_RECEIVING_DATA_24_TO_47 - NOT_RECEIVING_DATA_48_TO_71 - NOT_RECEIVING_DATA_MORE_THAN_72 type: string description: description: >- A description of the reason for the status of the status update. This description may be provided by the capacity provider. type: string title: LtlShipmentStatusReason type: object LtlShipmentStatusUpdate: properties: address: $ref: '#/components/schemas/Address' exceptionDetailCode: description: >- The exception detail code fot the status update. This will provide more granulatiry then the 'exceptionSummaryCode'. This will only be populated when the status update is an exception. enum: - APPOINTMENT_SET - CANNOT_FIND_CONSIGNEE_ADDRESS - CANNOT_REACH_CONSIGNEE - CONS_CLOSED_FOR_HOLIDAY - CONS_DID_NOT_ORDER_FREIGHT - CONSIGNEE_CANCELED_ORDER - CONSIGNEE_CLOSED - CONSIGNEE_DISPUTES_CHARGES - CREDIT_HOLD - DAMAGED - DAMAGED_ON_DELIVERY - DELIVERY_ATTEMPTED_APPOINTMENT - DELIVERY_ATTEMPTED_NO_DOCK_SPACE - DELIVERY_ATTEMPTED_REAR_LOAD - DELIVERY_REQUIRES_SPECIAL_EQUIPMENT - DELIVERY_SHORTAGE - DUPLICATE_SHIPMENT - EMERGENCY_DELAY_IN_TRANSIT - GENERAL_EXCEPTION - HAZARDOUS_MATERIAL - INCORRECT_ADDRESS_PROVIDED - INVALID_OR_MISSING_PURCHASE_ORDER_NUMBER - LIMITED_ACCESS_LOCATIONS - MISSING_PACKING_LIST - NO_PAYMENT_AVAILABLE_AT_DELIVERY - OVERAGE - PERMANENT_APPOINTMENT_REQUIRED - PROTECTIVE_SERVICE_REQUIRED - RECONSIGNED_TO_NEW_CONSIGNEE - REFUSED_BY_CONS_CANNOT_RECEIVE_ON_DELIVERY_DATE - REFUSED_NO_RETURN_AUTHORIZATION - SHIP_WHEN_CAPACITY_AVAILABLE - SHIPMENT_ALASKA_OR_HAWAII - SHIPMENT_TENDERED_LATE - SHORTAGE - SPOT_MARKET_SHIPMENT - WAITING_INSTRUCTIONS - WEATHER_DELAY - WEATHER_DELAY_CLEARED - WORK_STOPPAGE - WRONG_PRODUCT_SHIPPED type: string exceptionSummaryCode: description: >- The exception summary code for the status update. This will only be populated when the status update is an exception. enum: - APPOINTMENT_ISSUE - BILLING_ISSUE - DELIVERY_ISSUE - OTHER_EXCEPTION - PAPERWORK_ISSUE - SHIPMENT_ISSUE - SPOT_SHIPMENT - STAFFING_ISSUE - TRANSIT_ISSUE - VEHICLE_ISSUE - WEATHER_ISSUE type: string retrievalDateTime: description: >- The date and time that project44 retrieved this status update from the capacity provider, in UTC. Note that this does not represent the time this status was reported by the capacity provider. (format: yyyy-MM-dd'T'HH:mm:ssZ) type: string statusCode: description: >- The project44 status code for this status update. This field will always be populated. enum: - IN_TRANSIT - OUT_TO_STOP - AT_STOP - INFO - COMPLETED type: string statusReason: $ref: '#/components/schemas/LtlShipmentStatusReason' stopId: description: >- The id of the shipment stop to which this status update corresponds, if any exists. For example, a status update with the code 'AT_STOP' will typically have this field populated with the stop id the vehicle is at, if specific stop details are avialable from the capacity provider. format: int64 type: integer stopNumber: description: >- The stop number to which this status update corresponds, if any. For example, a status update with code 'AT_STOP' will typically have this field populated with the stop number the vehicle is at, if specific stop details are avialable from the capacity provider. format: int32 type: integer stopType: description: >- The type of the shipment stop to which this status update corresponds, if any. For example, a status update with code 'AT_STOP' will typically have this field populated with the stop type the vehicle is at, if specific stop details are avialable from the capacity provider. enum: - ORIGIN - DESTINATION - TERMINAL type: string timestamp: $ref: '#/components/schemas/SplitOffsetDateTime' title: LtlShipmentStatusUpdate type: object LtlShipmentStopStatus: properties: arrivalCode: description: >- The approximate arrival status of the vehicle at the stop, as recorded. The arrival status is relative to the user-defined appointment window for the stop. enum: - UNKNOWN - EARLY - ON_TIME - LATE type: string arrivalDateTime: $ref: '#/components/schemas/SplitOffsetDateTime' arrivalEstimate: $ref: '#/components/schemas/LtlShipmentArrivalEstimate' departureDateTime: $ref: '#/components/schemas/SplitOffsetDateTime' statusCode: description: >- The status of the vehicle relative to this stop, whether it is presumed to be currently en route to the stop or whether it has been recorded as having arrived or departed the stop. enum: - UNKNOWN - EN_ROUTE - ARRIVED - DEPARTED type: string stopId: description: The id of the shipment stop to which this status pertains. format: int64 type: integer stopNumber: description: The number of the shipment stop to which this status pertains. format: int32 type: integer stopType: description: The type of the shipment stop to which this status pertains. enum: - ORIGIN - DESTINATION - TERMINAL type: string uuid: description: The uuid is used to match shipment stops and created loads. format: uuid type: string title: LtlShipmentStopStatus type: object LtlTrackedShipment: properties: apiConfiguration: $ref: '#/components/schemas/LtlTrackedShipmentApiConfiguration' capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' id: description: >- The project44-generated id of the LTL shipment. This may be provided when creating a tracked shipment only if a tracked shipment does not exist with this id but a shipment record does exist in project44's system with this id. This enables linking a dispatched shipment that initially failed to track to its tracking information by passing the id from dispatch. This id will always be returned in the shipment confirmation and may be used in subsequent API calls to reference a shipment. format: int64 type: integer ltlLegId: description: >- The project44-generated id that is the UUID equivalent of id. The same rules apply to this value as applies to the id. format: uuid type: string masterShipmentId: description: >- The project44-generated id that connects multi-leg shipments agnostic of mode. format: uuid type: string shipmentAttributes: description: The list of attributes to associate with the shipment. items: $ref: '#/components/schemas/Attribute' type: array shipmentIdentifiers: description: >- A user-defined list of shipment identifiers that, with the exception of the EXTERNAL type, can be used to track the shipment with the capacity provider. items: $ref: '#/components/schemas/LtlShipmentIdentifier' type: array shipmentStops: description: >- A list of the shipment stops for the shipment. Two and only two stops must be provided -- one of type 'ORIGIN' and one of type 'DESTINATION'. Stops of type 'TERMINAL' may be added as the shipment is tracked and they are discovered via capacity provider information. Note that 'TERMINAL' will be ignored if provided as part of a PUT. items: $ref: '#/components/schemas/LtlTrackedShipmentStop' type: array title: LtlTrackedShipment type: object LtlTrackedShipmentApiConfiguration: properties: fallBackToDefaultAccountGroup: description: >- 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") type: boolean title: LtlTrackedShipmentApiConfiguration type: object LtlTrackedShipmentConfirmation: properties: infoMessages: description: >- System messages and messages from the capacity provider with severity "INFO" or "WARNING". No messages with severity "ERROR" will be returned here. items: $ref: '#/components/schemas/Message' type: array shipment: $ref: '#/components/schemas/LtlTrackedShipment' title: LtlTrackedShipmentConfirmation type: object LtlTrackedShipmentImageReference: properties: documentType: description: A code for this image's document type. enum: - BILL_OF_LADING - DELIVERY_RECEIPT - WEIGHT_CERTIFICATE - INVOICE - INSPECTION_CERTIFICATE - LETTER_OF_AUTHORIZATION - LUMPER_CERTIFICATE - PACKING_SLIP type: string imageFormat: description: A code for this image's format. enum: - PDF - TIF - PNG - GIF - JPG type: string imageUrl: description: The web URL for accessing this image. type: string title: LtlTrackedShipmentImageReference type: object LtlTrackedShipmentStop: properties: additionalAppointmentWindows: description: >- Optional user-defined field in which one or many additional appointment windows can be provided on the stop. Note that the start and end times are required for 'appointmentWindow'; the default start time does not apply to this field. On responses, the time zone identifier (for example, 'America/Chicago') for this date time window is determined by project44 when possible based on the stop's address. items: $ref: '#/components/schemas/LtlAdditionalAppointmentWindow' type: array appointmentWindow: $ref: '#/components/schemas/ZonedDateTimeWindow' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' id: description: >- The id of the stop. This value is read only; it will be ignored on create and update. format: int64 type: integer involvedParties: description: >- 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. items: $ref: '#/components/schemas/Party' type: array location: $ref: '#/components/schemas/Location' locationIdentifiers: description: >- The identifiers associated with the user-defined stop location, to be used with the Stop Location API. items: $ref: '#/components/schemas/LocationIdentifier' type: array stopDescription: description: Description related to the stop. type: string stopName: description: >- The user-defined or capacity provider-defined name of this stop. This is a freeform field. Project44 will default the name of each stop based on the stop number and type if no other name is available. type: string stopNumber: description: >- The stop number, where "1'" is the origin, and the destination has the largest number, with any stops in between ordered by appointment time. This field may not be provided when creating a shipment. The destination stop number will change dynamically as terminals are discovered along the shipment's route from origin to destination. Thus, the stop type is most useful for easily and reliably identifying the origin and destination. format: int32 type: integer stopType: description: >- The type of this stop. The user-defined stops will always have the type of 'ORIGIN' and 'DESTINATION', which are customer locations. Stops of the type 'TERMINAL', which are capacity provider redistribution centers, may be inserted dynamically as they are returned by the capacity provider. Note that 'TERMINAL' will be ignored if provided as part of a PUT. enum: - ORIGIN - DESTINATION - TERMINAL type: string uuid: description: >- UUID that uniquely identifies a stop. This value is generated by project44 on a successful PUT or POST. format: uuid type: string title: LtlTrackedShipmentStop type: object MarkDetails: required: [] type: object properties: pieces: type: integer description: Number of pieces in a shipment requiring marking or tagging. Message: description: Simple representation of an info, warning, or error message. properties: diagnostic: description: >- Diagnostic information, often originating from the capacity provider. type: string message: description: Message informational text. type: string severity: description: The severity of this message. enum: - ERROR - WARNING - INFO type: string source: description: >- The originator of this message -- either project44 (the system) or the capacity provider. enum: - SYSTEM - CAPACITY_PROVIDER type: string title: Message type: object MessageStatus: enum: - PASS - FAIL - WARNING type: string description: Indicate if the request was successful and if there were exceptions MessageStatusInformation: type: object properties: code: type: string description: Code related to the information. message: type: string description: Message related to the information. type: type: string description: Type of information related to the message status. MobileTrackingEventDetails: description: Details of an event related to a mobile tracking properties: code: description: ${MobileTrackingEventDetails.apiModel.code.value} enum: - UNKNOWN - DRIVER_ACCEPTED_TERMS_AND_CONDITIONS - DRIVER_INITIATED_APP_SIGNUP - DRIVER_LOADED_ASSIGNED_SHIPMENT_IN_APP - DRIVER_DELETED_ACCOUNT - DRIVER_CLAIMED_SHIPMENT - SHIPMENT_ASSIGNED_INVALID_PHONE_NUMBER - DRIVER_OPENED_INVITATION_LINK - DRIVER_ENTERED_INVALID_VERIFICATION_CODE - DRIVER_CONFIRMED_PHONE_NUMBER - DRIVER_COMPLETED_SHIPMENT_MANUALLY - DRIVER_REJECTED_SHIPMENT_MANUALLY - DRIVER_COMPLETED_SETUP - DRIVER_PROVIDED_INSUFFICIENT_LOCATION_PERMISSION - SHIPMENT_ASSIGNED_VOIP_NUMBER type: string title: MobileTrackingEventDetails type: object MonetaryValue: required: [] type: object properties: amount: type: number description: The value of the shipment currency: $ref: '#/components/schemas/Currency' description: A monetary value expressing amount and currency type. MonetaryValueRangeFilter: properties: maximumValue: $ref: '#/components/schemas/MonetaryValue' maximumValueInclusive: description: 'Signifies if the maximum value is inclusive. (default: false )' type: boolean minimumValue: $ref: '#/components/schemas/MonetaryValue' minimumValueInclusive: description: 'Signifies if the minimum value is inclusive. (default: true )' type: boolean title: MonetaryValueRangeFilter type: object MonthlyCarrierPerformance: properties: deliveryScheduleReliability: description: >- Percentage of tracked shipments in the month that were delivered within 2 hours of the scheduled time format: int32 type: integer month: description: The month (1-12) the enclosed performance data was collected format: int32 type: integer percentTracked: description: >- Percentage of shipments in the month where tracking was initiated which received at least one tracking update format: int32 type: integer pickupScheduleReliability: description: >- Percentage of tracked shipments in the month that were picked up within 2 hours of the scheduled time format: int32 type: integer shipmentVolume: description: Number of shipments tracked in the month enum: - VOLUME_0_TO_10_SHIPMENTS - VOLUME_11_TO_50_SHIPMENTS - VOLUME_51_TO_100_SHIPMENTS - VOLUME_101_OR_MORE_SHIPMENTS type: string year: description: The year of the month the performance data was collected format: int32 type: integer title: MonthlyCarrierPerformance type: object MultiModalImageQuery: description: >- Request an image of a document related to a shipment. This is the same model name as v2/v3, but with slightly different fields. This should be used with the multi-modal imaging endpoint only. properties: apiConfiguration: $ref: '#/components/schemas/ImageApiConfiguration' capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' destinationAddress: $ref: '#/components/schemas/Address' documentType: description: A code for the requested image's document type. enum: - BILL_OF_LADING - DELIVERY_RECEIPT - WEIGHT_CERTIFICATE - INVOICE - INSPECTION_CERTIFICATE - LETTER_OF_AUTHORIZATION - LUMPER_CERTIFICATE - PACKING_SLIP type: string imageFormat: description: >- A code for the format of the image to be returned. The capacity provider's image will be converted to this format. (default: 'PNG') enum: - PDF - TIF - PNG - GIF - JPG type: string mode: description: >- The transportation mode of the shipment for which images should be retrieved. Only LTL images are supported currently. enum: - PARCEL - LTL - VOLUME_LTL - TRUCKLOAD - OCEAN - RAIL type: string pickupDate: description: >- The date this shipment was picked up by carrier. Some carriers require this to aid in retrieving documents. (format: yyyy-MM-dd) format: date type: string shipmentIdentifiers: description: >- A list of identifiers or reference numbers for this shipment. 'PRO' is the only currently supported identifier type and exactly one value of this type must be provided. items: $ref: '#/components/schemas/ShipmentIdentifier' type: array title: MultiModalImageQuery type: object MultiModalImageReference: description: Reference to an image of a document related to a shipment. properties: documentType: description: A code for this image's document type, matching what was requested. enum: - BILL_OF_LADING - DELIVERY_RECEIPT - WEIGHT_CERTIFICATE - INVOICE - INSPECTION_CERTIFICATE - LETTER_OF_AUTHORIZATION - LUMPER_CERTIFICATE - PACKING_SLIP type: string imageFormat: description: A code for this image's format, matching what was requested. enum: - PDF - TIF - PNG - GIF - JPG type: string imageUrl: description: The web URL for accessing this image. type: string infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array title: MultiModalImageReference type: object NameWrapper: required: [] type: object properties: operator: $ref: '#/components/schemas/Operator' value: type: string description: The name of the document to search for NmfcCode: description: >- An object that represents the NMFC item code and sub code associated with the shipment contents properties: code: description: >- NMFC item and sub code. Codes can only contain numeric characters and the '-' character. The item code must be 4 to 6 digits long. The '-' and sub code are optional, but if sub code is included it is 1 to 2 digits long. Must be in format XXXXXX-XX. type: string title: NmfcCode type: object NonSpecificAccessorials: enum: - EXPEDITE - EXPEDITE17 - EXPEDITEAM - GURWIN - GSSING - GSMUL - GSFM - GS8 - GS9 - GS10 - GS11 - GSAM - GS14 - GS15 - GS1530 - GUR - ACCELERATED - CAPLOAD - CNTER20 - CNTER40 - CNTER40H - CNTER45 - CNTER53 - CAPLOADTRA - CAPLOADPUP - CHASSIS - FLTTRCK - TANK - OPENTOP - STRAIGHT - HOLIWEEK - WESER - AFTRHR - CHNGBOL - CORBOL - REEFER - FRIDGE - PFH - MAINTEMP - HEAT - PFZ - PFZC - PROTECT - PROTECTDRM - PROTECTPAL - FRZABLE - HAZM - POISON - LOAD - LOADCNT - LOADUNLOAD - DRASST - UNPCK - UNLOAD - UNLOADCNT - O750U6 - OVDIM - OVERWGHT - REG - INT - IREG - BYDIND - TSAC - HMLAND - SECINS - ADVCOL - CONSOL - DESCINS - DLYCHRG - INBND - RMVDEB - TARP - TCKNU - PRMIT - WINSPC - WVERI - XTRLBR - AIR - AIRBAG - BAGLINER - BOBTAIL - CRANE - CROSS - DROPPULL - FORK - LABEL - LIQUOR - PALLET - SIGN - SPECIALEQUIP - ARCHR - BLIND - BOND - BULKHEAD - CANFEE - COD - CREDEL - DET - DRAY - DRYRU - EV - EXPORT - FOOD - HAWAII - HOMEMOVE - HIGHDOCK - IMPORT - LUMPER - LYOVR - MARKING - OILSANDS - RECON - SEADOC - SINGSHIP - STORAGE - STPOFF - TMCHG - WHITEGLOVE description: An enumeration. Notification: type: object properties: email: type: string description: Email address of contact for updates about shipment movements. format: email phoneNumber: type: string description: Phone number of contact for updates about shipment movements. OAuthError: description: Standard OAuth 2.0 error model. properties: error: description: The type of error that has occurred. enum: - invalid_request - invalid_client - invalid_grant - unauthorized_client - unsupported_grant_type - invalid_scope - access_denied - unsupported_response_type - server_error - temporarily_unavailable type: string error_description: description: A detailed description of the error. type: string support_reference_id: description: >- A reference identifier used by project44 support to assist with certain error messages. type: string title: OAuthError type: object OAuthToken: description: Standard OAuth 2.0 model for returning an access token. properties: access_token: description: >- The project44 access token, which can be passed as a bearer token to all other project44 endpoints to have your client application's requests authorized. Pass the "Authorization" HTTP header to other endpoints in this form: "Authorization: Bearer {access_token}". Your client application can be granted roles and permissions via the project44 user management UI under user "app-{client_id}@client-applications.project44.com". type: string expires_in: description: >- The time in seconds for which the access token will be valid before expiring. Tokens currently last approximately 12 hours, but this is subject to change by project44 in the future. Tokens should be reused by your application to the fullest extent possible for performance and security reasons by storing the token in a secure cache. Instead of using this expiration time to know when to generate a new access token, simply make requests with the token until project44 responds with a "401 Unauthorized" HTTP status code, at which point your application should generate and cache a new one. format: int64 type: integer token_type: description: >- The type of access token returned. This will always be type "BEARER". enum: - BEARER type: string title: OAuthToken type: object OceanAttribute: properties: name: description: The key (name) for the custom attribute. Must be unique. type: string value: type: string values: description: The values for the custom attribute. items: type: string type: array title: OceanAttribute type: object OceanBookingResponseDetails: type: object properties: cutOffDetails: $ref: '#/components/schemas/CutOffDetails' estimatedFinalDestinationDatetime: type: string description: Estimated time for goods to arrive to destination format: date-time portsDetails: type: array items: $ref: '#/components/schemas/PortDetails' description: List of ports and arrival dates OceanBookingType: enum: - LESS_THAN_CONTAINER_LOAD - FULL_CONTAINER_LOAD - ROLL_ON_ROLL_OFF - OUT_OF_GAUGE type: string description: An enumeration. OceanBookingUpdateDetails: required: [] type: object properties: numberOfPreviousOceanBookings: type: integer format: int32 previousOceanBookings: type: array items: $ref: '#/components/schemas/PreviousOceanBooking' OceanEquipmentIdentifier: properties: type: description: The type of the identifier. enum: - CONTAINER_ID type: string value: description: The value of the identifier. type: string title: OceanEquipmentIdentifier type: object OceanEvent: properties: eventCode: description: The code describing this event. enum: - TRACKING_STARTED - TRACKING_STOPPED - UNKNOWN - GATE_IN_FULL - GATE_IN_EMPTY - GATE_OUT_EMPTY - GATE_OUT - LOADED - EMBARKED - BERTHING - ARRIVED - DISCHARGED - DEPARTED_TERMINAL - BECAME_AVAILABLE - CUSTOMS_HOLD_INITIATED - LINE_HOLD_INITIATED - OTHER_HOLD_INITIATED - CUSTOMS_HOLD_RELEASED - LINE_HOLD_RELEASED - OTHER_HOLD_RELEASED type: string stopNumber: description: >- The number of the stop from the stop array where this state occurred, if applicable. format: int32 type: integer timeStamp: description: >- The date and time when this event occurred. This will be expressed in the ISO-8601 standard with zero timezone offset (UTC) (Format: yyyy-MM-dd'T'HH:mm:ssZ) (Example: 2019-04-16T18:55:47+0500). type: string vesselNumber: description: >- The number of the vessel from the vessel array where this state occurred, if applicable. format: int32 type: integer title: OceanEvent type: object OceanEventDetails: description: Details of an event related to ocean tracking properties: code: description: ${OceanEventDetails.apiModel.code.value} enum: - UNKNOWN - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL - BOOKING_CONFIRMED_BY_FFW - BOOKING_CONFIRMED_BY_OCEAN_CARRIER - BOOKING_CANCELLED - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN - PICKED_UP_FULL_CONTAINER_AT_ORIGIN - ARRIVAL_AT_EXPORT_WAREHOUSE - DEPARTURE_FROM_EXPORT_WAREHOUSE - ARRIVAL_AT_ORIGIN_CFS - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL - DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL - DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING - EXPORT_CUSTOMS_DOCS_FILING - EXPORT_CUSTOMS_HOLD - EXPORT_CUSTOMS_CLEARANCE - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING - SHORT_SHIPPED_AT_PORT_OF_LOADING - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT - DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT - ARRIVAL_AT_TRANSSHIPMENT_CFS - DISCHARGE_AT_TRANSSHIPMENT_CFS - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS - DEPARTURE_FROM_TRANSSHIPMENT_CFS - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE - DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE - CARRIER_HOLD_AT_PORT_OF_DISCHARGE - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE - IMPORT_CUSTOMS_DOCS_FILING - IMPORT_CUSTOMS_HOLD - IMPORT_CUSTOMS_CLEARANCE - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE - ARRIVAL_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL - DEPARTURE_OF_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL - ARRIVAL_AT_DESTINATION_CFS - STRIP_AT_DESTINATION_CFS - DEPARTURE_FROM_DESTINATION_CFS - ARRIVAL_AT_IMPORT_WAREHOUSE - DEPARTURE_FROM_IMPORT_WAREHOUSE - PROOF_OF_DELIVERY - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE - HANDOVER_TO_THIRD_PARTY - READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL type: string title: OceanEventDetails type: object OceanPosition: properties: geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' timeStamp: description: >- The date and time at which this position data was recorded. This will be expressed in the ISO-8601 standard with zero timezone offset (UTC) (Format: yyyy-MM-dd'T'HH:mm:ssZ) (Example: 2019-04-16T18:55:47+0500). type: string vesselNumber: description: >- The number of the vessel from the vessel array which was carrying the container at this position. format: int32 type: integer title: OceanPosition type: object OceanServiceType: enum: - CONTAINER_YARD_TO_CONTAINER_YARD - CONTAINER_YARD_TO_DOOR - DOOR_TO_CONTAINER_YARD - DOOR_TO_DOOR type: string description: An enumeration. OceanShipment: properties: attributes: description: >- An optional user-defined set of custom attributes to associate with this shipment. items: $ref: '#/components/schemas/OceanAttribute' type: array carrierSCACCode: description: >- The SCAC code identifying the carrier transporting the given container. This field is required. type: string equipmentIdentifier: $ref: '#/components/schemas/OceanEquipmentIdentifier' masterShipmentId: description: >- This id links 1 or more legs as part of the same overall shipment. For intermodal shipments, pass an existing masterShipmentId to link this ocean leg to the overall master shipment. Otherwise pass any valid new UUID to create a new shipment. If no masterShipmentId is passed on POST request a new UUID will be generated. This value will always be returned on all responses. format: uuid type: string oceanLegId: description: >- The project44-generated id for the ocean shipment. This id may be used in subsequent API calls to reference a shipment. format: uuid type: string shipmentId: description: >- DEPRECATED: The project44-generated id for tracking an intermodal shipment. This id may be used in subsequent API calls to reference a shipment. This field is deprecated, use masterShipmentId instead. format: uuid type: string shipmentIdentifiers: description: A list of optional identifiers to associate with this shipment. items: $ref: '#/components/schemas/OceanShipmentIdentifier' type: array title: OceanShipment type: object OceanShipmentConfirmation: properties: infoMessages: description: System messages and messages from the capacity provider. items: $ref: '#/components/schemas/Message' type: array shipment: $ref: '#/components/schemas/OceanShipment' title: OceanShipmentConfirmation type: object OceanShipmentIdentifier: properties: type: description: The type of the identifier. enum: - BILL_OF_LADING - BOOKING_NUMBER type: string value: description: The value of the identifier. type: string title: OceanShipmentIdentifier type: object OceanShippingDetails: required: [] type: object properties: accessorials: type: array items: anyOf: - $ref: '#/components/schemas/RefrigeratedAccessorial' - $ref: '#/components/schemas/LiftgateAccessorial' - $ref: '#/components/schemas/TarpsAccessorial' - $ref: '#/components/schemas/StrapsAccessorial' - $ref: '#/components/schemas/ChainsAccessorial' - $ref: '#/components/schemas/DeckHeightAccessorial' - $ref: '#/components/schemas/CraneAccessorial' - $ref: '#/components/schemas/CallBeforeArrivalAccessorial' - $ref: '#/components/schemas/DockRequiredAccessorial' - $ref: '#/components/schemas/LockedGateAccessorial' - $ref: '#/components/schemas/FirstComeFirstServedAccessorial' - $ref: '#/components/schemas/AppointmentRequiredAccessorial' - $ref: '#/components/schemas/WhiteGloveAccessorial' - $ref: '#/components/schemas/HazmatAccessorial' - $ref: '#/components/schemas/ExcessiveLengthAccessorial' - $ref: '#/components/schemas/GuaranteedServiceLevelAccessorial' - $ref: '#/components/schemas/OtherAccessorial' description: >- Optional list of descriptors which detail any add-ons or declarations applicable which may be noteworthy to the carrier. bookingType: allOf: - $ref: '#/components/schemas/OceanBookingType' description: >- The type of sea freight to be handled; the container-fill volume, or lack thereof. cargoMeasurements: allOf: - $ref: '#/components/schemas/CargoMeasurements' description: >- Volume, weight and linear dimensions of the cargo. Required when booking `ROLL_ON_ROLL_OFF` and `LESS_THAN_CONTAINER_LOAD`. containerCount: anyOf: - $ref: '#/components/schemas/FullContainerLoadContainerCount' - $ref: '#/components/schemas/OutOfGaugeContainerCount' description: >- Number of equipment requested for a booking needs to be provided here. Only required when booking `FULL_CONTAINER_LOAD` or `OUT_OF_GAUGE`. cutOffDetails: allOf: - $ref: '#/components/schemas/CutOffDetails' description: ... estimatedFinalDestinationDatetime: type: string description: Estimated time for goods to arrive to destination format: date-time incoterm: allOf: - $ref: '#/components/schemas/IncotermType' description: >- International Commercial Terms for shipment responsibilities, according to the [ICC](https://iccwbo.org/). parties: minItems: 1 type: array items: $ref: '#/components/schemas/BookingParty' description: >- Individual shipper-represented groups which are involved with the shipment on this portsDetails: type: array items: $ref: '#/components/schemas/PortDetails' description: List of ports and arrival dates serviceType: allOf: - $ref: '#/components/schemas/OceanServiceType' description: >- The type of service requested for booking. In other words, is the Carrier expected to handle the shipment between ports or boat-inaccessible yards. OceanState: properties: endTime: description: >- The date and time when the container left this state. This will be expressed in the ISO-8601 standard with zero timezone offset (UTC) (Format: yyyy-MM-dd'T'HH:mm:ssZ) (Example: 2019-04-16T18:55:47+0500). type: string startTime: description: >- The date and time when the container entered this state. This will be expressed in the ISO-8601 standard with zero timezone offset (UTC) (Format: yyyy-MM-dd'T'HH:mm:ssZ) (Example: 2019-04-16T18:55:47+0500). type: string stateCode: description: The code describing this state. enum: - AT_STOP - IN_TRANSIT - ON_WATER - LINE_HOLD - CUSTOMS_HOLD - OTHER_HOLD - AT_TERMINAL - UNKNOWN type: string stopNumber: description: >- The number of the stop from the stop array where this state occurred, if applicable. format: int32 type: integer vesselNumber: description: >- The number of the vessel from the vessel array where this state occurred, if applicable. format: int32 type: integer title: OceanState type: object OceanStop: properties: address: $ref: '#/components/schemas/Address' arrivalTiming: $ref: '#/components/schemas/Timing' departureTiming: $ref: '#/components/schemas/Timing' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' id: description: The id of this stop. format: uuid type: string name: description: The name of this port. type: string portCBPCode: description: The Customs and Border Protection code of this port. type: string portLocode: description: >- The UN/LOCODE of this port. 2 char country code + 3 char location code. type: string stopNumber: description: >- The project44-assigned number for this stop. The stop is referenced by this number in the lists of events and states. format: int32 type: integer stopType: description: The type of the stop. enum: - PLACE_OF_ORIGIN - PORT_OF_ORIGIN - PORT_OF_LOADING - TRANSSHIPMENT_PORT - PORT_OF_DISCHARGE - DESTINATION type: string title: OceanStop type: object OceanTrackedContainer: properties: containerId: description: The ISO 6346 compliant number of this container. type: string currency: description: The currency in which the demurrage value is represented. enum: - USD - CAD - MXN - EUR type: string demurrage: description: >- The total reported demurrage charge. This field is set by project44 in the API response. type: number lastFreeDay: description: >- The last day of free storage in which a container can be picked up without paying demurrage. This field is set by project44 in the API response. This will be expressed in the ISO-8601 standard with zero timezone offset (UTC) (Format: yyyy-MM-dd'T'HH:mm:ssZ) (Example: 2019-04-16T00:00:00+0000). type: string title: OceanTrackedContainer type: object OceanTrackedShipment: properties: attributes: description: >- An optional user-defined set of custom attributes to associate with this shipment. items: $ref: '#/components/schemas/OceanAttribute' type: array carrierSCACCode: description: >- The SCAC code identifying the carrier transporting the given container. This field is required. type: string containerDetails: $ref: '#/components/schemas/OceanTrackedContainer' equipmentIdentifier: $ref: '#/components/schemas/OceanEquipmentIdentifier' events: description: >- A list of container events in chronological order, with possible references to the stop and vessel where they occurred. items: $ref: '#/components/schemas/OceanEvent' type: array mapUrl: description: Public link to view the shipment in the VOC. type: string masterShipmentId: description: >- This id links 1 or more legs as part of the same overall shipment. For intermodal shipments, pass an existing masterShipmentId to link this ocean leg to the overall master shipment. Otherwise pass any valid new UUID to create a new shipment. If no masterShipmentId is passed on POST request a new UUID will be generated. This value will always be returned on all responses. format: uuid type: string oceanLegId: description: >- The project44-generated id for the ocean shipment. This id may be used in subsequent API calls to reference a shipment. format: uuid type: string positions: description: >- A list of geoCoordinates and timestamps describing the container's location on the water, with reference to the vessel which carried it. items: $ref: '#/components/schemas/OceanPosition' type: array shipmentId: description: >- DEPRECATED: The project44-generated id for tracking an intermodal shipment. This id may be used in subsequent API calls to reference a shipment. This field is deprecated, use masterShipmentId instead. format: uuid type: string shipmentIdentifiers: description: A list of optional identifiers to associate with this shipment. items: $ref: '#/components/schemas/OceanShipmentIdentifier' type: array states: description: >- A list of container states in chronological order, with possible references to the stop and vessel where they occurred. items: $ref: '#/components/schemas/OceanState' type: array stops: description: >- The list of stops (origin port, destination port, or transhipment ports) in this shipment. items: $ref: '#/components/schemas/OceanStop' type: array vessels: description: A list of vessels being tracked within this shipment. items: $ref: '#/components/schemas/OceanVessel' type: array title: OceanTrackedShipment type: object OceanTrackedShipmentConfirmation: properties: infoMessages: description: System messages and messages from the capacity provider. items: $ref: '#/components/schemas/Message' type: array trackedShipment: $ref: '#/components/schemas/OceanTrackedShipment' title: OceanTrackedShipmentConfirmation type: object OceanVessel: properties: callSign: description: >- The alphanumeric value that uniquely identifies the vessel being tracked. This field is set by project44 in the API response. type: string draught: description: >- The draught of the vessel being tracked. This determines the minimum depth of water the vessel can safely navigate. This field is set by project44 in the API response. type: number imo: description: >- The IMO (International Maritime Organization) number representing the vessel being tracked. format: int64 type: integer length: description: >- The length of the vessel being tracked. This field is set by project44 in the API response. type: number lengthUnit: description: The unit of measure for length, width, and draught. enum: - IN - CM - FT - M type: string mmsi: description: >- The MMSI (Maritime Mobile Service Identity) value that uniquely identifies the vessel being tracked. This field is set by project44 in the API response. format: int64 type: integer name: description: >- The name of the vessel being tracked. This field is set by project44 in the API response. type: string shipType: description: >- The type of the vessel being tracked. This field is set by project44 in the API response. type: string vesselNumber: description: >- The project44-assigned number for this vessel. The vessel is referenced by this number in the lists of events, states and positions. format: int32 type: integer width: description: >- The width of the vessel being tracked. This field is set by project44 in the API response. type: number title: OceanVessel type: object OffsetDateTimeRangeFilter: description: A date and time range filter, with time zone offset. properties: endDateTime: description: >- End Date time of this range with timezone offset. (format: 'yyyy-MM-dd'T'HH:mm:ssZ' ) type: string endDateTimeInclusive: description: 'Signifies if the end date time is inclusive. (default: false)' type: boolean startDateTime: description: >- Start Date time of this range with timezone offset. (format: 'yyyy-MM-dd'T'HH:mm:ssZ' ) type: string startDateTimeInclusive: description: 'Signifies if the start date time is inclusive. (default: true)' type: boolean title: OffsetDateTimeRangeFilter type: object OffsetDateTimeWindow: description: A date and time range, with time zone offset. properties: endDateTime: description: >- End time of this window with timezone offset. (format: yyyy-MM-dd'T'HH:mm:ssZ) type: string startDateTime: description: >- Start time of this window with timezone offset. (format: yyyy-MM-dd'T'HH:mm:ssZ) type: string title: OffsetDateTimeWindow type: object OpeningHours: properties: appliesFriday: description: Whether this set of OpeningHours applies on Fridays. type: boolean appliesMonday: description: Whether this set of OpeningHours applies on Mondays. type: boolean appliesSaturday: description: Whether this set of OpeningHours applies on Saturdays. type: boolean appliesSunday: description: Whether this set of OpeningHours applies on Sundays. type: boolean appliesThursday: description: Whether this set of OpeningHours applies on Thursdays. type: boolean appliesTuesday: description: Whether this set of OpeningHours applies on Tuesdays. type: boolean appliesWednesday: description: Whether this set of OpeningHours applies on Wednesdays. type: boolean closes: description: Local closing time of this location, formatted as HH:mm. type: string opens: description: Local opening time of this location, formatted as HH:mm. type: string required: [] title: OpeningHours type: object Operator: enum: - EQUALS - NOT_EQUALS - CONTAINS type: string description: An enumeration. OrderArrivalStatus: type: object properties: code: $ref: '#/components/schemas/TimelinessCode' durationInMinutes: type: integer format: int64 description: >- Comparison between the planned date and time window and the date and time when the order is predicted to be delivered. OrderCustomAttribute: properties: name: description: >- The key (name) for the custom attribute. Must be unique (case-insensitive). type: string values: description: The values for the custom attribute. items: type: string maxItems: 250 minItems: 1 type: array title: OrderCustomAttribute type: object OrderDurationRange: description: Match orders on the duration of the order arrival status. properties: fromDuration: $ref: '#/components/schemas/TimeDuration' fromInclusive: description: 'Signifies if the minimum value is inclusive. (default: true)' type: boolean toDuration: $ref: '#/components/schemas/TimeDuration' toInclusive: description: 'Signifies if the maximum value is inclusive. (default: false)' type: boolean title: OrderDurationRange type: object OrderHealthCriteria: description: >- To match orders based on derivedOrderHealth: arrival status, duration range / delta, target date range for estimated time of arrival. properties: dateRanges: items: $ref: '#/components/schemas/OrderHealthDateCriteria' type: array deltas: items: $ref: '#/components/schemas/OrderHealthDeltaCriteria' type: array durationRange: $ref: '#/components/schemas/OrderDurationRange' shipmentStatus: description: The overall timeliness of the order (EARLY, LATE, ON_TIME). enum: - UNKNOWN - EARLY - ON_TIME - LATE type: string title: OrderHealthCriteria type: object OrderHealthDateCriteria: description: >- To match orders based on target date range for estimated time of arrival. When operator is ON_OR_AFTER, now + offsetMinutes or the startDateTime is used as the date. When operator is ON_OR_BEFORE, now + offsetMinutes or the endDateTime is used as the date. Construct absolute ranges with both startDateTime and endDateTime with null offsetMinutes. Construct relative ranges with offsetMinutes, where negative offset indicates time before now and positive offset indicates time after now. Example: Now and the following 10 days => offsetMinutes: 14400, operator: WITHIN. Example: The last 5 hours: offsetMinutes: -300, operator: WITHIN. Example: Before 8 hours from now: offsetMinutes: 480, operator: ON_OR_BEFORE. properties: endDateTime: description: >- The end of the period in which the estimated time of arrival is expected to be. type: string offsetMinutes: description: >- Duration in minutes defines the target range to match the estimated time of arrival. format: int64 type: integer operator: description: >- Operator to define the target range to match the estimated time of arrival. enum: - WITHIN - ON_OR_BEFORE - ON_OR_AFTER type: string startDateTime: description: >- The start of the period in which the estimated time of arrival is expected to be. type: string title: OrderHealthDateCriteria type: object OrderHealthDeltaCriteria: description: >- Match orders on the duration of the arrival status, also known as the delta between planned delivery window and estimated arrival of an order. The value is represented in minutes and must be non-negative. RUNNING_EARLY implies that the estimated arrival is before the planned delivery window RUNNING_LATE implies that the estimated arrival is after the planned delivery window To query orders that hit the delivery window, use EQUALS 0 minutes. Note that this matches only orders that are on time. For example, RUNNING_LATE with EQUALS 0 minutes will match on-time orders, but will not match orders that are running early. Example: RUNNING_EARLY by LESS_THAN 60 minutes Example: RUNNING_LATE by MORE_THAN 1440 minutes (1 day) properties: operator: description: Operator for the value. enum: - MORE_THAN - LESS_THAN - EQUALS type: string type: description: >- Type of delta to match the duration between the planned and the estimated time of arrival. enum: - RUNNING_EARLY - RUNNING_LATE type: string value: description: >- Duration in minutes defines the period between the planned and the estimated time of arrival. format: int64 type: integer title: OrderHealthDeltaCriteria type: object OrderIdentifier: type: object properties: type: type: string enum: - PURCHASE_ORDER - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - INVOICE value: type: string description: Customer provided identifier of the order. OrderIdentifierCriteria: description: OrderIdentifierCriteria properties: operator: enum: - EQUALS - NOT_EQUALS - CONTAINS type: string type: enum: - PURCHASE_ORDER - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - INVOICE - DELIVERY type: string values: items: type: string type: array title: OrderIdentifierCriteria type: object OrderIdentifierReference: properties: orderId: description: Project44 generated id for the order. type: string orderIdentifier: description: Value of order identifier. Has length between 1 and 50. type: string orderIdentifierAuthority: description: >- The authority is the party responsible for managing creation of the order identifier. Either null or has length between 1 and 50. type: string orderType: description: Type of the order. Required. enum: - PURCHASE_ORDER - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - INVOICE - DELIVERY type: string title: OrderIdentifierReference type: object OrderItemAdditionalIdentifierCriteria: description: OrderItemAdditionalIdentifierCriteria properties: operator: enum: - EQUALS - NOT_EQUALS - CONTAINS type: string type: description: ${OrderItemAdditionalIdentifierCriteria.apiModel.type.value} enum: - DEPARTMENT - SUB_DEPARTMENT - CATEGORY - GROUP - FAMILY - GENDER - VENDOR - MANUFACTURER - PROMOTION - SECTOR - DIVISION - CLASS - SUB_CLASS - CODE - SEASON type: string values: description: ${OrderItemAdditionalIdentifierCriteria.apiModel.values.value} items: type: string type: array title: OrderItemAdditionalIdentifierCriteria type: object OrderItemDescriptionCriteria: properties: operator: enum: - EQUALS - NOT_EQUALS - CONTAINS type: string values: items: type: string type: array title: OrderItemDescriptionCriteria type: object OrderItemIdentifierCriteria: description: OrderItemIdentifierCriteria properties: operator: enum: - EQUALS - NOT_EQUALS - CONTAINS type: string type: enum: - STOCK_KEEPING_UNIT - UNIVERSAL_PRODUCT_CODE - SERIAL_NUMBER type: string values: items: type: string type: array title: OrderItemIdentifierCriteria type: object OrderLocationCriteria: description: OrderLocationCriteria properties: propertyCriteria: items: $ref: '#/components/schemas/OrderLocationPropertyCriteria' type: array stopCriteria: $ref: '#/components/schemas/OrderStopCriteria' title: OrderLocationCriteria type: object OrderLocationPropertyCriteria: description: OrderLocationPropertyCriteria properties: operator: description: ${OrderLocationPropertyCriteria.apiModel.operator.value} enum: - EQUALS - NOT_EQUALS - CONTAINS type: string type: description: ${OrderLocationPropertyCriteria.apiModel.type.value} enum: - POSTAL_CODE - ADDRESS_LINES - CITY - STATE - COUNTRY - SUPPLIER_ID - NAME type: string values: description: ${OrderLocationPropertyCriteria.apiModel.values.value} items: type: string type: array title: OrderLocationPropertyCriteria type: object OrderStopCriteria: description: OrderStopCriteria properties: operator: description: ${OrderStopCriteria.apiModel.operator.value} enum: - EQUALS - NOT_EQUALS - CONTAINS type: string values: description: ${OrderStopCriteria.apiModel.values.value} items: enum: - ORIGIN - DESTINATION - VENDOR - BILLING type: string type: array title: OrderStopCriteria type: object OrderSupplier: type: object properties: id: type: string name: type: string description: The supplier of the order at vendor location. OrderTag: type: object properties: description: type: string type: type: string enum: - ANALYST - CARRIER - CATEGORY - COMMODITY - DEPARTMENT - DIRECTOR - FAMILY - GROUP - MANAGER - SECTOR value: type: string description: >- Non-unique terms to describe how orders are managed within the organization. Used when searching and filtering by a specific department, team, category. OrderWebhookPayload: description: Order webhook payload allOf: - $ref: '#/components/schemas/UnifiedWebhookInterface' - type: object properties: data: $ref: '#/components/schemas/InventoryOrder' - type: object properties: dataType: type: string enum: - InventoryOrder - type: object properties: eventType: type: string enum: - inventory.v1.order.upserted - inventory.v1.order.deleted OtherAccessorial: required: [] type: object properties: code: anyOf: - $ref: '#/components/schemas/PickupAccessorials' - $ref: '#/components/schemas/DeliveryAccessorials' - $ref: '#/components/schemas/NonSpecificAccessorials' - $ref: '#/components/schemas/ExcessLengthAccessorials' description: Accessorial code. additionalProperties: false description: Accessorial which does not require any additional details. OutOfGaugeContainerCount: type: object properties: fortyFootContainerCount: type: integer description: Count of 40ft flat-rack containers default: 0 twentyFootContainerCount: type: integer description: Count of 20ft flat-rack containers default: 0 Package: description: >- An object that represents the physical package e.g. a box on a handling unit. properties: contact: $ref: '#/components/schemas/Contact' description: description: A brief description of the package and its contents. type: string freightClass: description: The freight class in this package. enum: - '50' - '55' - '60' - '65' - '70' - '77.5' - '85' - '92.5' - '100' - '110' - '125' - '150' - '175' - '200' - '250' - '300' - '400' - '500' type: string involvedParties: description: >- 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. items: $ref: '#/components/schemas/Party' type: array nmfcCodes: description: A list of the NMFC codes associated with this shipment. items: $ref: '#/components/schemas/NmfcCode' type: array packageContainerType: description: The type of the package. enum: - BAG - BALE - BOX - BUCKET - PAIL - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - EACH - FLAT - LOOSE - ROLL - TUBE type: string packageContents: description: A description of the items contained in the package. items: $ref: '#/components/schemas/PackageContents' type: array packageDimensions: $ref: '#/components/schemas/CubicDimension' packageQuantity: description: The number of packages on the handling unit identical to this one. format: int32 type: integer weightPerPackage: description: Weight per package. type: number title: Package type: object PackageContainerType: enum: - BAG - BALE - BOX - BUCKET - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - EACH - FLAT - LOOSE - PAIL - ROLL - TUBE type: string description: Enumeration of supported package type codes. PackageContentIdentifier: description: An identifier for the package contents. properties: type: description: The type of the package content identifier. enum: - PURCHASE_ORDER_NUMBER - SKU_NUMBER - DELIVERY_NUMBER type: string value: description: The value of the package content identifier. type: string title: PackageContentIdentifier type: object PackageContents: description: >- An object that represents the contents contained in the package on the handling unit. Meant to assist . properties: countryOfManufacture: description: Country of manufacture of line item. enum: - 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 type: string description: description: A brief description of the contents. type: string hazmatDetails: description: >- Required if the contents are hazardous materials. Provides important information about the hazardous materials to be transported, as required by the US Department of Transportation (DOT). items: $ref: '#/components/schemas/HazmatDetails' type: array packageContentIdentifiers: description: The identifiers associated with the contents. items: $ref: '#/components/schemas/PackageContentIdentifier' type: array packageContentQuantity: description: The number of items contained in the package. format: int32 type: integer title: PackageContents type: object PackagingTypeCode: enum: - BAG - BAL - BBL - BSK - BIN - BOX - BXT - BCH - BDL - CAB - CAG - CAN - CBY - CAR - CTN - CAS - CSK - CHS - COL - CNT - COR - CRT - CYL - DRM - DBK - ENV - FIR - GLD - HPR - HGH - HRB - INT - JAR - JCN - KEG - KIT - LIF - LBK - LSE - MXD - OTH - PKG - PCK - PAL - PAT - PCS - PLN - RCK - REL - ROL - SKD - SLP - SPL - TNK - TBN - TRY - TRU - TRK - TUB - TBE - UNT - VPK - WRP type: string description: An enumeration. PaginationInfo: description: Pagination information about a collection of resources. properties: pageNumber: description: Matching page number given the supplied PaginationParameters. format: int32 type: integer pageSize: description: Page size matching the PaginationParameters. format: int32 type: integer total: description: Total number of resource items matching the supplied criteria. format: int64 type: integer title: PaginationInfo type: object PaginationParameters: description: Parameters which define a requested page of resources. properties: pageNumber: description: >- The page of items that should be returned for a collection of resources. The min value should be one, and the max value should be less than the number of total pages for the collection. The page number is combined with the page size. format: int32 type: integer pageSize: description: >- The max number of items returned in a collection of resources. This value should be at least one. format: int32 type: integer title: PaginationParameters type: object ParcelCapacityProviderPushStatusUpdate: properties: carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' description: description: A description of the reason for the status of the status update. type: string estimatedTimeOfArrival: description: Latest estimated arrival time to the final stop. type: string eventType: description: >- The event corresponding to the status update that is being submitted. Certain events require a combination of fields to be submitted. For example: a POSITION_UPDATE event requires the location to be submitted, and the ETA eventrequires the estimatedTimeOfArrival to be submitted. Events may not require any additional information outside of the event type. An EXCEPTION eventdoes not require any additional information outside of the already required fields on the request. enum: - POSITION_UPDATE - ETA - EXCEPTION - DELIVERY_MISSED - LOADED_FOR_DELIVERY - OUT_FOR_DELIVERY - RETURN_TO_SENDER - SHIPMENT_RECEIVED - SHIPMENT_CREATED - AVAILABLE_FOR_PICKUP - PICKED_UP - ARRIVED_AT_STOP - DEPARTED_STOP - DELIVERED - CANCELED - DELAYED - HELD type: string location: $ref: '#/components/schemas/ParcelLocation' shipmentIdentifiers: description: >- A list of shipment identifiers that can be used to track the shipment. items: $ref: '#/components/schemas/ParcelShipmentIdentifier' type: array timestamp: description: >- The timestamp of this status update. (format: yyyy-MM-dd'T'HH:mm:ssZ). type: string title: ParcelCapacityProviderPushStatusUpdate type: object ParcelLocation: description: A parcel location object. properties: address: $ref: '#/components/schemas/Address' contact: $ref: '#/components/schemas/Contact' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' title: ParcelLocation type: object ParcelShipment: description: A parcel shipment object. properties: apiConfiguration: $ref: '#/components/schemas/ParcelShipmentApiConfiguration' capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' id: description: >- 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. format: int64 type: integer masterShipmentId: description: >- The project44-generated id for the shipment. This ID may be used when this shipment passes between different modes.This may not be provided when creating a shipment, but will always be returned in the shipment confirmation. format: uuid type: string parcelLegId: description: >- Identifies the leg of the journey. Each piece of equipment has a unique id for each mode that it travels on.This id may be used in subsequent API calls to reference this shipment leg. format: uuid type: string shipmentAttributes: description: >- A user-defined list of shipment attributes that are associated with the shipment items: $ref: '#/components/schemas/Attribute' type: array shipmentIdentifiers: description: >- 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. Currently, parcel tracking only accepts shipment identifier with type 'TRACKING_NUMBER'. items: $ref: '#/components/schemas/ParcelShipmentIdentifier' type: array shipmentStops: description: >- A list of shipment stops that allow the ability to specify appointment windows items: $ref: '#/components/schemas/ParcelShipmentStop' type: array title: ParcelShipment type: object ParcelShipmentApiConfiguration: description: Contains fields used to configure the Parcel shipment API. properties: fallBackToDefaultAccountGroup: description: >- 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') type: boolean title: ParcelShipmentApiConfiguration type: object ParcelShipmentConfirmation: description: Parcel shipment confirmation for a single package. properties: infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array shipment: $ref: '#/components/schemas/ParcelShipment' shipments: description: >- The created shipment or shipments, including project44-calculated shipment stop details and the project44 id of the shipment. This will contain all shipments that were created including the one originally requested. If this is a multi-package shipment additional shipments will be created, one for each package. items: $ref: '#/components/schemas/ParcelShipment' type: array title: ParcelShipmentConfirmation type: object ParcelShipmentDeleteConfirmation: description: Parcel shipment delete confirmation. properties: infoMessages: items: $ref: '#/components/schemas/Message' type: array title: ParcelShipmentDeleteConfirmation type: object ParcelShipmentIdentifier: properties: type: description: Parcel shipment identifier type. enum: - TRACKING_NUMBER type: string value: description: Parcel shipment identifier type. type: string title: ParcelShipmentIdentifier type: object ParcelShipmentState: properties: actualDeliveryTimestamp: type: string createdAtTimestamp: type: string estimatedDeliveryTimestamp: type: string id: format: int64 type: integer masterShipmentId: format: uuid type: string parcelLegId: format: uuid type: string pickedUpTimestamp: type: string shipmentAttributes: description: >- A user-defined list of shipment attributes that are associated with the shipment items: $ref: '#/components/schemas/Attribute' type: array shipmentIdentifiers: items: $ref: '#/components/schemas/ParcelShipmentIdentifier' type: array shipmentStops: description: >- A list of shipment stops that allow the ability to specify appointment windows items: $ref: '#/components/schemas/ParcelShipmentStop' type: array title: ParcelShipmentState type: object ParcelShipmentStatus: properties: latestStatusUpdate: $ref: '#/components/schemas/ParcelShipmentStatusUpdate' shipment: $ref: '#/components/schemas/ParcelShipmentState' statusUpdates: items: $ref: '#/components/schemas/ParcelShipmentStatusUpdate' type: array title: ParcelShipmentStatus type: object ParcelShipmentStatusReason: properties: code: description: The code that further describes the status event. enum: - DELAYED - DELIVERED - CANCELED - HELD - EXCEPTION - DELIVERY_MISSED - DELIVERY_APPOINTMENT - RETURN_TO_SENDER - AVAILABLE_FOR_PICKUP - NOT_FOUND - SHIPMENT_CREATED - PICKED_UP - NONE - RECEIVED - ARRIVED - DEPARTED - LOADED_FOR_DELIVERY - OUT_FOR_DELIVERY - TIMED_OUT - UNKNOWN type: string description: description: The description of the status event provided by the carrier. type: string title: ParcelShipmentStatusReason type: object ParcelShipmentStatusUpdate: properties: address: $ref: '#/components/schemas/Address' appointmentWindow: $ref: '#/components/schemas/ZonedDateTimeWindow' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' localTimeZone: description: Local time zone of where the status event took place. type: string retrievalDateTime: description: The dateTime that p44 received the status event from the carrier. type: string statusCode: description: >- The status code for this status update. This field will always be populated. enum: - INFO - PRE_TRANSIT - AT_STOP - IN_TRANSIT - OUT_TO_STOP - COMPLETED type: string statusReason: $ref: '#/components/schemas/ParcelShipmentStatusReason' stopId: description: The id of stop that the status event occurred at. Optional. format: int64 type: integer stopType: description: The type of stop that the status event occurred at. Optional. enum: - ORIGIN - DESTINATION - TERMINAL type: string timestamp: description: >- The datetime the carrier provided signifying when a status event occurred. type: string title: ParcelShipmentStatusUpdate type: object ParcelShipmentStop: description: A parcel shipment stop object. properties: appointmentWindow: $ref: '#/components/schemas/ZonedDateTimeWindow' id: description: The id of this stop. Response only field. format: int64 type: integer location: $ref: '#/components/schemas/ParcelLocation' parcelShipmentStopType: description: The type of stop that the appointment window references. enum: - ORIGIN - DESTINATION - TERMINAL type: string title: ParcelShipmentStop type: object ParcelWebhookEndpoint: description: A parcel webhook endpoint. properties: includeFullHistory: description: Include full update history type: boolean password: description: Specify password if endpoint requires authentication. type: string showLatestUpdate: description: Separately show latest update type: boolean url: description: >- URL to which a POST request will be made with the content of the status update for a specific parcel shipment. type: string username: description: Specify username if endpoint requires authentication. type: string required: [] title: ParcelWebhookEndpoint type: object Party: description: >- A party to a shipment or the supply chain -- i.e., a supplier, retailer, etc. properties: partyIdentifiers: description: >- A list of identifiers of the party to a shipment. Currently, only a single account identifier is supported. items: $ref: '#/components/schemas/PartyIdentifier' type: array title: Party type: object PartyIdentifier: description: >- An identifier of a party to a shipment or the supply chain -- e.g., the account number of a customer. properties: type: description: The type of party identifier -- e.g., account number. enum: - ACCOUNT type: string value: description: The value of the party identifier -- e.g., 3593518362. type: string title: PartyIdentifier type: object PartyType: enum: - SHIPPER - CONSIGNEE - BILL_TO - NOTIFY_PARTY type: string description: An enumeration. PatchDocument: type: object properties: identifiers: type: array items: $ref: '#/components/schemas/Identifier' description: The list of identifiers related to this document. name: type: string description: The name of this document. type: allOf: - $ref: '#/components/schemas/DocumentType' description: The type of this document. Payment: required: [] type: object properties: terms: allOf: - $ref: '#/components/schemas/PaymentTerms' description: Freight Billing Terms for the shipment. PaymentTerms: enum: - Prepaid - Collect - Third Party type: string description: An enumeration. PickupAccessorials: enum: - NCPU - LTDPU - AIRPU - CAMPPU - CHRCPU - CLUBPU - CNVPU - CONPU - EDUPU - FARMPU - GOVPU - GROPU - HOSPU - HOTLPU - MILPU - MINEPU - NARPU - NURSPU - PARKPU - PIERPU - PRISPU - RESPU - RSRTPU - SSTORPU - UTLPU - NBPU - HDAYPU - WEPU - SATPU - SUNPU - APPTPU - CERTPU - CFSPU - COMPU - DVALPU - DOCKPU - FBEDPU - LGPU - INPU - MALLPU - OVSZEPU - PJACKPU - SORTPU - XCHGPU - XFERPU - SHIPLDPU description: An enumeration. PickupAppointmentDetails: type: object properties: end: type: string description: >- Ending appointment date (with or without time) the shipment is requested to be picked up.Valid Formats: YYYY-MM-DDTHH:mm:ss.sss (ISO 8601) format: date-time start: type: string description: >- Starting appointment date (with or without time) the shipment is requested to be picked up.Required when accessorials.code list includes APTP.Valid Formats: YYYY-MM-DDTHH:mm:ss.sss (ISO 8601) format: date-time Po: type: object properties: additionalShipperInfo: type: string description: Additional information from shipper per line item. number: type: string description: The Purchase Order number. pieces: type: integer description: Total pieces associated with the Purchase Order. palletized: type: boolean description: >- Indicates whether or not the pieces associated with the purchase order are on a pallet/slip/skid or not. weight: type: integer description: Total weight associated with the Purchase Order. PodDischargeLoad: properties: date: description: The first date in this timespan, in ISO-8601 format type: string podDischargeP25: description: >- For p44 tracked containers, the 25th percentile of days between the discharge event and gate-out event. format: double type: number podDischargeP50: description: >- For p44 tracked containers, the median of days between the discharge event and gate-out event. format: double type: number podDischargeP75: description: >- For p44 tracked containers, the 75th percentile of days between the discharge event and gate-out event. format: double type: number podLoadP25: description: >- For p44 tracked containers, the 25th percentile of days between the gate-in event and vessel load event. format: double type: number podLoadP50: description: >- For p44 tracked containers, the median of days between the gate-in event and vessel load event. format: double type: number podLoadP75: description: >- For p44 tracked containers, the 75th percentile of days between the gate-in event and vessel load event. format: double type: number title: PodDischargeLoad type: object PortDetails: required: [] type: object properties: estimatedDatetime: type: string description: >- Date and Time connected to the port.When Port type is PORT_OF_LOADING then it's estimated departure date and time from origin portWhen Port type is PORT_OF_DISCHARGE then it's estimated arrival date and time at destination port format: date-time location: allOf: - $ref: '#/components/schemas/BookingLocation' description: The location of the port. portType: allOf: - $ref: '#/components/schemas/PortType' description: Port type PortIntelligence: properties: anchorMonthly: description: >- Days between vessels arriving within 50nmi of port and mooring at berth, aggregated by calender month. items: $ref: '#/components/schemas/DateQuartiles' type: array anchorWeekly: description: >- Days between vessels arriving within 50nmi of port and mooring at berth, aggregated by calender week. items: $ref: '#/components/schemas/DateQuartiles' type: array approachingDaily: description: Number of vessels having the port as their destination. items: $ref: '#/components/schemas/VesselSchedule' type: array berthingMonthly: description: >- Days between vessels mooring and unmooring, aggregated by calender month. items: $ref: '#/components/schemas/DateQuartiles' type: array berthingWeekly: description: >- Days between vessels mooring and unmooring, aggregated by calender week. items: $ref: '#/components/schemas/DateQuartiles' type: array dwellMonthly: description: >- Days spent by p44 tracked containers dwelling in port, aggregated by calender month. items: $ref: '#/components/schemas/PodDischargeLoad' type: array dwellWeekly: description: >- Days spent by p44 tracked containers dwelling in port, aggregated by calender week. items: $ref: '#/components/schemas/PodDischargeLoad' type: array portLocode: description: The UN/LOCODE of the port. type: string portName: description: The name of the port. type: string title: PortIntelligence type: object PortIntelligenceCollection: properties: ports: description: List of port intelligence summaries. items: $ref: '#/components/schemas/PortIntelligence' type: array title: PortIntelligenceCollection type: object PortType: enum: - PORT_OF_LOADING - PORT_OF_DISCHARGE - TRANSSHIPMENT_PORT type: string description: An enumeration. PreviousOceanBooking: required: [] type: object properties: bookingNumber: type: string lastSeenDateTime: type: string format: date-time PrimaryShipmentIdentifier: required: [] type: object properties: type: type: string enum: - CONTAINER_ID - BILL_OF_LADING - HOUSE_BILL_OF_LADING - BOOKING_NUMBER - SERIAL_NUMBER - VEHICLE_IDENTIFICATION_NUMBER - ORDER - PRO - TRACKING_NUMBER - AIR_WAYBILL - HOUSE_AIR_WAYBILL - RAIL_CAR_ID - WAYBILL - TRAIN_NUMBER - WAGON_ID - CUSTOMER_REFERENCE - UNKNOWN value: type: string description: >- A shipment-level identifier which is intended to most uniquely refer to a shipment; it is derived based on a hierarchy of identifier types. ProNumberBlock: properties: blockEnd: format: int64 type: integer blockStart: format: int64 type: integer currentProNumber: format: int64 type: integer remainingProsInBlock: format: int64 type: integer vendorId: type: string title: ProNumberBlock type: object ProNumberBlockVendorId: properties: blockEnd: format: int64 type: integer blockStart: format: int64 type: integer checkDigit: format: int64 type: integer vendorId: type: string title: ProNumberBlockVendorId type: object ProNumberIdentifier: description: A ProNumber response object. properties: proNumber: description: The generated ProNumber. type: string vendorId: description: The name of the vendor for which the ProNumber was generated. type: string title: ProNumberIdentifier type: object ProNumberQuery: description: A ProNumber request object. properties: apiConfiguration: $ref: '#/components/schemas/ProNumberQueryApiConfiguration' capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' originLocation: $ref: '#/components/schemas/Address' title: ProNumberQuery type: object ProNumberQueryApiConfiguration: description: Contains fields used to configure the PrePro Query API. properties: fallBackToDefaultAccountGroup: description: >- 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') type: boolean title: ProNumberQueryApiConfiguration type: object QualityControlEventDetails: description: Details of an event related to a quality control properties: code: description: ${QualityControlEventDetails.apiModel.code.value} enum: - UNKNOWN - SURVEY - HELD - DAMAGE_HELD - PLANT_HELD - QUALITY_CAMPAIGN_HELD - CUSTOMS_HELD - POWER_WASH_HELD - OTHER_HELD - QUALITY_CONTROL_HELD - IMPORT_HELD - RELEASE - AVAILABLE - EXPORT_SURVEY type: string title: QualityControlEventDetails type: object QuantityKind: required: [] type: object properties: count: type: integer description: Required number of units. size: type: number description: Required dimensions of one unit. unit: allOf: - $ref: '#/components/schemas/LengthUnit' description: Measuring unit. additionalProperties: false RailAddress: description: A postal address. properties: pointName: description: >- Name of this point. Usually a city name but may also be the name of the junction, yard, or facility type: string state: description: Abbreviation of state, province, district, etc. type: string title: RailAddress type: object RailArrivalEstimate: properties: estimatedArrivalCode: description: The approximate arrival status, as estimated. enum: - UNKNOWN - EARLY - ON_TIME - LATE type: string estimatedArrivalWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' lastCalculatedDateTime: description: 'When this eta was last computed. (format: yyyy-MM-dd''T''HH:mm:ssZ)' type: string title: RailArrivalEstimate type: object RailEquipment: properties: equipmentIdentifier: $ref: '#/components/schemas/RailEquipmentIdentifier' title: RailEquipment type: object RailEquipmentIdentifier: properties: type: description: The type of the equipment identifier. enum: - CONTAINER_ID - TRAILER_ID - RAIL_CAR_ID type: string value: description: The value of the equipment identifier. type: string title: RailEquipmentIdentifier type: object RailEquipmentStatus: properties: equipment: $ref: '#/components/schemas/RailEquipment' equipmentRouteSegments: description: Describe the route taken by this piece of equipment to each stop. items: $ref: '#/components/schemas/TrackedShipmentRouteSegment' type: array latestStatusUpdate: $ref: '#/components/schemas/RailEquipmentStatusUpdate' latestStopStatuses: description: >- The most up-to-date statuses of the equipment in relation to each stop. One and only one status will always be returned for each stop. If the equipment does not have status 'COMPLETED' or 'DISPATCHED', this list will always contain one and only one stop status with a code of either 'EN_ROUTE' or 'ARRIVED'. items: $ref: '#/components/schemas/RailEquipmentStopStatus' type: array statusUpdates: description: If requested, all available equipment status updates. items: $ref: '#/components/schemas/RailEquipmentStatusUpdate' type: array title: RailEquipmentStatus type: object RailEquipmentStatusUpdate: properties: address: $ref: '#/components/schemas/RailAddress' clmEventCode: description: The 4-digit Event Code from the Rail Car Location Message. type: string clmSightingCode: description: The 1-digit Sighting Code from the Rail Car Location Message. type: string geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' statusCode: description: >- The status code for this status update. This field will always be populated. enum: - DISPATCHED - IN_TRANSIT - AT_STOP - COMPLETED - UNAUTHORIZED type: string statusReason: $ref: '#/components/schemas/RailStatusReason' stopNumber: description: >- The stop number to which this status update corresponds, if any. This will be populated if the location of this update matches the location for a stop. format: int32 type: integer timestamp: description: >- The timestamp of this status update in the time zone of the location. If this status update has no location, this timestamp will be in UTC. A time zone offset will always be provided. This field will always be populated. type: string trainIdentifier: description: Train identifier that the rail event occurred on. type: string title: RailEquipmentStatusUpdate type: object RailEquipmentStopStatus: properties: arrivalCode: description: >- The approximate arrival status of the shipment at the stop, as recorded. enum: - UNKNOWN - EARLY - ON_TIME - LATE type: string arrivalDateTime: description: >- The recorded arrival time of the shipment at this stop, if available. This time will always be in the time zone of the stop, and a time zone offset will always be provided. type: string arrivalEstimate: $ref: '#/components/schemas/RailArrivalEstimate' departureDateTime: description: >- The recorded departure time of the shipment from this stop, if available. This time will always be in the time zone of the stop, and a time zone offset will always be provided. type: string stopNumber: description: The number of the shipment stop to which this status pertains. format: int32 type: integer stopStatusCode: description: >- The status of the shipment relative to this stop -- whether it is presumed to be currently en route to the stop or whether it has been recorded as having arrived or departed the stop. enum: - UNKNOWN - EN_ROUTE - ARRIVED - DEPARTED type: string title: RailEquipmentStopStatus type: object RailLocation: description: A physical location. properties: address: $ref: '#/components/schemas/RailAddress' id: description: The project44-generated id for this location. type: string title: RailLocation type: object RailShipment: properties: equipmentIdentifiers: description: >- A user-defined list of equipment identifiers identifying rail equipment to be tracked as part of this shipment. This includes container ids and rail car ids. A rail shipment may only have 1 equipment identifier items: $ref: '#/components/schemas/RailEquipmentIdentifier' type: array id: description: >- DEPRECATED: The project44-generated id for the rail 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. This field is deprecated, use railLegId instead. format: int64 type: integer masterShipmentId: description: >- This id links 1 or more legs as part of the same overall shipment. For intermodal shipments, pass an existing masterShipmentId to link this rail leg to the overall master shipment. Otherwise pass any valid new UUID to create a new shipment. If no masterShipmentId is passed on POST request a new UUID will be generated. This value will always be returned on all responses. format: uuid type: string railLegId: description: >- Identifies the leg of the journey. Each piece of equipment has a unique id for each mode that it travels on.This id may be used in subsequent API calls to reference this shipment leg. format: uuid type: string shipmentIdentifiers: description: >- A user-defined list of shipment identifiers that are unique to this shipment. You must pass in either a shipment identifier or a tracking start date time. items: $ref: '#/components/schemas/RailShipmentIdentifier' type: array shipmentStops: description: Contains the shipment's origin and destination. items: $ref: '#/components/schemas/RailShipmentStop' type: array trackingStartDateTime: description: >- Tracking for this shipment will begin at this time. This should be set to the time when your shipment has been loaded into the container or rail car. Cannot be more than 90 days in the past or 90 days in the future. You must pass in either a shipment identifier or a tracking start date time. type: string title: RailShipment type: object RailShipmentConfirmation: properties: infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array shipment: $ref: '#/components/schemas/RailShipment' title: RailShipmentConfirmation type: object RailShipmentIdentifier: properties: type: description: The type of the shipment identifier. enum: - BILL_OF_LADING - WAYBILL type: string value: description: The value of the shipment identifier. type: string title: RailShipmentIdentifier type: object RailShipmentStatus: properties: equipmentStatuses: description: Status for each piece of equipment attached to this shipment. items: $ref: '#/components/schemas/RailEquipmentStatus' type: array infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array shipment: $ref: '#/components/schemas/RailShipment' title: RailShipmentStatus type: object RailShipmentStop: properties: appointmentWindow: $ref: '#/components/schemas/ZonedDateTimeWindow' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' id: description: Project44 defined stop id. Always returned on response. format: uuid type: string location: $ref: '#/components/schemas/RailLocation' stopName: description: >- The optionally user-defined stop name of this stop. This is a freeform field. If no name is provided Project44 will default the name of each stop based on the address or stop number. type: string stopNumber: description: >- The user-defined stop number, where '1' is the origin and '2' is the destination. format: int32 type: integer type: description: >- How this stop relates to the shipment. This field must be null or absent when creating a shipment. The stop type will be determined by project44. enum: - UNKNOWN - ORIGIN - DESTINATION - TRANSFER - OTHER - PORT_OF_LOADING - TRANSSHIPMENT_PORT - PORT_OF_DISCHARGE - PICKUP - DELIVERY - RETURN - WAREHOUSE - HUB - AIRPORT type: string title: RailShipmentStop type: object RailStatusReason: properties: code: description: >- The reason code for the status of the status update. A status of 'DISPATCHED' will have one of the following reason codes: 'SCHEDULED' or 'ACQUIRING_LOCATION'. A status of 'IN_TRANSIT' will have one of the following reason codes: 'IN_MOTION' or 'IDLE'. A status of 'AT_STOP' will have one of the following reason codes: 'LOADED_ONTO_TRAIN', 'WAITING_TO_BE_UNLOADED', or 'UNLOADED' A status of 'COMPLETED' will have one of the following reason codes: 'TIMED_OUT', 'CANCELED', 'WAYBILL_CHANGED', or 'DEPARTED_FINAL_STOP'. enum: - UNKNOWN - SCHEDULED - ACQUIRING_LOCATION - IN_MOTION - IDLE - ARRIVED - IN_GATE - RAMPED - DERAMPED - NOTIFIED - OUT_GATE - DEPARTED_STOP - TIMED_OUT - CANCELED - DEPARTED_FINAL_STOP - WAYBILL_CHANGED - UNAUTHORIZED type: string description: description: >- A description of the reason for the status of the status update. This field is free-form text and should not be parsed. type: string title: RailStatusReason type: object RateIdentifier: required: [] type: object properties: source: $ref: '#/components/schemas/RateIdentifierSource' type: $ref: '#/components/schemas/RateIdentifierType' value: type: string description: The ID of the rate source. description: >- The source which stands as the root for the rate on a booking. Usually, this means the price attached to the booking came from a spot-quote or a Contract. This field is intended as an link between the booking and that source. RateIdentifierSource: enum: - SYSTEM - EXTERNAL - UNKNOWN type: string description: >- The type of reference to the original source of the rate which applies to a booking. A `SYSTEM` identifier is internal to p44; an `EXTERNAL` identifier is known by a non-p44 system. RateIdentifierType: enum: - SPOT_QUOTE - CONTRACT type: string description: The type of rate identifier RateQuote: description: A rate quote from a single carrier. properties: alternateRateQuotes: description: >- A list of alternate rate quotes from this capacity provider, if provided. These are typically rate quotes for other service levels the provider offers (e.g., guaranteed service levels). items: $ref: '#/components/schemas/AlternateRateQuote' type: array capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' capacityProviderQuoteNumber: description: The capacity provider's identifier for this rate quote, if provided. type: string carrierCode: description: >- SCAC of the carrier to which this rate quote applies. This is used to differentiate among rate quotes from capacity providers that support multiple SCACs. type: string contractId: description: >- This field is returned only for rate quotes from some brokers. It identifies the contract between the broker and capacity provider used to generate this rate quote. This can be used by other brokers or customers to gain access to that rate with the same capacity provider. type: string currencyCode: description: The currency code for all monetary values in this rate quote. enum: - USD - CAD - MXN - EUR type: string currencyConversionAuditInfo: $ref: '#/components/schemas/CurrencyConversionAuditInfo' deliveryDateTime: description: >- The delivery date and time for this rate quote in the timezone of the destination location, if provided. (format: yyyy-MM-dd'T'HH:mm:ss) format: date-time type: string errorMessages: description: >- System messages and messages from the capacity provider with severity 'ERROR'. No messages with severity 'INFO' or 'WARNING' will be returned here. items: $ref: '#/components/schemas/Message' type: array infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array laneType: description: >- Whether the shipment being quoted will stay within the carrier's network ('DIRECT' for a direct lane) or be tendered to another carrier before reaching its destination ('INTERLINE' for an interline lane), if indicated. (default: 'UNSPECIFIED') enum: - DIRECT - INTERLINE - UNSPECIFIED type: string preferredCurrencyCode: description: >- The currency code preferred for all monetary values with the suffix 'inPreferredCurrency' in this rate quote. enum: - USD - CAD - MXN - EUR type: string preferredSystemOfMeasurement: description: >- The preferred system of measurement for all values with a unit in this rate quote. The default behavior is to return the unit of measurement specified by the carrier in the response. enum: - METRIC - IMPERIAL type: string quoteEffectiveDateTime: description: >- The effective date and time for this quote, if provided.(format: yyyy-MM-dd'T'HH:mm:ss) format: date-time type: string quoteExpirationDateTime: description: >- The date and time this quote expires with the capacity provider, if provided. (format:yyyy-MM-dd'T'HH:mm:ss) format: date-time type: string rateQuoteDetail: $ref: '#/components/schemas/RateQuoteDetail' requestedAccessorialServices: description: >- A list of all accessorial services that were requested and their outcomes in this rate quote. items: $ref: '#/components/schemas/RequestedAccessorialService' type: array serviceLevel: $ref: '#/components/schemas/ServiceLevel' transitDays: description: >- The number of service days to deliver the shipment being quoted after it is picked up, if provided. format: int32 type: integer transitDaysRange: $ref: '#/components/schemas/IntegerRange' title: RateQuote type: object RateQuoteApiConfiguration: description: Contains fields used to configure the rate quote API. properties: accessorialServiceConfiguration: $ref: '#/components/schemas/AccessorialServiceConfiguration' enableUnitConversion: description: >- If set to 'true', weight and length values in this rate quote query will be converted when necessary to the capacity provider's supported units. When 'false', an error will be returned for each capacity provider that does not support the provided weight and length units. (default: 'false') type: boolean fallBackToDefaultAccountGroup: description: >- 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') type: boolean timeout: description: >- Number of seconds to wait for a capacity provider to return a rate quote. The max effective value is 60 seconds. (default: '15') format: int32 type: integer title: RateQuoteApiConfiguration type: object RateQuoteCollection: description: Container for a list of rate quotes returned by a rate quote query. properties: rateQuotes: description: List of rate quotes from all capacity providers requested. items: $ref: '#/components/schemas/RateQuote' type: array title: RateQuoteCollection type: object RateQuoteDetail: description: >- Pricing details for this rate quote, including the total, subtotal, and a breakdown of charges, if provided. properties: charges: description: >- A list of individual charges making up the total, if provided. Not returned for alternate rate quotes. items: $ref: '#/components/schemas/Charge' type: array subtotal: description: Subtotal prior to discounts, if provided. type: number subtotalInPreferredCurrency: description: Subtotal in preferred currency prior to discounts, if provided. type: number total: description: The final total for this quote. type: number totalInPreferredCurrency: description: The final total for this quote, in preferred currency. type: number title: RateQuoteDetail type: object RateQuoteQuery: description: >- A request for rate quotes from one or more capacity providers based on the provided shipment characteristics and location information. properties: accessorialServices: description: List of accessorial services to be quoted for this shipment. items: $ref: '#/components/schemas/AccessorialService' type: array apiConfiguration: $ref: '#/components/schemas/RateQuoteApiConfiguration' capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' deliveryWindow: $ref: '#/components/schemas/LocalDateTimeWindow' destinationAddress: $ref: '#/components/schemas/Address' directionOverride: description: >- An override of direction for all capacity provider accounts used by this request that have 'Enable API override of direction' set as 'true' in the project44 Self-Service Portal.This functionality is typically used in situations where both inbound and outbound shipments are common for a given capacity provider and account number. enum: - SHIPPER - CONSIGNEE - THIRD_PARTY type: string enhancedHandlingUnits: description: >- A more granular representation of a line item. Required if no lineItems. Allows for order level tracking, more accurate rates, and more detailed BOLs. Currently not supported by all vendors. An enhancedHandlingUnit consists of one or more handling units, e.g. a pallet or a drum, one or more packages (the container on the handling unit e.g. a box), and package contents. NMFC codes and freight classes can be assigned at the handling unit and package level, while package contents can be associated with a DELIVERY_NUMBER, SKU_NUMBER, or PURCHASE_ORDER_NUMBER. Passing in both this field and lineItems is accepted, but at least one is required. items: $ref: '#/components/schemas/HandlingUnit' type: array lengthUnit: description: >- Length measurement unit for all length values in this rate quote query. (default: 'IN') enum: - IN - CM - FT - M type: string lineItems: description: >- The line items composing the shipment to be quoted. A line item consists of one or more packages, all of the same package type and with the same dimensions, freight class, and NMFC code. Each package, however, may have a different number of pieces and a different weight. Note that each capacity provider has a different maximum number of line items that they can quote. NOTE: This field is similar to, but not the same as, the enhancedHandlingUnits field. The handling units fields can contain more detailed information for use by both the carrier and the shipper. Passing in both this field and enhancedHandlingUnit is accepted, but at least one is required. items: $ref: '#/components/schemas/LineItem' type: array originAddress: $ref: '#/components/schemas/Address' paymentTermsOverride: description: >- An override of payment terms for all capacity provider accounts used by this request that have 'Enable API override of payment terms' set as 'true' in the project44 Self-Service Portal. This functionality is typically used in situations where both inbound and outbound shipments are common for a given capacity provider and account number. enum: - PREPAID - COLLECT - THIRD_PARTY type: string pickupWindow: $ref: '#/components/schemas/LocalDateTimeWindow' preferredCurrency: description: >- The currency that you would like the rate quote to be returned in, other than the default currency the carrier supports. If the currency is supported by the carrier, it will be returned in both the default currency and preferred currency fields. If the carrier does not support the requested currency, we will convert it on behalf of the carrier using the current exchange rate. The preferred currency will be returned in the “preferred currency” fields within the response. The carrier’s original currency will be returned in the default currency fields within the response. Exchange rate information will also be returned in the response for audit purposes. enum: - USD - CAD - MXN type: string preferredSystemOfMeasurement: description: >- The preferred system of measurement for all values with a unit in this rate quote. The default behavior is to return the unit of measurement specified by the carrier in the response. enum: - METRIC - IMPERIAL type: string totalLinearFeet: description: >- The total linear feet that the shipment being quoted will take up in a trailer. Required only for volume LTL shipments. Customers who have enabled our Volume Visualizer product may submit rate requests without providing a value for totalLinearFeet. Linear footage will be automatically calculated, based on line item details, and submitted with your rate request. If a value is provided for totalLinearFeet, it will be submitted with the request and no calculation will be performed. format: int32 type: integer weightUnit: description: >- Weight measurement unit for all weight values in this rate quote query. (default: 'LB') enum: - LB - KG type: string title: RateQuoteQuery type: object ReeferContainerCount: type: object properties: fortyFootContainerCount: type: integer description: Count of 40ft flat-rack containers default: 0 fortyFootHighCubeCount: type: integer description: Count of 40ft flat-rack high-cube containers default: 0 twentyFootContainerCount: type: integer description: Count of 20ft flat-rack containers default: 0 ReferenceNumbers: required: [] type: object properties: additionalReferences: type: array items: $ref: '#/components/schemas/AdditionalReference' description: >- A list of additional references. It is required to provide an additional references with 'CAPACITY_PROVIDER_ACCOUNT_CODE' and 'CAPACITY_PROVIDER_ACCOUNT_GROUP_CODE' names accompanied with appropriate values to reference correct carrier and credentials. bol: type: array items: type: string description: A list of Bill of Lading identifiers. masterBol: type: string description: Master Bill of Lading number for the shipment. pro: type: string description: >- Shipper's pre-assigned PRO number for the requested carrier. If not provided, one will be auto assigned by the carrier. po: type: array items: $ref: '#/components/schemas/Po' description: A list of purchase orders. quoteId: type: string description: >- Quote (estimate) number provided by the carrier after submitting a rate quote request. shipmentId: type: string description: Shipment Id (SID) number for the shipment. RefrigeratedAccessorial: required: [] type: object properties: code: enum: - REFRIGERATED type: string details: allOf: - $ref: '#/components/schemas/TempRangeKind' description: Required temperature range. additionalProperties: false description: >- Accessorial which defines the acceptable temperature range for a transportation container. RelatedLoadItemDescriptionFilter: required: [] type: object properties: operator: type: string enum: - EQUALS - NOT_EQUALS - CONTAINS values: type: array items: type: string description: >- Match shipments based on the value of the related load items' descriptions. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (loadItem.description EQUALS [A OR B OR C]) AND (loadItem.description EQUALS [D OR F]) RelatedLoadItemIdentifierFilter: type: object properties: operator: type: string enum: - EQUALS - NOT_EQUALS - CONTAINS types: type: array items: type: string enum: - SKU - UPC values: type: array items: type: string description: >- Match shipments based on the type and value of the related load items' identifiers. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. For each item, filters are generated for both the type and values, and they are combined using an AND operator. Example: (loadItem.identifier.type EQUALS X AND loadItem.identifier.value EQUALS [A OR B OR C]) AND (loadItem.identifier.type EQUALS Y AND loadItem.identifier.value EQUALS [D OR F]) RelatedOrderAdditionalIdentifierFilter: type: object properties: operator: type: string enum: - EQUALS - NOT_EQUALS - CONTAINS types: type: array items: type: string enum: - CONTRACT - LOAD - MANUFACTURER - PROMOTION - SEASON - VENDOR - LAUNCH_CODE values: type: array items: type: string description: >- Match shipments based on the type and value of their related orders' additional identifiers. Either types or values must be present for each criterion. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. For each item, filters are generated for both the types and values, and they are combined using an AND operator. The types and values criteria within each filter must be met by the same additional identifier, but distinct filters in this array may be satisfied by different additional identifiers in the same shipment. Example: (order.additionalIdentifier.type EQUALS [X OR Y] AND order.additionalIdentifier.type EQUALS [A OR B OR C]) AND (order.additionalIdentifier.type EQUALS [Z] AND order.additionalIdentifier.value EQUALS [D OR F]) RelatedOrderDateFilter: required: [] type: object properties: endDateTime: type: string format: date-time offsetMinutes: type: integer description: >- This field may not be populated alongside startDateTime or endDateTime. If operator is WITHIN and this is populated, the value must be non-zero. format: int64 operator: type: string enum: - WITHIN - ON_OR_BEFORE - ON_OR_AFTER startDateTime: type: string format: date-time type: type: string enum: - SUPPLIER_READY_START_DATETIME - SUPPLIER_READY_END_DATETIME - ORIGINAL_DELIVERY_START_DATETIME - ORIGINAL_DELIVERY_END_DATETIME - LAUNCH_DATETIME - ORIGINAL_DELIVERY_ESTIMATE_DATETIME description: >- Match shipments based on their related orders' datetimes, relative to a target range. Valid combinations of parameters are as follows: Within two absolute datetimes: WITHIN + startDateTime + endDateTime Before an absolute datetime: ON_OR_BEFORE + endDateTime After an absolute datetime: ON_OR_AFTER + startDateTime Between now and now +- X minutes: WITHIN + offsetMinutes Before now +- X minutes: ON_OR_BEFORE + offsetMinutes After now +- X minutes: ON_OR_AFTER + offsetMinutes RelatedOrderDeltaFilter: required: [] type: object properties: durationInMinutes: minimum: 0 type: integer format: int64 operator: type: string enum: - MORE_THAN - MORE_THAN_OR_EQUALS - LESS_THAN - LESS_THAN_OR_EQUALS - EQUALS - NOT_EQUALS - EXISTS - NOT_EXISTS type: type: string enum: - RUNNING_EARLY - RUNNING_LATE description: >- Match shipments on the difference between planned delivery window and estimated arrival of a related order. The value is represented in minutes and must be non-negative. RUNNING_EARLY implies that the estimated arrival is before the planned delivery window. RUNNING_LATE implies that the estimated arrival is after the planned delivery window. To query orders that hit the delivery window, use EQUALS 0 minutes. Note that this matches only orders that are on time. For example, RUNNING_LATE with EQUALS 0 minutes will match on-time orders, but will not match orders that are running early. Example: RUNNING_EARLY by LESS_THAN 60 minutes Example: RUNNING_LATE by MORE_THAN 1440 minutes (1 day) RelatedOrderIdentifierFilter: required: [] type: object properties: operator: type: string enum: - EQUALS - NOT_EQUALS - CONTAINS type: type: string enum: - PURCHASE_ORDER - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - INVOICE values: type: array items: type: string description: >- Match shipments based on the type and value of the related orders' identifiers. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. For each item, filters are generated for both the type and values, and they are combined using an AND operator. Example: (orders.identifier.type EQUALS X AND orders.identifier.value EQUALS [A OR B OR C]) AND (orders.identifier.type EQUALS Y AND orders.identifier.value EQUALS [D OR F]) RelatedOrderIdentifierTypeFilter: required: [] type: object properties: operator: type: string description: >- Only the EQUALS and NOT_EQUALS operators are supported for this criterion. enum: - EQUALS - NOT_EQUALS - CONTAINS types: type: array items: type: string enum: - PURCHASE_ORDER - SALES_ORDER - WAREHOUSE_MOVEMENT_ORDER - ADVANCED_SHIPMENT_NOTICE - INVOICE description: >- Match shipments based on the identifier type of related orders. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (orders.identifier.type EQUALS [A OR B OR C]) Example: (orders.identifier.type NOT_EQUALS A) AND (orders.identifier.type NOT_EQUALS B) RelatedOrderInternalIdFilter: required: [] type: object properties: operator: type: string description: >- Only the EQUALS and NOT_EQUALS operators are supported for this criterion. enum: - EQUALS - NOT_EQUALS - CONTAINS values: type: array items: type: string description: >- Match shipments based on the internal order ID of related orders. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (orders.id EQUALS [A OR B OR C]) Example: (orders.id NOT_EQUALS A) AND (orders.id NOT_EQUALS B) RelatedOrderSupplierIdFilter: required: [] type: object properties: operator: type: string enum: - EQUALS - NOT_EQUALS - CONTAINS values: type: array items: type: string description: >- Match shipments based on the supplier ID(s) of its related orders. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (order.supplier.name EQUALS [A OR B OR C]) Example: (order.supplier.name CONTAINS A) AND (order.supplier.name NOT_EQUALS CAT) RelatedOrderTagFilter: type: object properties: operator: type: string enum: - EQUALS - NOT_EQUALS - CONTAINS types: type: array items: type: string enum: - ANALYST - CARRIER - CATEGORY - COMMODITY - DEPARTMENT - DIRECTOR - FAMILY - GROUP - MANAGER - SECTOR values: type: array items: type: string description: >- Match shipments based on the type and value of their related orders' tags. Either types or values must be present for each criterion. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. For each item, filters are generated for both the types and values, and they are combined using an AND operator. The types and values criteria within each filter must be met by the same tag, but distinct filters in this array may be satisfied by different tags in the same shipment. Example: (order.tag.type EQUALS [X OR Y] AND order.tag.type EQUALS [A OR B OR C]) AND (order.tag.type EQUALS [Z] AND order.tag.value EQUALS [D OR F]) RemitTo: type: object properties: address1: type: string description: Primary Address line of the remit to company. address2: type: string description: Secondary Address of the remit to company. city: type: string description: City Name of the remit to company. country: allOf: - $ref: '#/components/schemas/CountryCode' description: Three letter country code for the destination location. name: type: string description: Name of the remit to company. postalCode: maxLength: 6 minLength: 5 type: string description: >- The 5-digit (or 6-characters for Canada) zip code of the remit to company. stateProvince: allOf: - $ref: '#/components/schemas/StateProvinceCode' description: Two letter state/province code of the remit to company. RequestEbol: required: [] type: object properties: accessorials: allOf: - $ref: '#/components/schemas/Accessorial' description: A list of accessorials related to the shipment. bol: allOf: - $ref: '#/components/schemas/Bol' description: >- BOL object containing requested pickup date, function, test,requestor role and optional special instructions. billTo: allOf: - $ref: '#/components/schemas/BookingEBOLLocation' description: A location where related shipment's billing should happen. commodities: allOf: - $ref: '#/components/schemas/Commodities' description: Commodities related to the shipment. customsBroker: allOf: - $ref: '#/components/schemas/CustomsBroker' description: >- Optional field to reference customs broker for cross-border shipments. destination: allOf: - $ref: '#/components/schemas/BookingEBOLLocation' description: A location where related shipment's delivery should happen. images: allOf: - $ref: '#/components/schemas/Images' description: >- Indicate if you want ebol or shipping labels returned in the response notifications: type: array items: $ref: '#/components/schemas/Notification' description: >- Include if you want notifications of shipment movements by text message or email. origin: allOf: - $ref: '#/components/schemas/BookingEBOLLocation' description: A location where the related shipment's pickup should happen. payment: allOf: - $ref: '#/components/schemas/Payment' description: >- Payment terms related to the shipment such as Prepaid, Collect or Third Party. referenceNumbers: allOf: - $ref: '#/components/schemas/ReferenceNumbers' description: >- Reference numbers related to the shipment such as Pro, QuoteId, MasterBol etc. shipmentTotals: allOf: - $ref: '#/components/schemas/ShipmentTotals' description: Measurements related to the shipment. version: type: string description: >- Indicates which minor version of the Digital LTL Council Bill of Lading spec you are consuming Valid values: 2.0.0, 2.0.1, 2.1.0 description: As a shipper, request a eBOL from a carrier. RequestedAccessorialService: description: >- An accessorial service requested in a rate quote query and its outcome in the resulting rate quote. properties: code: description: >- The code for the requested accessorial service. A list of accessorial service codes supported by project44 is provided in the API reference data section. type: string status: description: >- The status of the requested accessorial service -- whether or not it is reflected in the total. An outcome of 'ACCEPTED' means the capacity provider accepted the requested accessorial service, included it in their quote total, and provided a charge breakdown. An outcome of 'ACCEPTED_UNITEMIZED' means the capacity provider most likely accepted the requested accessorial service and included it in their quote total, but did not provide a verifiable charge breakdown. An outcome of 'UNACCEPTED' means the capacity provider did not accept the requested accessorial and it is not reflected in the quote total. enum: - ACCEPTED - ACCEPTED_UNITEMIZED - UNACCEPTED type: string title: RequestedAccessorialService type: object RequestorRoleCode: enum: - Shipper - Consignee - Third Party type: string description: An enumeration. RolloverDetails: type: object description: Describes details about rollover events RouteInfo: required: [] type: object properties: routeSegments: minItems: 1 type: array items: $ref: '#/components/schemas/RouteSegment' description: >- Contains information about how the shipment moves from each stop to the next. stops: minItems: 2 type: array items: $ref: '#/components/schemas/Stop' description: All stops associated with this shipment. description: The stops and route for the shipment. RouteSegment: required: [] type: object properties: fromStopId: type: string description: The starting stop of this route segment. format: uuid id: type: string description: >- The id of this route segment. Will always be populated on response if not provided. format: uuid toStopId: type: string description: The ending stop of this route segment. format: uuid description: |- A portion of the journey through which a shipment is meant to travel, defined by its nodes: the 'to' and 'from' stops. RouteSegmentResponse: required: [] type: object properties: fromDate: type: string description: >- The date which the carrier commits to depart from the route-segment origin. format: date routeSegmentId: type: string description: The ID of the route-segment. format: uuid toDate: type: string description: >- The date which the carrier commits to arrive at the route-segment destination. format: date description: >- The carrier-approved dates at which they expect to depart and arrive at each location requested. RouteSegmentWithStops: required: [] type: object properties: fromStop: allOf: - $ref: '#/components/schemas/Stop' description: The starting stop of this route segment. id: type: string description: >- The id of this route segment. Will always be populated on response if not provided. format: uuid toStop: allOf: - $ref: '#/components/schemas/Stop' description: The ending stop of this route segment. description: |- A portion of the journey through which a shipment is meant to travel, defined by its nodes: the 'to' and 'from' stops. ServiceLevel: description: >- The service level offered by the capacity provider (e.g., standard or guaranteed). properties: code: description: The project44 code for this service level. enum: - STD - EXPEDITE - EXPEDITE17 - EXPEDITEAM - GURWIN - GSSING - GSMUL - GSFM - GS8 - GS9 - GS10 - GS11 - GSAM - GS14 - GS15 - GS1530 - GUR - ACCELERATED - CAPLOAD - UNKNOWN type: string description: description: >- A description of this service level, often originating from the capacity provider. type: string title: ServiceLevel type: object SharingContext: type: object properties: dataOriginators: uniqueItems: true type: array description: >- This is a list of the tenant(s) that created the shared data, it will be visible on all shared versions of the data. xml: wrapped: true items: $ref: '#/components/schemas/DataOriginator' recipients: uniqueItems: true type: array description: This is a list of the tenant(s) to whom the data is shared. xml: wrapped: true items: $ref: '#/components/schemas/DataRecipient' description: >- This model is populated when the data is shared across tenants, it conditionally describes which tenant(s) are involved with the shared data using tenant name and tenant UUID. ShipmentAdditionalField: type: object properties: keys: type: array items: type: string type: type: string enum: - CUSTOM_ATTRIBUTES description: >- Select non-default fields to return, such as Reference Keys (Custom Attributes) For fields like Custom Attributes (Key:Value pairs) only those pairs with keys included in the keys array will be returned For non-Custom Attribute AdditionalFields, leaving the keys array empty will return all values However, Custom Attributes must always have keys specified The keys array is not a search criterion, it is only used to filter final result columns (not rows)! Given a Shipment with ID 1, containing Custom Attributes { A : C } , and { D : E }, searching with a ShipmentSearchCriteria: (ID EQUALS 1) with AdditionalFields (CUSTOM_ATTRIBUTES, Keys: [ B,D ] Shipment 1 will be returned, but only Custom Attribute {D:E} will come with it. Because (ID EQUALS 1) generates a hit for the row, and column {A:C} is omitted by additionalFields. ShipmentApiConfiguration: description: Contains fields used to configure the shipment API. properties: allowUnsupportedAccessorials: description: >- If set to 'true', accessorial services that are not known to be supported by the capacity provider will be allowed and will be sent through the capacity provider's pickup note API field, according to the shipment note configuration. This is useful when the customer knows that a capacity provider supports an accessorial service that they have not documented, or when the customer has a special agreement with the capacity provider. (default: 'false') type: boolean enableUnitConversion: description: >- If set to 'true', weight and length values in this shipment request will be converted when necessary to the capacity provider's supported units. When 'false', an error will be returned and the shipment will not be placed with the capacity provider if the capacity provider does not support the provided weight and length units. (default: 'false') type: boolean fallBackToDefaultAccountGroup: description: >- 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') type: boolean noteConfiguration: $ref: '#/components/schemas/ShipmentNoteConfiguration' pickupOnly: description: >- If set to 'true', will not request a BOL for this shipment, and will only transmit pickup information to the carrier. Cannot be requested with 'PrescheduledPickup'. (default: 'false') type: boolean preScheduledPickup: description: >- If set to 'true', will identify the pickup for this shipment as being already scheduled, and will only transmit BOL information to the carrier. Cannot be requested with 'PickupOnly'. (default: 'false') type: boolean title: ShipmentApiConfiguration type: object ShipmentAttribute: description: Contains a key and value for custom attributes. properties: name: description: The name for an attribute. Must be unique. type: string predefined: type: boolean value: description: The value for an attribute. type: string values: description: The values for an attribute. items: type: string type: array title: ShipmentAttribute type: object ShipmentAttributeDefinition: description: Name of an attribute to be defined properties: name: description: The name for an attribute. Must be unique. type: string title: ShipmentAttributeDefinition type: object ShipmentAttributeDefinitionCollection: description: An attribute that has been defined via the provided endpoint properties: shipmentAttributeDefinitions: description: A list of objects each containing the name of an attribute items: $ref: '#/components/schemas/ShipmentAttributeDefinition' type: array title: ShipmentAttributeDefinitionCollection type: object ShipmentAttributeDefinitionConfirmation: description: >- Name of an attribute that has been predefined through the api/v4/shipmentattributedefinitions endpoint properties: infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array shipmentAttributeDefinition: $ref: '#/components/schemas/ShipmentAttributeDefinition' title: ShipmentAttributeDefinitionConfirmation type: object ShipmentAttributeFilter: required: [] type: object properties: name: maxLength: 255 minLength: 1 type: string operator: type: string description: If values is not populated, the CONTAINS operator is not supported. enum: - EQUALS - NOT_EQUALS - CONTAINS values: type: array items: type: string description: >- Match shipments based on the names and values of custom attributes. Attributes are tenant-defined and each attribute may have multiple values. An attribute can result in a match if any of its values match the criteria. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. For each item, filters are generated for both the type and values, and they are combined using an AND operator. Example: (attributes.name EQUALS X AND any attributes.values EQUALS [A OR B OR C]) AND (attributes.name EQUALS Y AND any attributes.values EQUALS [D OR F]) ShipmentCount: type: object properties: total: type: integer format: int64 description: >- Contains information about the count of shipments which match some criteria. ShipmentDetails: required: [] type: object properties: accessorials: type: array items: anyOf: - $ref: '#/components/schemas/RefrigeratedAccessorial' - $ref: '#/components/schemas/LiftgateAccessorial' - $ref: '#/components/schemas/TarpsAccessorial' - $ref: '#/components/schemas/StrapsAccessorial' - $ref: '#/components/schemas/ChainsAccessorial' - $ref: '#/components/schemas/DeckHeightAccessorial' - $ref: '#/components/schemas/CraneAccessorial' - $ref: '#/components/schemas/CallBeforeArrivalAccessorial' - $ref: '#/components/schemas/DockRequiredAccessorial' - $ref: '#/components/schemas/LockedGateAccessorial' - $ref: '#/components/schemas/FirstComeFirstServedAccessorial' - $ref: '#/components/schemas/AppointmentRequiredAccessorial' - $ref: '#/components/schemas/WhiteGloveAccessorial' - $ref: '#/components/schemas/HazmatAccessorial' - $ref: '#/components/schemas/ExcessiveLengthAccessorial' - $ref: '#/components/schemas/GuaranteedServiceLevelAccessorial' - $ref: '#/components/schemas/OtherAccessorial' description: >- Optional list of descriptors which detail any add-ons or declarations applicable to your shipment which may be noteworthy to the carrier. deliveryStopId: type: string description: >- The unique ID for the location where the handling unit should be delivered. format: uuid description: type: string description: Free text space to describe the handling unit. handlingUnits: anyOf: - $ref: '#/components/schemas/HandlingUnitsDetails' - type: array items: $ref: '#/components/schemas/BookingHandlingUnit' description: The way in which items from this Load are being transported. items: type: array items: $ref: '#/components/schemas/Item' description: The items for this shipment details, if applicable. deprecated: true identifiers: minItems: 1 type: array items: $ref: '#/components/schemas/LogisticsIdentifier' description: >- The identifiers that can identify this load. This could be, but not limited to, a shipment identifier such as a BOL or an order-based identifier such as `PURCHASE_ORDER`. loadId: type: string description: >- The unique project44-generated id of the load. Not to be provided on booking creation. Once `BOOKED`, the booking initiates a load within project44. With this identifier, the shipper may seek the trackable Load through the rest of the project44 platform. format: uuid pickupStopId: type: string description: >- The unique ID for the location where the handling unit should be picked up. format: uuid description: |- Information which describes the entities being transported. Comprised of items, this is a single definition of the item(s) to be picked up and delivered at a relevant stop. ShipmentDurationFilter: required: [] type: object properties: durationCriteria: type: array description: >- The criteria which must be met by the targeted duration(s). Criteria are ANDed together. items: $ref: '#/components/schemas/TimeDurationCriterion' types: type: array description: >- The types of durations against which to apply the criteria. Types are ORed together. items: type: string description: >- The types of durations against which to apply the criteria. Types are ORed together. enum: - ACTUAL_TRANSIT_TIME - ESTIMATED_TRANSIT_TIME - ACTUAL_OR_ESTIMATED_TRANSIT_TIME description: >- Match shipments which contain one or more durations that meet all criteria. Criteria are ANDed together, types are ORed together. Example: (estimated transit time >= 30 minutes AND < 1 day) AND (actual transit time does not exist) Example: (duration X OR duration Y >= 30 minutes) AND (duration Z < 3 hours) ShipmentEventDateCriterion: required: [] type: object properties: endDateTime: type: string description: The tail end of an absolute time window. format: date-time offsetMinutes: type: integer description: >- Used to construct relative ranges where negative offset indicates time before startDateTime or Now and positive offset indicates time after startDateTime or Now. format: int64 operator: type: string enum: - WITHIN - ON_OR_BEFORE - ON_OR_AFTER relativeDateTimeWindow: type: string description: >- A sliding window that matches to common time definitions like "today" or "tomorrow". enum: - YESTERDAY - TODAY - TOMORROW - LAST_WEEK - THIS_WEEK - NEXT_WEEK - THIS_MONTH - LAST_MONTH - NEXT_MONTH relativeWindowTimeZoneOffset: type: object properties: totalSeconds: type: integer format: int32 id: type: string rules: type: object properties: transitions: type: array items: type: object properties: offsetBefore: type: object properties: totalSeconds: type: integer format: int32 id: type: string offsetAfter: type: object properties: totalSeconds: type: integer format: int32 id: type: string dateTimeBefore: type: string format: date-time gap: type: boolean overlap: type: boolean dateTimeAfter: type: string format: date-time instant: type: string format: date-time duration: type: object properties: seconds: type: integer format: int64 nano: type: integer format: int32 zero: type: boolean negative: type: boolean units: type: array items: type: object properties: durationEstimated: type: boolean dateBased: type: boolean timeBased: type: boolean transitionRules: type: array items: type: object properties: month: type: string enum: - JANUARY - FEBRUARY - MARCH - APRIL - MAY - JUNE - JULY - AUGUST - SEPTEMBER - OCTOBER - NOVEMBER - DECEMBER timeDefinition: type: string enum: - UTC - WALL - STANDARD standardOffset: type: object properties: totalSeconds: type: integer format: int32 id: type: string offsetBefore: type: object properties: totalSeconds: type: integer format: int32 id: type: string offsetAfter: type: object properties: totalSeconds: type: integer format: int32 id: type: string dayOfWeek: type: string enum: - MONDAY - TUESDAY - WEDNESDAY - THURSDAY - FRIDAY - SATURDAY - SUNDAY dayOfMonthIndicator: type: integer format: int32 localTime: $ref: '#/components/schemas/LocalTime' midnightEndOfDay: type: boolean fixedOffset: type: boolean description: The timezone offset of the relativeDateTimeWindow. startDateTime: type: string description: >- The beginning of an absolute time window (if endDateTime is populated) or the anchor of a relative offset window (if offsetMinutes is populated). format: date-time type: type: string description: The type of date on the event that should be searched. enum: - PLANNED_DATETIME - PLANNED_END_DATETIME - INITIAL_PLANNED_DATETIME - INITIAL_PLANNED_END_DATETIME - ESTIMATED_DATETIME - ACTUAL_DATETIME - ACTUAL_OR_ESTIMATED_DATETIME description: >- Match shipments based on the datetimes of their events, relative to a target range. When operator is ON_OR_AFTER, NOW + offsetMinutes or the startDateTime is used as the date When operator is ON_OR_BEFORE, NOW + offsetMinutes or the endDateTime is used as the date. Construct absolute ranges with both startDateTime and endDateTime with null offsetMinutes Construct relative ranges with offsetMinutes, where negative offset indicates time before Now and positive offset indicates time after Now Search sliding windows with constant size with relativeDateTimeWindow, supports common sense time definitions like TODAY and THIS WEEK, does not combine with the absolute operands (startDateTime + endDateTime) Example: Now and the following 10 days => offsetMinutes: 14400 operator: WITHIN Example: The last 5 hours: offsetMinutes: -300 operator: WITHIN Example: Before 8 hours from now: offsetMinutes: 480 operator: ON_OR_BEFORE ShipmentEventDeltaCriterion: required: [] type: object properties: operator: type: string description: >- Only the EQUALS, LESS_THAN, and MORE_THAN operators are supported for this criterion. enum: - MORE_THAN - MORE_THAN_OR_EQUALS - LESS_THAN - LESS_THAN_OR_EQUALS - EQUALS - NOT_EQUALS - EXISTS - NOT_EXISTS type: type: string enum: - RUNNING_EARLY - RUNNING_LATE - OCCURRED_EARLY - OCCURRED_LATE - OCCURRED_EARLY_OR_RUNNING_EARLY - OCCURRED_LATE_OR_RUNNING_LATE value: minimum: 0 type: integer format: int64 description: >- Match shipments based on each shipment's delta between planned datetime and estimated datetime, or delta between planned datetime and actual datetime. The value is represented in minutes and must be non-negative. RUNNING_EARLY implies that the estimated datetime is before the planned datetime RUNNING_LATE implies that the estimated datetime is after the planned datetime OCCURRED_EARLY implies that the actual datetime is before the planned datetime OCCURRED_LATE implies that the actual datetime is after the planned datetime Events which are estimated to occur or have occurred on time can be queried using EQUALS 0 minutes. Note that this matches only shipments which are on time for that event. For example, RUNNING_LATE with EQUALS 0 minutes will match on-time shipments, but will not match shipments that are running early. Example: event OCCURRED_EARLY by LESS_THAN 60 minutes Example: event RUNNING_LATE by MORE_THAN 1440 minutes (1 day) ShipmentEventDescriptionCriterion: required: [] type: object properties: operator: type: string enum: - EQUALS - NOT_EQUALS - CONTAINS values: type: array items: type: string description: >- Match shipments based on the value of events' descriptions. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (event.description EQUALS [A OR B OR C]) AND (event.description EQUALS [D OR F]) ShipmentEventFilter: required: [] type: object properties: dateRanges: type: array description: >- Each item in this array should represent a distinct date type (planned, estimated, etc.) Criteria within this array are combined using an AND operator. items: $ref: '#/components/schemas/ShipmentEventDateCriterion' deltas: type: array description: >- Each item in this array should represent a distinct delta type (running early, occurred late, etc.) Criteria within this array are combined using an AND operator. items: $ref: '#/components/schemas/ShipmentEventDeltaCriterion' descriptions: type: array description: >- Each item in this array should represent a distinct event description Criteria within this array are combined using an AND operator. items: $ref: '#/components/schemas/ShipmentEventDescriptionCriterion' stopProperties: type: array description: >- This criteria applies against the stop location associated with the event. items: $ref: '#/components/schemas/LocationCriterion' stopIdentifiers: type: array description: >- This criteria applies against the stop location associated with the event. items: $ref: '#/components/schemas/LocationIdentifierCriterion' stopType: $ref: '#/components/schemas/StopTypeCriterion' scopes: type: array description: >- If multiple scopes are provided, they will be combined using OR boolean logic. items: type: string description: >- If multiple scopes are provided, they will be combined using OR boolean logic. enum: - LATEST_ACTUAL_EVENT - ANY_EVENT type: type: string enum: - UNKNOWN - TRACKING_INITIATE - TRACKING_START - ARRIVAL_AT_STOP - DEPARTURE_FROM_STOP - LOAD_ONTO_VEHICLE - UNLOAD_FROM_VEHICLE - TRACKING_END_DUE_TO_TIMEOUT - TRACKING_END_BY_USER - TRACKING_COMPLETE - GATE_IN - GATE_OUT - FLIGHT_BOOKING - MANIFEST - RECEIVE_FROM_SHIPPER - CONSIGNEE_NOTIFY - DELIVERY - WARNING - EXCEPTION - TRACKING_STOP - EXCEPTION_LATE_DEPARTURE - EXCEPTION_MISSED_CONNECTION - GATE_IN_FULL - GATE_IN_EMPTY - GATE_OUT_EMPTY - GATE_OUT_FULL - LOAD - DISCHARGE - EXCEPTION_DELAYED - EXCEPTION_DELIVERY_MISSED - EXCEPTION_HELD - EXCEPTION_PICKUP_MISSED - AVAILABLE - ENTERED_GEOFENCE - EXITED_GEOFENCE - INFO - OUT_FOR_DELIVERY - PICKED_UP - RETURN_TO_SENDER - TRACKING_FAILED - UNAUTHORIZED - PICKUP_MISSED - SURVEY - HELD - RELEASE - DELAYED - DELIVERY_MISSED - ENTERED_INNER_GEOFENCE - EXITED_INNER_GEOFENCE - ENTERED_OUTER_GEOFENCE - EXITED_OUTER_GEOFENCE - ENTERED_FINAL_GEOFENCE - EXITED_FINAL_GEOFENCE - IDLE - DRIVER_DENY_TRACKING - UNKNOWN_EQUIPMENT_IDENTIFIER - MISSING_EQUIPMENT_IDENTIFIER - DISPATCH - CUSTOMS_HOLD - CUSTOMS_CLEARANCE - CUSTOMS_DOCS_FILING - CUSTOMS_TRANSIT_DOCS_ISSUED - CUSTOMS_TRANSIT_DOCS_CLOSED - CARRIER_HOLD - RECEIVE_FROM_CARRIER - ISSUE_FREIGHT_BILL - FREIGHT_ON_HAND - READY_FOR_CARRIAGE - LAST_FREE_DAY - MISSING_CARRIER - STUFF - STRIP - SEAL_INSPECTION - SEAL_REMOVAL - SEAL_RESEAL - HANDOVER - DOCUMENT_ADD - DOCUMENT_REMOVE - REMOVE_FROM_BOOKING - COST_UPDATE - SHARING_STOPPED description: >- Match shipments using a collection of event-related criteria. All provided criteria within are combined using an AND operator. ShipmentEventHistory: required: [] type: object properties: costs: type: array description: >- All costs incurred for this shipment and the assets contained within. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentCost' events: type: array description: >- All events that occurred for this shipment. Will always be in ascending order by the date the event occurred. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentEvent' exceptions: type: array description: ${ShipmentEventHistory.apiModel.exceptions.value} xml: wrapped: true items: $ref: '#/components/schemas/ShipmentException' shipment: $ref: '#/components/schemas/TrackedShipment' states: type: array description: >- All states that the shipment was or currently is in. Order is not guaranteed. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentState' sharingContext: $ref: '#/components/schemas/SharingContext' description: >- The history of everything that has occurred for the shipment during tracking. ShipmentException: required: [] type: object properties: category: type: string description: >- To represent buckets of exceptions within a category. These will be visible in the UI when we display aggregated exceptions. definitionId: type: string description: >- A reference to the definition of the exception. Every ExceptionDefinition contains a logic which determines how the exception would be derived. format: uuid namespace: type: string description: Represents different classes of exceptions reason: type: string description: >- A code to identify the actual unit exception. This is the most granular enumeration to identify an exception. status: type: string description: >- Represents current state of an exception.

ACTIVE- The shipment currently matches the exception criteria
RESOLVED- The exception was active on this shipment and has been resolved. transportationMode: type: string description: Transportation Mode on which the exception is assigned to enum: - AIR - OCEAN - RAIL - UNKNOWN - TRUCKLOAD - PARCEL - LTL - BARGE timeline: type: array description: >- The timeline of the exception being applicable on the shipment. This object timeframes the status transitions. items: $ref: '#/components/schemas/ShipmentExceptionInstance' description: >- Exception is a recorded fact that something is going wrong or went wrong along the shipment journey ShipmentExceptionInstance: required: [] type: object properties: description: type: string description: A human-readable understanding of the exception detail: $ref: '#/components/schemas/ExceptionDetail' endDateTime: type: string description: >- DateTime when the shipment exited out of the exception matching criteria. format: date-time id: type: string description: ID of the exception instance. format: uuid startDateTime: type: string description: DateTime when the shipment started matching the exception criteria. format: date-time description: >- The timeframed instance of the exception being applicable on the shipment. ShipmentExceptionSummary: required: [] type: object properties: definitionId: type: string description: >- A reference to the definition of the exception. Every ExceptionDefinition contains a logic which determines how the exception would be derived. format: uuid status: type: string description: >- Represents current state of an exception. ACTIVE- The shipment currently matches the exception criteria. RESOLVED- The exception was active on this shipment and has been resolved. startDateTime: type: string description: DateTime when the shipment started matching the exception criteria. format: date-time description: >- A brief overview of a shipment exception, including its definition and current status. ShipmentIdentifier: description: Shipment Identifier pair that contains the type and the value. properties: type: description: The type of the identifier. enum: - AIR_WAYBILL - BILL_OF_LADING - BOOKING_NUMBER - CARRIER_IATA - CARRIER_ICAO - CARRIER_NAME - CARRIER_SCAC - CONTAINER_ID - CUSTOMER_REFERENCE - DELIVERY_NUMBER - EXTERNAL - FLIGHT_NUMBER - ORDER - PICKUP - PRO - PURCHASE_ORDER - RAIL_CAR_ID - RAIL_WAYBILL - TRACKING_NUMBER - TRAILER_ID - UNKNOWN - VESSEL_IMO - VESSEL_NAME - WAYBILL type: string value: description: The value of the identifier. type: string title: ShipmentIdentifier type: object ShipmentIdentifierFilter: type: object properties: operator: type: string description: If values is not populated, only the EQUALS operator is supported. enum: - EQUALS - NOT_EQUALS - CONTAINS scopes: type: array description: >- If multiple scopes are provided, they will be combined using OR boolean logic. items: type: string description: >- Specifies which field(s) the filter should apply against. If not specified, the default scope is `SHIPMENT`. `SHIPMENT` - Filter applies against identifiers at the shipment level as well as at the segment level. `CURRENT_SEGMENT` - Filter applies only against identifiers in the active route segment. `PRIMARY` - Filter applies only against the primary identifier. The primary identifier is a shipment-level identifier which is intended to most uniquely refer to a shipment; it is derived based on a hierarchy of identifier types. enum: - SHIPMENT - CURRENT_SEGMENT - PRIMARY types: type: array items: $ref: '#/components/schemas/LogisticsIdentifierTypeEnum' values: type: array items: type: string description: >- Match shipments based on the type and value of the identifiers. This criterion will be checked against the identifiers at the shipment level as well as at the segment level; if either satisfies the criterion, the shipment is considered a match. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. For each item, filters are generated for both the type and values, and they are combined using an AND operator. Example: (identifier.types EQUALS [X OR Y] AND identifier.values EQUALS [A OR B]) This will generate a hit for Type: X and Value: B, but not Type: X and Value: C ShipmentImage: properties: carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' customerAccount: $ref: '#/components/schemas/CustomerAccount' documentType: description: A code for this image's document type. enum: - BILL_OF_LADING - DELIVERY_RECEIPT - WEIGHT_CERTIFICATE - INVOICE - INSPECTION_CERTIFICATE - LETTER_OF_AUTHORIZATION - LUMPER_CERTIFICATE - PACKING_SLIP type: string imageFormat: description: A code for this image's format. enum: - PDF - TIF - PNG - GIF - JPG type: string imagePages: description: Images of the pages that comprise a document (min:1, max:25). items: $ref: '#/components/schemas/ShipmentImagePage' type: array title: ShipmentImage type: object ShipmentImagePage: properties: imageData: description: >- The Base64 encoded image contents. This or imageUrl may be populated but not both. type: string imageUrl: description: >- The web URL for accessing this image. This or imageData may be populated but not both. type: string pageNumber: description: >- The index of the image page in the list of image pages that comprise a document for the shipment. format: int32 type: integer title: ShipmentImagePage type: object ShipmentInternalIdFilter: required: [] type: object properties: operator: type: string description: >- Only the EQUALS and NOT_EQUALS operators are supported for this criterion. enum: - EQUALS - NOT_EQUALS - CONTAINS values: type: array items: type: string format: uuid description: >- Match shipments based on their internal IDs. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (id EQUALS [A OR B OR C]) Example: (id NOT_EQUALS A) AND (id NOT_EQUALS B) ShipmentMilestone: required: [] type: object properties: actualDateTime: type: string description: The actual date and time when the event occurred. format: date-time actualOrEstimateDateTime: type: string description: >- Represents the actual date and time if the event has occurred. Otherwise, represents the estimated date and time, if available. format: date-time deprecated: true actualOrEstimateDateTimeInfo: $ref: '#/components/schemas/TrackedShipmentDateTime' deltaEstimated: type: integer description: >- The difference in time, in minutes, between the planned time of this event and its estimated time. A positive value represents later than planned; a negative value represents earlier than planned. This field will only be populated if both planned time and estimated time exist. It may be populated even after the event has occurred. format: int64 deltaActual: type: integer description: >- The difference in time, in minutes, between the planned time of this event and its actual time. A positive value represents later than planned; a negative value represents earlier than planned. This field will only be populated if both planned time and estimated time exist. It may be populated even after the event has occurred. format: int64 deltaActualOrEstimated: type: integer description: >- Represents the difference in time, in minutes, between the planned time and the actual time if the event has occurred. Otherwise, represents the difference in time, in minutes, between the planned time and the estimated time. format: int64 eventType: type: string description: >- The type of the event that generated this milestone. This field may be null if there are no eligible events at the target stop. enum: - UNKNOWN - TRACKING_INITIATE - TRACKING_START - ARRIVAL_AT_STOP - DEPARTURE_FROM_STOP - LOAD_ONTO_VEHICLE - UNLOAD_FROM_VEHICLE - TRACKING_END_DUE_TO_TIMEOUT - TRACKING_END_BY_USER - TRACKING_COMPLETE - GATE_IN - GATE_OUT - FLIGHT_BOOKING - MANIFEST - RECEIVE_FROM_SHIPPER - CONSIGNEE_NOTIFY - DELIVERY - WARNING - EXCEPTION - TRACKING_STOP - EXCEPTION_LATE_DEPARTURE - EXCEPTION_MISSED_CONNECTION - GATE_IN_FULL - GATE_IN_EMPTY - GATE_OUT_EMPTY - GATE_OUT_FULL - LOAD - DISCHARGE - EXCEPTION_DELAYED - EXCEPTION_DELIVERY_MISSED - EXCEPTION_HELD - EXCEPTION_PICKUP_MISSED - AVAILABLE - ENTERED_GEOFENCE - EXITED_GEOFENCE - INFO - OUT_FOR_DELIVERY - PICKED_UP - RETURN_TO_SENDER - TRACKING_FAILED - UNAUTHORIZED - PICKUP_MISSED - SURVEY - HELD - RELEASE - DELAYED - DELIVERY_MISSED - ENTERED_INNER_GEOFENCE - EXITED_INNER_GEOFENCE - ENTERED_OUTER_GEOFENCE - EXITED_OUTER_GEOFENCE - ENTERED_FINAL_GEOFENCE - EXITED_FINAL_GEOFENCE - IDLE - DRIVER_DENY_TRACKING - UNKNOWN_EQUIPMENT_IDENTIFIER - MISSING_EQUIPMENT_IDENTIFIER - DISPATCH - CUSTOMS_HOLD - CUSTOMS_CLEARANCE - CUSTOMS_DOCS_FILING - CUSTOMS_TRANSIT_DOCS_ISSUED - CUSTOMS_TRANSIT_DOCS_CLOSED - CARRIER_HOLD - RECEIVE_FROM_CARRIER - ISSUE_FREIGHT_BILL - FREIGHT_ON_HAND - READY_FOR_CARRIAGE - LAST_FREE_DAY - MISSING_CARRIER - STUFF - STRIP - SEAL_INSPECTION - SEAL_REMOVAL - SEAL_RESEAL - HANDOVER - DOCUMENT_ADD - DOCUMENT_REMOVE - REMOVE_FROM_BOOKING - COST_UPDATE - SHARING_STOPPED estimateDateTime: type: string description: >- The date and time at which the event is/was expected to occur. This field may be populated even after the event occurs. format: date-time deprecated: true estimateDateTimeInfo: $ref: '#/components/schemas/TrackedShipmentDateTime' initialPlannedDateTime: type: string description: >- The initial planned date and time when the event occurred. If the planned time is a range, this is the start of the range. format: date-time initialPlannedEndDateTime: type: string description: >- The initial planned date and time when the event occurred. This field is only populated when the planned time is a range; it represents the end of the range. format: date-time index: type: integer description: >- Some milestones can occur multiple times. For such milestones, this field is used to distinguish the occurrences. format: int64 plannedDateTime: type: string description: >- The latest planned date and time when the event occurred. If the planned time is a range, this is the start of the range. format: date-time plannedEndDateTime: type: string description: >- The latest planned date and time when the event occurred. This field is only populated when the planned time is a range; it represents the end of the range. format: date-time stop: $ref: '#/components/schemas/TrackedShipmentStop' type: type: string description: >- The type of milestone represented by this object. `GATE_OUT_EMPTY_AT_FIRST_PORT` ( GATE_OUT_EMPTY event at the first PORT_OF_LOADING stop in the route ) `GATE_IN_FULL_AT_FIRST_PORT` ( GATE_IN_FULL event at the first PORT_OF_LOADING stop in the route ) `CUSTOMS_DOCS_FILING_AT_FIRST_PORT` ( CUSTOMS_DOCS_FILING event at the first PORT_OF_LOADING stop in the route ) `CUSTOMS_CLEARANCE_AT_FIRST_PORT` ( CUSTOMS_CLEARANCE event at the first PORT_OF_LOADING stop in the route ) `LOAD_AT_FIRST_PORT` ( LOAD event at the first PORT_OF_LOADING stop in the route ) `DEPARTURE_FROM_FIRST_PORT` ( DEPARTURE_FROM_STOP event at the first PORT_OF_LOADING stop in the route ) `CUSTOMS_DOCS_FILING_AT_LAST_PORT` ( CUSTOMS_DOCS_FILING event at the first PORT_OF_DISCHARGE stop in the route ) `CUSTOMS_CLEARANCE_AT_LAST_PORT` ( CUSTOMS_CLEARANCE event at the first PORT_OF_DISCHARGE stop in the route ) `GATE_OUT_FULL_AT_LAST_PORT` ( GATE_OUT_FULL event at the last PORT_OF_DISCHARGE stop in the route ) `GATE_IN_EMPTY_AT_LAST_PORT` ( GATE_IN_EMPTY event at the last PORT_OF_DISCHARGE stop in the route ) `ARRIVAL_AT_LAST_PORT` ( ARRIVAL_AT_STOP event at the last PORT_OF_DISCHARGE stop in the route ) `DISCHARGE_AT_LAST_PORT` ( DISCHARGE event at the last PORT_OF_DISCHARGE stop in the route ) `RECEIVE_FROM_CARRIER_AT_LAST_PORT` ( RECEIVE_FROM_CARRIER event at the last PORT_OF_DISCHARGE stop in the route ) `LAST_FREE_DAY_DEMURRAGE_AT_LAST_PORT` ( LAST_FREE_DAY event with event description 'Import Demurrage' at the last PORT_OF_DISCHARGE stop in the route ) `LAST_FREE_DAY_DETENTION_AT_LAST_PORT` ( LAST_FREE_DAY event with event description 'Import Detention' at the last PORT_OF_DISCHARGE stop in the route ) `ARRIVAL_AT_ABSOLUTE_ORIGIN` ( ARRIVAL_AT_STOP event at the first stop in the route that is of type ORIGIN, PICKUP, or PORT_OF_LOADING ) `PICKED_UP_AT_ABSOLUTE_ORIGIN` ( PICKED_UP event (preferred) or GATE_OUT_FULL event at the first stop in the route that is of type ORIGIN, PICKUP, or PORT_OF_LOADING ) `DEPARTURE_FROM_ABSOLUTE_ORIGIN` ( DEPARTURE_FROM_STOP event at the first stop in the route that is of type ORIGIN, PICKUP, or PORT_OF_LOADING ) `ARRIVAL_AT_ABSOLUTE_DESTINATION` ( ARRIVAL_AT_STOP event (preferred) or GATE_IN_FULL event at the last stop in the route that is of type DESTINATION, DELIVERY, or PORT_OF_DISCHARGE ) `DELIVERY_AT_ABSOLUTE_DESTINATION` ( DELIVERY event at the last stop in the route that is of type DESTINATION, DELIVERY, or PORT_OF_DISCHARGE ) `GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL` ( GATE_OUT_EMPTY event at terminal ) `BOOKING_CONFIRMED_BY_FFW` ( BOOKING_CONFIRMED event by Freight Forwarder ) `BOOKING_CONFIRMED_BY_OCEAN_CARRIER` ( BOOKING_CONFIRMED event by Ocean Carrier ) `BOOKING_CANCELLED` ( BOOKING_CANCELLED event ) `ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN` ( ARRIVAL_AT_STOP event at ORIGIN stop ) `FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN` ( STUFF event at ORIGIN stop ) `PICKED_UP_FULL_CONTAINER_AT_ORIGIN` ( PICKED_UP event at ORIGIN stop ) `ARRIVAL_AT_EXPORT_WAREHOUSE` ( ARRIVAL_AT_STOP event at ORIGIN stop ) `DEPARTURE_FROM_EXPORT_WAREHOUSE` ( DEPARTURE_FROM_STOP event at ORIGIN stop ) `ARRIVAL_AT_ORIGIN_CFS` ( ARRIVAL_AT_STOP event at ORIGIN stop ) `LOAD_INTO_CONTAINER_AT_ORIGIN_CFS` ( LOAD event at ORIGIN stop ) `DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS` ( DEPARTURE_FROM_STOP event at ORIGIN stop ) `EXPORT_CUSTOMS_DOCS_FILING` ( CUSTOMS_DOCS_FILING event at PORT_OF_LOADING stop ) `EXPORT_CUSTOMS_HOLD` ( CUSTOMS_HOLD event at PORT_OF_LOADING stop ) `EXPORT_CUSTOMS_CLEARANCE` ( CUSTOMS_CLEARANCE event at PORT_OF_LOADING stop ) `ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL` ( ARRIVAL_AT_STOP event at TRANSFER stop ) `DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL` ( DISCHARGE event at TRANSFER stop ) `LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL` ( LOAD event at TRANSFER stop ) `DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL` ( DEPARTURE_FROM_STOP event at TRANSFER stop ) `GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING` ( GATE_IN_FULL event at PORT_OF_LOADING stop ) `LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING` ( LOAD event at PORT_OF_LOADING stop ) `VESSEL_DEPARTURE_FROM_PORT_OF_LOADING` ( DEPARTURE_FROM_STOP event at PORT_OF_LOADING stop ) `SHORT_SHIPPED_AT_PORT_OF_LOADING` ( SHORT_SHIPPED event at PORT_OF_LOADING stop ) `VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT` ( ARRIVAL_AT_STOP event at TRANSSHIPMENT_PORT stop ) `DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT` ( DISCHARGE event at TRANSSHIPMENT_PORT stop ) `ARRIVAL_AT_TRANSSHIPMENT_CFS` ( ARRIVAL_AT_STOP event at TRANSSHIPMENT_PORT stop ) `DISCHARGE_AT_TRANSSHIPMENT_CFS` ( DISCHARGE event at TRANSSHIPMENT_PORT stop ) `LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS` ( LOAD event at TRANSSHIPMENT_PORT stop ) `DEPARTURE_FROM_TRANSSHIPMENT_CFS` ( DEPARTURE_FROM_STOP event at TRANSSHIPMENT_PORT stop ) `LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT` ( LOAD event at TRANSSHIPMENT_PORT stop ) `GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT` ( GATE_OUT_FULL event at TRANSSHIPMENT_PORT stop ) `GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT` ( GATE_IN_FULL event at TRANSSHIPMENT_PORT stop ) `VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT` ( DEPARTURE_FROM_STOP event at TRANSSHIPMENT_PORT stop ) `SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT` ( SHORT_SHIPPED event at TRANSSHIPMENT_PORT stop ) `VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE` ( ARRIVAL_AT_STOP event at PORT_OF_DISCHARGE stop ) `DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE` ( DISCHARGE event at PORT_OF_DISCHARGE stop ) `CARRIER_HOLD_AT_PORT_OF_DISCHARGE` ( CARRIER_HOLD event at PORT_OF_DISCHARGE stop ) `CARRIER_RELEASE_AT_PORT_OF_DISCHARGE` ( CARRIER_RELEASE event at PORT_OF_DISCHARGE stop ) `GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE` ( GATE_OUT_FULL event at PORT_OF_DISCHARGE stop ) `DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL` ( DISCHARGE event at TRANSFER stop ) `SHORT_SHIPPED_AT_PORT_OF_DISCHARGE` ( SHORT_SHIPPED event at PORT_OF_DISCHARGE stop ) `ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL` ( ARRIVAL_AT_STOP event at TRANSFER stop ) `LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL` ( LOAD event at TRANSFER stop ) `DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL` ( DEPARTURE_FROM_STOP event at TRANSFER stop ) `IMPORT_CUSTOMS_DOCS_FILING` ( CUSTOMS_DOCS_FILING event at PORT_OF_DISCHARGE stop ) `IMPORT_CUSTOMS_HOLD` ( CUSTOMS_HOLD event at PORT_OF_DISCHARGE or TRANSFER stop ) `IMPORT_CUSTOMS_CLEARANCE` ( CUSTOMS_CLEARANCE event at PORT_OF_DISCHARGE or TRANSFER stop ) `ARRIVAL_AT_DESTINATION_CFS` ( ARRIVAL_AT_STOP event at DESTINATION stop ) `STRIP_AT_DESTINATION_CFS` ( STRIP event at DESTINATION stop ) `DEPARTURE_FROM_DESTINATION_CFS` ( DEPARTURE_FROM_STOP event at DESTINATION stop ) `ARRIVAL_AT_IMPORT_WAREHOUSE` ( ARRIVAL_AT_STOP event at DESTINATION stop ) `DEPARTURE_FROM_IMPORT_WAREHOUSE` ( DEPARTURE_FROM_STOP event at DESTINATION stop ) `OUT_FOR_DELIVERY` ( OUT_FOR_DELIVERY event at DESTINATION stop ) `ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE` ( ARRIVAL_AT_STOP event at DESTINATION stop ) `PROOF_OF_DELIVERY` ( DELIVERY event at DESTINATION stop ) `HANDOVER_TO_THIRD_PARTY` ( DELIVERY event at DESTINATION stop ) `READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION` ( STRIP event at DESTINATION stop ) `PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE` ( DEPARTURE_FROM_STOP event at DESTINATION stop ) `GATE_IN_EMPTY_CONTAINER_AT_TERMINAL` ( GATE_IN_EMPTY event at RETURN stop ) enum: - GATE_OUT_EMPTY_AT_FIRST_PORT - GATE_IN_FULL_AT_FIRST_PORT - CUSTOMS_DOCS_FILING_AT_FIRST_PORT - CUSTOMS_CLEARANCE_AT_FIRST_PORT - LOAD_AT_FIRST_PORT - DEPARTURE_FROM_FIRST_PORT - CUSTOMS_DOCS_FILING_AT_LAST_PORT - CUSTOMS_CLEARANCE_AT_LAST_PORT - GATE_OUT_FULL_AT_LAST_PORT - GATE_IN_EMPTY_AT_LAST_PORT - ARRIVAL_AT_LAST_PORT - DISCHARGE_AT_LAST_PORT - RECEIVE_FROM_CARRIER_AT_LAST_PORT - LAST_FREE_DAY_DEMURRAGE_AT_LAST_PORT - LAST_FREE_DAY_DETENTION_AT_LAST_PORT - ARRIVAL_AT_ABSOLUTE_ORIGIN - PICKED_UP_AT_ABSOLUTE_ORIGIN - DEPARTURE_FROM_ABSOLUTE_ORIGIN - ARRIVAL_AT_ABSOLUTE_DESTINATION - DELIVERY_AT_ABSOLUTE_DESTINATION - ARRIVAL_AT_FIRST_TRANSSHIPMENT_PORT - DISCHARGE_AT_FIRST_TRANSSHIPMENT_PORT - LOAD_AT_FIRST_TRANSSHIPMENT_PORT - DEPART_FROM_FIRST_TRANSSHIPMENT_PORT - ARRIVAL_AT_ANY_TRANSSHIPMENT_PORT - DISCHARGE_AT_ANY_TRANSSHIPMENT_PORT - LOAD_AT_ANY_TRANSSHIPMENT_PORT - DEPART_FROM_ANY_TRANSSHIPMENT_PORT - ARRIVAL_AT_LAST_TRANSFER - AVAILABLE_AT_LAST_TRANSFER - GATE_IN_EMPTY_AT_LAST_TRANSFER - DEPARTURE_FROM_LAST_TRANSFER - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL - BOOKING_CONFIRMED_BY_FFW - BOOKING_CONFIRMED_BY_OCEAN_CARRIER - BOOKING_CANCELLED - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN - PICKED_UP_FULL_CONTAINER_AT_ORIGIN - ARRIVAL_AT_EXPORT_WAREHOUSE - DEPARTURE_FROM_EXPORT_WAREHOUSE - ARRIVAL_AT_ORIGIN_CFS - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS - EXPORT_CUSTOMS_DOCS_FILING - EXPORT_CUSTOMS_HOLD - EXPORT_CUSTOMS_CLEARANCE - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL - DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL - DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING - SHORT_SHIPPED_AT_PORT_OF_LOADING - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT - DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT - ARRIVAL_AT_TRANSSHIPMENT_CFS - DISCHARGE_AT_TRANSSHIPMENT_CFS - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS - DEPARTURE_FROM_TRANSSHIPMENT_CFS - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT - GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE - DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE - CARRIER_HOLD_AT_PORT_OF_DISCHARGE - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE - DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL - LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL - DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL - IMPORT_CUSTOMS_DOCS_FILING - IMPORT_CUSTOMS_HOLD - IMPORT_CUSTOMS_CLEARANCE - ARRIVAL_AT_DESTINATION_CFS - STRIP_AT_DESTINATION_CFS - DEPARTURE_FROM_DESTINATION_CFS - ARRIVAL_AT_IMPORT_WAREHOUSE - DEPARTURE_FROM_IMPORT_WAREHOUSE - OUT_FOR_DELIVERY - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE - PROOF_OF_DELIVERY - HANDOVER_TO_THIRD_PARTY - READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL - HELD_CUSTOM_HOLD_CARRIER_HOLD - UNKNOWN description: >- A pairing of a stop along the shipment's route and an event that has happened or is planned to happen at that stop. Together, this pair represents a milestone in the shipment's lifecycle, complete with planned, estimated, and actual datetimes. Example: The ARRIVAL_AT_ABSOLUTE_DESTINATION milestone represents the stop that is considered to be the shipment's absolute destination as well as the corresponding arrival event for that stop. ShipmentModeFilter: required: [] type: object properties: operator: type: string description: >- Only the EQUALS and NOT_EQUALS operators are supported for this criterion. enum: - EQUALS - NOT_EQUALS - CONTAINS scopes: type: array items: type: string enum: - CURRENT types: type: array items: type: string enum: - AIR - OCEAN - RAIL - UNKNOWN - TRUCKLOAD - PARCEL - LTL - BARGE description: >- Match shipments based on the mode of transportation. By default, the criterion is checked against past, current, and planned modes of transportation. To limit the scope of this check, use the scopes field. Omit the scopes field to search all scopes. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (segments.transportationMode EQUALS [A OR B OR C]) Example: (segments.transportationMode NOT_EQUALS A) AND (segments.transportationMode NOT_EQUALS B) ShipmentNoteConfiguration: description: >- Configuration of the pickup note that will be constructed by project44. Pickup note construction is used to send some requested accessorial services to capacity providers through their API when no other API field is available for these services. It is also used to send the delivery note through the capacity provider's pickup note API field. If no note configuration is provided, the default note configuration will be used, which will send the following note sections in order and will not enable truncation: pickup note, priority accessorials, pickup accessorials, dimensions, delivery note, delivery accessorials, and other accessorials. properties: enableTruncation: description: >- If set to 'true', project44 will truncate the final pickup note it constructs if it exceeds the maximum allowable length for the capacity provider. When 'false', an error will be returned and the shipment will be not placed for pickup with the capacity provider if the constructed pickup note exceeds the maximum allowable length for the capacity provider. (default: 'false') type: boolean noteSections: description: >- A list of sections, in order, to send through the capacity provider's pickup note API field. Brief descriptions of accessorial services will be used. Item dimensions are added in the format 00x00x00. If not provided, the default note sections, in order, are as follows: pickup note, priority accessorials, pickup accessorials, dimensions, delivery note, delivery accessorials, and other accessorials. items: $ref: '#/components/schemas/ShipmentNoteSection' type: array title: ShipmentNoteConfiguration type: object ShipmentNoteSection: description: A section of the shipment note to be sent to the capacity provider. properties: name: description: Name identifying this note section. enum: - PICKUP_NOTE - PRIORITY_ACCESSORIALS - PICKUP_ACCESSORIALS - DELIVERY_ACCESSORIALS - OTHER_ACCESSORIALS - DELIVERY_NOTE - DIMENSIONS type: string title: ShipmentNoteSection type: object ShipmentOrder: type: object properties: additionalIdentifiers: type: array description: Additional terms to describe the order. items: $ref: '#/components/schemas/AdditionalOrderIdentifier' deliveryEstimateStatus: $ref: '#/components/schemas/OrderArrivalStatus' deliveryEstimateDateTime: type: string description: >- The date and time when the order is predicted to be delivered. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500) format: date-time id: type: string description: Internal identifier to uniquely identify the order. identifier: $ref: '#/components/schemas/OrderIdentifier' launchDateTime: type: string description: >- Date and time when a launch of the order is planned. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500) format: date-time originalDeliveryDateTimeWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' supplier: $ref: '#/components/schemas/OrderSupplier' supplierReadyDateTimeWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' tags: type: array description: >- Non-unique terms to describe how orders are managed within the organization. Used when searching and filtering by a specific department, team, category. items: $ref: '#/components/schemas/OrderTag' description: An order that is related to a shipment. ShipmentPlan: type: object properties: expectedTransportationModes: type: array description: ${ShipmentPlan.apiModel.expectedTransportationModes.value} xml: wrapped: true items: type: string description: ${ShipmentPlan.apiModel.expectedTransportationModes.value} xml: name: expectedTransportationModes enum: - AIR - OCEAN - RAIL - UNKNOWN - TRUCKLOAD - PARCEL - LTL - BARGE description: ${ShipmentPlan.apiModel.class.value} ShipmentPositionHistory: type: object properties: positions: type: array description: >- Locations where this shipment has been recorded. Data may be down-sampled. Will always be in ascending order by the date that the shipment was at that position. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentPosition' shipment: $ref: '#/components/schemas/TrackedShipment' description: >- The history of where this shipment or parts of this shipment were located during tracking. ShipmentRouteInfo: type: object properties: routeSegments: type: array description: >- Contain information about how the shipment moved from each stop to the next. There will always be 1 fewer route segment than number of stops. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentRouteSegment' stops: type: array description: >- All stops associated with this shipment. There may be 0 stops while we are still acquiring data for this shipment. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentStop' description: Route info model that contains the stops and route for the shipment. ShipmentSearchCriteria: type: object properties: loadItemIdentifiers: type: array items: $ref: '#/components/schemas/RelatedLoadItemIdentifierFilter' loadItemDescriptions: type: array items: $ref: '#/components/schemas/RelatedLoadItemDescriptionFilter' orderIdentifierTypes: type: array items: $ref: '#/components/schemas/RelatedOrderIdentifierTypeFilter' orderIdentifiers: type: array items: $ref: '#/components/schemas/RelatedOrderIdentifierFilter' orderIds: type: array items: $ref: '#/components/schemas/RelatedOrderInternalIdFilter' orderSupplierIds: type: array items: $ref: '#/components/schemas/RelatedOrderSupplierIdFilter' orderDateRanges: type: array items: $ref: '#/components/schemas/RelatedOrderDateFilter' orderDeltas: type: array description: >- Match shipments on the differences between timestamps of related orders. Criteria are ANDed together. items: $ref: '#/components/schemas/RelatedOrderDeltaFilter' orderTags: type: array items: $ref: '#/components/schemas/RelatedOrderTagFilter' orderAdditionalIdentifiers: type: array items: $ref: '#/components/schemas/RelatedOrderAdditionalIdentifierFilter' searchText: type: string description: >- A text-based search against a select set of fields in each shipment. If any of a shipment's select fields contain this value, then that shipment will be included in the result set. shipmentIds: type: array items: $ref: '#/components/schemas/ShipmentInternalIdFilter' shipmentIdentifiers: type: array items: $ref: '#/components/schemas/ShipmentIdentifierFilter' shipmentAttributes: type: array items: $ref: '#/components/schemas/ShipmentAttributeFilter' shipmentStates: type: array items: $ref: '#/components/schemas/ShipmentStateFilter' shipmentEvents: type: array description: >- Each item in this array should represent criteria for a distinct event type. items: $ref: '#/components/schemas/ShipmentEventFilter' shipmentTrackingStatusEvents: type: array items: $ref: '#/components/schemas/ShipmentTrackingStatusEventFilter' shipmentStops: type: array items: $ref: '#/components/schemas/ShipmentStopFilter' shipmentDurations: type: array description: >- Match shipments which contain one or more durations that meet all criteria. Criteria are ANDed together, types are ORed together. Example: (estimated transit time >= 30 minutes AND < 1 day) AND (actual transit time does not exist) Example: (duration X OR duration Y >= 30 minutes) AND (duration Z < 3 hours) items: $ref: '#/components/schemas/ShipmentDurationFilter' sharingContextTenants: type: array items: $ref: '#/components/schemas/ShipmentSharingTenantFilter' transportationModes: type: array items: $ref: '#/components/schemas/ShipmentModeFilter' description: >- A collection of criteria used to filter the result set of shipments. The query clauses that are generated by each field in this request are combined together using AND. Example: ([clauses from shipmentStates]) AND ([clauses from transportationModes]) ShipmentSearchRequest: type: object properties: additionalFields: type: array items: $ref: '#/components/schemas/ShipmentAdditionalField' loadItemIdentifiers: type: array items: $ref: '#/components/schemas/RelatedLoadItemIdentifierFilter' loadItemDescriptions: type: array items: $ref: '#/components/schemas/RelatedLoadItemDescriptionFilter' orderIdentifierTypes: type: array items: $ref: '#/components/schemas/RelatedOrderIdentifierTypeFilter' orderIdentifiers: type: array items: $ref: '#/components/schemas/RelatedOrderIdentifierFilter' orderIds: type: array items: $ref: '#/components/schemas/RelatedOrderInternalIdFilter' orderSupplierIds: type: array items: $ref: '#/components/schemas/RelatedOrderSupplierIdFilter' orderDateRanges: type: array items: $ref: '#/components/schemas/RelatedOrderDateFilter' orderDeltas: type: array description: >- Match shipments on the differences between timestamps of related orders. Criteria are ANDed together. items: $ref: '#/components/schemas/RelatedOrderDeltaFilter' orderTags: type: array items: $ref: '#/components/schemas/RelatedOrderTagFilter' orderAdditionalIdentifiers: type: array items: $ref: '#/components/schemas/RelatedOrderAdditionalIdentifierFilter' pagination: $ref: '#/components/schemas/PaginationParameters' searchText: type: string description: >- A text-based search against a select set of fields in each shipment. If any of a shipment's select fields contain this value, then that shipment will be included in the result set. shipmentIds: type: array items: $ref: '#/components/schemas/ShipmentInternalIdFilter' shipmentIdentifiers: type: array items: $ref: '#/components/schemas/ShipmentIdentifierFilter' shipmentAttributes: type: array items: $ref: '#/components/schemas/ShipmentAttributeFilter' shipmentStates: type: array items: $ref: '#/components/schemas/ShipmentStateFilter' shipmentEvents: type: array description: >- Each item in this array should represent criteria for a distinct event type. items: $ref: '#/components/schemas/ShipmentEventFilter' shipmentTrackingStatusEvents: type: array items: $ref: '#/components/schemas/ShipmentTrackingStatusEventFilter' shipmentStops: type: array items: $ref: '#/components/schemas/ShipmentStopFilter' shipmentDurations: type: array description: >- Match shipments which contain one or more durations that meet all criteria. Criteria are ANDed together, types are ORed together. Example: (estimated transit time >= 30 minutes AND < 1 day) AND (actual transit time does not exist) Example: (duration X OR duration Y >= 30 minutes) AND (duration Z < 3 hours) items: $ref: '#/components/schemas/ShipmentDurationFilter' sharingContextTenants: type: array items: $ref: '#/components/schemas/ShipmentSharingTenantFilter' sort: type: array items: $ref: '#/components/schemas/ShipmentSortField' transportationModes: type: array items: $ref: '#/components/schemas/ShipmentModeFilter' description: >- A collection of criteria used to filter the result set of shipments. The query clauses that are generated by each field in this request are combined together using AND. Example: ([clauses from shipmentStates]) AND ([clauses from transportationModes]) ShipmentSharingTenantFilter: required: [] type: object properties: names: type: array items: type: string operator: type: string enum: - EQUALS - NOT_EQUALS - CONTAINS scopes: type: array items: type: string description: >- Specifies whether this criterion should match against recipient tenants, originating tenants, or either. If not provided, either tenant type can result in a match. enum: - RECIPIENT - ORIGINATOR description: >- Match shipments based on the which tenant(s) they have been shared by or shared with. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (tenant.name EQUALS [A OR B OR C]) Example: (tenant.name CONTAINS 'at') AND (tenant.name NOT_EQUALS 'Cat') ShipmentSortField: required: [] type: object properties: direction: $ref: '#/components/schemas/SortDirection' fieldName: type: string enum: - PRIMARY_IDENTIFIER - CARRIER_IDENTIFIER - CREATED_DATETIME - UPDATED_DATETIME - ACTUAL_OR_ESTIMATED_TRANSIT_TIME - ACT_DELIVERY_DATETIME - EST_DELIVERY_DATETIME - ACT_OR_EST_DELIVERY_DATETIME - ACT_DELIVERY_DELTA - EST_DELIVERY_DELTA - ACT_OR_EST_DELIVERY_DELTA - PLANNED_DELIVERY_DATETIME - DEPART_ABS_ORIGIN_ACT_DATETIME - DEPART_ABS_ORIGIN_EST_DATETIME - DEPART_ABS_ORIGIN_ACT_OR_EST_DATETIME - DEPART_ABS_ORIGIN_PLANNED_DATETIME - DEPART_ABS_ORIGIN_PLANNED_END_DATETIME - DEPART_ABS_ORIGIN_INIT_PLANNED_DATETIME - DEPART_ABS_ORIGIN_INIT_PLANNED_END_DATETIME - DEPART_ABS_ORIGIN_ACT_DELTA - DEPART_ABS_ORIGIN_EST_DELTA - DEPART_ABS_ORIGIN_ACT_OR_EST_DELTA - ARRIVE_ABS_DEST_ACT_DATETIME - ARRIVE_ABS_DEST_EST_DATETIME - ARRIVE_ABS_DEST_ACT_OR_EST_DATETIME - ARRIVE_ABS_DEST_PLANNED_DATETIME - ARRIVE_ABS_DEST_PLANNED_END_DATETIME - ARRIVE_ABS_DEST_INIT_PLANNED_DATETIME - ARRIVE_ABS_DEST_INIT_PLANNED_END_DATETIME - ARRIVE_ABS_DEST_ACT_DELTA - ARRIVE_ABS_DEST_EST_DELTA - ARRIVE_ABS_DEST_ACT_OR_EST_DELTA - DEPART_FIRST_POL_ACT_DATETIME - DEPART_FIRST_POL_EST_DATETIME - DEPART_FIRST_POL_ACT_OR_EST_DATETIME - DEPART_FIRST_POL_PLANNED_DATETIME - DEPART_FIRST_POL_PLANNED_END_DATETIME - DEPART_FIRST_POL_INIT_PLANNED_DATETIME - DEPART_FIRST_POL_INIT_PLANNED_END_DATETIME - DEPART_FIRST_POL_ACT_DELTA - DEPART_FIRST_POL_EST_DELTA - DEPART_FIRST_POL_ACT_OR_EST_DELTA - DISCHARGE_LAST_POD_ACT_DATETIME - DISCHARGE_LAST_POD_EST_DATETIME - DISCHARGE_LAST_POD_ACT_OR_EST_DATETIME - DISCHARGE_LAST_POD_PLANNED_DATETIME - DISCHARGE_LAST_POD_PLANNED_END_DATETIME - DISCHARGE_LAST_POD_INIT_PLANNED_DATETIME - DISCHARGE_LAST_POD_INIT_PLANNED_END_DATETIME - DISCHARGE_LAST_POD_ACT_DELTA - DISCHARGE_LAST_POD_EST_DELTA - DISCHARGE_LAST_POD_ACT_OR_EST_DELTA - RECEIVE_LAST_POD_ACT_DATETIME - RECEIVE_LAST_POD_EST_DATETIME - RECEIVE_LAST_POD_ACT_OR_EST_DATETIME - RECEIVE_LAST_POD_PLANNED_DATETIME - RECEIVE_LAST_POD_PLANNED_END_DATETIME - RECEIVE_LAST_POD_INIT_PLANNED_DATETIME - RECEIVE_LAST_POD_INIT_PLANNED_END_DATETIME - RECEIVE_LAST_POD_ACT_DELTA - RECEIVE_LAST_POD_EST_DELTA - RECEIVE_LAST_POD_ACT_OR_EST_DELTA - LAST_FREE_DAY_DEMURRAGE_LAST_POD_ACT_DATETIME - LAST_FREE_DAY_DEMURRAGE_LAST_POD_EST_DATETIME - LAST_FREE_DAY_DEMURRAGE_LAST_POD_ACT_OR_EST_DATETIME - LAST_FREE_DAY_DEMURRAGE_LAST_POD_PLANNED_DATETIME - LAST_FREE_DAY_DEMURRAGE_LAST_POD_PLANNED_END_DATETIME - LAST_FREE_DAY_DEMURRAGE_LAST_POD_INIT_PLANNED_DATETIME - LAST_FREE_DAY_DEMURRAGE_LAST_POD_INIT_PLANNED_END_DATETIME - LAST_FREE_DAY_DEMURRAGE_LAST_POD_ACT_DELTA - LAST_FREE_DAY_DEMURRAGE_LAST_POD_EST_DELTA - LAST_FREE_DAY_DEMURRAGE_LAST_POD_ACT_OR_EST_DELTA - LAST_FREE_DAY_DETENTION_LAST_POD_ACT_DATETIME - LAST_FREE_DAY_DETENTION_LAST_POD_EST_DATETIME - LAST_FREE_DAY_DETENTION_LAST_POD_ACT_OR_EST_DATETIME - LAST_FREE_DAY_DETENTION_LAST_POD_PLANNED_DATETIME - LAST_FREE_DAY_DETENTION_LAST_POD_PLANNED_END_DATETIME - LAST_FREE_DAY_DETENTION_LAST_POD_INIT_PLANNED_DATETIME - LAST_FREE_DAY_DETENTION_LAST_POD_INIT_PLANNED_END_DATETIME - LAST_FREE_DAY_DETENTION_LAST_POD_ACT_DELTA - LAST_FREE_DAY_DETENTION_LAST_POD_EST_DELTA - LAST_FREE_DAY_DETENTION_LAST_POD_ACT_OR_EST_DELTA - DELIVERY_ABS_DEST_ACT_DATETIME - DELIVERY_ABS_DEST_EST_DATETIME - DELIVERY_ABS_DEST_ACT_OR_EST_DATETIME - DELIVERY_ABS_DEST_PLANNED_DATETIME - DELIVERY_ABS_DEST_PLANNED_END_DATETIME - DELIVERY_ABS_DEST_INIT_PLANNED_DATETIME - DELIVERY_ABS_DEST_INIT_PLANNED_END_DATETIME - DELIVERY_ABS_DEST_ACT_DELTA - DELIVERY_ABS_DEST_EST_DELTA - DELIVERY_ABS_DEST_ACT_OR_EST_DELTA - GATE_OUT_EMPTY_POL_ACT_DATETIME - GATE_OUT_EMPTY_POL_EST_DATETIME - GATE_OUT_EMPTY_POL_ACT_OR_EST_DATETIME - GATE_OUT_EMPTY_POL_PLANNED_DATETIME - GATE_OUT_EMPTY_POL_PLANNED_END_DATETIME - GATE_OUT_EMPTY_POL_INIT_PLANNED_DATETIME - GATE_OUT_EMPTY_POL_INIT_PLANNED_END_DATETIME - GATE_OUT_EMPTY_POL_ACT_DELTA - GATE_OUT_EMPTY_POL_EST_DELTA - GATE_OUT_EMPTY_POL_ACT_OR_EST_DELTA - GATE_IN_FULL_POL_ACT_DATETIME - GATE_IN_FULL_POL_EST_DATETIME - GATE_IN_FULL_POL_ACT_OR_EST_DATETIME - GATE_IN_FULL_POL_PLANNED_DATETIME - GATE_IN_FULL_POL_PLANNED_END_DATETIME - GATE_IN_FULL_POL_INIT_PLANNED_DATETIME - GATE_IN_FULL_POL_INIT_PLANNED_END_DATETIME - GATE_IN_FULL_POL_ACT_DELTA - GATE_IN_FULL_POL_EST_DELTA - GATE_IN_FULL_POL_ACT_OR_EST_DELTA - CUSTOMS_DOCS_FILING_POL_ACT_DATETIME - CUSTOMS_DOCS_FILING_POL_EST_DATETIME - CUSTOMS_DOCS_FILING_POL_ACT_OR_EST_DATETIME - CUSTOMS_DOCS_FILING_POL_PLANNED_DATETIME - CUSTOMS_DOCS_FILING_POL_PLANNED_END_DATETIME - CUSTOMS_DOCS_FILING_POL_INIT_PLANNED_DATETIME - CUSTOMS_DOCS_FILING_POL_INIT_PLANNED_END_DATETIME - CUSTOMS_DOCS_FILING_POL_ACT_DELTA - CUSTOMS_DOCS_FILING_POL_EST_DELTA - CUSTOMS_DOCS_FILING_POL_ACT_OR_EST_DELTA - CUSTOMS_CLEARANCE_POL_ACT_DATETIME - CUSTOMS_CLEARANCE_POL_EST_DATETIME - CUSTOMS_CLEARANCE_POL_ACT_OR_EST_DATETIME - CUSTOMS_CLEARANCE_POL_PLANNED_DATETIME - CUSTOMS_CLEARANCE_POL_PLANNED_END_DATETIME - CUSTOMS_CLEARANCE_POL_INIT_PLANNED_DATETIME - CUSTOMS_CLEARANCE_POL_INIT_PLANNED_END_DATETIME - CUSTOMS_CLEARANCE_POL_ACT_DELTA - CUSTOMS_CLEARANCE_POL_EST_DELTA - CUSTOMS_CLEARANCE_POL_ACT_OR_EST_DELTA - LOAD_POL_ACT_DATETIME - LOAD_POL_EST_DATETIME - LOAD_POL_ACT_OR_EST_DATETIME - LOAD_POL_PLANNED_DATETIME - LOAD_POL_PLANNED_END_DATETIME - LOAD_POL_INIT_PLANNED_DATETIME - LOAD_POL_INIT_PLANNED_END_DATETIME - LOAD_POL_ACT_DELTA - LOAD_POL_EST_DELTA - LOAD_POL_ACT_OR_EST_DELTA - ARRIVE_TSP_ACT_DATETIME - ARRIVE_TSP_EST_DATETIME - ARRIVE_TSP_ACT_OR_EST_DATETIME - ARRIVE_TSP_PLANNED_DATETIME - ARRIVE_TSP_PLANNED_END_DATETIME - ARRIVE_TSP_INIT_PLANNED_DATETIME - ARRIVE_TSP_INIT_PLANNED_END_DATETIME - ARRIVE_TSP_ACT_DELTA - ARRIVE_TSP_EST_DELTA - ARRIVE_TSP_ACT_OR_EST_DELTA - DISCHARGE_TSP_ACT_DATETIME - DISCHARGE_TSP_EST_DATETIME - DISCHARGE_TSP_ACT_OR_EST_DATETIME - DISCHARGE_TSP_PLANNED_DATETIME - DISCHARGE_TSP_PLANNED_END_DATETIME - DISCHARGE_TSP_INIT_PLANNED_DATETIME - DISCHARGE_TSP_INIT_PLANNED_END_DATETIME - DISCHARGE_TSP_ACT_DELTA - DISCHARGE_TSP_EST_DELTA - DISCHARGE_TSP_ACT_OR_EST_DELTA - LOAD_TSP_ACT_DATETIME - LOAD_TSP_EST_DATETIME - LOAD_TSP_ACT_OR_EST_DATETIME - LOAD_TSP_PLANNED_DATETIME - LOAD_TSP_PLANNED_END_DATETIME - LOAD_TSP_INIT_PLANNED_DATETIME - LOAD_TSP_INIT_PLANNED_END_DATETIME - LOAD_TSP_ACT_DELTA - LOAD_TSP_EST_DELTA - LOAD_TSP_ACT_OR_EST_DELTA - DEPART_TSP_ACT_DATETIME - DEPART_TSP_EST_DATETIME - DEPART_TSP_ACT_OR_EST_DATETIME - DEPART_TSP_PLANNED_DATETIME - DEPART_TSP_PLANNED_END_DATETIME - DEPART_TSP_INIT_PLANNED_DATETIME - DEPART_TSP_INIT_PLANNED_END_DATETIME - DEPART_TSP_ACT_DELTA - DEPART_TSP_EST_DELTA - DEPART_TSP_ACT_OR_EST_DELTA - CUSTOMS_DOCS_FILING_POD_ACT_DATETIME - CUSTOMS_DOCS_FILING_POD_EST_DATETIME - CUSTOMS_DOCS_FILING_POD_ACT_OR_EST_DATETIME - CUSTOMS_DOCS_FILING_POD_PLANNED_DATETIME - CUSTOMS_DOCS_FILING_POD_PLANNED_END_DATETIME - CUSTOMS_DOCS_FILING_POD_INIT_PLANNED_DATETIME - CUSTOMS_DOCS_FILING_POD_INIT_PLANNED_END_DATETIME - CUSTOMS_DOCS_FILING_POD_ACT_DELTA - CUSTOMS_DOCS_FILING_POD_EST_DELTA - CUSTOMS_DOCS_FILING_POD_ACT_OR_EST_DELTA - CUSTOMS_CLEARANCE_POD_ACT_DATETIME - CUSTOMS_CLEARANCE_POD_EST_DATETIME - CUSTOMS_CLEARANCE_POD_ACT_OR_EST_DATETIME - CUSTOMS_CLEARANCE_POD_PLANNED_DATETIME - CUSTOMS_CLEARANCE_POD_PLANNED_END_DATETIME - CUSTOMS_CLEARANCE_POD_INIT_PLANNED_DATETIME - CUSTOMS_CLEARANCE_POD_INIT_PLANNED_END_DATETIME - CUSTOMS_CLEARANCE_POD_ACT_DELTA - CUSTOMS_CLEARANCE_POD_EST_DELTA - CUSTOMS_CLEARANCE_POD_ACT_OR_EST_DELTA - GATE_OUT_FULL_POD_ACT_DATETIME - GATE_OUT_FULL_POD_EST_DATETIME - GATE_OUT_FULL_POD_ACT_OR_EST_DATETIME - GATE_OUT_FULL_POD_PLANNED_DATETIME - GATE_OUT_FULL_POD_PLANNED_END_DATETIME - GATE_OUT_FULL_POD_INIT_PLANNED_DATETIME - GATE_OUT_FULL_POD_INIT_PLANNED_END_DATETIME - GATE_OUT_FULL_POD_ACT_DELTA - GATE_OUT_FULL_POD_EST_DELTA - GATE_OUT_FULL_POD_ACT_OR_EST_DELTA - GATE_IN_EMPTY_POD_ACT_DATETIME - GATE_IN_EMPTY_POD_EST_DATETIME - GATE_IN_EMPTY_POD_ACT_OR_EST_DATETIME - GATE_IN_EMPTY_POD_PLANNED_DATETIME - GATE_IN_EMPTY_POD_PLANNED_END_DATETIME - GATE_IN_EMPTY_POD_INIT_PLANNED_DATETIME - GATE_IN_EMPTY_POD_INIT_PLANNED_END_DATETIME - GATE_IN_EMPTY_POD_ACT_DELTA - GATE_IN_EMPTY_POD_EST_DELTA - GATE_IN_EMPTY_POD_ACT_OR_EST_DELTA - ARRIVE_POD_ACT_DATETIME - ARRIVE_POD_EST_DATETIME - ARRIVE_POD_ACT_OR_EST_DATETIME - ARRIVE_POD_PLANNED_DATETIME - ARRIVE_POD_PLANNED_END_DATETIME - ARRIVE_POD_INIT_PLANNED_DATETIME - ARRIVE_POD_INIT_PLANNED_END_DATETIME - ARRIVE_POD_ACT_DELTA - ARRIVE_POD_EST_DELTA - ARRIVE_POD_ACT_OR_EST_DELTA - ARRIVE_ABS_ORIGIN_ACT_DATETIME - ARRIVE_ABS_ORIGIN_EST_DATETIME - ARRIVE_ABS_ORIGIN_ACT_OR_EST_DATETIME - ARRIVE_ABS_ORIGIN_PLANNED_DATETIME - ARRIVE_ABS_ORIGIN_PLANNED_END_DATETIME - ARRIVE_ABS_ORIGIN_INIT_PLANNED_DATETIME - ARRIVE_ABS_ORIGIN_INIT_PLANNED_END_DATETIME - ARRIVE_ABS_ORIGIN_ACT_DELTA - ARRIVE_ABS_ORIGIN_EST_DELTA - ARRIVE_ABS_ORIGIN_ACT_OR_EST_DELTA - PICKUP_ABS_ORIGIN_ACT_DATETIME - PICKUP_ABS_ORIGIN_EST_DATETIME - PICKUP_ABS_ORIGIN_ACT_OR_EST_DATETIME - PICKUP_ABS_ORIGIN_PLANNED_DATETIME - PICKUP_ABS_ORIGIN_PLANNED_END_DATETIME - PICKUP_ABS_ORIGIN_INIT_PLANNED_DATETIME - PICKUP_ABS_ORIGIN_INIT_PLANNED_END_DATETIME - PICKUP_ABS_ORIGIN_ACT_DELTA - PICKUP_ABS_ORIGIN_EST_DELTA - PICKUP_ABS_ORIGIN_ACT_OR_EST_DELTA - ARRIVE_LAST_TRANSFER_ACT_DATETIME - ARRIVE_LAST_TRANSFER_EST_DATETIME - ARRIVE_LAST_TRANSFER_ACT_OR_EST_DATETIME - ARRIVE_LAST_TRANSFER_PLANNED_DATETIME - ARRIVE_LAST_TRANSFER_PLANNED_END_DATETIME - ARRIVE_LAST_TRANSFER_INIT_PLANNED_DATETIME - ARRIVE_LAST_TRANSFER_INIT_PLANNED_END_DATETIME - ARRIVE_LAST_TRANSFER_ACT_DELTA - ARRIVE_LAST_TRANSFER_EST_DELTA - ARRIVE_LAST_TRANSFER_ACT_OR_EST_DELTA - AVAILABLE_LAST_TRANSFER_ACT_DATETIME - AVAILABLE_LAST_TRANSFER_EST_DATETIME - AVAILABLE_LAST_TRANSFER_ACT_OR_EST_DATETIME - AVAILABLE_LAST_TRANSFER_PLANNED_DATETIME - AVAILABLE_LAST_TRANSFER_PLANNED_END_DATETIME - AVAILABLE_LAST_TRANSFER_INIT_PLANNED_DATETIME - AVAILABLE_LAST_TRANSFER_INIT_PLANNED_END_DATETIME - AVAILABLE_LAST_TRANSFER_ACT_DELTA - AVAILABLE_LAST_TRANSFER_EST_DELTA - AVAILABLE_LAST_TRANSFER_ACT_OR_EST_DELTA - GATE_IN_EMPTY_LAST_TRANSFER_ACT_DATETIME - GATE_IN_EMPTY_LAST_TRANSFER_EST_DATETIME - GATE_IN_EMPTY_LAST_TRANSFER_ACT_OR_EST_DATETIME - GATE_IN_EMPTY_LAST_TRANSFER_PLANNED_DATETIME - GATE_IN_EMPTY_LAST_TRANSFER_PLANNED_END_DATETIME - GATE_IN_EMPTY_LAST_TRANSFER_INIT_PLANNED_DATETIME - GATE_IN_EMPTY_LAST_TRANSFER_INIT_PLANNED_END_DATETIME - GATE_IN_EMPTY_LAST_TRANSFER_ACT_DELTA - GATE_IN_EMPTY_LAST_TRANSFER_EST_DELTA - GATE_IN_EMPTY_LAST_TRANSFER_ACT_OR_EST_DELTA - DEPART_LAST_TRANSFER_ACT_DATETIME - DEPART_LAST_TRANSFER_EST_DATETIME - DEPART_LAST_TRANSFER_ACT_OR_EST_DATETIME - DEPART_LAST_TRANSFER_PLANNED_DATETIME - DEPART_LAST_TRANSFER_PLANNED_END_DATETIME - DEPART_LAST_TRANSFER_INIT_PLANNED_DATETIME - DEPART_LAST_TRANSFER_INIT_PLANNED_END_DATETIME - DEPART_LAST_TRANSFER_ACT_DELTA - DEPART_LAST_TRANSFER_EST_DELTA - DEPART_LAST_TRANSFER_ACT_OR_EST_DELTA - IMPORT_DEMURRAGE_COST - IMPORT_DEMURRAGE_TIER - IMPORT_DETENTION_COST - IMPORT_DETENTION_TIER - EXPORT_DEMURRAGE_COST - EXPORT_DEMURRAGE_TIER - EXPORT_DETENTION_COST - EXPORT_DETENTION_TIER - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_ACT_DATETIME - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_EST_DATETIME - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_ACT_OR_EST_DATETIME - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_PLANNED_DATETIME - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_PLANNED_END_DATETIME - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_INIT_PLANNED_DATETIME - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_INIT_PLANNED_END_DATETIME - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_ACT_DELTA - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_EST_DELTA - GATE_OUT_EMPTY_CONTAINER_AT_TERMINAL_ACT_OR_EST_DELTA - BOOKING_CONFIRMED_BY_FFW_ACT_DATETIME - BOOKING_CONFIRMED_BY_FFW_EST_DATETIME - BOOKING_CONFIRMED_BY_FFW_ACT_OR_EST_DATETIME - BOOKING_CONFIRMED_BY_FFW_PLANNED_DATETIME - BOOKING_CONFIRMED_BY_FFW_PLANNED_END_DATETIME - BOOKING_CONFIRMED_BY_FFW_INIT_PLANNED_DATETIME - BOOKING_CONFIRMED_BY_FFW_INIT_PLANNED_END_DATETIME - BOOKING_CONFIRMED_BY_FFW_ACT_DELTA - BOOKING_CONFIRMED_BY_FFW_EST_DELTA - BOOKING_CONFIRMED_BY_FFW_ACT_OR_EST_DELTA - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_ACT_DATETIME - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_EST_DATETIME - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_ACT_OR_EST_DATETIME - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_PLANNED_DATETIME - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_PLANNED_END_DATETIME - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_INIT_PLANNED_DATETIME - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_INIT_PLANNED_END_DATETIME - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_ACT_DELTA - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_EST_DELTA - BOOKING_CONFIRMED_BY_OCEAN_CARRIER_ACT_OR_EST_DELTA - BOOKING_CANCELLED_ACT_DATETIME - BOOKING_CANCELLED_EST_DATETIME - BOOKING_CANCELLED_ACT_OR_EST_DATETIME - BOOKING_CANCELLED_PLANNED_DATETIME - BOOKING_CANCELLED_PLANNED_END_DATETIME - BOOKING_CANCELLED_INIT_PLANNED_DATETIME - BOOKING_CANCELLED_INIT_PLANNED_END_DATETIME - BOOKING_CANCELLED_ACT_DELTA - BOOKING_CANCELLED_EST_DELTA - BOOKING_CANCELLED_ACT_OR_EST_DELTA - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_ACT_DATETIME - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_EST_DATETIME - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_ACT_OR_EST_DATETIME - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_PLANNED_DATETIME - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_PLANNED_END_DATETIME - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_INIT_PLANNED_DATETIME - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_INIT_PLANNED_END_DATETIME - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_ACT_DELTA - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_EST_DELTA - ARRIVAL_OF_EMPTY_CONTAINER_AT_ORIGIN_ACT_OR_EST_DELTA - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_ACT_DATETIME - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_EST_DATETIME - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_ACT_OR_EST_DATETIME - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_PLANNED_DATETIME - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_PLANNED_END_DATETIME - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_INIT_PLANNED_DATETIME - >- FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_INIT_PLANNED_END_DATETIME - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_ACT_DELTA - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_EST_DELTA - FULL_CONTAINER_READY_FOR_PICK_UP_AT_ORIGIN_ACT_OR_EST_DELTA - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_ACT_DATETIME - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_EST_DATETIME - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_ACT_OR_EST_DATETIME - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_PLANNED_DATETIME - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_PLANNED_END_DATETIME - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_INIT_PLANNED_DATETIME - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_INIT_PLANNED_END_DATETIME - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_ACT_DELTA - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_EST_DELTA - PICKED_UP_FULL_CONTAINER_AT_ORIGIN_ACT_OR_EST_DELTA - ARRIVAL_AT_EXPORT_WAREHOUSE_ACT_DATETIME - ARRIVAL_AT_EXPORT_WAREHOUSE_EST_DATETIME - ARRIVAL_AT_EXPORT_WAREHOUSE_ACT_OR_EST_DATETIME - ARRIVAL_AT_EXPORT_WAREHOUSE_PLANNED_DATETIME - ARRIVAL_AT_EXPORT_WAREHOUSE_PLANNED_END_DATETIME - ARRIVAL_AT_EXPORT_WAREHOUSE_INIT_PLANNED_DATETIME - ARRIVAL_AT_EXPORT_WAREHOUSE_INIT_PLANNED_END_DATETIME - ARRIVAL_AT_EXPORT_WAREHOUSE_ACT_DELTA - ARRIVAL_AT_EXPORT_WAREHOUSE_EST_DELTA - ARRIVAL_AT_EXPORT_WAREHOUSE_ACT_OR_EST_DELTA - DEPARTURE_FROM_EXPORT_WAREHOUSE_ACT_DATETIME - DEPARTURE_FROM_EXPORT_WAREHOUSE_EST_DATETIME - DEPARTURE_FROM_EXPORT_WAREHOUSE_ACT_OR_EST_DATETIME - DEPARTURE_FROM_EXPORT_WAREHOUSE_PLANNED_DATETIME - DEPARTURE_FROM_EXPORT_WAREHOUSE_PLANNED_END_DATETIME - DEPARTURE_FROM_EXPORT_WAREHOUSE_INIT_PLANNED_DATETIME - DEPARTURE_FROM_EXPORT_WAREHOUSE_INIT_PLANNED_END_DATETIME - DEPARTURE_FROM_EXPORT_WAREHOUSE_ACT_DELTA - DEPARTURE_FROM_EXPORT_WAREHOUSE_EST_DELTA - DEPARTURE_FROM_EXPORT_WAREHOUSE_ACT_OR_EST_DELTA - ARRIVAL_AT_ORIGIN_CFS_ACT_DATETIME - ARRIVAL_AT_ORIGIN_CFS_EST_DATETIME - ARRIVAL_AT_ORIGIN_CFS_ACT_OR_EST_DATETIME - ARRIVAL_AT_ORIGIN_CFS_PLANNED_DATETIME - ARRIVAL_AT_ORIGIN_CFS_PLANNED_END_DATETIME - ARRIVAL_AT_ORIGIN_CFS_INIT_PLANNED_DATETIME - ARRIVAL_AT_ORIGIN_CFS_INIT_PLANNED_END_DATETIME - ARRIVAL_AT_ORIGIN_CFS_ACT_DELTA - ARRIVAL_AT_ORIGIN_CFS_EST_DELTA - ARRIVAL_AT_ORIGIN_CFS_ACT_OR_EST_DELTA - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_ACT_DATETIME - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_EST_DATETIME - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_ACT_OR_EST_DATETIME - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_PLANNED_DATETIME - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_PLANNED_END_DATETIME - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_INIT_PLANNED_DATETIME - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_INIT_PLANNED_END_DATETIME - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_ACT_DELTA - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_EST_DELTA - LOAD_INTO_CONTAINER_AT_ORIGIN_CFS_ACT_OR_EST_DELTA - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_ACT_DATETIME - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_EST_DATETIME - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_ACT_OR_EST_DATETIME - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_PLANNED_DATETIME - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_PLANNED_END_DATETIME - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_INIT_PLANNED_DATETIME - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_INIT_PLANNED_END_DATETIME - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_ACT_DELTA - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_EST_DELTA - DEPARTURE_OF_CONTAINER_FROM_ORIGIN_CFS_ACT_OR_EST_DELTA - EXPORT_CUSTOMS_DOCS_FILING_ACT_DATETIME - EXPORT_CUSTOMS_DOCS_FILING_EST_DATETIME - EXPORT_CUSTOMS_DOCS_FILING_ACT_OR_EST_DATETIME - EXPORT_CUSTOMS_DOCS_FILING_PLANNED_DATETIME - EXPORT_CUSTOMS_DOCS_FILING_PLANNED_END_DATETIME - EXPORT_CUSTOMS_DOCS_FILING_INIT_PLANNED_DATETIME - EXPORT_CUSTOMS_DOCS_FILING_INIT_PLANNED_END_DATETIME - EXPORT_CUSTOMS_DOCS_FILING_ACT_DELTA - EXPORT_CUSTOMS_DOCS_FILING_EST_DELTA - EXPORT_CUSTOMS_DOCS_FILING_ACT_OR_EST_DELTA - EXPORT_CUSTOMS_HOLD_ACT_DATETIME - EXPORT_CUSTOMS_HOLD_EST_DATETIME - EXPORT_CUSTOMS_HOLD_ACT_OR_EST_DATETIME - EXPORT_CUSTOMS_HOLD_PLANNED_DATETIME - EXPORT_CUSTOMS_HOLD_PLANNED_END_DATETIME - EXPORT_CUSTOMS_HOLD_INIT_PLANNED_DATETIME - EXPORT_CUSTOMS_HOLD_INIT_PLANNED_END_DATETIME - EXPORT_CUSTOMS_HOLD_ACT_DELTA - EXPORT_CUSTOMS_HOLD_EST_DELTA - EXPORT_CUSTOMS_HOLD_ACT_OR_EST_DELTA - EXPORT_CUSTOMS_CLEARANCE_ACT_DATETIME - EXPORT_CUSTOMS_CLEARANCE_EST_DATETIME - EXPORT_CUSTOMS_CLEARANCE_ACT_OR_EST_DATETIME - EXPORT_CUSTOMS_CLEARANCE_PLANNED_DATETIME - EXPORT_CUSTOMS_CLEARANCE_PLANNED_END_DATETIME - EXPORT_CUSTOMS_CLEARANCE_INIT_PLANNED_DATETIME - EXPORT_CUSTOMS_CLEARANCE_INIT_PLANNED_END_DATETIME - EXPORT_CUSTOMS_CLEARANCE_ACT_DELTA - EXPORT_CUSTOMS_CLEARANCE_EST_DELTA - EXPORT_CUSTOMS_CLEARANCE_ACT_OR_EST_DELTA - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_EST_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_OR_EST_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_PLANNED_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_PLANNED_END_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_INIT_PLANNED_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_INIT_PLANNED_END_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_DELTA - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_EST_DELTA - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_OR_EST_DELTA - DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_DATETIME - DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_EST_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_OR_EST_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_PLANNED_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_PLANNED_END_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_INIT_PLANNED_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_INIT_PLANNED_END_DATETIME - DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_DELTA - DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_EST_DELTA - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_OR_EST_DELTA - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_EST_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_OR_EST_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_PLANNED_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_PLANNED_END_DATETIME - >- LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_INIT_PLANNED_DATETIME - >- LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_INIT_PLANNED_END_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_DELTA - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_EST_DELTA - LOAD_FULL_CONTAINER_AT_INLAND_EXPORT_TERMINAL_ACT_OR_EST_DELTA - DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_ACT_DATETIME - DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_EST_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_ACT_OR_EST_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_PLANNED_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_PLANNED_END_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_INIT_PLANNED_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_INIT_PLANNED_END_DATETIME - DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_ACT_DELTA - DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_EST_DELTA - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_EXPORT_TERMINAL_ACT_OR_EST_DELTA - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_ACT_DATETIME - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_EST_DATETIME - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_ACT_OR_EST_DATETIME - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_PLANNED_DATETIME - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_PLANNED_END_DATETIME - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_INIT_PLANNED_DATETIME - >- GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_INIT_PLANNED_END_DATETIME - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_ACT_DELTA - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_EST_DELTA - GATE_IN_FULL_CONTAINER_AT_PORT_OF_LOADING_ACT_OR_EST_DELTA - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_ACT_DATETIME - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_EST_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_ACT_OR_EST_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_PLANNED_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_PLANNED_END_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_INIT_PLANNED_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_INIT_PLANNED_END_DATETIME - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_ACT_DELTA - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_EST_DELTA - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_PORT_OF_LOADING_ACT_OR_EST_DELTA - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_ACT_DATETIME - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_EST_DATETIME - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_ACT_OR_EST_DATETIME - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_PLANNED_DATETIME - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_PLANNED_END_DATETIME - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_INIT_PLANNED_DATETIME - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_INIT_PLANNED_END_DATETIME - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_ACT_DELTA - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_EST_DELTA - VESSEL_DEPARTURE_FROM_PORT_OF_LOADING_ACT_OR_EST_DELTA - SHORT_SHIPPED_AT_PORT_OF_LOADING_ACT_DATETIME - SHORT_SHIPPED_AT_PORT_OF_LOADING_EST_DATETIME - SHORT_SHIPPED_AT_PORT_OF_LOADING_ACT_OR_EST_DATETIME - SHORT_SHIPPED_AT_PORT_OF_LOADING_PLANNED_DATETIME - SHORT_SHIPPED_AT_PORT_OF_LOADING_PLANNED_END_DATETIME - SHORT_SHIPPED_AT_PORT_OF_LOADING_INIT_PLANNED_DATETIME - SHORT_SHIPPED_AT_PORT_OF_LOADING_INIT_PLANNED_END_DATETIME - SHORT_SHIPPED_AT_PORT_OF_LOADING_ACT_DELTA - SHORT_SHIPPED_AT_PORT_OF_LOADING_EST_DELTA - SHORT_SHIPPED_AT_PORT_OF_LOADING_ACT_OR_EST_DELTA - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_ACT_DATETIME - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_EST_DATETIME - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DATETIME - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_PLANNED_DATETIME - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_PLANNED_END_DATETIME - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_DATETIME - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_END_DATETIME - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_ACT_DELTA - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_EST_DELTA - VESSEL_ARRIVAL_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DELTA - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_ACT_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_EST_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_PLANNED_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_PLANNED_END_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_END_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_ACT_DELTA - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_EST_DELTA - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DELTA - ARRIVAL_AT_TRANSSHIPMENT_CFS_ACT_DATETIME - ARRIVAL_AT_TRANSSHIPMENT_CFS_EST_DATETIME - ARRIVAL_AT_TRANSSHIPMENT_CFS_ACT_OR_EST_DATETIME - ARRIVAL_AT_TRANSSHIPMENT_CFS_PLANNED_DATETIME - ARRIVAL_AT_TRANSSHIPMENT_CFS_PLANNED_END_DATETIME - ARRIVAL_AT_TRANSSHIPMENT_CFS_INIT_PLANNED_DATETIME - ARRIVAL_AT_TRANSSHIPMENT_CFS_INIT_PLANNED_END_DATETIME - ARRIVAL_AT_TRANSSHIPMENT_CFS_ACT_DELTA - ARRIVAL_AT_TRANSSHIPMENT_CFS_EST_DELTA - ARRIVAL_AT_TRANSSHIPMENT_CFS_ACT_OR_EST_DELTA - DISCHARGE_AT_TRANSSHIPMENT_CFS_ACT_DATETIME - DISCHARGE_AT_TRANSSHIPMENT_CFS_EST_DATETIME - DISCHARGE_AT_TRANSSHIPMENT_CFS_ACT_OR_EST_DATETIME - DISCHARGE_AT_TRANSSHIPMENT_CFS_PLANNED_DATETIME - DISCHARGE_AT_TRANSSHIPMENT_CFS_PLANNED_END_DATETIME - DISCHARGE_AT_TRANSSHIPMENT_CFS_INIT_PLANNED_DATETIME - DISCHARGE_AT_TRANSSHIPMENT_CFS_INIT_PLANNED_END_DATETIME - DISCHARGE_AT_TRANSSHIPMENT_CFS_ACT_DELTA - DISCHARGE_AT_TRANSSHIPMENT_CFS_EST_DELTA - DISCHARGE_AT_TRANSSHIPMENT_CFS_ACT_OR_EST_DELTA - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_ACT_DATETIME - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_EST_DATETIME - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_ACT_OR_EST_DATETIME - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_PLANNED_DATETIME - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_PLANNED_END_DATETIME - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_INIT_PLANNED_DATETIME - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_INIT_PLANNED_END_DATETIME - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_ACT_DELTA - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_EST_DELTA - LOAD_INTO_CONTAINER_AT_TRANSSHIPMENT_CFS_ACT_OR_EST_DELTA - DEPARTURE_FROM_TRANSSHIPMENT_CFS_ACT_DATETIME - DEPARTURE_FROM_TRANSSHIPMENT_CFS_EST_DATETIME - DEPARTURE_FROM_TRANSSHIPMENT_CFS_ACT_OR_EST_DATETIME - DEPARTURE_FROM_TRANSSHIPMENT_CFS_PLANNED_DATETIME - DEPARTURE_FROM_TRANSSHIPMENT_CFS_PLANNED_END_DATETIME - DEPARTURE_FROM_TRANSSHIPMENT_CFS_INIT_PLANNED_DATETIME - DEPARTURE_FROM_TRANSSHIPMENT_CFS_INIT_PLANNED_END_DATETIME - DEPARTURE_FROM_TRANSSHIPMENT_CFS_ACT_DELTA - DEPARTURE_FROM_TRANSSHIPMENT_CFS_EST_DELTA - DEPARTURE_FROM_TRANSSHIPMENT_CFS_ACT_OR_EST_DELTA - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_ACT_DATETIME - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_EST_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_PLANNED_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_PLANNED_END_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_DATETIME - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_END_DATETIME - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_ACT_DELTA - LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_EST_DELTA - >- LOAD_FULL_CONTAINER_ONTO_VESSEL_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DELTA - GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_ACT_DATETIME - GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_EST_DATETIME - GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DATETIME - GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_PLANNED_DATETIME - GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_PLANNED_END_DATETIME - >- GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_DATETIME - >- GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_END_DATETIME - GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_ACT_DELTA - GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_EST_DELTA - GATE_OUT_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DELTA - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_ACT_DATETIME - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_EST_DATETIME - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DATETIME - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_PLANNED_DATETIME - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_PLANNED_END_DATETIME - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_DATETIME - >- GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_END_DATETIME - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_ACT_DELTA - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_EST_DELTA - GATE_IN_FULL_CONTAINER_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DELTA - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_ACT_DATETIME - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_EST_DATETIME - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_ACT_OR_EST_DATETIME - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_PLANNED_DATETIME - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_PLANNED_END_DATETIME - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_INIT_PLANNED_DATETIME - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_INIT_PLANNED_END_DATETIME - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_ACT_DELTA - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_EST_DELTA - VESSEL_DEPARTURE_FROM_TRANSSHIPMENT_PORT_ACT_OR_EST_DELTA - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_ACT_DATETIME - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_EST_DATETIME - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DATETIME - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_PLANNED_DATETIME - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_PLANNED_END_DATETIME - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_DATETIME - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_INIT_PLANNED_END_DATETIME - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_ACT_DELTA - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_EST_DELTA - SHORT_SHIPPED_AT_TRANSSHIPMENT_PORT_ACT_OR_EST_DELTA - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_ACT_DATETIME - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_EST_DATETIME - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DATETIME - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_PLANNED_DATETIME - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_PLANNED_END_DATETIME - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_INIT_PLANNED_DATETIME - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_INIT_PLANNED_END_DATETIME - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_ACT_DELTA - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_EST_DELTA - VESSEL_ARRIVAL_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DELTA - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_ACT_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_EST_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_PLANNED_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_PLANNED_END_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_INIT_PLANNED_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_INIT_PLANNED_END_DATETIME - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_ACT_DELTA - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_EST_DELTA - >- DISCHARGE_FULL_CONTAINER_FROM_VESSEL_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DELTA - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_ACT_DATETIME - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_EST_DATETIME - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DATETIME - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_PLANNED_DATETIME - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_PLANNED_END_DATETIME - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_INIT_PLANNED_DATETIME - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_INIT_PLANNED_END_DATETIME - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_ACT_DELTA - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_EST_DELTA - CARRIER_HOLD_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DELTA - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_ACT_DATETIME - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_EST_DATETIME - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DATETIME - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_PLANNED_DATETIME - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_PLANNED_END_DATETIME - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_INIT_PLANNED_DATETIME - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_INIT_PLANNED_END_DATETIME - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_ACT_DELTA - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_EST_DELTA - CARRIER_RELEASE_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DELTA - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_ACT_DATETIME - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_EST_DATETIME - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DATETIME - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_PLANNED_DATETIME - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_PLANNED_END_DATETIME - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_INIT_PLANNED_DATETIME - >- GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_INIT_PLANNED_END_DATETIME - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_ACT_DELTA - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_EST_DELTA - GATE_OUT_FULL_CONTAINER_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DELTA - DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_DATETIME - DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_EST_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_OR_EST_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_PLANNED_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_PLANNED_END_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_INIT_PLANNED_DATETIME - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_INIT_PLANNED_END_DATETIME - DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_DELTA - DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_EST_DELTA - >- DISCHARGE_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_OR_EST_DELTA - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_ACT_DATETIME - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_EST_DATETIME - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DATETIME - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_PLANNED_DATETIME - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_PLANNED_END_DATETIME - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_INIT_PLANNED_DATETIME - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_INIT_PLANNED_END_DATETIME - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_ACT_DELTA - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_EST_DELTA - SHORT_SHIPPED_AT_PORT_OF_DISCHARGE_ACT_OR_EST_DELTA - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_EST_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_OR_EST_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_PLANNED_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_PLANNED_END_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_INIT_PLANNED_DATETIME - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_INIT_PLANNED_END_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_DELTA - ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_EST_DELTA - >- ARRIVAL_OF_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_OR_EST_DELTA - LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_EST_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_OR_EST_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_PLANNED_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_PLANNED_END_DATETIME - >- LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_INIT_PLANNED_DATETIME - >- LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_INIT_PLANNED_END_DATETIME - LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_DELTA - LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_EST_DELTA - LOAD_FULL_CONTAINER_AT_INLAND_IMPORT_TERMINAL_ACT_OR_EST_DELTA - DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_ACT_DATETIME - DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_EST_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_ACT_OR_EST_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_PLANNED_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_PLANNED_END_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_INIT_PLANNED_DATETIME - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_INIT_PLANNED_END_DATETIME - DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_ACT_DELTA - DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_EST_DELTA - >- DEPARTURE_FULL_CONTAINER_FROM_INLAND_IMPORT_TERMINAL_ACT_OR_EST_DELTA - IMPORT_CUSTOMS_DOCS_FILING_ACT_DATETIME - IMPORT_CUSTOMS_DOCS_FILING_EST_DATETIME - IMPORT_CUSTOMS_DOCS_FILING_ACT_OR_EST_DATETIME - IMPORT_CUSTOMS_DOCS_FILING_PLANNED_DATETIME - IMPORT_CUSTOMS_DOCS_FILING_PLANNED_END_DATETIME - IMPORT_CUSTOMS_DOCS_FILING_INIT_PLANNED_DATETIME - IMPORT_CUSTOMS_DOCS_FILING_INIT_PLANNED_END_DATETIME - IMPORT_CUSTOMS_DOCS_FILING_ACT_DELTA - IMPORT_CUSTOMS_DOCS_FILING_EST_DELTA - IMPORT_CUSTOMS_DOCS_FILING_ACT_OR_EST_DELTA - IMPORT_CUSTOMS_HOLD_ACT_DATETIME - IMPORT_CUSTOMS_HOLD_EST_DATETIME - IMPORT_CUSTOMS_HOLD_ACT_OR_EST_DATETIME - IMPORT_CUSTOMS_HOLD_PLANNED_DATETIME - IMPORT_CUSTOMS_HOLD_PLANNED_END_DATETIME - IMPORT_CUSTOMS_HOLD_INIT_PLANNED_DATETIME - IMPORT_CUSTOMS_HOLD_INIT_PLANNED_END_DATETIME - IMPORT_CUSTOMS_HOLD_ACT_DELTA - IMPORT_CUSTOMS_HOLD_EST_DELTA - IMPORT_CUSTOMS_HOLD_ACT_OR_EST_DELTA - IMPORT_CUSTOMS_CLEARANCE_ACT_DATETIME - IMPORT_CUSTOMS_CLEARANCE_EST_DATETIME - IMPORT_CUSTOMS_CLEARANCE_ACT_OR_EST_DATETIME - IMPORT_CUSTOMS_CLEARANCE_PLANNED_DATETIME - IMPORT_CUSTOMS_CLEARANCE_PLANNED_END_DATETIME - IMPORT_CUSTOMS_CLEARANCE_INIT_PLANNED_DATETIME - IMPORT_CUSTOMS_CLEARANCE_INIT_PLANNED_END_DATETIME - IMPORT_CUSTOMS_CLEARANCE_ACT_DELTA - IMPORT_CUSTOMS_CLEARANCE_EST_DELTA - IMPORT_CUSTOMS_CLEARANCE_ACT_OR_EST_DELTA - ARRIVAL_AT_DESTINATION_CFS_ACT_DATETIME - ARRIVAL_AT_DESTINATION_CFS_EST_DATETIME - ARRIVAL_AT_DESTINATION_CFS_ACT_OR_EST_DATETIME - ARRIVAL_AT_DESTINATION_CFS_PLANNED_DATETIME - ARRIVAL_AT_DESTINATION_CFS_PLANNED_END_DATETIME - ARRIVAL_AT_DESTINATION_CFS_INIT_PLANNED_DATETIME - ARRIVAL_AT_DESTINATION_CFS_INIT_PLANNED_END_DATETIME - ARRIVAL_AT_DESTINATION_CFS_ACT_DELTA - ARRIVAL_AT_DESTINATION_CFS_EST_DELTA - ARRIVAL_AT_DESTINATION_CFS_ACT_OR_EST_DELTA - STRIP_AT_DESTINATION_CFS_ACT_DATETIME - STRIP_AT_DESTINATION_CFS_EST_DATETIME - STRIP_AT_DESTINATION_CFS_ACT_OR_EST_DATETIME - STRIP_AT_DESTINATION_CFS_PLANNED_DATETIME - STRIP_AT_DESTINATION_CFS_PLANNED_END_DATETIME - STRIP_AT_DESTINATION_CFS_INIT_PLANNED_DATETIME - STRIP_AT_DESTINATION_CFS_INIT_PLANNED_END_DATETIME - STRIP_AT_DESTINATION_CFS_ACT_DELTA - STRIP_AT_DESTINATION_CFS_EST_DELTA - STRIP_AT_DESTINATION_CFS_ACT_OR_EST_DELTA - DEPARTURE_FROM_DESTINATION_CFS_ACT_DATETIME - DEPARTURE_FROM_DESTINATION_CFS_EST_DATETIME - DEPARTURE_FROM_DESTINATION_CFS_ACT_OR_EST_DATETIME - DEPARTURE_FROM_DESTINATION_CFS_PLANNED_DATETIME - DEPARTURE_FROM_DESTINATION_CFS_PLANNED_END_DATETIME - DEPARTURE_FROM_DESTINATION_CFS_INIT_PLANNED_DATETIME - DEPARTURE_FROM_DESTINATION_CFS_INIT_PLANNED_END_DATETIME - DEPARTURE_FROM_DESTINATION_CFS_ACT_DELTA - DEPARTURE_FROM_DESTINATION_CFS_EST_DELTA - DEPARTURE_FROM_DESTINATION_CFS_ACT_OR_EST_DELTA - ARRIVAL_AT_IMPORT_WAREHOUSE_ACT_DATETIME - ARRIVAL_AT_IMPORT_WAREHOUSE_EST_DATETIME - ARRIVAL_AT_IMPORT_WAREHOUSE_ACT_OR_EST_DATETIME - ARRIVAL_AT_IMPORT_WAREHOUSE_PLANNED_DATETIME - ARRIVAL_AT_IMPORT_WAREHOUSE_PLANNED_END_DATETIME - ARRIVAL_AT_IMPORT_WAREHOUSE_INIT_PLANNED_DATETIME - ARRIVAL_AT_IMPORT_WAREHOUSE_INIT_PLANNED_END_DATETIME - ARRIVAL_AT_IMPORT_WAREHOUSE_ACT_DELTA - ARRIVAL_AT_IMPORT_WAREHOUSE_EST_DELTA - ARRIVAL_AT_IMPORT_WAREHOUSE_ACT_OR_EST_DELTA - DEPARTURE_FROM_IMPORT_WAREHOUSE_ACT_DATETIME - DEPARTURE_FROM_IMPORT_WAREHOUSE_EST_DATETIME - DEPARTURE_FROM_IMPORT_WAREHOUSE_ACT_OR_EST_DATETIME - DEPARTURE_FROM_IMPORT_WAREHOUSE_PLANNED_DATETIME - DEPARTURE_FROM_IMPORT_WAREHOUSE_PLANNED_END_DATETIME - DEPARTURE_FROM_IMPORT_WAREHOUSE_INIT_PLANNED_DATETIME - DEPARTURE_FROM_IMPORT_WAREHOUSE_INIT_PLANNED_END_DATETIME - DEPARTURE_FROM_IMPORT_WAREHOUSE_ACT_DELTA - DEPARTURE_FROM_IMPORT_WAREHOUSE_EST_DELTA - DEPARTURE_FROM_IMPORT_WAREHOUSE_ACT_OR_EST_DELTA - OUT_FOR_DELIVERY_ACT_DATETIME - OUT_FOR_DELIVERY_EST_DATETIME - OUT_FOR_DELIVERY_ACT_OR_EST_DATETIME - OUT_FOR_DELIVERY_PLANNED_DATETIME - OUT_FOR_DELIVERY_PLANNED_END_DATETIME - OUT_FOR_DELIVERY_INIT_PLANNED_DATETIME - OUT_FOR_DELIVERY_INIT_PLANNED_END_DATETIME - OUT_FOR_DELIVERY_ACT_DELTA - OUT_FOR_DELIVERY_EST_DELTA - OUT_FOR_DELIVERY_ACT_OR_EST_DELTA - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_ACT_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_EST_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_ACT_OR_EST_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_PLANNED_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_PLANNED_END_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_INIT_PLANNED_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_INIT_PLANNED_END_DATETIME - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_ACT_DELTA - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_EST_DELTA - ARRIVAL_OF_FULL_CONTAINER_AT_CONSIGNEE_ACT_OR_EST_DELTA - PROOF_OF_DELIVERY_ACT_DATETIME - PROOF_OF_DELIVERY_EST_DATETIME - PROOF_OF_DELIVERY_ACT_OR_EST_DATETIME - PROOF_OF_DELIVERY_PLANNED_DATETIME - PROOF_OF_DELIVERY_PLANNED_END_DATETIME - PROOF_OF_DELIVERY_INIT_PLANNED_DATETIME - PROOF_OF_DELIVERY_INIT_PLANNED_END_DATETIME - PROOF_OF_DELIVERY_ACT_DELTA - PROOF_OF_DELIVERY_EST_DELTA - PROOF_OF_DELIVERY_ACT_OR_EST_DELTA - HANDOVER_TO_THIRD_PARTY_ACT_DATETIME - HANDOVER_TO_THIRD_PARTY_EST_DATETIME - HANDOVER_TO_THIRD_PARTY_ACT_OR_EST_DATETIME - HANDOVER_TO_THIRD_PARTY_PLANNED_DATETIME - HANDOVER_TO_THIRD_PARTY_PLANNED_END_DATETIME - HANDOVER_TO_THIRD_PARTY_INIT_PLANNED_DATETIME - HANDOVER_TO_THIRD_PARTY_INIT_PLANNED_END_DATETIME - HANDOVER_TO_THIRD_PARTY_ACT_DELTA - HANDOVER_TO_THIRD_PARTY_EST_DELTA - HANDOVER_TO_THIRD_PARTY_ACT_OR_EST_DELTA - >- READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_ACT_DATETIME - >- READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_EST_DATETIME - >- READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_ACT_OR_EST_DATETIME - >- READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_PLANNED_DATETIME - >- READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_PLANNED_END_DATETIME - >- READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_INIT_PLANNED_DATETIME - >- READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_INIT_PLANNED_END_DATETIME - READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_ACT_DELTA - READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_EST_DELTA - >- READY_FOR_PICKUP_EMPTY_CONTAINER_AT_CONSIGNEE_LOCATION_ACT_OR_EST_DELTA - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_ACT_DATETIME - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_EST_DATETIME - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_ACT_OR_EST_DATETIME - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_PLANNED_DATETIME - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_PLANNED_END_DATETIME - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_INIT_PLANNED_DATETIME - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_INIT_PLANNED_END_DATETIME - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_ACT_DELTA - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_EST_DELTA - PICKED_UP_EMPTY_CONTAINER_FROM_CONSIGNEE_ACT_OR_EST_DELTA - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_ACT_DATETIME - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_EST_DATETIME - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_ACT_OR_EST_DATETIME - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_PLANNED_DATETIME - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_PLANNED_END_DATETIME - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_INIT_PLANNED_DATETIME - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_INIT_PLANNED_END_DATETIME - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_ACT_DELTA - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_EST_DELTA - GATE_IN_EMPTY_CONTAINER_AT_TERMINAL_ACT_OR_EST_DELTA ShipmentStateFilter: required: [] type: object properties: operator: type: string description: >- Only the EQUALS and NOT_EQUALS operators are supported for this criterion. enum: - EQUALS - NOT_EQUALS - CONTAINS types: type: array items: type: string enum: - UNKNOWN - AT_STOP - IN_TRANSIT_AIRCRAFT - IN_TRANSIT_VESSEL - IN_TRANSIT_RAIL - CUSTOMS_HOLD - IN_TRANSIT - COMPLETED - SCHEDULED - IDLE - ACTION_REQUIRED description: >- Match shipments based on the current state. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (currentState.type EQUALS [A OR B OR C]) Example: (currentState.type NOT_EQUALS A) AND (currentState.type NOT_EQUALS B) ShipmentStopFilter: type: object properties: identifiers: type: array items: $ref: '#/components/schemas/LocationIdentifierCriterion' properties: type: array items: $ref: '#/components/schemas/LocationCriterion' stopType: $ref: '#/components/schemas/StopTypeCriterion' scopes: type: array items: type: string enum: - ANY_INBOUND - ANY_OUTBOUND - CURRENT - ANY_STOP - EVERY_STOP - ORIGIN - DESTINATION - EVENTS - LATEST_ACTUAL_EVENT description: >- Match shipments using a collection of stop-related and location-related criteria. All provided criteria within are combined using an AND operator. ShipmentSummary: type: object properties: allShipmentIdentifiers: type: array items: $ref: '#/components/schemas/LogisticsIdentifier' activeVehicleIdentifier: $ref: '#/components/schemas/VehicleShipmentIdentifier' allActiveVehicleIdentifiers: type: array items: $ref: '#/components/schemas/VehicleShipmentIdentifier' activeSegmentMode: type: string enum: - AIR - OCEAN - RAIL - UNKNOWN - TRUCKLOAD - PARCEL - LTL - BARGE allSegmentModes: type: array items: type: string enum: - AIR - OCEAN - RAIL - UNKNOWN - TRUCKLOAD - PARCEL - LTL - BARGE accessGroupIds: uniqueItems: true type: array items: type: string format: uuid createdDateTime: type: string format: date-time currentState: type: string enum: - UNKNOWN - AT_STOP - IN_TRANSIT_AIRCRAFT - IN_TRANSIT_VESSEL - IN_TRANSIT_RAIL - CUSTOMS_HOLD - IN_TRANSIT - COMPLETED - SCHEDULED - IDLE - ACTION_REQUIRED currentStopLocation: $ref: '#/components/schemas/TrackedShipmentStopLocation' carrier: type: string costs: type: array description: >- A collection of charges or fees incurred by this shipment or one of its related assets. items: $ref: '#/components/schemas/TrackedShipmentCost' customAttributes: type: array items: $ref: '#/components/schemas/CustomAttribute' destinationLocation: $ref: '#/components/schemas/TrackedShipmentStopLocation' emissions: $ref: '#/components/schemas/EmissionData' exceptions: type: array items: $ref: '#/components/schemas/ShipmentExceptionSummary' latestTrackingStatusEvent: $ref: '#/components/schemas/TrackingStatusEvent' lastKnownPosition: $ref: '#/components/schemas/TrackedShipmentPosition' milestones: type: array items: $ref: '#/components/schemas/ShipmentMilestone' originLocation: $ref: '#/components/schemas/TrackedShipmentStopLocation' primaryShipmentIdentifier: $ref: '#/components/schemas/PrimaryShipmentIdentifier' relatedOrders: type: array description: A collection of orders fulfilled by this shipment. items: $ref: '#/components/schemas/ShipmentOrder' shipmentId: type: string format: uuid sharingContext: $ref: '#/components/schemas/SharingContext' transitTime: $ref: '#/components/schemas/ForecastableTimeDuration' updatedDateTime: type: string format: date-time description: >- Condensed shipment information intended to represent a row in a list of search results. ShipmentSummaryPage: type: object properties: paginationInfo: $ref: '#/components/schemas/PaginationInfo' results: type: array description: List of resources contained on this page. xml: wrapped: true items: $ref: '#/components/schemas/ShipmentSummary' ShipmentTenantAttribute: properties: attributeName: type: string attributeValues: items: type: string type: array title: ShipmentTenantAttribute type: object ShipmentTotals: type: object properties: cube: type: integer description: >- Cubic volume of the entire shipment (total length X total width X total height). cubeDimensionsUnit: allOf: - $ref: '#/components/schemas/ShipmentTotalsDimensionsUnitCode' description: >- The unit of measurement for cubic dimensions. Defaults to Feet (Imperial) if not passed.Valid Values: Feet or Meters. default: Feet currency: type: string description: >- Optional attribute to indicate currency of declaredValue. Defaults to USD. dimensionsUnit: allOf: - $ref: '#/components/schemas/DimensionsUnit' description: >- The unit of measurement for dimensions. Defaults to Inches (Imperial) if not passed.Valid Values: Inches or Centimeters. default: Inches declaredValue: type: integer description: >- Total monetary value of the shipment in USD (sometimes needed for cross-border moves). grossWeight: type: integer description: >- Total weight of the entire shipment, including handling units (tare weight). handlingUnits: type: integer description: Handling unit count for the entire shipment. linearLength: type: integer description: Linear length for the entire shipment. netWeight: type: integer description: >- Total weight of the entire shipment, not including handling units (tare weight). weightUnit: allOf: - $ref: '#/components/schemas/BookingEBOLWeightUnit' description: >- The unit of measurement for weight. Defaults to Pounds (Imperial) if not passed.Valid Values: Pounds or Kilograms. default: Pounds ShipmentTotalsDimensionsUnitCode: enum: - Feet - Meters type: string description: An enumeration. ShipmentTrackingStatusEventFilter: required: [] type: object properties: operator: type: string description: >- Only the EQUALS and NOT_EQUALS operators are supported for this criterion. enum: - EQUALS - NOT_EQUALS - CONTAINS scopes: type: array items: type: string enum: - LATEST types: type: array items: type: string enum: - TRACKING_INITIATE - TRACKING_START - TRACKING_END_BY_USER - TRACKING_END_DUE_TO_TIMEOUT - TRACKING_FAILED - TRACKING_COMPLETE - TRACKING_STOP - DRIVER_DENY_TRACKING - UNKNOWN_EQUIPMENT_IDENTIFIER - MISSING_EQUIPMENT_IDENTIFIER - REMOVE_FROM_BOOKING - SHARING_STOPPED - UNKNOWN description: >- Match shipments based on the tracking status. By default, the criterion can be satisfied by any (current or historical) tracking status events. To limit the scope of this check, use the scopes field. Omit the scopes field to search all scopes. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (events.type EQUALS [A OR B OR C]) Example: (events.type NOT_EQUALS A) AND (events.type NOT_EQUALS B) ShippingLabels: required: [] type: object properties: format: allOf: - $ref: '#/components/schemas/ShippingLabelsFormat' description: 'Specifies the printer format type for the labels. Example: Avery.' position: type: integer description: >- Specifies the starting position for the shipping labels. Valid Values: 1 - 6 . quantity: type: integer description: Specifies the quantity of pages desired. ShippingLabelsFormat: enum: - Avery - Letter - Zebra type: string description: An enumeration. SimpleTrackedShipment: required: [] type: object properties: attributes: maxItems: 25 minItems: 0 type: array description: >- An optional user-defined set of custom attributes to associate with this shipment. xml: wrapped: true items: $ref: '#/components/schemas/CustomAttribute' accessGroups: uniqueItems: true type: array description: >- This set is populated when a shipment is entitled to specific access groups, it denotes which group(s) are entitled visibility. xml: wrapped: true items: $ref: '#/components/schemas/AccessGroup' createdDateTime: type: string description: >- The date and time when this shipment was created. This value is read only and will be ignored during shipment creation. format: date-time id: type: string description: >- Master shipment id of the shipment. Will always be populated on the response. format: uuid identifiers: maxItems: 250 minItems: 0 type: array description: >- Used to identify a shipment.

Only the following identifier types are accepted when creating or updating a shipment: xml: wrapped: true items: $ref: '#/components/schemas/LogisticsIdentifier' lastModifiedDateTime: type: string description: >- The date and time when this shipment was last modified. This value is read only and will be ignored during shipment creation or modification. format: date-time plan: $ref: '#/components/schemas/ShipmentPlan' shipmentShareLink: type: string description: Public link to view the shipment in the VOC. description: >- Simplified version of shipment tracking model used to initiate a shipment. SortAndSegregateDetails: required: [] type: object properties: pieces: type: integer description: Number of pieces in a shipment to be sorted/segregated. SortDirection: type: string format: enum enum: - ASC - DESC SpecialOpeningHours: properties: hours: $ref: '#/components/schemas/OpeningHours' validFrom: description: >- Date (inclusive) local to the stop to start applying the special hours. Formatted as yyyy-MM-dd format: date type: string validThrough: description: >- Date (exclusive) local to the stop to stop applying the special hours. Formatted as yyyy-MM-dd format: date type: string required: [] title: SpecialOpeningHours type: object SpecificationKind_bool_: required: [] type: object properties: value: type: boolean SpecificationKind_DeckHeight_: required: [] type: object properties: value: $ref: '#/components/schemas/DeckHeight' SpecificationKind_ExcessiveLength_: required: [] type: object properties: value: $ref: '#/components/schemas/ExcessiveLength' SpecificationKind_GuaranteedByHour_: required: [] type: object properties: value: $ref: '#/components/schemas/GuaranteedByHour' SplitOffsetDateTime: description: >- A date and optionally a time and time zone offset. This model is used where project44 cannot always guarantee a time or a time zone will be provided. properties: date: description: >- The date portion of this this date time object. This field will always be populated if this object is not null. (format: yyyy-MM-dd) format: date type: string time: description: >- The time portion of this date time object. This field may be null if it is unknown. If this field is null, 'timeZoneOffset' will also be null. (format: HH:mm) example: '15:00:00' type: string timeZoneOffset: description: >- The time zone offset of this date time object. This field may be null if it is unknown, in which case the date and time should be assumed local to the applicable location. UTC will be indicated by an offset of '+0000'. (format: +HHmm or -HHmm) example: '-0500' type: string title: SplitOffsetDateTime type: object SplitOffsetDateTimeWindow: description: >- A date and time range, with optional times and time zone offsets.This model is used where project44 cannot always guarantee times or time zones will be provided. properties: endDateTime: $ref: '#/components/schemas/SplitOffsetDateTime' startDateTime: $ref: '#/components/schemas/SplitOffsetDateTime' title: SplitOffsetDateTimeWindow type: object StateProvinceCode: enum: - AL - AK - AZ - AR - CA - CO - CT - DC - DE - FL - GA - HI - ID - IL - IN - IA - KS - KY - LA - ME - MD - MA - MI - MN - MS - MO - MT - NE - NV - NH - NJ - NM - NY - NC - ND - OH - OK - OR - PA - PR - RI - SC - SD - TN - TX - UT - VT - VA - WA - WV - WI - WY - AB - BC - MB - NB - NL - NS - NT - NU - 'ON' - PE - QC - SK - YT - CMX - AGU - BCN - BCS - CAM - COA - COL - CHP - CHH - DUR - GUA - GRO - HID - JAL - MEX - MIC - MOR - NAY - NLE - OAX - PUE - QUE - ROO - SLP - SIN - SON - TAB - TAM - TLA - VER - YUC - ZAC type: string description: An enumeration. Stop: required: [] type: object properties: arrivalDate: type: string description: The date at which the carrier is scheduled to arrive at the stop. format: date arrivalAppointmentWindow: allOf: - $ref: '#/components/schemas/TimeWindow' description: >- Optional, any time-based window which the carrier is expected to arrive at the stop, zoned to the stop's location. accessorials: type: array items: anyOf: - $ref: '#/components/schemas/RefrigeratedAccessorial' - $ref: '#/components/schemas/LiftgateAccessorial' - $ref: '#/components/schemas/TarpsAccessorial' - $ref: '#/components/schemas/StrapsAccessorial' - $ref: '#/components/schemas/ChainsAccessorial' - $ref: '#/components/schemas/DeckHeightAccessorial' - $ref: '#/components/schemas/CraneAccessorial' - $ref: '#/components/schemas/CallBeforeArrivalAccessorial' - $ref: '#/components/schemas/DockRequiredAccessorial' - $ref: '#/components/schemas/LockedGateAccessorial' - $ref: '#/components/schemas/FirstComeFirstServedAccessorial' - $ref: '#/components/schemas/AppointmentRequiredAccessorial' - $ref: '#/components/schemas/WhiteGloveAccessorial' - $ref: '#/components/schemas/HazmatAccessorial' - $ref: '#/components/schemas/ExcessiveLengthAccessorial' - $ref: '#/components/schemas/GuaranteedServiceLevelAccessorial' - $ref: '#/components/schemas/OtherAccessorial' description: >- Optional list of descriptors which detail any add-ons or declarations applicable which may be noteworthy to the carrier. contacts: type: array items: $ref: '#/components/schemas/BookingContact' description: >- Shipper-supplied individuals who may be contacted for correspondence related to shipment handling at the stop. id: type: string description: The id of this stop. Will always be populated on response. format: uuid location: allOf: - $ref: '#/components/schemas/BookingLocation' description: The location of the stop. type: allOf: - $ref: '#/components/schemas/StopType' description: The type of stop. StopLocation: properties: address: $ref: '#/components/schemas/Address' addressSpecificity: description: >- The specificity of this address. Return only. This represents how sepcifically we were able to geocode the address, i.e., the most specific known entity we were able to match with it. enum: - COUNTRY - STATE - COUNTY - CITY - DISTRICT - POSTAL_CODE - STREET - INTERSECTION - LANDMARK - HOUSE_NUMBER type: string contacts: description: >- A list of contact information for people associated with this location. items: $ref: '#/components/schemas/ContactReference' type: array coordinates: $ref: '#/components/schemas/GeoCoordinates' geofence: $ref: '#/components/schemas/Geofence' id: description: Stop location id. Should be null. Will be provided on return. format: uuid type: string name: description: Name of the location. Nonblank value required. type: string openingHours: description: Optional list of opening and closing hours of the stop location. items: $ref: '#/components/schemas/OpeningHours' type: array specialOpeningHours: description: >- Optional list of special (i.e., holiday) opening and closing hours of the stop location. items: $ref: '#/components/schemas/SpecialOpeningHours' type: array suppliedId: description: Customer-supplied identifier for this location. type: string version: description: >- Version number of this location. Every time the location is edited this number is incremented. format: int64 type: integer required: [] title: StopLocation type: object StopLocationList: properties: locations: description: Locations listed. items: $ref: '#/components/schemas/StopLocation' type: array offset: description: >- Offset of the start of this list within the list of all matching locations. format: int32 type: integer pageSize: description: Locations requested per page. format: int32 type: integer totalItems: description: Total locations available. format: int32 type: integer required: [] title: StopLocationList type: object StopReference: description: Reference to a specific stop on a shipment. properties: stopId: description: The unique identifier for a specific stop on a shipment. format: uuid type: string title: StopReference type: object StopType: enum: - PICKUP - DELIVERY - PICKUP_DELIVERY - PORT_OF_LOADING - PORT_OF_DISCHARGE - TRANSSHIPMENT_PORT type: string description: An enumeration. StopTypeCriterion: required: [] type: object properties: operator: type: string description: >- Only the EQUALS and NOT_EQUALS operators are supported for this criterion. enum: - EQUALS - NOT_EQUALS - CONTAINS types: type: array items: type: string enum: - UNKNOWN - ORIGIN - DESTINATION - TRANSFER - OTHER - PORT_OF_LOADING - TRANSSHIPMENT_PORT - PORT_OF_DISCHARGE - PICKUP - DELIVERY - RETURN - WAREHOUSE - HUB - AIRPORT description: >- Match shipments based on stop type. Top-level items are combined using an AND operator, but the values within each item are combined using an OR operator. Example: (stop.type EQUALS [A OR B OR C]) Example: (stop.type NOT_EQUALS A) AND (stop.type NOT_EQUALS B) StrapsAccessorial: required: [] type: object properties: code: enum: - STRAPS type: string details: allOf: - $ref: '#/components/schemas/QuantityKind' description: Count and size of straps. additionalProperties: false description: >- Accessorial which delineates the expected size and number of straps used in shipping. TarpsAccessorial: required: [] type: object properties: code: enum: - TARPS type: string details: allOf: - $ref: '#/components/schemas/QuantityKind' description: Count and size of tarps. additionalProperties: false description: >- Accessorial which delineates the expected size and number of tarps used in shipping. TempRangeKind: required: [] type: object properties: min: type: number description: Minimum range value. max: type: number description: Maximum range value. unit: allOf: - $ref: '#/components/schemas/TempUnit' description: Temperature unit. additionalProperties: false TempUnit: enum: - CELSIUS - FAHRENHEIT type: string description: An enumeration. TerminatingCapacity: properties: carrierContact: $ref: '#/components/schemas/Contact' carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' carrierIdentifiers: description: >- List of carrier identifiers. Identifier type must be 'SCAC', 'DOT_NUMBER', or 'MC_NUMBER'. items: $ref: '#/components/schemas/CapacityProviderIdentifier' type: array distance: description: Distance from the given location. format: double type: number distanceUnit: description: Distance unit. Must be KM or MI. enum: - FT - M - MI - KM type: string equipmentIdentifiers: description: Equipment identifiers associated with the vehicle. items: $ref: '#/components/schemas/TruckloadEquipmentIdentifier' type: array estimatedArrivalDateTime: description: >- Estimated time when the vehicle will arrive at a terminating location. type: string truckType: description: The type of truck. enum: - 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 type: string title: TerminatingCapacity type: object TimeCriticalDetails: required: [] type: object properties: date: allOf: - $ref: '#/components/schemas/DateWindow' description: Date and time window for the requested Time Critical Service. type: allOf: - $ref: '#/components/schemas/TimeCriticalDetailsType' description: >- Type of delivery required for the requested Time Critical Service.Required when accessorial codes list includes TCS code. TimeCriticalDetailsType: enum: - Deliver On Date - Deliver On or After Date - Deliver By Date - Delivery Window type: string description: Description when Freight should be delivered TimeDuration: required: [] type: object properties: amount: minimum: 0 type: integer description: The amount of time for a duration. format: int64 unit: $ref: '#/components/schemas/TimeUnit' description: >- The threshold to check against. Required unless operator is EXISTS or NOT_EXISTS. The unit UNKNOWN is not supported. TimeDurationCriterion: type: object properties: operator: type: string description: >- Defines how the target field must compare to the threshold in order to be considered a match. Defaults to EQUALS if not provided. enum: - MORE_THAN - MORE_THAN_OR_EQUALS - LESS_THAN - LESS_THAN_OR_EQUALS - EQUALS - NOT_EQUALS - EXISTS - NOT_EXISTS value: $ref: '#/components/schemas/TimeDuration' description: >- A simple criterion that compares a numerical value against a static threshold. TimelinessCode: type: string format: enum enum: - UNKNOWN - EARLY - ON_TIME - LATE TimeUnit: type: string description: The unit of time measurement for a duration. format: enum enum: - UNKNOWN - MILLISECONDS - SECONDS - MINUTES - HOURS - DAYS - WEEKS - MONTHS - YEARS TimeWindow: required: [] type: object properties: endTime: type: string description: >- End time of this window in ISO format. An end time which occurs before the start time indicates that it should occur on the next day. format: time startTime: type: string description: Start time of this window in ISO format. format: time description: A time range. Timing: properties: actual: $ref: '#/components/schemas/TimingActual' estimate: $ref: '#/components/schemas/TimingEstimate' scheduled: $ref: '#/components/schemas/TimingScheduled' title: Timing type: object TimingActual: properties: dateTime: description: >- The actual date and time of arrival or departure.(format: yyyy-MM-dd'T'HH:mm:ssZ) type: string timelinessCode: description: The actual arrival or departure status, as calculated. enum: - UNKNOWN - EARLY - ON_TIME - LATE type: string title: TimingActual type: object TimingEstimate: properties: estimatedTimeWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' lastCalculatedDateTime: description: >- When this estimate was last computed. (format: yyyy-MM-dd'T'HH:mm:ssZ) type: string timelinessCode: description: The estimated arrival or departure status. enum: - UNKNOWN - EARLY - ON_TIME - LATE type: string title: TimingEstimate type: object TimingScheduled: properties: dateTime: description: >- The scheduled date and time of arrival or departure.(format: yyyy-MM-dd'T'HH:mm:ssZ) type: string timelinessCode: description: The scheduled arrival or departure status, as calculated. enum: - UNKNOWN - EARLY - ON_TIME - LATE type: string title: TimingScheduled type: object TrackedShipment: required: [] type: object properties: attributes: maxItems: 25 minItems: 0 type: array description: >- An optional user-defined set of custom attributes to associate with this shipment. xml: wrapped: true items: $ref: '#/components/schemas/CustomAttribute' accessGroups: uniqueItems: true type: array description: >- This set is populated when a shipment is entitled to specific access groups, it denotes which group(s) are entitled visibility. xml: wrapped: true items: $ref: '#/components/schemas/AccessGroup' createdDateTime: type: string description: >- The date and time when this shipment was created. This value is read only and will be ignored during shipment creation. format: date-time id: type: string description: >- Master shipment id of the shipment. Will always be populated on the response. format: uuid identifiers: maxItems: 250 minItems: 0 type: array description: >- Used to identify a shipment.

Only the following identifier types are accepted when creating or updating a shipment: xml: wrapped: true items: $ref: '#/components/schemas/LogisticsIdentifier' lastModifiedDateTime: type: string description: >- The date and time when this shipment was last modified. This value is read only and will be ignored during shipment creation or modification. format: date-time plan: $ref: '#/components/schemas/ShipmentPlan' routeInfo: $ref: '#/components/schemas/ShipmentRouteInfo' relatedShipments: maxItems: 250 minItems: 0 type: array description: List of related shipments of the parent shipment. This is optional. xml: name: sub_shipments wrapped: true items: $ref: '#/components/schemas/SimpleTrackedShipment' shipmentShareLink: type: string description: Public link to view the shipment in the VOC. description: Shipment tracking model used to initiate a shipment. TrackedShipmentCost: required: [] type: object properties: identifiers: maxItems: 25 minItems: 0 type: array description: >- A list of identifiers that specify the asset to which this cost or fee pertains. items: $ref: '#/components/schemas/LogisticsIdentifier' type: type: string description: The type of cost or fee that occurred. Will always be populated. enum: - UNKNOWN - EXPORT_DEMURRAGE - EXPORT_DETENTION - IMPORT_DEMURRAGE - IMPORT_DETENTION totalCost: $ref: '#/components/schemas/MonetaryValue' tier: type: string description: The current tier that is applied to calculate the costs. enum: - UNKNOWN - FREE_PERIOD - FIRST_PERIOD - SECOND_PERIOD - THEREAFTER_PERIOD description: >- A representation of a cost or fee incurred by a shipment or some asset pertaining to the shipment. TrackedShipmentDateTime: description: A dateTime for the event provided by a certain source. properties: dateTime: description: >- The time that this event occurred or will occur. If accompanied by endDateTime, this value denotes the start time of the resulting window. type: string endDateTime: description: >- The end time of the window in which the event occurred or will occur. type: string lastModifiedDateTime: description: Denotes when the provided dateTime was last modified. type: string selected: description: >- Denotes whether this dateTime is the one used as the top level dateTime of the event. type: boolean sequence: description: >- A number that indicates the order in which dateTimes of the same type and source were received. format: int32 type: integer source: description: >- The source of the provided dateTime.

UNKNOWN - The source of the provided dateTime is unknown.
CARRIER -The dateTime is provided by CARRIER.
BROKER - The dateTime is provided by BROKER.
FFW - The dateTime is provided by FFW.
USER - The dateTime is provided by USER. Can only provide this value in POST/PUT.
CONTRACT - Contractually defined dateTime.
GEOFENCE - The dateTime is provided by GEOFENCE logic.
FACILITY - The dateTime is provided by a facility (e.g. terminal, airport, container depot, cross-dock station).
P44 - The dateTime is calculated by other P44 services. enum: - UNKNOWN - CARRIER - BROKER - FFW - USER - CONTRACT - GEOFENCE - FACILITY - P44 type: string sourceIdentifiers: description: >- An optional list of standardized 3rd party identifiers which provide more detail about the source of this dateTime. Can indicate a specific device, vehicle, carrier, or other freight entity. items: $ref: '#/components/schemas/LogisticsIdentifier' type: array type: description: >- The type of the dateTime provided.

PLANNED - Denotes that a dateTime is planned or scheduled to occur.
ACTUAL - Denotes that a dateTime actually occurred.
ESTIMATE - Denotes that a dateTime is a calculated estimate. enum: - UNKNOWN - PLANNED - ACTUAL - ESTIMATE type: string title: TrackedShipmentDateTime type: object TrackedShipmentEvent: description: An event is something that occurs at a point in time for a shipment. properties: dateTime: description: >- The time when this event occurred. If relevant, the offset will be relative to where the event occurred, otherwise will be in UTC. Will only be populated for events that have already happened. type: string dateTimes: description: A list of times retrieved from different sources. items: $ref: '#/components/schemas/TrackedShipmentDateTime' type: array description: description: A human readable description of this event. Optional response field. type: string details: $ref: '#/components/schemas/TrackedShipmentEventDetails' estimateDateTime: description: >- The estimated time that this event is likely to occur. Only populated if event has not occurred yet. type: string estimateLastCalculatedDateTime: description: >- The time when project44 last calculated the estimate for this event. Only populated if event has not occurred yet. type: string plannedDateTime: description: >- The planned time when this event is scheduled to occur. If plannedEndDateTime is set, this is the start of the planned window of time for the event. type: string plannedEndDateTime: description: The end of the planned window of time for the event. type: string receivedDateTime: description: >- The time when project44 received or calculated this event. Will only be populated for events that have already happened. type: string routeSegmentId: description: >- If relevant, this will be populated with the id of a route segment on which this event occurred. This can be used to associate the event with a specific vehicle. format: uuid type: string stopId: description: >- If relevant, this will be populated with the id of the stop to which this event relates. format: uuid type: string type: description: The type of event that occurred. Will always be populated. enum: - UNKNOWN - TRACKING_INITIATE - TRACKING_START - ARRIVAL_AT_STOP - DEPARTURE_FROM_STOP - LOAD_ONTO_VEHICLE - UNLOAD_FROM_VEHICLE - TRACKING_END_DUE_TO_TIMEOUT - TRACKING_END_BY_USER - TRACKING_COMPLETE - GATE_IN - GATE_OUT - FLIGHT_BOOKING - MANIFEST - RECEIVE_FROM_SHIPPER - CONSIGNEE_NOTIFY - DELIVERY - WARNING - EXCEPTION - TRACKING_STOP - EXCEPTION_LATE_DEPARTURE - EXCEPTION_MISSED_CONNECTION - GATE_IN_FULL - GATE_IN_EMPTY - GATE_OUT_EMPTY - GATE_OUT_FULL - LOAD - DISCHARGE - EXCEPTION_DELAYED - EXCEPTION_DELIVERY_MISSED - EXCEPTION_HELD - EXCEPTION_PICKUP_MISSED - AVAILABLE - ENTERED_GEOFENCE - EXITED_GEOFENCE - INFO - OUT_FOR_DELIVERY - PICKED_UP - RETURN_TO_SENDER - TRACKING_FAILED - UNAUTHORIZED - PICKUP_MISSED - SURVEY - HELD - RELEASE - DELAYED - DELIVERY_MISSED - ENTERED_INNER_GEOFENCE - EXITED_INNER_GEOFENCE - ENTERED_OUTER_GEOFENCE - EXITED_OUTER_GEOFENCE - ENTERED_FINAL_GEOFENCE - EXITED_FINAL_GEOFENCE - IDLE - DRIVER_DENY_TRACKING - UNKNOWN_EQUIPMENT_IDENTIFIER - MISSING_EQUIPMENT_IDENTIFIER - DISPATCH - CUSTOMS_HOLD - CUSTOMS_CLEARANCE - CUSTOMS_DOCS_FILING - CUSTOMS_TRANSIT_DOCS_ISSUED - CUSTOMS_TRANSIT_DOCS_CLOSED - CARRIER_HOLD - RECEIVE_FROM_CARRIER - ISSUE_FREIGHT_BILL - FREIGHT_ON_HAND - READY_FOR_CARRIAGE - LAST_FREE_DAY - MISSING_CARRIER - STUFF - STRIP - SEAL_INSPECTION - SEAL_REMOVAL - SEAL_RESEAL - HANDOVER - DOCUMENT_ADD - DOCUMENT_REMOVE - REMOVE_FROM_BOOKING - COST_UPDATE - SHARING_STOPPED type: string title: TrackedShipmentEvent type: object TrackedShipmentEventDetails: type: object properties: mobileTracking: $ref: '#/components/schemas/MobileTrackingEventDetails' ocean: $ref: '#/components/schemas/OceanEventDetails' qualityControl: $ref: '#/components/schemas/QualityControlEventDetails' rolloverDetails: $ref: '#/components/schemas/RolloverDetails' description: Optional extended details of an event. TrackedShipmentHistory: required: [] type: object properties: costs: type: array description: >- All costs incurred for this shipment and the assets contained within. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentCost' events: type: array description: >- All events that occurred for this shipment. Will always be in ascending order by the date the event occurred. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentEvent' exceptions: type: array description: ${ShipmentEventHistory.apiModel.exceptions.value} xml: wrapped: true items: $ref: '#/components/schemas/ShipmentException' positions: type: array description: >- Locations where this shipment has been recorded. Data may be down-sampled. Will always be in ascending order by the date that the shipment was at that position. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentPosition' shipment: $ref: '#/components/schemas/TrackedShipment' states: type: array description: >- All states that the shipment was or currently is in. Order is not guaranteed. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentState' sharingContext: $ref: '#/components/schemas/SharingContext' description: >- The history of everything that has occurred for the shipment during tracking. TrackedShipmentPosition: type: object properties: dateTime: type: string description: >- The timestamp denoting when the shipment was detected at the given coordinates. format: date-time latitude: maximum: 90 minimum: -90 type: number description: The geographic latitude, using the WGS84 coordinate system. format: float longitude: maximum: 180 minimum: -180 type: number description: The geographic longitude, using the WGS84 coordinate system. format: float receivedDateTime: type: string description: The date and time that project44 received this position data. format: date-time routeSegmentId: type: string description: >- The route segment on which the shipment was traveling when it was at this position. format: uuid description: >- The geographic coordinates where a shipment was located at a given point in time. This data may have been down-sampled. TrackedShipmentRouteSegment: description: Describes how a shipment moved between 2 stops. properties: emissions: $ref: '#/components/schemas/EmissionData' fromStopId: description: >- The starting stop of this route segment. Will always be populated on response. format: uuid type: string id: description: The id of this route segment. Will always be populated on response. format: uuid type: string identifiers: description: >- Identifiers that are not part of the overall shipment but are relevant to this route segment. items: $ref: '#/components/schemas/LogisticsIdentifier' type: array toStopId: description: >- The ending stop of this route segment. Will always be populated on response. format: uuid type: string transportationMode: description: >- The mode of transportation on which the shipment was traveling. Will always be populated on response. enum: - AIR - OCEAN - RAIL - UNKNOWN - TRUCKLOAD - PARCEL - LTL - BARGE type: string title: TrackedShipmentRouteSegment type: object TrackedShipmentState: type: object properties: endDateTime: type: string description: >- The time that this state ended. May not be populated if the shipment is still in this state. format: date-time routeSegmentId: type: string description: >- If relevant, this will be populated with the id of a route segment on which this state occurred. format: uuid startDateTime: type: string description: >- The time that this state began. May not be populated if the shipment is not yet in this state or if we do not have data for when this state began. format: date-time stopId: type: string description: >- If relevant, this will be populated with the id of the stop to which this state relates format: uuid type: type: string description: >- The specific type of state that the shipment was in. Will always be populated. enum: - UNKNOWN - AT_STOP - IN_TRANSIT_AIRCRAFT - IN_TRANSIT_VESSEL - IN_TRANSIT_RAIL - CUSTOMS_HOLD - IN_TRANSIT - COMPLETED - SCHEDULED - IDLE - ACTION_REQUIRED description: >- A state is some condition that the shipment was in between a start and end time. States are always started and ended by an event. TrackedShipmentStop: type: object properties: id: type: string description: The id of this stop. Will always be populated on response. format: uuid location: $ref: '#/components/schemas/TrackedShipmentStopLocation' type: type: string description: The type of stop. enum: - UNKNOWN - ORIGIN - DESTINATION - TRANSFER - OTHER - PORT_OF_LOADING - TRANSSHIPMENT_PORT - PORT_OF_DISCHARGE - PICKUP - DELIVERY - RETURN - WAREHOUSE - HUB - AIRPORT description: Information about a stop. TrackedShipmentStopLocation: required: [] type: object properties: address: $ref: '#/components/schemas/Address' coordinates: $ref: '#/components/schemas/GeoCoordinates' id: type: string description: The id of the location. format: uuid identifiers: type: array description: List of standard identifiers associated with this location. items: $ref: '#/components/schemas/TrackedShipmentStopLocationIdentifier' name: type: string description: The name of the location. timeZone: type: string description: >- TZ database identifier of the time zone at the stop (https://www.iana.org/time-zones) description: The location of the stop. xml: name: TrackedShipmentStopLocation TrackedShipmentStopLocationIdentifier: required: [] type: object properties: type: type: string description: The type of identifier and authority who assigns these identifiers. enum: - AIRPORT_IATA - AIRPORT_ICAO - EXTERNAL - LOCODE - NAME - PORT_UN_LOCODE - FACILITY_ID - RAIL_SPLC - RAIL_UIC - RAIL_EU_PLC - UNKNOWN value: type: string description: The value of the identifier. description: Standard identifier used to identify a location. TrackedShipmentWithEvents: required: [] type: object properties: attributes: maxItems: 25 minItems: 0 type: array description: >- An optional user-defined set of custom attributes to associate with this shipment. xml: wrapped: true items: $ref: '#/components/schemas/CustomAttribute' accessGroups: uniqueItems: true type: array description: >- This set is populated when a shipment is entitled to specific access groups, it denotes which group(s) are entitled visibility. xml: wrapped: true items: $ref: '#/components/schemas/AccessGroup' createdDateTime: type: string description: >- The date and time when this shipment was created. This value is read only and will be ignored during shipment creation. format: date-time costs: maxItems: 25 minItems: 0 type: array description: >- All costs incurred for this shipment and the assets contained within. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentCost' events: type: array description: All events that occurred for this shipment. xml: wrapped: true items: $ref: '#/components/schemas/TrackedShipmentEvent' id: type: string description: >- Master shipment id of the shipment. Will always be populated on the response. format: uuid identifiers: maxItems: 250 minItems: 0 type: array description: >- Used to identify a shipment.

Only the following identifier types are accepted when creating or updating a shipment: xml: wrapped: true items: $ref: '#/components/schemas/LogisticsIdentifier' lastModifiedDateTime: type: string description: >- The date and time when this shipment was last modified. This value is read only and will be ignored during shipment creation or modification. format: date-time plan: $ref: '#/components/schemas/ShipmentPlan' routeInfo: $ref: '#/components/schemas/ShipmentRouteInfo' relatedShipments: maxItems: 250 minItems: 0 type: array description: List of related shipments of the parent shipment. This is optional. xml: name: sub_shipments wrapped: true items: $ref: '#/components/schemas/SimpleTrackedShipment' shipmentShareLink: type: string description: Public link to view the shipment in the VOC. description: Shipment tracking model used to initiate a shipment. TrackingStatusEvent: required: [] type: object properties: dateTime: type: string format: date-time type: type: string enum: - TRACKING_INITIATE - TRACKING_START - TRACKING_END_BY_USER - TRACKING_END_DUE_TO_TIMEOUT - TRACKING_FAILED - TRACKING_COMPLETE - TRACKING_STOP - DRIVER_DENY_TRACKING - UNKNOWN_EQUIPMENT_IDENTIFIER - MISSING_EQUIPMENT_IDENTIFIER - REMOVE_FROM_BOOKING - SHARING_STOPPED - UNKNOWN TrailerType: enum: - FLATBED - REFRIGERATED - DRY_VAN - VAN_CURTAINS - MEGA - TANKER - LOWBOY - JUMBO - AUTO_CARRIER - TRAILER - VAN - STRETCH_TRAILER type: string description: An enumeration. TransitTimeQuote: description: A transit time quote response. properties: capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' carrierCode: description: >- SCAC of the carrier to which this rate quote applies. This is used to differentiate among rate quotes from capacity providers that support multiple SCACs. type: string deliveryDateTime: description: >- The delivery date and time, if provided. (format: yyyy-MM-dd'T'HH:mm:ss) format: date-time type: string errorMessages: description: >- System messages and messages from the capacity provider with severity 'ERROR'. No messages with severity 'INFO' or 'WARNING' will be returned here. items: $ref: '#/components/schemas/Message' type: array infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array transitDays: description: >- The number of service days to deliver the shipment being quoted after it is picked up. format: int32 type: integer title: TransitTimeQuote type: object TransitTimeQuoteApiConfiguration: description: Contains fields used to configure the transit time quote API. properties: fallBackToDefaultAccountGroup: description: >- 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') type: boolean timeout: description: >- Number of seconds to wait for a capacity provider to return a transit time quote. (default: '10') format: int32 type: integer title: TransitTimeQuoteApiConfiguration type: object TransitTimeQuoteCollection: description: >- Container for a list of transit time quotes returned by a transit time quote query. properties: transitTimeQuotes: description: List of transit time quotes from all capacity providers requested. items: $ref: '#/components/schemas/TransitTimeQuote' type: array title: TransitTimeQuoteCollection type: object TransitTimeQuoteQuery: description: A transit time quote request. properties: apiConfiguration: $ref: '#/components/schemas/TransitTimeQuoteApiConfiguration' capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' destinationAddress: $ref: '#/components/schemas/Address' originAddress: $ref: '#/components/schemas/Address' pickupDate: description: >- The pickup date in the timezone of the origin location of the shipment being quoted. (default: current date; format: yyyy-MM-dd) format: date type: string title: TransitTimeQuoteQuery type: object TransportationMode: enum: - OCEAN - AIR - RAIL - TRUCKLOAD - LTL - VOLUME_LTL type: string description: An enumeration. TruckloadAdditionalAppointmentWindow: description: A user defined appointment window to be used in lists. properties: appointmentStatus: description: >- 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. enum: - PENDING - REJECTED - BOOKED - CANCELLED - COMPLETED - PENDING_CARRIER - PENDING_INTERNAL - NONE_AVAILABLE type: string appointmentWindow: $ref: '#/components/schemas/ZonedDateTimeWindow' identifiers: description: >- A list of identifiers of the additional appointment windows to a shipment. items: $ref: '#/components/schemas/AdditionalAppointmentWindowIdentifier' type: array type: description: The type of appointment window. enum: - STRATEGIC - SLOT_BOOKING_PICKUP - SLOT_BOOKING_DELIVERY - SLOT_BOOKING_PICKUP_DELIVERY type: string title: TruckloadAdditionalAppointmentWindow type: object TruckloadAdditionalAppointmentWindowStatus: description: Calculated status for an additional appointment window of a given type properties: scanDateTime: description: >- The scan date and time used in the calculation of this additional appointment window status.( format: yyyy-MM-dd'T'HH:mm:ssZ) type: string statusCode: description: The status of the additional appointment window enum: - EARLY - ON_TIME - LATE type: string windowType: description: >- The type of additional appointment window to which this additional appointment window status belongs enum: - STRATEGIC - SLOT_BOOKING_PICKUP - SLOT_BOOKING_DELIVERY - SLOT_BOOKING_PICKUP_DELIVERY type: string title: TruckloadAdditionalAppointmentWindowStatus type: object TruckloadArrivalEstimate: properties: estimatedArrivalWindow: $ref: '#/components/schemas/OffsetDateTimeWindow' lastCalculatedDateTime: description: 'When this eta was last computed. (format: yyyy-MM-dd''T''HH:mm:ssZ)' type: string title: TruckloadArrivalEstimate type: object TruckloadAssetCollection: description: List of matching asset identifiers properties: infoMessages: description: List of messages associated with the results items: $ref: '#/components/schemas/Message' type: array paginationInfo: $ref: '#/components/schemas/PaginationInfo' results: description: List of resources contained on this page. items: $ref: '#/components/schemas/TruckloadEquipmentIdentifier' type: array title: TruckloadAssetCollection type: object TruckloadBookingResponseDetails: type: object properties: {} TruckloadCapacityProviderPushShipmentStop: properties: address: $ref: '#/components/schemas/Address' appointmentWindow: $ref: '#/components/schemas/ZonedDateTimeWindow' arrivalDateTime: format: date-time type: string carrierSuppliedEta: type: string contact: $ref: '#/components/schemas/Contact' departureDateTime: format: date-time type: string stopName: type: string stopNumber: format: int32 type: integer title: TruckloadCapacityProviderPushShipmentStop type: object TruckloadCapacityProviderPushStatusUpdate: properties: carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' customerId: type: string equipmentIdentifiers: items: $ref: '#/components/schemas/TruckloadEquipmentIdentifier' type: array eventStopNumber: format: int32 type: integer eventType: enum: - DELIVERED - CANCELLED - DEPARTED - ARRIVED - DISPATCHED - LOADING - UNLOADING - SCANNED_AT_STOP - POSITION - GATE_IN - GATE_OUT - ARRIVED_AT_TERMINAL - DEPARTED_TERMINAL type: string hoursOfServiceRemaining: format: int32 type: integer latestTemperature: type: number latestTemperatureUnit: enum: - F - C type: string latitude: type: number longitude: type: number shipmentIdentifiers: items: $ref: '#/components/schemas/TruckloadShipmentIdentifier' type: array shipmentStops: items: $ref: '#/components/schemas/TruckloadCapacityProviderPushShipmentStop' type: array utcTimestamp: format: date-time type: string title: TruckloadCapacityProviderPushStatusUpdate type: object TruckloadCapacityProviderTenderAcceptance: description: An object that a capacity provider pushes to accept a Truckload Tender. properties: capacityProviderOfferIdentifier: description: >- This field contains the identifier that should be used to select this capacity provider's offer for dispatching. type: string carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' equipmentIdentifiers: description: >- Carrier provided equipment identifiers that can be used to facilitate tracking. items: $ref: '#/components/schemas/TruckloadEquipmentIdentifier' type: array offerExpirationDateTime: description: >- The expiration date time of this capacity provider offer. A time zone offset must be provided. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string trackingShipmentIdentifiers: description: >- Carrier provided shipment identifiers that can be used to facilitate tracking. items: $ref: '#/components/schemas/TruckloadTenderTrackingShipmentIdentifier' type: array title: TruckloadCapacityProviderTenderAcceptance type: object TruckloadCapacityProviderTenderAcceptanceConfirmation: properties: infoMessages: description: >- System messages with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array tenderAcceptance: $ref: '#/components/schemas/TruckloadCapacityProviderTenderAcceptance' tenderIdentifier: description: The capacity provider's identifier for the tender being accepted. type: string title: TruckloadCapacityProviderTenderAcceptanceConfirmation type: object TruckloadCapacityProviderTenderDecline: description: >- An object that a capacity provider pushes in order to decline a specific Truckload Tender properties: capacityProviderDeclineIdentifier: description: >- The capacity provider's identifier that references their decision to decline this tender. type: string declineReason: description: >- A more detailed description of the capacity provider's reason for declining this tender. type: string declineReasonCode: description: The capacity provider's reason for declining this tender. enum: - DECLINED_CAPACITY_TYPE - DECLINED_CAPACITY_UNAVAILABLE - DECLINED_EQUIPMENT_TYPE - DECLINED_EQUIPMENT_UNAVAILABLE - DECLINED_LENGTH_OF_HAUL - DECLINED_PERMITS - DECLINED_WEIGHT type: string title: TruckloadCapacityProviderTenderDecline type: object TruckloadCapacityProviderTenderDeclineConfirmation: properties: infoMessages: description: >- System messages with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array tenderIdentifier: description: The capacity provider's identifier for the tender being declined. type: string title: TruckloadCapacityProviderTenderDeclineConfirmation type: object TruckloadCapacityProviderTenderError: description: >- An object that a capacity provider pushes in order to indicate a error with the Truckload Tender properties: capacityProviderErrorIdentifier: description: >- The capacity provider's identifier that references their error for this tender. type: string errorReason: description: >- A description of the capacity provider's reason for reporting an error with this tender. type: string title: TruckloadCapacityProviderTenderError type: object TruckloadCapacityProviderTenderErrorConfirmation: properties: infoMessages: description: >- System messages with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array tenderIdentifier: description: The capacity provider's identifier for the tender having an error. type: string title: TruckloadCapacityProviderTenderErrorConfirmation type: object TruckloadCapacityProviderTenderRateQuote: description: >- An object that represents a capacity provider's rate quote for a truckload tender. properties: capacityProviderOfferIdentifier: description: >- This field contains the identifier that should be used to select this capacity provider's offer for dispatching. type: string carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' currency: description: The currency used to express the capacity provider's quoted price. enum: - USD - CAD - MXN - EUR type: string equipmentIdentifiers: description: >- Carrier provided equipment identifiers that can be used to facilitate tracking. items: $ref: '#/components/schemas/TruckloadEquipmentIdentifier' type: array offerExpirationDateTime: description: >- The expiration date time of this capacity provider offer. A time zone offset must be provided. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500). type: string rateQuoteDetail: $ref: '#/components/schemas/TruckloadRateQuoteDetail' trackingShipmentIdentifiers: description: >- Carrier provided shipment identifiers that can be used to facilitate tracking. items: $ref: '#/components/schemas/TruckloadTenderTrackingShipmentIdentifier' type: array title: TruckloadCapacityProviderTenderRateQuote type: object TruckloadCapacityProviderTenderRateQuoteConfirmation: properties: infoMessages: description: >- System messages with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array rateQuote: $ref: '#/components/schemas/TruckloadCapacityProviderTenderRateQuote' tenderIdentifier: description: The capacity provider's identifier for the tender being quoted. type: string title: TruckloadCapacityProviderTenderRateQuoteConfirmation type: object TruckloadEquipmentIdentifier: properties: shouldDelete: description: >- Optional field indicating whether equipment identifier should be deleted. type: boolean type: description: The type of the equipment identifier. enum: - MOBILE_PHONE_NUMBER - VEHICLE_ID - LICENSE_PLATE - SENSITECH_DEVICE_ID - TIVE_DEVICE_ID type: string value: description: >- The value of the equipment identifier. Cell phone numbers will be obfuscated in project44 responses for privacy reasons. type: string title: TruckloadEquipmentIdentifier type: object TruckloadEquipmentIdentifierAssignment: properties: carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' customerAccountNumber: type: string equipmentIdentifiers: items: $ref: '#/components/schemas/TruckloadEquipmentIdentifier' type: array scheduledTruckChangeDateTime: type: string shipmentIdentifiers: items: $ref: '#/components/schemas/TruckloadShipmentIdentifier' type: array shouldDelete: type: boolean title: TruckloadEquipmentIdentifierAssignment type: object TruckloadEquipmentIdentifierChange: description: Contains a scheduled truck change. properties: timestamp: description: The moment when the equipment identifier change should happen type: string type: description: >- 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 enum: - MOBILE_PHONE_NUMBER - VEHICLE_ID - LICENSE_PLATE - SENSITECH_DEVICE_ID - EMERSON_DEVICE_ID - TIVE_DEVICE_ID - CONTAINER_ID type: string value: description: The value of the equipment identifier type: string title: TruckloadEquipmentIdentifierChange type: object TruckloadEquipmentValidationResult: description: Result of an equipment validation check properties: exists: description: >- True if asset exists in project44 platform. If equipment type is not MOBILE_PHONE_NUMBER and LICENSE_PLATE, capacity provider must be the owner of the equipment, otherwise false. type: boolean ownershipStatus: description: ${TruckloadEquipmentValidation.apiModel.ownershipStatus.value} enum: - CONNECTED - NOT_CONNECTED - INDETERMINATE - UNKNOWN type: string valid: description: >- True if the identifier may be used to initiate tracking, otherwise false. type: boolean title: TruckloadEquipmentValidationResult type: object TruckloadExternalArrivalEstimate: description: >- External arrival estimate object that contains the source and the actual date and time value. properties: dateTime: description: >- The date and time value of the external arrival estimate. (format: yyyy-MM-dd'T'HH:mm:ssZ) type: string source: description: The source of the external arrival estimate. enum: - SHIPPER - CARRIER - UNKNOWN type: string title: TruckloadExternalArrivalEstimate type: object TruckloadIntermediateStopsUpdate: description: Update the intermediate stops on a shipment. properties: carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' customerAccountNumber: type: string shipmentIdentifiers: items: $ref: '#/components/schemas/TruckloadShipmentIdentifier' type: array shipmentStops: items: $ref: '#/components/schemas/TruckloadShipmentIntermediateStop' type: array title: TruckloadIntermediateStopsUpdate type: object TruckLoadPreferenceType: enum: - FULL - PARTIAL type: string description: An enumeration. TruckloadRateQuoteDetail: properties: charges: description: >- A list of individual charges making up the total. Not all capacity providers provide charge breakdowns. items: $ref: '#/components/schemas/TruckloadVendorCharge' type: array subtotal: description: Subtotal prior to discounts. type: number total: description: The final total for this quote. type: number title: TruckloadRateQuoteDetail type: object TruckloadShipment: properties: apiConfiguration: $ref: '#/components/schemas/TruckloadShipmentApiConfiguration' attributes: description: >- A list of up to 5 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 items: $ref: '#/components/schemas/ShipmentAttribute' type: array capacityProviderAccountGroup: $ref: '#/components/schemas/CapacityProviderAccountGroup' carrierIdentifier: $ref: '#/components/schemas/CapacityProviderIdentifier' equipmentIdentifierChanges: description: >- A list of equipment identifier changes that should be applied to the shipment items: $ref: '#/components/schemas/TruckloadEquipmentIdentifierChange' type: array equipmentIdentifiers: description: >- 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. items: $ref: '#/components/schemas/TruckloadEquipmentIdentifier' type: array id: description: >- 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. format: int64 type: integer idleDuration: description: >- Computed value representing how long (in minutes) shipment is being Idle. This value is available while whole status history is being requested. format: int64 type: integer masterShipmentId: description: >- The project44-generated id for tracking an intermodal shipment. This id may be used in subsequent API calls to reference a shipment. format: uuid type: string pointsOfInterest: description: A user-defined list of all the point of interest for the shipment. items: $ref: '#/components/schemas/TruckloadShipmentPointOfInterest' type: array sensors: description: A list of sensors to track. items: $ref: '#/components/schemas/TruckloadShipmentSensor' type: array shipmentDetails: $ref: '#/components/schemas/TruckloadTrackingShipmentDetails' shipmentIdentifiers: description: >- 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. items: $ref: '#/components/schemas/TruckloadShipmentIdentifier' type: array shipmentLegId: description: >- The project44-generated id for the truckload shipment. This id may be used in subsequent API calls to reference a shipment. format: uuid type: string shipmentStops: description: >- 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). items: $ref: '#/components/schemas/TruckloadShipmentStop' type: array shippingDetails: $ref: '#/components/schemas/TruckloadShippingDetails' trackingDetails: description: >- 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. items: $ref: '#/components/schemas/TruckloadTrackingMethodDetails' type: array title: TruckloadShipment type: object TruckloadShipmentAction: properties: code: description: The code for the action to be taken on the shipment. enum: - CANCEL type: string title: TruckloadShipmentAction type: object TruckloadShipmentActionConfirmation: properties: infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array title: TruckloadShipmentActionConfirmation type: object TruckloadShipmentApiConfiguration: description: Contains fields used to configure the truckload shipment API. properties: enableIntelligentMatching: description: >- 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') type: boolean fallBackToDefaultAccountGroup: description: >- 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') type: boolean webhookEndpointConfigName: description: A unique name used to identify the Webhook Endpoint. type: string title: TruckloadShipmentApiConfiguration type: object TruckloadShipmentConfirmation: properties: infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array shipment: $ref: '#/components/schemas/TruckloadShipment' title: TruckloadShipmentConfirmation type: object TruckloadShipmentHazmatDetails: description: >- Contains fields that describe what hazardous materials the shipment contains, if any. properties: hazardClasses: description: >- User-defined list of hazardous materials, if any that are included in the shipment. items: type: string type: array title: TruckloadShipmentHazmatDetails type: object TruckloadShipmentIdentifier: properties: type: description: The type of the shipment identifier. enum: - BILL_OF_LADING - ORDER type: string value: description: The value of the shipment identifier. type: string title: TruckloadShipmentIdentifier type: object TruckloadShipmentIntermediateStop: properties: appointmentWindow: $ref: '#/components/schemas/ZonedDateTimeWindow' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' location: $ref: '#/components/schemas/Location' stopName: description: >- 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. type: string title: TruckloadShipmentIntermediateStop type: object TruckloadShipmentLineItem: description: Contains fields that describe a TruckloadShipment LineItem. properties: commodityCode: description: >- This code dictates the duty rating, as well as alerts you to any import or export restrictions. type: string contact: $ref: '#/components/schemas/Contact' deliveryStopNumber: description: A reference to the stop number where this item will be delivered. format: int32 type: integer description: description: Shipper's description for this item. type: string freightClass: description: The freight class for this item. enum: - '50' - '55' - '60' - '65' - '70' - '77.5' - '85' - '92.5' - '100' - '110' - '125' - '150' - '175' - '200' - '250' - '300' - '400' - '500' type: string handlingUnitPackageType: description: The packaging used to handle the lineItem during transport. enum: - PLT - BALE - BOX - BUNDLE - CASE - CRATE - DRUM - REEL - ROLL - SKID - CONTAINER type: string handlingUnitQuantity: description: >- Quantify of handling units (Cases, pallets, etc) that constitute the lineItem. format: int32 type: integer involvedParties: description: >- 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. items: $ref: '#/components/schemas/Party' type: array itemIdentifiers: description: Useful identifiers that can be attached to this item. items: $ref: '#/components/schemas/LineItemIdentifier' type: array itemPackageType: description: The type of packaging used for the items inside the handling unit. enum: - BAG - BALE - BOX - BUCKET - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - DRUM - PAIL - PLT - PIECES - REEL - ROLL - SKID - TOTE - TUBE type: string itemQuantity: description: The number of items inside the handling unit. format: int32 type: integer monetaryValue: $ref: '#/components/schemas/MonetaryValue' pickupStopNumber: description: A reference to the stop number where this item will be picked up. format: int32 type: integer subLineItems: description: The sub-line items for this item. items: $ref: '#/components/schemas/TruckloadShipmentSubLineItem' type: array totalWeight: $ref: '#/components/schemas/Weight' title: TruckloadShipmentLineItem type: object TruckloadShipmentNotificationRule: description: >- Contains fields describing properties of rule that triggered a push notification properties: ruleInfo: description: |- Rule information per rule type: DEPRECATED_SHIPMENT_LATE : [( minutesLate : Long ), ( stopNumber : Long ), ( stopType : String )] DEPRECATED_SHIPMENT_NEAR_ARRIVAL : [( minutesUntilArrival : Long ), ( stopNumber : Long ), ( stopType : String )] DEPRECATED_SHIPMENT_DEPARTED : [( stopNumber : Long ), ( stopType : String )] ALL_UPDATES : [] SHIPMENT_LATE : [( minutesLate : Long ), ( stopNumber : Long ), ( stopType : String )] SHIPMENT_NEAR_ARRIVAL : [( minutesUntilArrival : Long ), ( stopNumber : Long ), ( stopType : String )] SHIPMENT_DEPARTED : [( stopNumber : Long ), ( stopType : String )] SHIPMENT_TRACKING_APPROVAL_DENIED : [] SHIPMENT_DWELLING : [( minutesDwelling : Long ), ( stopNumber : Long ), ( stopType : String )] SHIPMENT_IDLE_IN_TRANSIT : [( minutesIdle : Long ), ( stopNumber : Long ), ( stopType : String )] TEMPERATURE_OUT_OF_RANGE : [( minutesTemperatureOutOfRange : Long )] TRACKING_APPROVAL_PENDING : [( minutesBeforeAppointmentWindow : Long )] properties: {} type: object ruleType: description: The rule type that triggered a push notification. enum: - DEPRECATED_SHIPMENT_LATE - DEPRECATED_SHIPMENT_NEAR_ARRIVAL - DEPRECATED_SHIPMENT_DEPARTED - ALL_UPDATES - SHIPMENT_LATE - SHIPMENT_NEAR_ARRIVAL - SHIPMENT_DEPARTED - SHIPMENT_TRACKING_APPROVAL_DENIED - SHIPMENT_DWELLING - SHIPMENT_IDLE_IN_TRANSIT - TEMPERATURE_OUT_OF_RANGE - TRACKING_APPROVAL_PENDING type: string title: TruckloadShipmentNotificationRule type: object TruckloadShipmentPointOfInterest: properties: geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' location: $ref: '#/components/schemas/Location' locationIdentifiers: description: >- The identifiers associated with the user-defined point of interest location, to be used with the Stop Location API. items: $ref: '#/components/schemas/LocationIdentifier' type: array pointOfInterestDescription: description: >- The optionally user-defined description of this point of interest. This is a freeform field. type: string pointOfInterestId: description: The user-defined id that uniquely identifies point of interest. type: string pointOfInterestName: description: >- 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. type: string pointOfInterestType: description: >- The type of point of interest indicating whether this is a general point of interest or point of interest for truck change. enum: - GENERAL - TRUCK_CHANGE type: string shouldDelete: description: The optionally field to mark point of interest for deletion. type: boolean title: TruckloadShipmentPointOfInterest type: object TruckloadShipmentPointOfInterestRecordedEntry: properties: entryDateTime: description: UTC time for entry event for that point of interest. type: string exitDateTime: description: UTC time for exit event for that point of interest. type: string title: TruckloadShipmentPointOfInterestRecordedEntry type: object TruckloadShipmentPointOfInterestStatus: properties: pointOfInterestId: description: The user-defined id that uniquely identifies point of interest. type: string recordedEntries: description: The ordered list of all paired entries and exits events. items: $ref: '#/components/schemas/TruckloadShipmentPointOfInterestRecordedEntry' type: array totalDwellTime: description: Total dwell time of truck inside of point of interest. format: int64 type: integer title: TruckloadShipmentPointOfInterestStatus type: object TruckloadShipmentSensor: properties: identifier: $ref: '#/components/schemas/TruckloadShipmentSensorIdentifier' max: description: The max value for triggering over max status. format: double type: number min: description: The min value for triggering under min status. format: double type: number target: description: The target value. format: double type: number title: TruckloadShipmentSensor type: object TruckloadShipmentSensorHistory: properties: readings: description: The sensor's readings items: $ref: '#/components/schemas/TruckloadShipmentSensorReading' type: array sensor: $ref: '#/components/schemas/TruckloadShipmentSensor' title: TruckloadShipmentSensorHistory type: object TruckloadShipmentSensorIdentifier: properties: type: description: The type of the sensor identifier. enum: - TEMPERATURE type: string value: description: The value of the sensor identifier. type: string title: TruckloadShipmentSensorIdentifier type: object TruckloadShipmentSensorReading: properties: utcTimestamp: description: The UTC timestamp of the sensor reading. format: date-time type: string value: description: The value at the time of the sensor reading. format: double type: number title: TruckloadShipmentSensorReading type: object TruckloadShipmentStatus: properties: infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. items: $ref: '#/components/schemas/Message' type: array latestStatusUpdate: $ref: '#/components/schemas/TruckloadShipmentStatusUpdate' latestStopStatuses: description: >- The most up-to-date statuses of the vehicle in relation to each stop. One and only one status will always be returned for each stop. If the shipment does not have status 'COMPLETED' or 'DISPATCHED', this list will always contain one and only one stop status with a code of either 'EN_ROUTE' or 'ARRIVED'. items: $ref: '#/components/schemas/TruckloadShipmentStopStatus' type: array mapUrl: description: Publicly accessible URL to the shipment details page. type: string notificationRule: $ref: '#/components/schemas/TruckloadShipmentNotificationRule' pointOfInterestStatus: description: >- A list of status and their identifiers related to the point of interest. items: $ref: '#/components/schemas/TruckloadShipmentPointOfInterestStatus' type: array sensorHistories: description: If requested, all available shipment sensor histories. items: $ref: '#/components/schemas/TruckloadShipmentSensorHistory' type: array shipment: $ref: '#/components/schemas/TruckloadShipment' statusUpdates: description: If requested, all available shipment status updates. items: $ref: '#/components/schemas/TruckloadShipmentStatusUpdate' type: array title: TruckloadShipmentStatus type: object TruckloadShipmentStatusReason: properties: code: description: >- The reason code for the status of the status update. A status of 'DISPATCHED' will have one of the following reason codes: 'PENDING_TRACKING_METHOD', 'SCHEDULED', 'PENDING_APPROVAL', 'PENDING_CARRIER' or 'ACQUIRING_LOCATION'. A status of 'IN_TRANSIT' will have one of the following reason codes: 'IN_MOTION' or 'IDLE'. A status of 'AT_STOP' will not have a reason. A status of 'COMPLETED' will have one of the following reason codes: 'APPROVAL_DENIED', 'TIMED_OUT', 'CANCELED', or 'DEPARTED_FINAL_STOP'. enum: - PENDING_TRACKING_METHOD - SCHEDULED - PENDING_APPROVAL - ACQUIRING_LOCATION - PENDING_CARRIER - IN_MOTION - IDLE - APPROVAL_DENIED - TIMED_OUT - CANCELED - DEPARTED_FINAL_STOP - ARRIVED_FINAL_STOP - FAILED_TO_ACQUIRE_LOCATION - INFO type: string description: description: A description of the reason for the status of the status update. type: string title: TruckloadShipmentStatusReason type: object TruckloadShipmentStatusUpdate: properties: address: $ref: '#/components/schemas/Address' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' statusCode: description: >- The status code for this status update. This field will always be populated. enum: - DISPATCHED - IN_TRANSIT - AT_STOP - COMPLETED - TRACKING_FAILED - INFO - DELETED type: string statusReason: $ref: '#/components/schemas/TruckloadShipmentStatusReason' stopNumber: description: >- The stop number to which this status update corresponds, if any. For example, a status update with status code 'AT_STOP' will always have this field populated with the stop number the vehicle is at. format: int32 type: integer timestamp: description: >- The timestamp of this status update in the time zone of the location. If this status update has no location, this timestamp will be in UTC. A time zone offset will always be provided. This field will always be populated (format: yyyy-MM-dd'T'HH:mm:ssZ). type: string title: TruckloadShipmentStatusUpdate type: object TruckloadShipmentStop: properties: additionalAppointmentWindows: description: >- 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. items: $ref: '#/components/schemas/TruckloadAdditionalAppointmentWindow' type: array appointmentWindow: $ref: '#/components/schemas/ZonedDateTimeWindow' externalArrivalEstimate: $ref: '#/components/schemas/TruckloadExternalArrivalEstimate' geoCoordinates: $ref: '#/components/schemas/GeoCoordinates' involvedParties: description: >- 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. items: $ref: '#/components/schemas/Party' type: array location: $ref: '#/components/schemas/Location' locationIdentifiers: description: >- The identifiers associated with the user-defined stop location, to be used with the Stop Location API. items: $ref: '#/components/schemas/LocationIdentifier' type: array stopDescription: description: Description related to the stop. type: string stopName: description: >- 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. type: string stopNumber: description: >- 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. format: int32 type: integer stopType: description: >- The type of stop indicating whether this stop is a pickup location, destination location, or both. enum: - PICKUP - DELIVERY - DELIVERY_PICKUP type: string uuid: description: >- 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. format: uuid type: string title: TruckloadShipmentStop type: object TruckloadShipmentStopStatus: properties: additionalAppointmentWindowStatuses: description: >- A calculated list of additional appointment windows statuses for each additional appointment window of a given type at this stop. Valid status code values are EARLY, ON_TIME and LATE. items: $ref: '#/components/schemas/TruckloadAdditionalAppointmentWindowStatus' type: array arrivalCode: description: >- The approximate arrival status of the vehicle at the stop, as recorded. The arrival status is relative to the user-defined appointment window for the stop. enum: - UNKNOWN - EARLY - ON_TIME - LATE type: string arrivalDateTime: description: >- The recorded arrival time of the vehicle at this stop, if available. This time will always be in the time zone of the stop, and a time zone offset will always be provided (format: yyyy-MM-dd'T'HH:mm:ssZ). type: string arrivalEstimate: $ref: '#/components/schemas/TruckloadArrivalEstimate' departureDateTime: description: >- The recorded departure time of the vehicle from this stop, if available. This time will always be in the time zone of the stop, and a time zone offset will always be provided (format: yyyy-MM-dd'T'HH:mm:ssZ). type: string statusCode: description: >- The status of the vehicle relative to this stop -- whether it is presumed to be currently en route to the stop or whether it has been recorded as having arrived or departed the stop. enum: - UNKNOWN - EN_ROUTE - ARRIVED - DEPARTED type: string stopNumber: description: The number of the shipment stop to which this status pertains. format: int32 type: integer title: TruckloadShipmentStopStatus type: object TruckloadShipmentSubLineItem: description: Contains fields that describe a TruckloadShipment SubLineItem. properties: commodityCode: description: >- This code dictates the duty rating, as well as alerts you to any import or export restrictions. type: string contact: $ref: '#/components/schemas/Contact' description: description: Shipper's description for this item. type: string freightClass: description: The freight class for this item. enum: - '50' - '55' - '60' - '65' - '70' - '77.5' - '85' - '92.5' - '100' - '110' - '125' - '150' - '175' - '200' - '250' - '300' - '400' - '500' type: string involvedParties: description: >- 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. items: $ref: '#/components/schemas/Party' type: array itemIdentifiers: description: Useful identifiers that can be attached to this item. items: $ref: '#/components/schemas/LineItemIdentifier' type: array itemPackageType: description: The type of packaging used for the items inside the handling unit. enum: - BAG - BALE - BOX - BUCKET - BUNDLE - CAN - CARTON - CASE - COIL - CRATE - CYLINDER - DRUM - PAIL - PLT - PIECES - REEL - ROLL - SKID - TOTE - TUBE type: string itemQuantity: description: The number of items inside the handling unit. format: int32 type: integer monetaryValue: $ref: '#/components/schemas/MonetaryValue' totalWeight: $ref: '#/components/schemas/Weight' title: TruckloadShipmentSubLineItem type: object TruckloadShipmentTrackingMethod: properties: capacityProviderAccount: $ref: '#/components/schemas/CapacityProviderAccount' equipmentIdentifier: $ref: '#/components/schemas/TruckloadEquipmentIdentifier' infoMessages: description: >- System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here. These will provide more details about the shipment identifier and/or equipment identifier to provide. items: $ref: '#/components/schemas/Message' type: array shipmentIdentifier: $ref: '#/components/schemas/TruckloadShipmentIdentifier' title: TruckloadShipmentTrackingMethod type: object TruckloadShipmentTrackingMethods: properties: trackingMethods: description: >- An ordered list of tracking methods that can be used to track a shipment, with the most robust method available listed first. When creating a shipment, provide as many shipment identifiers and equipment identifiers as possible that match the ones in the tracking methods in this list, preferring ones first in the list over others. Each tracking method will contain either a shipment identifier or an equipment identifier, or both. items: $ref: '#/components/schemas/TruckloadShipmentTrackingMethod' type: array title: TruckloadShipmentTrackingMethods type: object TruckloadShipmentTruckDetails: description: Contains fields describing properties of the truck. properties: truckDimensions: $ref: '#/components/schemas/TruckloadShipmentTruckDimensions' truckType: description: The type of truck being requested. enum: - 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 type: string weight: description: >- Indicates the weight of the truck where excessive weight may require the driver to choose alternative routes. format: int32 type: integer weightUnitOfMeasure: description: 'Weight measurement units (default: ''LB'').' enum: - LB - KG type: string title: TruckloadShipmentTruckDetails type: object TruckloadShipmentTruckDimensions: description: Contains fields describing the size of the truck. properties: height: description: >- Indicates the height of the truck where excessive lengths may require the driver to choose alternative routes. type: number length: description: >- Indicates the length of the truck where excessive lengths may require the driver to choose alternative routes. type: number unitOfMeasure: description: 'Length measurement units (default: ''FT'').' enum: - IN - CM - FT - M type: string width: description: >- Indicates the width of the truck where excessive lengths may require the driver to choose alternative routes. type: number title: TruckloadShipmentTruckDimensions type: object TruckloadShippingDetails: description: >- Contains fields which influence the way project44 calculates arrival estimates for stops. properties: hazmatDetails: $ref: '#/components/schemas/TruckloadShipmentHazmatDetails' multipleDrivers: description: >- 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. type: boolean truckDetails: $ref: '#/components/schemas/TruckloadShipmentTruckDetails' title: TruckloadShippingDetails type: object TruckloadTenderTrackingShipmentIdentifier: properties: type: description: The type of this tendered shipment identifier. enum: - BILL_OF_LADING - ORDER - TRACKING_IDENTIFIER type: string value: description: The value for this tendered shipment identifier. type: string title: TruckloadTenderTrackingShipmentIdentifier type: object TruckloadTrackingMethodDetails: description: >- 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. properties: equipmentIdentifier: $ref: '#/components/schemas/TruckloadEquipmentIdentifier' equipmentIdentifierSource: description: Source of the equipment identifier assigned to the shipment. enum: - CUSTOMER - CARRIER - AUTOMATIC type: string trackingType: description: Type of the tracking data source. enum: - MOBILE_PHONE - TELEMATICS - API type: string title: TruckloadTrackingMethodDetails type: object TruckloadTrackingShipmentDetails: description: Contains fields which pertain to the shipment contents. properties: lineItems: description: Line Items for this shipment. items: $ref: '#/components/schemas/TruckloadShipmentLineItem' type: array title: TruckloadTrackingShipmentDetails type: object TruckloadVendorCharge: properties: amount: description: >- The requested or actual amount charged by the capacity provider (adds into the total). This amount may be negative. type: number description: description: The description of this charge, if provided. type: string vendorCode: description: >- The code for this charge, as defined in the capacity provider's metadata. enum: - LH - FSC type: string title: TruckloadVendorCharge type: object TypeWrapper: required: [] type: object properties: operator: allOf: - $ref: '#/components/schemas/Operator' default: EQUALS values: type: array items: $ref: '#/components/schemas/DocumentType' description: The list of document type to be search for UnifiedWebhookInterface: type: object properties: createdDateTime: type: string description: The time when project44 created the event. format: date-time dataType: type: string description: Data type of the payload eventId: type: string description: Unique identifier for the event eventType: type: string description: Describes the type of the event description: Unified interface for webhook UpdateBookedShipment: required: [] type: object properties: attributes: maxItems: 5 type: array items: $ref: '#/components/schemas/CustomAttribute' description: >- An optional user-defined set of custom attributes to associate with this shipment. These are descriptors and identifiers which apply to the entire shipment and they are not shared with any carriers. bookings: type: array items: $ref: '#/components/schemas/CreateUpdateBookingWithId' description: A list of all bookings related to the shipment. identifiers: maxItems: 20 type: array items: $ref: '#/components/schemas/LogisticsIdentifier' name: type: string description: >- The descriptive name or otherwise human-readable description of the shipment created; this is not visible to the carrier. notes: maxLength: 300 type: string description: >- An optional, shipper-provided free-text space for notes on the shipment. routeInfo: $ref: '#/components/schemas/RouteInfo' description: >- The overall shipper's construct of the material good(s) to be transported by the carrier. VehicleInfo: description: Describes vehicle information used to compute emissions. properties: type: $ref: '#/components/schemas/VehicleType' weight: $ref: '#/components/schemas/WeightMeasurement' title: VehicleInfo type: object VehicleShipmentIdentifier: required: [] type: object properties: type: type: string enum: - VEHICLE_ID - VESSEL_IMO - VESSEL_NAME - FLIGHT_NUMBER - DRIVER_MOBILE_PHONE_NUMBER - VESSEL_MMSI - VESSEL_CALL_SIGN - LICENSE_PLATE - TRAIN_NUMBER - WAGON_ID - UNKNOWN value: type: string VehicleType: properties: enumValue: enum: - UNKNOWN - AIR_FREIGHTER - AIR_BELLY_FREIGHT - AIR_UNKNOWN - INLAND_WATERWAY_MOTOR_VESSEL_LT_650T - INLAND_WATERWAY_MOTOR_VESSEL_650T_TO_1000T - INLAND_WATERWAY_MOTOR_VESSEL_1000T_TO_2000T - INLAND_WATERWAY_MOTOR_VESSEL_2000T_TO_3000T - INLAND_WATERWAY_COUPLED_CONVOY - INLAND_WATERWAY_PUSHED_CONVOY_2_TO_3_BARGES - INLAND_WATERWAY_PUSHED_CONVOY_4_TO_5_BARGES - INLAND_WATERWAY_PUSHED_CONVOY_6_BARGES - INLAND_WATERWAY_TANKER_VESSELS - INLAND_WATERWAY_CONTAINER_VESSELS_110M - INLAND_WATERWAY_CONTAINER_VESSELS_135M - INLAND_WATERWAY_CONTAINER_VESSELS_COUPLED_CONVOY - RAIL_AVERAGE_MIXED - RAIL_CONTAINER - RAIL_CARS - RAIL_CHEMICALS - RAIL_COAL_STEEL - RAIL_BUILDING_MATERIALS - RAIL_MANUFACTURED_PRODUCTS - RAIL_CEREALS - RAIL_TRUCK_AND_TRAILER - RAIL_TRAILER_ONLY - ROAD_NA_VAN - ROAD_NA_GENERAL - ROAD_NA_AUTO_CARRIER - ROAD_NA_DRAY - ROAD_NA_EXPEDITED - ROAD_NA_FLATBED - ROAD_NA_HEAVY_BULK - ROAD_NA_LTL_DRY_VAN - ROAD_NA_MIXED - ROAD_NA_MOVING - ROAD_NA_PACKAGE - ROAD_NA_REFRIGERATED - ROAD_NA_SPECIALIZED - ROAD_NA_TANKER - ROAD_NA_TL_DRY_VAN - ROAD_GLOBAL_VAN_LT_3500KG - ROAD_GLOBAL_RIGID_TRUCK_3500KG_TO_7500KG - ROAD_GLOBAL_RIGID_TRUCK_7500KG_TO_12T_GVW - ROAD_GLOBAL_RIGID_TRUCK_12T_20T_GVW - ROAD_GLOBAL_RIGID_TRUCK_20T_TO_26T_GVW - ROAD_GLOBAL_RIGID_TRUCK_26T_TO_32T_GVW - ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_34T_GVW - ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_40T_GVW - ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_40T_GVW_SI_ENGINE - ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_40T_GVW_HPDI - ROAD_GLOBAL_ARTIC_TRUCK_40T_GVW_LIGHTWEIGHT_TRAILER - ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_44T_GVW - ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_60T_GVW - ROAD_GLOBAL_ARTIC_TRUCK_UP_TO_72T_GVW - OCEAN_BULK_CARRIER_0_TO_9999_DWT - OCEAN_BULK_CARRIER_10000_TO_34999_DWT - OCEAN_BULK_CARRIER_35000_TO_59999_DWT - OCEAN_BULK_CARRIER_60000_TO_99999_DWT - OCEAN_BULK_CARRIER_100000_TO_199999_DWT - OCEAN_BULK_CARRIER_200000_AND_UP_DWT - OCEAN_CHEMICAL_TANKER_0_TO_4999_DWT - OCEAN_CHEMICAL_TANKER_5000_TO_9999_DWT - OCEAN_CHEMICAL_TANKER_10000_TO_19999_DWT - OCEAN_CHEMICAL_TANKER_20000_TO_39999_DWT - OCEAN_CHEMICAL_TANKER_40000_AND_UP_DWT - OCEAN_GENERAL_CARGO_0_TO_4999_DWT - OCEAN_GENERAL_CARGO_5000_TO_9999_DWT - OCEAN_GENERAL_CARGO_10000_TO_19999_DWT - OCEAN_GENERAL_CARGO_20000_AND_UP_DWT - OCEAN_LNG_TANKER_0_TO_49999_CBM - OCEAN_LNG_TANKER_50000_TO_99999_CBM - OCEAN_LNG_TANKER_100000_TO_199999_CBM - OCEAN_LNG_TANKER_200000_AND_UP_CBM - OCEAN_OIL_TANKER_0_TO_4999_DWT - OCEAN_OIL_TANKER_5000_TO_9999_DWT - OCEAN_OIL_TANKER_10000_TO_19999_DWT - OCEAN_OIL_TANKER_20000_TO_59999_DWT - OCEAN_OIL_TANKER_60000_TO_79999_DWT - OCEAN_OIL_TANKER_80000_TO_119999_DWT - OCEAN_OIL_TANKER_120000_TO_199999_DWT - OCEAN_OIL_TANKER_200000_AND_UP_DWT - OCEAN_OTHER_LIQUIDS_TANKER_0_TO_999_DWT - OCEAN_OTHER_LIQUIDS_TANKER_1000_AND_UP_DWT - OCEAN_FERRY_ROPAX_0_TO_1999_GT - OCEAN_FERRY_ROPAX_2000_TO_4999_GT - OCEAN_FERRY_ROPAX_5000_TO_9999_GT - OCEAN_FERRY_ROPAX_10000_TO_19999_GT - OCEAN_FERRY_ROPAX_20000_AND_UP_GT - OCEAN_REFRIGERATED_BULK_0_TO_1999_DWT - OCEAN_REFRIGERATED_BULK_2000_TO_5999_DWT - OCEAN_REFRIGERATED_BULK_6000_TO_9999_DWT - OCEAN_REFRIGERATED_BULK_10000_AND_UP_DWT - OCEAN_CONTAINER_AVERAGE type: string title: VehicleType type: object VesselSchedule: properties: date: description: The first date in this timespan, in ISO-8601 format type: string vesselsApproaching: description: >- Number of vessels having the port as their destination on the given day. format: int32 type: integer title: VesselSchedule type: object Volume: required: [] type: object properties: unit: allOf: - $ref: '#/components/schemas/VolumeUnit' description: The unit of measurement for this volume. value: minimum: 0 type: number description: The numeric decimal value of this volume. VolumeUnit: enum: - CUBIC_FT - CUBIC_M type: string description: An enumeration. WebhookAuthenticationMethod: properties: parameters: description: >- The webhookAuthenticationMethod parameters. The fields of a 'parameters' object vary for each authentication method. All fields are strings unless noted otherwise.

properties: {} type: object type: description: >- The webhookAuthenticationMethod type. BASIC, API_KEY and OAUTH2 are supported. enum: - API_KEY - BASIC - OAUTH2 - MTLS - AD_OAUTH2_CERT type: string type: object WebhookEndpoint: properties: authParams: description: >- (Deprecated) The webhookAuthenticationMethod parameters. The subordinate fields for the 'authParams' field depend on the authType. This field is functional but is deprecated - authentication for new webhooks should be supplied in the 'authenticationMethods' field. properties: {} type: object authType: description: >- (Deprecated) The webhookAuthenticationMethod type. BASIC, API_KEY and OAUTH2 are supported. This field is functional but is deprecated - authentication for new webhooks should be supplied in the 'authenticationMethods' field. enum: - API_KEY - BASIC - OAUTH2 - MTLS - AD_OAUTH2_CERT type: string authenticationMethods: description: >- A list of authentication methods. Each authentication method consists of 'type' and 'parameters' fields. Typically only one form of authentication is used, though it is possible to have two API keys or both an API key and OAuth2 authentication. items: $ref: '#/components/schemas/WebhookAuthenticationMethod' type: array configName: description: A unique name used to identify the push configuration. type: string id: description: >- A unique identifier of the push configuration. Assigned by the push configuration API service and used for updates only. format: int64 type: integer method: description: >- The HTTP method associated with the webhook endpoint. If not provided, will default to POST. enum: - GET - POST - PUT - PATCH type: string methodHeaders: additionalProperties: type: string description: A map of optional headers to pass to the webhook. type: object methodParams: description: >- A map of optional method parameters. If provided, these will appear as query parameters on the URL. properties: {} type: object payloadFormat: description: >- The format of the payload to send to the webhook. JSON is the only format supported. enum: - JSON type: string url: description: The URL of the webhook endpoint. type: string version: description: An optional version of the push configuration. format: int64 type: integer type: object WebhookEndpointCollection: properties: webhookEndpoints: description: A list of webhook endpoints. items: $ref: '#/components/schemas/WebhookEndpoint' type: array type: object Weight: properties: weight: description: The numeric decimal value of this weight. type: number weightUnit: description: The unit of measurement for this weight. enum: - LB - KG type: string title: Weight type: object WeightMeasurement: type: object properties: unit: $ref: '#/components/schemas/WeightUnit' value: type: number description: Numeric value of a measurement description: A measure of weight with a value and unit WeightPerDistanceMeasurement: type: object properties: unit: $ref: '#/components/schemas/WeightPerDistanceUnit' value: type: number description: Numeric value of a measurement description: A measure of weight per distance with a value and unit WeightPerDistanceUnit: type: string description: Weight per distance measurement units (linear density) format: enum enum: - KG_PER_KM WeightUnit: type: string description: 'Weight measurement units (default: ''LB'').' format: enum default: LB enum: - LB - KG WhiteGloveAccessorial: required: [] type: object properties: code: enum: - WHITE_GLOVE type: string details: allOf: - $ref: '#/components/schemas/SpecificationKind_bool_' description: Flag denoting requirement. additionalProperties: false description: Accessorial which flags the explicit need for white glove service. ZonedDateTimeWindow: description: >- A date and time range, including a time zone, representing a window of availability. properties: endDateTime: description: >- End date and time of this window in the applicable time zone. (format: yyyy-MM-dd'T'HH:mm:ss) format: date-time type: string localTimeZoneIdentifier: description: >- The time zone identifier (e.g., 'America/Chicago') for this date time window. type: string startDateTime: description: >- Start date and time of this window in the applicable time zone.(default: current date, format: yyyy-MM-dd'T'HH:mm:ss) format: date-time type: string title: ZonedDateTimeWindow type: object Page_InventoryOrder_: description: >- A paginated response containing results and information about the current page. properties: paginationInfo: $ref: '#/components/schemas/PaginationInfo' results: description: List of resources contained on this page. items: $ref: '#/components/schemas/InventoryOrder' type: array title: Page«InventoryOrder» type: object securitySchemes: basicAuth: scheme: basic type: http oAuth2: flows: clientCredentials: tokenUrl: /api/v4/oauth2/token scopes: {} type: oauth2 description: >- Allows generation of a token to access project44 APIs. The tokenUrl base URI may vary based on the tenant region (NA, EU, Sandbox) you are trying to access. paths: /api/v4/oauth2/client-applications: get: description: List all client applications registered in your project44 account. operationId: getApplications responses: '200': content: '*/*': schema: $ref: '#/components/schemas/ClientApplicationCollection' description: OK '400': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - basicAuth: [] summary: Get client applications. tags: - Manage Client Applications post: description: >- Register a new client application, in order to receive a client id and secret that can be used to authenticate with project44's OAuth 2.0 token generation endpoint. Generate tokens to access other project44 APIs. Note you must record the client secret returned here securely as it cannot be retrieved again. You can, however, generate a new client secret via the "new-secret" endpoint in case you forget it or need to rotate it.

Required Fields

operationId: createApplication requestBody: content: application/json: schema: $ref: '#/components/schemas/ClientApplication' description: clientApplication required: true responses: '201': content: '*/*': schema: $ref: '#/components/schemas/ClientApplication' description: Created '400': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - basicAuth: [] summary: Register client application. tags: - Manage Client Applications /api/v4/oauth2/client-applications/{id}: get: description: |- Get a specific client application by client id.

Required Fields

operationId: getApplication parameters: - description: >- The id of the client application, generated and assigned by project44 via the OAuth 2.0 client applications APIs. in: path name: id required: true schema: type: string responses: '200': content: '*/*': schema: $ref: '#/components/schemas/ClientApplication' description: OK '400': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - basicAuth: [] summary: Get client application. tags: - Manage Client Applications put: description: >- Update the name of an existing client application by id. The secret cannot be updated by the client. To generate a new secret, use the "new-secret" endpoint.

Required Fields

operationId: updateApplication parameters: - description: >- The id of the client application, generated and assigned by project44 via the OAuth 2.0 client applications APIs. in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ClientApplication' description: clientApplication required: true responses: '200': content: '*/*': schema: $ref: '#/components/schemas/ClientApplication' description: OK '400': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - basicAuth: [] summary: Update client application. tags: - Manage Client Applications delete: description: >- Delete an existing client application by id. Deleting an application invalidates its client credentials (id and secret) and deletes its associated project44 app user (with username "app-{client_id}@client-applications.project44.com").

Required Fields

operationId: deleteApplication parameters: - description: >- The id of the client application, generated and assigned by project44 via the OAuth 2.0 client applications APIs. in: path name: id required: true schema: type: string responses: '204': content: {} description: No Content '400': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - basicAuth: [] summary: Delete client application. tags: - Manage Client Applications /api/v4/oauth2/client-applications/{id}/new-secret: post: description: >- In case you have forgotten your application's client secret, or you wish to rotate it, generate a new one. Doing so invalidates the former client secret for the application, but does not invalidate any active access tokens you may have outstanding. Note you must record the client secret returned here securely as it cannot be retrieved again.

Required Fields

operationId: generateNewClientSecret parameters: - description: >- The id of the client application, generated and assigned by project44 via the OAuth 2.0 client applications APIs. in: path name: id required: true schema: type: string responses: '201': content: '*/*': schema: $ref: '#/components/schemas/ClientApplication' description: Created '400': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - basicAuth: [] summary: Generate a new client secret. tags: - Manage Client Applications /api/v4/oauth2/token: post: description: >- Authenticate with your client application's credentials (id and secret) to generate a new project44 access token. The resulting access token can be used as a bearer token to access your project44 account and data via project44's other APIs, while acting as that client application. You may authenticate your client application either by passing the id and secret via HTTP Basic Authentication (via the "Authorization" HTTP header) or via the client_id and client_secret fields in the POST request body with no "Authorization" header included. You may not use both approaches to authenticate the same request. The POST request body must contain the request fields as URL-encoded parameters (a URL-encoded form) and must have the "Content-Type" HTTP header set to "application/x-www-form-urlencoded". (Note: The endpoint "/api/v4/oauth/token" is deprecated. Please use this endpoint instead: "/api/v4/oauth2/token".)

Required Fields

operationId: grantTokenOAuth2 requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/grantTokenOAuth2_request' responses: '200': content: application/json: schema: $ref: '#/components/schemas/OAuthToken' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/OAuthError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/OAuthError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/OAuthError' description: User not authorized to perform this operation security: - basicAuth: [] summary: Grant access token. tags: - Generate Tokens /api/v4/shipments/{shipmentId}/positionhistory: get: tags: - Unified Shipment Tracking summary: Fetch the position history for a shipment. description: |-

Required Fields

operationId: getShipmentPositionHistory parameters: - name: shipmentId in: path required: true schema: type: string format: uuid - name: includeRouteInfo in: query required: false schema: type: boolean default: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ShipmentPositionHistory' '400': description: Missing or invalid user context headers. content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 400 httpMessage: Bad Request errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: e9ccaebe-57a7-4817-ae5d-c619ae32662b '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 404 httpMessage: Not Found errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: 496ec575-88e9-4b79-8473-8392c45ccefd security: - oAuth2: [] /api/v4/shipments/{shipmentId}/tracking: get: tags: - Unified Shipment Tracking summary: Fetch the shipment information including the stops and route segments. description: |-

Required Fields

operationId: gettrackedshipment parameters: - name: shipmentId in: path required: true schema: type: string format: uuid responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/TrackedShipment' '400': description: Missing or invalid user context headers. content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 400 httpMessage: Bad Request errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: 86c728e7-edf2-45dd-a4d5-06cc4cba4691 '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 404 httpMessage: Not Found errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: 80308ddf-327a-4585-ac7f-82693aa7231c security: - oAuth2: [] delete: tags: - Unified Shipment Tracking summary: Delete shipment route from project44 to stop tracking. description: >- Stop the shipment from tracking in project44 and delete record in the UI
Note: attempting to delete shipments that have been shared to you will result in a 404. operationId: deleteshipment parameters: - name: shipmentId in: path required: true schema: type: string format: uuid responses: '202': description: Accepted '400': description: Missing or invalid user context headers. content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 400 httpMessage: Bad Request errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: 302b461c-47bd-4bca-8e56-16a7cd80aa4d '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 404 httpMessage: Not Found errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: 5f6a33c9-09ec-40c5-a938-02b7e716ee9a security: - oAuth2: [] /api/v4/shipments/{shipmentId}/tracking/history: get: tags: - Unified Shipment Tracking summary: Get full tracking history for a shipment. description: |-

Required Fields

operationId: getshipmenttrackinghistory parameters: - name: shipmentId in: path required: true schema: type: string format: uuid responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/TrackedShipmentHistory' '400': description: Missing or invalid user context headers. content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 400 httpMessage: Bad Request errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: 5f924d26-32a3-41eb-b1f4-7840d300cb3d '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 404 httpMessage: Not Found errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: ad82b367-a97f-4ced-9051-2aaeff7433cb security: - oAuth2: [] /api/v4/shipments/tracking: post: tags: - Unified Shipment Tracking summary: >- Initialize a shipment for tracking, or append data to an existing shipment. description: >- If the shipment does not exist, this will create a new shipment. If the shipment is already being tracked (and the corresponding id field is provided), this operation is add only for the provided fields. Note: This operation only modifies data that the user has provided.

Important Notes:

Required Fields

operationId: postshipment requestBody: content: application/json: schema: $ref: '#/components/schemas/TrackedShipmentWithEvents' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/DescribeShipmentResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 400 httpMessage: Bad Request errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: 0f31032b-e26f-4690-ba8a-a08383b5863e '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 404 httpMessage: Not Found errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: 1ce73c0a-a7c3-40c9-b673-f762686d235b '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/ApiError' example: httpStatusCode: 409 httpMessage: Conflict errors: - severity: ERROR message: A description of the error that occurred. supportReferenceId: 3e0e4272-262d-4b1b-b0fd-678419d896c8 security: - oAuth2: [] /api/v4/tl/shipments: post: description: >- Use this POST call to start a tracking job, initializing Truckload Tracking. Note that If the shipment is initialized by using GeoCoordinates instead of an address, it may be possible that a street address will not be returned in the response.

Required Fields

operationId: createTruckloadShipment requestBody: content: application/json: schema: $ref: '#/components/schemas/TruckloadShipment' application/xml: schema: $ref: '#/components/schemas/TruckloadShipment' description: shipment required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/TruckloadShipmentConfirmation' application/xml: schema: $ref: '#/components/schemas/TruckloadShipmentConfirmation' description: Created '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: start tracking a truckload shipment tags: - FTL Modal Tracking put: description: >- Use this endpoint to update a truckload shipment with a given shipment identifier.

Example: You can update location fields or appointment windows to reflect changes with this endpoint.

Note that tracking information updates are currently not supported. This includes shipmentIdentifiers, capacityProviderAccountGroup, and apiConfiguration changes.* It is suggested to first get the current shipment object from the GET shipment endpoint, make the desired modifications, and then PUT the modified shipment to this endpoint. After the modified shipment is successfully submitted, the updated stops, attributes, shipping details etc. will be applied and used in tracking from then on. If a shipment PUT request comes in with only GeoCoordinates, it is possible that a street address will not be returned in the response.

Required Fields

operationId: updateTruckloadShipmentByShipmentIdentifier requestBody: content: application/json: schema: $ref: '#/components/schemas/TruckloadShipment' application/xml: schema: $ref: '#/components/schemas/TruckloadShipment' description: shipment required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/TruckloadShipmentConfirmation' application/xml: schema: $ref: '#/components/schemas/TruckloadShipmentConfirmation' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Update a truckload shipment by shipment identifier tags: - FTL Modal Tracking delete: description: >- Use this endpoint to delete an existing truckload shipment with a given shipment identifier.

Required Fields

operationId: deleteTruckloadShipmentByShipmentIdentifier parameters: - description: Capacity provider identifier type. in: query name: carrierIdentifier.type schema: enum: - SCAC - DOT_NUMBER - MC_NUMBER - P44_EU - SYSTEM - P44_GLOBAL - VAT type: string - description: Capacity provider identifier value. in: query name: carrierIdentifier.value schema: type: string - description: The type of the shipment identifier. in: query name: shipmentIdentifier.type schema: enum: - BILL_OF_LADING - ORDER type: string - description: The value of the shipment identifier. in: query name: shipmentIdentifier.value schema: type: string responses: '204': content: {} description: No Content '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Delete truckload shipment by shipment identifier tags: - FTL Modal Tracking /api/v4/tl/shipments/{id}: get: description: >- Use this endpoint to return a truckload shipment with a given unique system id.

Required Fields

operationId: getTruckloadShipment parameters: - description: The project44-generated id of the shipment being queried. in: path name: id required: true schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/TruckloadShipment' application/xml: schema: $ref: '#/components/schemas/TruckloadShipment' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Get Truckload shipment by unique system id tags: - FTL Modal Tracking put: description: >- Use this endpoint to update a truckload shipment.

Example: You can update location fields or appointment windows to reflect changes with this endpoint.

Note that tracking information updates are currently not supported. This includes shipmentIdentifiers, capacityProviderAccountGroup, and apiConfiguration changes.* It is suggested to first get the current shipment object from the GET shipment endpoint, make the desired modifications, and then PUT the modified shipment to this endpoint. After the modified shipment is successfully submitted, the updated stops, attributes, shipping details etc. will be applied and used in tracking from then on. If a shipment PUT request comes in with only GeoCoordinates, it is possible that a street address will not be returned in the response.

Required Fields

operationId: updateTruckloadShipment parameters: - description: The project44-generated id of the shipment being updated. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: schema: $ref: '#/components/schemas/TruckloadShipment' application/xml: schema: $ref: '#/components/schemas/TruckloadShipment' description: shipment required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/TruckloadShipmentConfirmation' application/xml: schema: $ref: '#/components/schemas/TruckloadShipmentConfirmation' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Update a truckload shipment tags: - FTL Modal Tracking delete: description: >- Use this endpoint to delete an existing truckload shipment with a given unique system id.

Required Fields

operationId: deleteTruckloadShipment parameters: - description: The project44-generated id of the shipment being deleted. in: path name: id required: true schema: format: int64 type: integer responses: '204': content: {} description: No Content '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Delete truckload shipment by unique system id tags: - FTL Modal Tracking /api/v4/tl/shipments/{id}/actions: post: description: >- Use this endpoint to create an action for an existing truckload shipment identified by a given unique system id.

Required Fields

operationId: createTruckloadShipmentAction parameters: - description: >- The project44-generated id of the shipment to which this action applies. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: schema: $ref: '#/components/schemas/TruckloadShipmentAction' application/xml: schema: $ref: '#/components/schemas/TruckloadShipmentAction' description: shipmentAction required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/TruckloadShipmentActionConfirmation' application/xml: schema: $ref: '#/components/schemas/TruckloadShipmentActionConfirmation' description: Created '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Create action for existing truckload shipment by unique system id tags: - FTL Modal Tracking /api/v4/tl/shipments/{id}/equipmentapprovals/requests: post: description: >- Use this endpoint to request an ad hoc equipment approval from a given tracking provider.Note that this is only supported for the app-less tracking method once every 24h.

Required Fields

operationId: requestTruckloadEquipmentApproval parameters: - description: The project44-generated id for the shipment. in: path name: id required: true schema: format: int64 type: integer responses: '204': content: {} description: No Content '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Request ad hoc equipment approval from the tracking provider tags: - FTL Modal Tracking /api/v4/tl/shipments/{id}/statuses: get: description: >- Use this endpoint to return the status of a truckload shipment with a given unique system id.

Required Fields

operationId: getTruckloadShipmentStatusById parameters: - description: The project44-generated id of the shipment being queried. in: path name: id required: true schema: format: int64 type: integer - allowEmptyValue: false description: >- Whether a publicly accessible URL to the shipment details page should be included in the response. in: query name: includeMapUrl schema: default: false type: boolean - allowEmptyValue: false description: >- Whether shipment sensor history ('sensorHistory') should be included in the response. in: query name: includeSensorHistory schema: default: false type: boolean - allowEmptyValue: false description: >- Whether shipment status history ('statusUpdates') should be included in the response. in: query name: includeStatusHistory schema: default: false type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/TruckloadShipmentStatus' application/xml: schema: $ref: '#/components/schemas/TruckloadShipmentStatus' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Get status of truckload shipment by unique system id tags: - FTL Modal Tracking /api/v4/tl/shipments/statuses: get: description: >- Use this endpoint to return a truckload shipment with a given shipment identifier.

Required Fields

operationId: getTruckloadShipmentStatus parameters: - description: Capacity provider identifier type. in: query name: carrierIdentifier.type schema: enum: - SCAC - DOT_NUMBER - MC_NUMBER - P44_EU - SYSTEM - P44_GLOBAL - VAT type: string - description: Capacity provider identifier value. in: query name: carrierIdentifier.value schema: type: string - allowEmptyValue: false description: >- Whether a publicly accessible URL to the shipment details page should be included in the response. in: query name: includeMapUrl schema: default: false type: boolean - allowEmptyValue: false description: >- Whether shipment sensor history ('sensorHistory') should be included in the response. in: query name: includeSensorHistory schema: default: false type: boolean - allowEmptyValue: false description: >- Whether shipment status history ('statusUpdates') should be included in the response. in: query name: includeStatusHistory schema: default: false type: boolean - description: The type of the shipment identifier. in: query name: shipmentIdentifier.type schema: enum: - BILL_OF_LADING - ORDER type: string - description: The value of the shipment identifier. in: query name: shipmentIdentifier.value schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/TruckloadShipmentStatus' application/xml: schema: $ref: '#/components/schemas/TruckloadShipmentStatus' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Get status of a truckload shipment by shipment identifier tags: - FTL Modal Tracking /api/v4/tl/shipments/trackingmethods: get: description: >- Use this endpoint to return available shipment tracking methods for a given carrier.

Required Fields

operationId: getTruckloadTrackingMethods parameters: - description: Capacity provider identifier type. in: query name: carrierIdentifier.type schema: enum: - SCAC - DOT_NUMBER - MC_NUMBER - P44_EU - SYSTEM - P44_GLOBAL - VAT type: string - description: Capacity provider identifier value. in: query name: carrierIdentifier.value schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/TruckloadShipmentTrackingMethods' application/xml: schema: $ref: '#/components/schemas/TruckloadShipmentTrackingMethods' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Get available shipment tracking methods for a carrier tags: - FTL Modal Tracking /api/v4/shipmentattributedefinitions: get: operationId: findShipmentAttributeDefinitions responses: '200': content: '*/*': schema: $ref: '#/components/schemas/ShipmentAttributeDefinitionCollection' description: OK '400': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Get all shipment attributes tags: - Shipment Attributes post: description: |- The name for an attribute. Must be unique.

Required Fields

operationId: createShipmentAttributeDefinition requestBody: content: application/json: schema: $ref: '#/components/schemas/ShipmentAttributeDefinition' description: attributeDefinition required: true responses: '200': content: '*/*': schema: $ref: '#/components/schemas/ShipmentAttributeDefinitionConfirmation' description: OK '400': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: '*/*': schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: >- Create a predefined attribute. You must be a organization admin to perform this operation. tags: - Shipment Attributes /api/v4/tl/connected-capacity/carriers/search: post: description: >- Returns tracking statistics for carriers across all lanes served by that carrier operationId: getCarrierPerformance requestBody: content: application/json: schema: $ref: '#/components/schemas/CarrierPerformanceQuery' description: query required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CarrierPerformanceCollection' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Search for carrier performance tags: - 'TL: Connected Capacity' /api/v4/tl/connected-capacity/lanes/search: post: description: >- Returns tracking statistics for carriers on specific lanes (origin/destination pairs) served by that carrier operationId: getCarrierLanePerformance requestBody: content: application/json: schema: $ref: '#/components/schemas/CarrierLanePerformanceQuery' description: query required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CarrierLanePerformanceCollection' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: Search for carrier performance on specific lane or lanes tags: - 'TL: Connected Capacity' /api/v4/stoplocations: get: description: >- Paginated with default page size of 10. The offset and pageSize query parameters modify this behavior, allowing you to retrieve all of your locations one page at a time. operationId: listStopLocations parameters: - allowEmptyValue: false description: >- The offset of the first requested location within the total list of locations. in: query name: offset schema: default: 0 format: int64 type: integer - allowEmptyValue: false description: The maximum number of locations to return. in: query name: pageSize schema: default: 10 format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/StopLocationList' application/xml: schema: $ref: '#/components/schemas/StopLocationList' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid request '401': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: Invalid or missing credentials '403': content: application/json: schema: $ref: '#/components/schemas/ApiError' application/xml: schema: $ref: '#/components/schemas/ApiError' description: User not authorized to perform this operation security: - oAuth2: [] summary: List all stop locations used by your organization. tags: - Stop Location Management post: description: >-

Required Fields

To create a valid stop location, you must supply a name plus one of