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:
- Air
- AIR_WAYBILL
- HOUSE_AIR_WAYBILL
- European
Rail
- North
American
Rail
- CONTAINER_ID
- TRAILER_ID
- RAIL_CAR_ID
- BILL_OF_LADING
- WAYBILL
- Ocean
- BILL_OF_LADING
- BOOKING_NUMBER
- CARRIER_SCAC
- CONTAINER_ID
- Parcel
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- TRACKING_NUMBER
- CARRIER_SCAC
- REFERENCE_NUMBER
- LTL
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- PRO
- BILL_OF_LADING
- PICKUP
- PURCHASE_ORDER
- Ocean
Door-to-Door
- HOUSE_BILL_OF_LADING
- FFW_SCAC
- BOOKING_NUMBER
- TRACKING_NUMBER
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:- Air
- AIR_WAYBILL
- HOUSE_AIR_WAYBILL
- European
Rail
- North
American
Rail
- CONTAINER_ID
- TRAILER_ID
- RAIL_CAR_ID
- BILL_OF_LADING
- WAYBILL
- Ocean
- BILL_OF_LADING
- BOOKING_NUMBER
- CARRIER_SCAC
- CONTAINER_ID
- Parcel
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- TRACKING_NUMBER
- CARRIER_SCAC
- REFERENCE_NUMBER
- LTL
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- PRO
- BILL_OF_LADING
- PICKUP
- PURCHASE_ORDER
- Ocean
Door-to-Door
- HOUSE_BILL_OF_LADING
- FFW_SCAC
- BOOKING_NUMBER
- TRACKING_NUMBER
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:- Air
- AIR_WAYBILL
- HOUSE_AIR_WAYBILL
- European
Rail
- North
American
Rail
- CONTAINER_ID
- TRAILER_ID
- RAIL_CAR_ID
- BILL_OF_LADING
- WAYBILL
- Ocean
- BILL_OF_LADING
- BOOKING_NUMBER
- CARRIER_SCAC
- CONTAINER_ID
- Parcel
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- TRACKING_NUMBER
- CARRIER_SCAC
- REFERENCE_NUMBER
- LTL
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- PRO
- BILL_OF_LADING
- PICKUP
- PURCHASE_ORDER
- Ocean
Door-to-Door
- HOUSE_BILL_OF_LADING
- FFW_SCAC
- BOOKING_NUMBER
- TRACKING_NUMBER
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:- Air
- AIR_WAYBILL
- HOUSE_AIR_WAYBILL
- European
Rail
- North
American
Rail
- CONTAINER_ID
- TRAILER_ID
- RAIL_CAR_ID
- BILL_OF_LADING
- WAYBILL
- Ocean
- BILL_OF_LADING
- BOOKING_NUMBER
- CARRIER_SCAC
- CONTAINER_ID
- Parcel
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- TRACKING_NUMBER
- CARRIER_SCAC
- REFERENCE_NUMBER
- LTL
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- PRO
- BILL_OF_LADING
- PICKUP
- PURCHASE_ORDER
- Ocean
Door-to-Door
- HOUSE_BILL_OF_LADING
- FFW_SCAC
- BOOKING_NUMBER
- TRACKING_NUMBER
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.
- API Key authentication
- A new HTTP header is created for each supplied api key (max 2).
Example in cURL: --header 'api_key_name:api_key'
- Fields:
- api_key_name: The name of
the HTTP header that holds the API key.
- api_key: The
value that will be sent in the HTTP header (the actual API
Key).
- Basic authentication - Applied to the
'Authorization' header with the 'Basic' identifier. Values are
concatenated (with a separating colon character) and encoded to
base64.
- Fields:
- username: Username
for authentication.
- password: Password for
authentication.
- OAuth2 authentication - The
OAuth2 bearer token is generated then applied to the 'Authorization'
header with the 'Bearer'
identifier.
- Fields:
- grantType: Type
of authentication granted to the OAuth2 provider. Currently only
'client_credentials' is supported.
- accessTokenUri:
Endpoint used to grant the bearer token
- clientId:
Unique client identifier
- clientSecret: Authentication
key for the client; functionally similar to a
password
- clientAuthenticationScheme: Identifies
whether the OAuth2 fields are supplied to the authorization granter
in the header or the request body. Accepted values are 'header' and
'form'.
- extraParams: Optional - A key/value map
containing additional query parameters to be added to the request to
the access token provider.
- extraHeaders: Optional - A
key/value map containing additional headers to be added to the
request to the access token provider.
- MTLS
authentication - Mutual TLS relies on a two-way handshaking when
establishing an HTTPS connection. After the client verifies the
server certificate (as normal in TLS), the server requests a
certificate from the client and verifies it. This way both the
client and server are authenticated to each
other.
- Fields:
- pemCertificateChain:
PEM-formatted client cert(s)
- pemPrivateKey:
PEM-formatted private key
- pemEndpointCertificate:
Optional - PEM-formatted trusted CA cert.
- Azure
cert-based OAuth2 authentication - This authentication type uses
the Azure certificate-based OAuth2 implementation documented here.
- Fields:
- grantType:
Type of authentication granted to the OAuth2 provider. Currently
only 'client_credentials' is
supported.
- accessTokenUri: Endpoint used to grant the
bearer token
- clientId: Microsoft client
ID
- tokenName: Set to
"client_assertion"/li>
- scope: List of OAuth2
scopes
- clientAuthenticationScheme: Identifies whether
the OAuth2 fields are supplied to the authorization granter in the
header or the request body. Accepted values are 'header' and
'form'.
- authorizationScheme: Set to
"header"
- pemCertificate: PEM-formatted cert
- pemPrivateKey: PEM-formatted key
- extraParams:
- audience:
https://login.microsoftonline.com//oauth2/v2.0/token
- tenant: Microsoft Tenant
Id
- extraHeaders: Optional - A key/value map
containing additional headers to be added to the request to the
access token provider.
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
- client_id
- client_secret
- grant_type
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:
- Only the following identifier
types are accepted when creating or updating a
shipment:
- Air
- AIR_WAYBILL
- HOUSE_AIR_WAYBILL -
an additional, valid CARRIER_SCAC identifier is mandatory for
HOUSE_AIR_WAYBILL tracking
- CARRIER_SCAC
- European
Rail
- North
American
Rail
- CONTAINER_ID
- TRAILER_ID
- RAIL_CAR_ID
- BILL_OF_LADING
- WAYBILL
- Ocean
- BILL_OF_LADING
- BOOKING_NUMBER
- CARRIER_SCAC
- CONTAINER_ID
- Parcel
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- TRACKING_NUMBER
- CARRIER_SCAC
- REFERENCE_NUMBER
- LTL
- CAPACITY_PROVIDER_ACCOUNT_GROUP
- CAPACITY_PROVIDER_ACCOUNT_CODE
- PRO
- BILL_OF_LADING
- PICKUP
- PURCHASE_ORDER
- Ocean
Door-to-Door
- HOUSE_BILL_OF_LADING
- FFW_SCAC
- BOOKING_NUMBER
- TRACKING_NUMBER
Required
Fields
- identifiers: (at least one)
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
- carrierIdentifier:
- shipmentIdentifiers:
- shipmentStops: (at least two)
- stopNumber
- appointmentWindow:
- startDateTime
- endDateTime
-
location:
- address: (if no geoCoordinates
provided)
- postalCode
- addressLines
- city
- state (for USA, Mexico, and Canada)
-
contact:
-
geoCoordinates: (if no address provided)
-
capacityProviderAccountGroup: (by a few capacity providers)
- equipmentIdentifiers: (by most capacity
providers)
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
- carrierIdentifier:
- shipmentIdentifiers:
- shipmentStops: (at least two)
- stopNumber
- appointmentWindow:
- startDateTime
- endDateTime
-
location:
- address: (if no geoCoordinates
provided)
- postalCode
- addressLines
- city
- state (for USA, Mexico, and Canada)
-
contact:
-
geoCoordinates: (if no address provided)
-
capacityProviderAccountGroup: (by a few capacity providers)
- equipmentIdentifiers: (by most capacity
providers)
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
- carrierIdentifier.type
- carrierIdentifier.value
- shipmentIdentifier.type
- shipmentIdentifier.value
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
- carrierIdentifier:
- shipmentIdentifiers:
- shipmentStops: (at least two)
- stopNumber
- appointmentWindow:
- startDateTime
- endDateTime
-
location:
- address: (if no geoCoordinates
provided)
- postalCode
- addressLines
- city
- state (for USA, Mexico, and Canada)
-
contact:
-
geoCoordinates: (if no address provided)
-
capacityProviderAccountGroup: (by a few capacity providers)
- equipmentIdentifiers: (by most capacity
providers)
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
- carrierIdentifier.type
- carrierIdentifier.value
- shipmentIdentifier.type
- shipmentIdentifier.value
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
- carrierIdentifier.type
- carrierIdentifier.value
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 - A valid STREET ADDRESS. This is an address that
includes all
of:
- addressLines
- city
- state
and/or postalCode
- country
- A pair
of valid COORDINATES along with an address that includes
COUNTRY
operationId: addStopLocation
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StopLocation'
application/xml:
schema:
$ref: '#/components/schemas/StopLocation'
description: location
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/StopLocation'
application/xml:
schema:
$ref: '#/components/schemas/StopLocation'
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: Submit a new shipment location.
tags:
- Stop Location Management
/api/v4/stoplocations/{id}:
get:
description: This retrieves only the most recently saved version of the location.
operationId: getLatestVersion
parameters:
- description: Id of the stop location to retrieve (required)
in: path
name: id
required: true
schema:
format: uuid
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/StopLocation'
application/xml:
schema:
$ref: '#/components/schemas/StopLocation'
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: Retrieve latest version of a shipment location by id.
tags:
- Stop Location Management
put:
description: Saves the location and increments its version number.
operationId: updateStopLocation
parameters:
- description: Id of the stop location to retrieve (required)
in: path
name: id
required: true
schema:
format: uuid
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StopLocation'
application/xml:
schema:
$ref: '#/components/schemas/StopLocation'
description: location
required: true
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: Update an existing shipment location of a specified id.
tags:
- Stop Location Management
/api/v4/stoplocations/{id}/versions:
get:
description: >-
This retrieves all of the versions of the location that have ever been
saved. The versions can be distinguished by their version number. The
version number starts at zero when the location is created and is
incremented by one every time the location is saved.
operationId: getAllStopLocationVersions
parameters:
- description: Id of the stop location to retrieve (required)
in: path
name: id
required: true
schema:
format: uuid
type: string
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: Retrieve all versions of a shipment location by id.
tags:
- Stop Location Management
/api/v4/stoplocations/{id}/versions/{version}:
get:
description: This retrieves only the specified version of the location.
operationId: getSpecificStopLocationVersion
parameters:
- description: Id of the stop location to retrieve (required)
in: path
name: id
required: true
schema:
format: uuid
type: string
- description: Version of the stop location to retrieve (required)
in: path
name: version
required: true
schema:
format: int64
type: integer
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/StopLocation'
application/xml:
schema:
$ref: '#/components/schemas/StopLocation'
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: >-
Retrieve a specific version of a shipment location by id and version
number.
tags:
- Stop Location Management
/api/v4/webhooks:
get:
description: Retrieve all push configurations for a tenant and user.
operationId: getAllWebhookConfigurationsForUser
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpointCollection'
application/xml:
schema:
$ref: '#/components/schemas/WebhookEndpointCollection'
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: Retrieve all push configurations.
tags:
- Webhook
put:
description: >-
Create or update a single push configuration. A maximum of 50 push
configurations may be saved per tenant.
operationId: createOrUpdateWebhookConfiguration
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
application/xml:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
description: webhookEndpoint
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
application/xml:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
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: Create or update a push configuration.
tags:
- Webhook
/api/v4/webhooks/{webhookId}:
get:
description: Retrieve a push configuration by id.
operationId: getWebhookConfigurationById
parameters:
- description: webhookId
in: path
name: webhookId
required: true
schema:
format: int64
type: integer
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
application/xml:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
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: Retrieve a push configuration by id.
tags:
- Webhook
delete:
description: Delete a push configuration.
operationId: deleteWebhookConfiguration
parameters:
- description: webhookId
in: path
name: webhookId
required: true
schema:
format: int64
type: integer
responses:
'200':
content: {}
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: Delete a push configuration.
tags:
- Webhook
/api/v4/webhooks/name/{webhookName}:
get:
description: Retrieve a push configuration by name.
operationId: getWebhookConfigurationByName
parameters:
- description: webhookName
in: path
name: webhookName
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
application/xml:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
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: Retrieve a push configuration by name.
tags:
- Webhook
/api/v4/tl/webhooks/endpoints:
get:
operationId: getTLEndpoints
responses:
'200':
content:
application/json:
schema:
items:
$ref: '#/components/schemas/WebhookEndpoint'
type: array
application/xml:
schema:
items:
$ref: '#/components/schemas/WebhookEndpoint'
type: array
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 the webhook URLs where shipment tracking updates are posted.
tags:
- Deprecated FTL Webhooks
put:
description: >-
Required Fields
- id (for updates only)
- version (for updates only)
- configName
- url
operationId: createTLEndpoint
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
application/xml:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
description: pushEndpoint
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
application/xml:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
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: Add or update webhook where shipment tracking updates are posted.
tags:
- Deprecated FTL Webhooks
/api/v4/tl/webhooks/endpoints/{id}:
delete:
description: |-
Required Fields
operationId: deleteTLEndpoint
parameters:
- description: The project44-generated id of the endpoint being deleted.
in: path
name: id
required: true
schema:
format: int64
type: integer
responses:
'200':
content: {}
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: Delete a given webhook endpoint - if one is defined.
tags:
- Deprecated FTL Webhooks
x-tagGroups:
- name: OAuth 2.0
tags:
- Manage Client Applications
- Generate Tokens
- name: Tracking
tags:
- Unified Shipment Tracking
- FTL Modal Tracking
- Shipment Attributes
- name: Miscellaneous
tags:
- 'TL: Connected Capacity'
- Stop Location Management
- name: Webhooks
tags:
- Webhook
- Deprecated FTL Webhooks