Unfortunately, this feature is not supported on mobile devices. For the best experience, please use a computer.

project44 REST API (4.0.0)

Version 4.0.0 of project44's API. If you're not familiar with project44, we recommend checking out our guides first: https://developers.project44.com/guides/shippers and https://developers.project44.com/guides/carriers.

Download OpenAPI description
Languages
Servers
NA - Endpoint for project44 tenants created in the NA region
https://na12.api.project44.com/
EU - Endpoint for project44 tenants created in the EU region
https://eu12.api.project44.com/
Sandbox - Endpoint for project44 tenants created in the sandbox environment
https://na12.api.sandbox.p-44.com/

OAuth 2.0: Client Applications

API used for registering and managing OAuth 2.0 client applications. See the "Authentication" section above for more information. To authorize API requests to project44 for an API integration, first your client application must be registered with project44, which will issue your application a client id and secret. These credentials can then be used to generate bearer tokens, which can be included on all other API requests to authorize your client application. The client application is authorized through the project44 user management UI as a machine user with username "app-{client_id}@client-applications.project44.com".

An admin user (with Movement user role "Customer Admin") must use HTTP Basic Authentication with this API to manage client applications. Basic Authentication is deprecated for all other APIs, besides token generation, in favor of passing the access token generated via OAuth 2.0.

Operations

OAuth 2.0: Token Generation

API for OAuth 2.0 token generation. See the "Authentication" section above for more information. Once your client application is registered, you can use the token generation endpoint to authenticate with your application's client id and secret in exchange for a bearer token to be included on all other API requests to authenticate as that client application. The client application is authorized through the project44 user management UI as a machine user with username "app-{client_id}@client-applications.project44.com".

To generate an access token, you may authenticate your client application by providing its client id and secret either in the body of the request or in the form of HTTP Basic Authentication (but you may not use both ways in the same request).

Operations

Shipment: Tracking

...

Operations

Filter Suggestions

...

Operations

Shipment Attributes

...

Operations

Shipment: Loads

...

Operations

Order Visibility

...

Operations

LTL: Quotes

...

Operations

LTL: Dispatch

...

Operations

LTL: Image Retrieval

...

Operations

LTL: Electronic BOL

API used for creating Electronic BOL

Operations

VLTL: Quotes

...

Operations

VLTL: Dispatch

...

Operations

TL: Available Vehicles

...

Operations

TL: Connected Capacity

...

Operations

Asset Tracking

...

Operations

Multi-Modal: Image Retrieval

...

Operations

Multi-Modal: Rating

API used for multi-modal Rating.

Operations

Multi-Modal: Booking

API used for multi-modal Booking.

Operations

Get Bookings

Request

As either a carrier or a shipper, fetch a paginated batch selection of filtered bookings.

Query
attribute.namestring

The name of the custom booking attribute to search against.

attribute.valuesArray of strings

The values of the custom booking attribute to search for; this filter is non-partial.

statusesArray of strings(BookingStatus)

List of booking statuses to filter against.

Items Enum"PROCESSING""UNDER_REVIEW""BOOKED""REJECTED""CANCELLED""EXPIRED"
pageNumberinteger
Default 1
pageSizeinteger<= 100
Default 10
curl -i -X GET \
  'https://na12.api.project44.com/services/booking/v1/bookings?attribute.name=string&attribute.values=string&pageNumber=1&pageSize=10&statuses=PROCESSING' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Successful Response

Bodyapplication/json
paginationInfoobject

Pagination information about a collection of resources.

resultsArray of objects(Booking)

List of resources contained on this page.

Response
application/json
{ "paginationInfo": { "pageSize": 0, "pageNumber": 0, "total": 0 }, "results": [ {} ] }

Create Booking

Request

As a shipper, create a booking request for an existing shipment to send to a Carrier.

Bodyapplication/json
attributesArray of objects(CustomAttribute)

A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier.

apiConfigurationobject

Field for configuring the behavior of this API.

capacityProviderIdentifierobject

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.

carrierContactsArray of objects(BookingContact)

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.

expirationDateTimestring(date-time)

The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required.

fuelSurchargeRateobject

A monetary value expressing amount and currency type.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

rateIdentifiersArray of objects(RateIdentifier)non-empty

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.

routeSegmentIdsArray of strings(uuid)non-empty

List of route-segment ids which apply to the booking.

shipmentIdstring(uuid)

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.

shipmentDetailsArray of objects(ShipmentDetails)

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.

shipperContactInfoobject

Contact method to reach the shipper making the booking request.

shippingDetailsCreateUpdateTruckloadShippingDetails (object) or CreateUpdateOceanShippingDetails (object) or CreateUpdateAirShippingDetails (object)

Information about how a load should be handled in transportation, specific to mode.

Any of:

Information about how a load should be handled in transportation, specific to mode.

totalRateobject

A monetary value expressing amount and currency type.

curl -i -X POST \
  https://na12.api.project44.com/services/booking/v1/bookings \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "attributes": [
      {
        "name": "attribute name",
        "values": [
          "string value 1",
          "string value 2"
        ]
      }
    ],
    "capacityProviderIdentifier": {
      "type": "CARRIER_SCAC",
      "value": "IPSH"
    },
    "carrierContacts": [
      {
        "companyName": "Carrier Company Name",
        "givenName": "John",
        "familyName": "Hudson",
        "phoneNumber": "1223334445",
        "mobilePhoneNumber": "1223334444",
        "email": "j.hudson@carrier-company.com"
      }
    ],
    "totalRate": {
      "currency": "USD",
      "amount": 3500
    },
    "fuelSurchargeRate": {
      "currency": "USD",
      "amount": 275
    },
    "rateIdentifiers": [
      {
        "source": "EXTERNAL",
        "type": "CONTRACT",
        "value": "contract-1234"
      }
    ],
    "expirationDateTime": "2026-03-11T08:30:00+00:00",
    "routeSegmentIds": [
      "c1816420-f5a7-4321-89e3-3a8a4acab734"
    ],
    "notes": "Hello carrier! This is a note from the shipper, visible to you.",
    "shipmentDetails": [
      {
        "pickupStopId": "62f54187-6379-42c4-ab02-7fcb2ca09f30",
        "deliveryStopId": "a4621429-0389-4b12-bf16-c7811d8721a8",
        "handlingUnits": [
          {
            "monetaryValue": {
              "currency": "USD",
              "amount": 1200
            },
            "quantity": 10,
            "handlingUnitType": "PALLET",
            "stackable": true,
            "dimensions": {
              "length": 48,
              "width": 40,
              "height": 40,
              "unit": "IN"
            },
            "weight": {
              "value": 2750,
              "unit": "LB"
            },
            "items": [
              {
                "description": "Custom accessories",
                "identifiers": [
                  {
                    "type": "SALES_ORDER",
                    "value": "SO-1a2b3c"
                  }
                ],
                "unitQuantity": 12,
                "unitType": "BOX"
              }
            ]
          }
        ],
        "description": "Temperature-Sensitive Goods",
        "identifiers": [
          {
            "type": "PURCHASE_ORDER",
            "value": "1234"
          }
        ],
        "accessorials": [
          {
            "code": "REFRIGERATED",
            "details": {
              "min": 32,
              "max": 40,
              "unit": "FAHRENHEIT"
            }
          }
        ]
      }
    ],
    "shipperContactInfo": {
      "companyName": "Shipper Company Name",
      "givenName": "Jennifer",
      "familyName": "Smith",
      "phoneNumber": "1223334445",
      "mobilePhoneNumber": "1223334444",
      "email": "j.smith@shipper-company.com"
    },
    "shippingDetails": {
      "parties": [
        {
          "partyType": "SHIPPER",
          "contactInfo": {
            "companyName": "Shipper Company Name",
            "givenName": "Jennifer",
            "familyName": "Smith",
            "phoneNumber": "1223334445",
            "mobilePhoneNumber": "1223334444",
            "email": "j.smith@shipper-company.com"
          },
          "addressInfo": {
            "addressLines": [
              "400 Montgomery St",
              "2nd Floor"
            ],
            "postalCode": "94104",
            "city": "San Francisco",
            "state": "CA",
            "country": "US"
          },
          "vatNumber": "vat-123"
        },
        {
          "partyType": "BOOKING_AGENT",
          "contactInfo": {
            "companyName": "Notify Party Company Name",
            "givenName": "Henry",
            "familyName": "Jacobsen",
            "phoneNumber": "1223334445",
            "mobilePhoneNumber": "1223334444",
            "email": "h.jacobsen@notify-company.com"
          },
          "addressInfo": {
            "addressLines": [
              "222 W. Merchandise Mart Plaza",
              "Suite 1744"
            ],
            "postalCode": "60654",
            "city": "Chicago",
            "state": "IL",
            "country": "US"
          },
          "vatNumber": "vat-234"
        }
      ],
      "serviceType": "PORT_TO_PORT",
      "cargoMeasurements": {
        "volume": {
          "value": 480,
          "unit": "CUBIC_FT"
        },
        "weight": {
          "value": 2500,
          "unit": "KG"
        },
        "dimensions": {
          "length": 20,
          "width": 6,
          "height": 4,
          "unit": "FT"
        }
      }
    }
  }'

Responses

Successful Response

Bodyapplication/json
attributesArray of objects(CustomAttribute)

A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier.

apiConfigurationobject

Field for configuring the behavior of this API.

automatedFailureReasonstring

An enumeration.

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"
bookingSourceMethodstring

Method by which a shipper initiates a request for a booking.

Default "API"
Enum"API""WEBAPP"
capacityProviderIdentifierobject

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.

carrierContactsArray of objects(BookingContact)

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.

carrierResponseMethodstring

Method by which a carrier responds to bookings.

Default "EMAIL"
Enum"API""EDI""EMAIL"
carrierRejectionNotesstring<= 300 characters

A free-text space for the carrier to provide extra information as to why they may reject the booking request.

carrierProvidedIdentifiersArray of objects(LogisticsIdentifier)<= 20 items

Carrier-supplied identifiers for the shipment to be transported. Fully mutable.

capacityProviderReferenceKeysArray of objects(CustomAttribute)<= 25 items

A capacity-provider supplied list of custom key-value list pairs relevant to the booking which are shared with the shipper and will be used to initiate tracking within the project44 platform on top of shipper provided reference keys. If there is more than 25 reference keys in total, then excessive reference keys from this list will be omitted from the tracking initiation.

createdDateTimestring(date-time)

The datetime when the booking was created.

expirationDateTimestring(date-time)

The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required.

fuelSurchargeRateobject

A monetary value expressing amount and currency type.

idstring(uuid)

The project44-generated identifier for the booking.

lastModifiedDateTimestring(date-time)

The datetime when the booking was last updated.

lastAcceptedDateTimestring(date-time)

The datetime when the booking was last accepted.

masterShipmentIdstring(uuid)

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.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

rateIdentifiersArray of objects(RateIdentifier)non-empty

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.

routeSegmentIdsArray of strings(uuid)non-empty

List of route-segment ids which apply to the booking.

routeSegmentsArray of objects(RouteSegmentWithStops)

A list of locations from/to which the shipment load is expected to be transported, organized as pairs.

rejectionReasonstring

The reason a carrier may opt not to accept a booking from a shipper.

Enum"COST_NOT_AGREED""SHORT_ON_STAFF""NOT_WITHIN_SCOPE""TRANSIT_TIME_TOO_SHORT""REQUESTED_EQUIPMENT_NOT_AVAILABLE""OTHER"
shipmentIdstring(uuid)

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.

shipmentDetailsArray of objects(ShipmentDetails)

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.

shipperContactInfoobject

Contact method to reach the shipper making the booking request.

shippingDetailsBookingTruckloadShippingDetails (object) or OceanShippingDetails (object) or AirShippingDetails (object)

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.

Any of:

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.

statusstring

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.

Default "PROCESSING"
Enum"PROCESSING""UNDER_REVIEW""BOOKED""REJECTED""CANCELLED""EXPIRED"
shipmentIdentifiersArray of objects(LogisticsIdentifier)

Shipper-supplied identifiers for the shipment to be transported. Passed through from the parenting shipment and shared with the carrier.

totalRateobject

A monetary value expressing amount and currency type.

transportationModestring(TransportationMode)

An enumeration.

Enum"OCEAN""AIR""RAIL""TRUCKLOAD""LTL""VOLUME_LTL"
Response
application/json
{ "attributes": [ {} ], "apiConfiguration": { "bookingWebhookName": "string" }, "automatedFailureReason": "ERROR_CREDENTIALS", "bookingSourceMethod": "API", "capacityProviderIdentifier": { "type": "SCAC", "value": "string" }, "carrierContacts": [ {} ], "carrierResponseMethod": "EMAIL", "carrierRejectionNotes": "string", "carrierProvidedIdentifiers": [ {} ], "capacityProviderReferenceKeys": [ {} ], "createdDateTime": "2019-08-24T14:15:22Z", "expirationDateTime": "2019-08-24T14:15:22Z", "fuelSurchargeRate": { "amount": 0, "currency": "USD" }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "lastModifiedDateTime": "2019-08-24T14:15:22Z", "lastAcceptedDateTime": "2019-08-24T14:15:22Z", "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "notes": "string", "rateIdentifiers": [ {} ], "routeSegmentIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "routeSegments": [ {} ], "rejectionReason": "COST_NOT_AGREED", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentDetails": [ {} ], "shipperContactInfo": { "companyName": "string", "email": "user@example.com", "familyName": "string", "givenName": "string", "mobilePhoneNumber": "string", "phoneNumber": "string" }, "shippingDetails": { "accessorials": [], "flatbedType": "CONESTOGA", "loadPreference": "FULL", "trailerType": "FLATBED", "trailerDetails": "CONESTOGA", "trailerLength": {}, "trailerVolume": {} }, "status": "PROCESSING", "shipmentIdentifiers": [ {} ], "totalRate": { "amount": 0, "currency": "USD" }, "transportationMode": "OCEAN" }

Get Booking

Request

As either a carrier or a shipper, fetch a single booking.

Path
bookingIdstring(uuid)required

The project44-generated booking identifier

curl -i -X GET \
  'https://na12.api.project44.com/services/booking/v1/bookings/{bookingId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Successful Response

Bodyapplication/json
attributesArray of objects(CustomAttribute)

A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier.

apiConfigurationobject

Field for configuring the behavior of this API.

automatedFailureReasonstring

An enumeration.

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"
bookingSourceMethodstring

Method by which a shipper initiates a request for a booking.

Default "API"
Enum"API""WEBAPP"
capacityProviderIdentifierobject

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.

carrierContactsArray of objects(BookingContact)

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.

carrierResponseMethodstring

Method by which a carrier responds to bookings.

Default "EMAIL"
Enum"API""EDI""EMAIL"
carrierRejectionNotesstring<= 300 characters

A free-text space for the carrier to provide extra information as to why they may reject the booking request.

carrierProvidedIdentifiersArray of objects(LogisticsIdentifier)<= 20 items

Carrier-supplied identifiers for the shipment to be transported. Fully mutable.

capacityProviderReferenceKeysArray of objects(CustomAttribute)<= 25 items

A capacity-provider supplied list of custom key-value list pairs relevant to the booking which are shared with the shipper and will be used to initiate tracking within the project44 platform on top of shipper provided reference keys. If there is more than 25 reference keys in total, then excessive reference keys from this list will be omitted from the tracking initiation.

createdDateTimestring(date-time)

The datetime when the booking was created.

expirationDateTimestring(date-time)

The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required.

fuelSurchargeRateobject

A monetary value expressing amount and currency type.

idstring(uuid)

The project44-generated identifier for the booking.

lastModifiedDateTimestring(date-time)

The datetime when the booking was last updated.

lastAcceptedDateTimestring(date-time)

The datetime when the booking was last accepted.

masterShipmentIdstring(uuid)

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.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

rateIdentifiersArray of objects(RateIdentifier)non-empty

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.

routeSegmentIdsArray of strings(uuid)non-empty

List of route-segment ids which apply to the booking.

routeSegmentsArray of objects(RouteSegmentWithStops)

A list of locations from/to which the shipment load is expected to be transported, organized as pairs.

rejectionReasonstring

The reason a carrier may opt not to accept a booking from a shipper.

Enum"COST_NOT_AGREED""SHORT_ON_STAFF""NOT_WITHIN_SCOPE""TRANSIT_TIME_TOO_SHORT""REQUESTED_EQUIPMENT_NOT_AVAILABLE""OTHER"
shipmentIdstring(uuid)

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.

shipmentDetailsArray of objects(ShipmentDetails)

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.

shipperContactInfoobject

Contact method to reach the shipper making the booking request.

shippingDetailsBookingTruckloadShippingDetails (object) or OceanShippingDetails (object) or AirShippingDetails (object)

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.

Any of:

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.

statusstring

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.

Default "PROCESSING"
Enum"PROCESSING""UNDER_REVIEW""BOOKED""REJECTED""CANCELLED""EXPIRED"
shipmentIdentifiersArray of objects(LogisticsIdentifier)

Shipper-supplied identifiers for the shipment to be transported. Passed through from the parenting shipment and shared with the carrier.

totalRateobject

A monetary value expressing amount and currency type.

transportationModestring(TransportationMode)

An enumeration.

Enum"OCEAN""AIR""RAIL""TRUCKLOAD""LTL""VOLUME_LTL"
Response
application/json
{ "attributes": [ {} ], "apiConfiguration": { "bookingWebhookName": "string" }, "automatedFailureReason": "ERROR_CREDENTIALS", "bookingSourceMethod": "API", "capacityProviderIdentifier": { "type": "SCAC", "value": "string" }, "carrierContacts": [ {} ], "carrierResponseMethod": "EMAIL", "carrierRejectionNotes": "string", "carrierProvidedIdentifiers": [ {} ], "capacityProviderReferenceKeys": [ {} ], "createdDateTime": "2019-08-24T14:15:22Z", "expirationDateTime": "2019-08-24T14:15:22Z", "fuelSurchargeRate": { "amount": 0, "currency": "USD" }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "lastModifiedDateTime": "2019-08-24T14:15:22Z", "lastAcceptedDateTime": "2019-08-24T14:15:22Z", "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "notes": "string", "rateIdentifiers": [ {} ], "routeSegmentIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "routeSegments": [ {} ], "rejectionReason": "COST_NOT_AGREED", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentDetails": [ {} ], "shipperContactInfo": { "companyName": "string", "email": "user@example.com", "familyName": "string", "givenName": "string", "mobilePhoneNumber": "string", "phoneNumber": "string" }, "shippingDetails": { "accessorials": [], "flatbedType": "CONESTOGA", "loadPreference": "FULL", "trailerType": "FLATBED", "trailerDetails": "CONESTOGA", "trailerLength": {}, "trailerVolume": {} }, "status": "PROCESSING", "shipmentIdentifiers": [ {} ], "totalRate": { "amount": 0, "currency": "USD" }, "transportationMode": "OCEAN" }

Update Booking

Request

As a shipper, update a booking request for an existing shipment to send to a Carrier.

Path
bookingIdstring(uuid)required

The project44-generated booking identifier

Bodyapplication/json
attributesArray of objects(CustomAttribute)

A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier.

apiConfigurationobject

Field for configuring the behavior of this API.

capacityProviderIdentifierobject

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.

carrierContactsArray of objects(BookingContact)

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.

expirationDateTimestring(date-time)

The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required.

fuelSurchargeRateobject

A monetary value expressing amount and currency type.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

rateIdentifiersArray of objects(RateIdentifier)non-empty

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.

routeSegmentIdsArray of strings(uuid)non-empty

List of route-segment ids which apply to the booking.

shipmentIdstring(uuid)

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.

shipmentDetailsArray of objects(ShipmentDetails)

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.

shipperContactInfoobject

Contact method to reach the shipper making the booking request.

shippingDetailsCreateUpdateTruckloadShippingDetails (object) or CreateUpdateOceanShippingDetails (object) or CreateUpdateAirShippingDetails (object)

Information about how a load should be handled in transportation, specific to mode.

Any of:

Information about how a load should be handled in transportation, specific to mode.

totalRateobject

A monetary value expressing amount and currency type.

curl -i -X PUT \
  'https://na12.api.project44.com/services/booking/v1/bookings/{bookingId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "attributes": [
      {
        "name": "attribute name",
        "values": [
          "string value 1",
          "string value 2"
        ]
      }
    ],
    "capacityProviderIdentifier": {
      "type": "CARRIER_SCAC",
      "value": "IPSH"
    },
    "carrierContacts": [
      {
        "companyName": "Carrier Company Name",
        "givenName": "John",
        "familyName": "Hudson",
        "phoneNumber": "1223334445",
        "mobilePhoneNumber": "1223334444",
        "email": "j.hudson@carrier-company.com"
      }
    ],
    "totalRate": {
      "currency": "USD",
      "amount": 3500
    },
    "rateIdentifiers": [
      {
        "source": "EXTERNAL",
        "type": "CONTRACT",
        "value": "contract-1234"
      }
    ],
    "expirationDateTime": "2026-03-11T08:30:00+00:00",
    "routeSegmentIds": [
      "c1816420-f5a7-4321-89e3-3a8a4acab734"
    ],
    "notes": "Hello carrier! This is a note from the shipper, visible to you.",
    "shipmentDetails": [
      {
        "pickupStopId": "62f54187-6379-42c4-ab02-7fcb2ca09f30",
        "deliveryStopId": "a4621429-0389-4b12-bf16-c7811d8721a8",
        "handlingUnits": [
          {
            "monetaryValue": {
              "currency": "USD",
              "amount": 1200
            },
            "quantity": 10,
            "handlingUnitType": "PALLET",
            "stackable": true,
            "dimensions": {
              "length": 48,
              "width": 40,
              "height": 40,
              "unit": "IN"
            },
            "weight": {
              "value": 2750,
              "unit": "LB"
            },
            "items": [
              {
                "description": "Custom accessories",
                "identifiers": [
                  {
                    "type": "SALES_ORDER",
                    "value": "SO-1a2b3c"
                  }
                ],
                "unitQuantity": 12,
                "unitType": "BOX"
              }
            ]
          }
        ],
        "description": "Temperature-Sensitive Goods",
        "identifiers": [
          {
            "type": "PURCHASE_ORDER",
            "value": "1234"
          }
        ],
        "accessorials": [
          {
            "code": "REFRIGERATED",
            "details": {
              "min": 32,
              "max": 40,
              "unit": "FAHRENHEIT"
            }
          }
        ]
      }
    ],
    "shipperContactInfo": {
      "companyName": "Shipper Company Name",
      "givenName": "Jennifer",
      "familyName": "Smith",
      "phoneNumber": "1223334445",
      "mobilePhoneNumber": "1223334444",
      "email": "j.smith@shipper-company.com"
    },
    "shippingDetails": {
      "parties": [
        {
          "partyType": "SHIPPER",
          "contactInfo": {
            "companyName": "Shipper Company Name",
            "givenName": "Jennifer",
            "familyName": "Smith",
            "phoneNumber": "1223334445",
            "mobilePhoneNumber": "1223334444",
            "email": "j.smith@shipper-company.com"
          },
          "addressInfo": {
            "addressLines": [
              "400 Montgomery St",
              "2nd Floor"
            ],
            "postalCode": "94104",
            "city": "San Francisco",
            "state": "CA",
            "country": "US"
          },
          "vatNumber": "vat-123"
        },
        {
          "partyType": "BOOKING_AGENT",
          "contactInfo": {
            "companyName": "Notify Party Company Name",
            "givenName": "Henry",
            "familyName": "Jacobsen",
            "phoneNumber": "1223334445",
            "mobilePhoneNumber": "1223334444",
            "email": "h.jacobsen@notify-company.com"
          },
          "addressInfo": {
            "addressLines": [
              "222 W. Merchandise Mart Plaza",
              "Suite 1744"
            ],
            "postalCode": "60654",
            "city": "Chicago",
            "state": "IL",
            "country": "US"
          },
          "vatNumber": "vat-234"
        }
      ],
      "serviceType": "PORT_TO_PORT",
      "cargoMeasurements": {
        "volume": {
          "value": 480,
          "unit": "CUBIC_FT"
        },
        "weight": {
          "value": 2500,
          "unit": "KG"
        },
        "dimensions": {
          "length": 20,
          "width": 6,
          "height": 4,
          "unit": "FT"
        }
      }
    }
  }'

Responses

Successful Response

Bodyapplication/json
attributesArray of objects(CustomAttribute)

A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier.

apiConfigurationobject

Field for configuring the behavior of this API.

automatedFailureReasonstring

An enumeration.

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"
bookingSourceMethodstring

Method by which a shipper initiates a request for a booking.

Default "API"
Enum"API""WEBAPP"
capacityProviderIdentifierobject

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.

carrierContactsArray of objects(BookingContact)

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.

carrierResponseMethodstring

Method by which a carrier responds to bookings.

Default "EMAIL"
Enum"API""EDI""EMAIL"
carrierRejectionNotesstring<= 300 characters

A free-text space for the carrier to provide extra information as to why they may reject the booking request.

carrierProvidedIdentifiersArray of objects(LogisticsIdentifier)<= 20 items

Carrier-supplied identifiers for the shipment to be transported. Fully mutable.

capacityProviderReferenceKeysArray of objects(CustomAttribute)<= 25 items

A capacity-provider supplied list of custom key-value list pairs relevant to the booking which are shared with the shipper and will be used to initiate tracking within the project44 platform on top of shipper provided reference keys. If there is more than 25 reference keys in total, then excessive reference keys from this list will be omitted from the tracking initiation.

createdDateTimestring(date-time)

The datetime when the booking was created.

expirationDateTimestring(date-time)

The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required.

fuelSurchargeRateobject

A monetary value expressing amount and currency type.

idstring(uuid)

The project44-generated identifier for the booking.

lastModifiedDateTimestring(date-time)

The datetime when the booking was last updated.

lastAcceptedDateTimestring(date-time)

The datetime when the booking was last accepted.

masterShipmentIdstring(uuid)

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.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

rateIdentifiersArray of objects(RateIdentifier)non-empty

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.

routeSegmentIdsArray of strings(uuid)non-empty

List of route-segment ids which apply to the booking.

routeSegmentsArray of objects(RouteSegmentWithStops)

A list of locations from/to which the shipment load is expected to be transported, organized as pairs.

rejectionReasonstring

The reason a carrier may opt not to accept a booking from a shipper.

Enum"COST_NOT_AGREED""SHORT_ON_STAFF""NOT_WITHIN_SCOPE""TRANSIT_TIME_TOO_SHORT""REQUESTED_EQUIPMENT_NOT_AVAILABLE""OTHER"
shipmentIdstring(uuid)

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.

shipmentDetailsArray of objects(ShipmentDetails)

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.

shipperContactInfoobject

Contact method to reach the shipper making the booking request.

shippingDetailsBookingTruckloadShippingDetails (object) or OceanShippingDetails (object) or AirShippingDetails (object)

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.

Any of:

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.

statusstring

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.

Default "PROCESSING"
Enum"PROCESSING""UNDER_REVIEW""BOOKED""REJECTED""CANCELLED""EXPIRED"
shipmentIdentifiersArray of objects(LogisticsIdentifier)

Shipper-supplied identifiers for the shipment to be transported. Passed through from the parenting shipment and shared with the carrier.

totalRateobject

A monetary value expressing amount and currency type.

transportationModestring(TransportationMode)

An enumeration.

Enum"OCEAN""AIR""RAIL""TRUCKLOAD""LTL""VOLUME_LTL"
Response
application/json
{ "attributes": [ {} ], "apiConfiguration": { "bookingWebhookName": "string" }, "automatedFailureReason": "ERROR_CREDENTIALS", "bookingSourceMethod": "API", "capacityProviderIdentifier": { "type": "SCAC", "value": "string" }, "carrierContacts": [ {} ], "carrierResponseMethod": "EMAIL", "carrierRejectionNotes": "string", "carrierProvidedIdentifiers": [ {} ], "capacityProviderReferenceKeys": [ {} ], "createdDateTime": "2019-08-24T14:15:22Z", "expirationDateTime": "2019-08-24T14:15:22Z", "fuelSurchargeRate": { "amount": 0, "currency": "USD" }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "lastModifiedDateTime": "2019-08-24T14:15:22Z", "lastAcceptedDateTime": "2019-08-24T14:15:22Z", "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "notes": "string", "rateIdentifiers": [ {} ], "routeSegmentIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "routeSegments": [ {} ], "rejectionReason": "COST_NOT_AGREED", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentDetails": [ {} ], "shipperContactInfo": { "companyName": "string", "email": "user@example.com", "familyName": "string", "givenName": "string", "mobilePhoneNumber": "string", "phoneNumber": "string" }, "shippingDetails": { "accessorials": [], "flatbedType": "CONESTOGA", "loadPreference": "FULL", "trailerType": "FLATBED", "trailerDetails": "CONESTOGA", "trailerLength": {}, "trailerVolume": {} }, "status": "PROCESSING", "shipmentIdentifiers": [ {} ], "totalRate": { "amount": 0, "currency": "USD" }, "transportationMode": "OCEAN" }

Cancel Booking

Request

As a shipper, change a booking's status to CANCELLED. A shipper may cancel a booking at any time.

Path
bookingIdstring(uuid)required

The project44-generated booking identifier

curl -i -X POST \
  'https://na12.api.project44.com/services/booking/v1/bookings/{bookingId}/cancellations' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Successful Response

Bodyapplication/json
attributesArray of objects(CustomAttribute)

A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier.

apiConfigurationobject

Field for configuring the behavior of this API.

automatedFailureReasonstring

An enumeration.

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"
bookingSourceMethodstring

Method by which a shipper initiates a request for a booking.

Default "API"
Enum"API""WEBAPP"
capacityProviderIdentifierobject

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.

carrierContactsArray of objects(BookingContact)

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.

carrierResponseMethodstring

Method by which a carrier responds to bookings.

Default "EMAIL"
Enum"API""EDI""EMAIL"
carrierRejectionNotesstring<= 300 characters

A free-text space for the carrier to provide extra information as to why they may reject the booking request.

carrierProvidedIdentifiersArray of objects(LogisticsIdentifier)<= 20 items

Carrier-supplied identifiers for the shipment to be transported. Fully mutable.

capacityProviderReferenceKeysArray of objects(CustomAttribute)<= 25 items

A capacity-provider supplied list of custom key-value list pairs relevant to the booking which are shared with the shipper and will be used to initiate tracking within the project44 platform on top of shipper provided reference keys. If there is more than 25 reference keys in total, then excessive reference keys from this list will be omitted from the tracking initiation.

createdDateTimestring(date-time)

The datetime when the booking was created.

expirationDateTimestring(date-time)

The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required.

fuelSurchargeRateobject

A monetary value expressing amount and currency type.

idstring(uuid)

The project44-generated identifier for the booking.

lastModifiedDateTimestring(date-time)

The datetime when the booking was last updated.

lastAcceptedDateTimestring(date-time)

The datetime when the booking was last accepted.

masterShipmentIdstring(uuid)

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.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

rateIdentifiersArray of objects(RateIdentifier)non-empty

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.

routeSegmentIdsArray of strings(uuid)non-empty

List of route-segment ids which apply to the booking.

routeSegmentsArray of objects(RouteSegmentWithStops)

A list of locations from/to which the shipment load is expected to be transported, organized as pairs.

rejectionReasonstring

The reason a carrier may opt not to accept a booking from a shipper.

Enum"COST_NOT_AGREED""SHORT_ON_STAFF""NOT_WITHIN_SCOPE""TRANSIT_TIME_TOO_SHORT""REQUESTED_EQUIPMENT_NOT_AVAILABLE""OTHER"
shipmentIdstring(uuid)

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.

shipmentDetailsArray of objects(ShipmentDetails)

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.

shipperContactInfoobject

Contact method to reach the shipper making the booking request.

shippingDetailsBookingTruckloadShippingDetails (object) or OceanShippingDetails (object) or AirShippingDetails (object)

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.

Any of:

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.

statusstring

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.

Default "PROCESSING"
Enum"PROCESSING""UNDER_REVIEW""BOOKED""REJECTED""CANCELLED""EXPIRED"
shipmentIdentifiersArray of objects(LogisticsIdentifier)

Shipper-supplied identifiers for the shipment to be transported. Passed through from the parenting shipment and shared with the carrier.

totalRateobject

A monetary value expressing amount and currency type.

transportationModestring(TransportationMode)

An enumeration.

Enum"OCEAN""AIR""RAIL""TRUCKLOAD""LTL""VOLUME_LTL"
Response
application/json
{ "attributes": [ {} ], "apiConfiguration": { "bookingWebhookName": "string" }, "automatedFailureReason": "ERROR_CREDENTIALS", "bookingSourceMethod": "API", "capacityProviderIdentifier": { "type": "SCAC", "value": "string" }, "carrierContacts": [ {} ], "carrierResponseMethod": "EMAIL", "carrierRejectionNotes": "string", "carrierProvidedIdentifiers": [ {} ], "capacityProviderReferenceKeys": [ {} ], "createdDateTime": "2019-08-24T14:15:22Z", "expirationDateTime": "2019-08-24T14:15:22Z", "fuelSurchargeRate": { "amount": 0, "currency": "USD" }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "lastModifiedDateTime": "2019-08-24T14:15:22Z", "lastAcceptedDateTime": "2019-08-24T14:15:22Z", "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "notes": "string", "rateIdentifiers": [ {} ], "routeSegmentIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "routeSegments": [ {} ], "rejectionReason": "COST_NOT_AGREED", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentDetails": [ {} ], "shipperContactInfo": { "companyName": "string", "email": "user@example.com", "familyName": "string", "givenName": "string", "mobilePhoneNumber": "string", "phoneNumber": "string" }, "shippingDetails": { "accessorials": [], "flatbedType": "CONESTOGA", "loadPreference": "FULL", "trailerType": "FLATBED", "trailerDetails": "CONESTOGA", "trailerLength": {}, "trailerVolume": {} }, "status": "PROCESSING", "shipmentIdentifiers": [ {} ], "totalRate": { "amount": 0, "currency": "USD" }, "transportationMode": "OCEAN" }

Flag Booking As Under Review

Request

As a Carrier, change a booking's status from PROCESSING to UNDER_REVIEW.

This endpoint is provided as a service to the shipper to inform them their request is under consideration, yet the Carrier is not yet ready to provide a full response.

The shipper will be notified of this activity.

Path
bookingIdstring(uuid)required

The project44-generated booking identifier

curl -i -X POST \
  'https://na12.api.project44.com/services/booking/v1/bookings/{bookingId}/carrier-notices' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Successful Response

Bodyapplication/json
attributesArray of objects(CustomAttribute)

A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier.

apiConfigurationobject

Field for configuring the behavior of this API.

automatedFailureReasonstring

An enumeration.

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"
bookingSourceMethodstring

Method by which a shipper initiates a request for a booking.

Default "API"
Enum"API""WEBAPP"
capacityProviderIdentifierobject

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.

carrierContactsArray of objects(BookingContact)

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.

carrierResponseMethodstring

Method by which a carrier responds to bookings.

Default "EMAIL"
Enum"API""EDI""EMAIL"
carrierRejectionNotesstring<= 300 characters

A free-text space for the carrier to provide extra information as to why they may reject the booking request.

carrierProvidedIdentifiersArray of objects(LogisticsIdentifier)<= 20 items

Carrier-supplied identifiers for the shipment to be transported. Fully mutable.

capacityProviderReferenceKeysArray of objects(CustomAttribute)<= 25 items

A capacity-provider supplied list of custom key-value list pairs relevant to the booking which are shared with the shipper and will be used to initiate tracking within the project44 platform on top of shipper provided reference keys. If there is more than 25 reference keys in total, then excessive reference keys from this list will be omitted from the tracking initiation.

createdDateTimestring(date-time)

The datetime when the booking was created.

expirationDateTimestring(date-time)

The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required.

fuelSurchargeRateobject

A monetary value expressing amount and currency type.

idstring(uuid)

The project44-generated identifier for the booking.

lastModifiedDateTimestring(date-time)

The datetime when the booking was last updated.

lastAcceptedDateTimestring(date-time)

The datetime when the booking was last accepted.

masterShipmentIdstring(uuid)

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.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

rateIdentifiersArray of objects(RateIdentifier)non-empty

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.

routeSegmentIdsArray of strings(uuid)non-empty

List of route-segment ids which apply to the booking.

routeSegmentsArray of objects(RouteSegmentWithStops)

A list of locations from/to which the shipment load is expected to be transported, organized as pairs.

rejectionReasonstring

The reason a carrier may opt not to accept a booking from a shipper.

Enum"COST_NOT_AGREED""SHORT_ON_STAFF""NOT_WITHIN_SCOPE""TRANSIT_TIME_TOO_SHORT""REQUESTED_EQUIPMENT_NOT_AVAILABLE""OTHER"
shipmentIdstring(uuid)

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.

shipmentDetailsArray of objects(ShipmentDetails)

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.

shipperContactInfoobject

Contact method to reach the shipper making the booking request.

shippingDetailsBookingTruckloadShippingDetails (object) or OceanShippingDetails (object) or AirShippingDetails (object)

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.

Any of:

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.

statusstring

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.

Default "PROCESSING"
Enum"PROCESSING""UNDER_REVIEW""BOOKED""REJECTED""CANCELLED""EXPIRED"
shipmentIdentifiersArray of objects(LogisticsIdentifier)

Shipper-supplied identifiers for the shipment to be transported. Passed through from the parenting shipment and shared with the carrier.

totalRateobject

A monetary value expressing amount and currency type.

transportationModestring(TransportationMode)

An enumeration.

Enum"OCEAN""AIR""RAIL""TRUCKLOAD""LTL""VOLUME_LTL"
Response
application/json
{ "attributes": [ {} ], "apiConfiguration": { "bookingWebhookName": "string" }, "automatedFailureReason": "ERROR_CREDENTIALS", "bookingSourceMethod": "API", "capacityProviderIdentifier": { "type": "SCAC", "value": "string" }, "carrierContacts": [ {} ], "carrierResponseMethod": "EMAIL", "carrierRejectionNotes": "string", "carrierProvidedIdentifiers": [ {} ], "capacityProviderReferenceKeys": [ {} ], "createdDateTime": "2019-08-24T14:15:22Z", "expirationDateTime": "2019-08-24T14:15:22Z", "fuelSurchargeRate": { "amount": 0, "currency": "USD" }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "lastModifiedDateTime": "2019-08-24T14:15:22Z", "lastAcceptedDateTime": "2019-08-24T14:15:22Z", "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "notes": "string", "rateIdentifiers": [ {} ], "routeSegmentIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "routeSegments": [ {} ], "rejectionReason": "COST_NOT_AGREED", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentDetails": [ {} ], "shipperContactInfo": { "companyName": "string", "email": "user@example.com", "familyName": "string", "givenName": "string", "mobilePhoneNumber": "string", "phoneNumber": "string" }, "shippingDetails": { "accessorials": [], "flatbedType": "CONESTOGA", "loadPreference": "FULL", "trailerType": "FLATBED", "trailerDetails": "CONESTOGA", "trailerLength": {}, "trailerVolume": {} }, "status": "PROCESSING", "shipmentIdentifiers": [ {} ], "totalRate": { "amount": 0, "currency": "USD" }, "transportationMode": "OCEAN" }

Respond To Booking

Request

As a Carrier, respond to a booking request, or update an existing response.

ACCEPT a booking by providing any identifiers applicable to the Shipment across applicable route-segments in the form of a BookingResponse. All route-segments must be present in the response, even to specify there are no identifiers known at the time of acceptance. A Carrier may update identifiers with this call if they have already accepted a booking.

REJECT a booking by selecting a reason for rejection in the form of a BookingRejection.

A Carrier may not PUT a Rejection to a booking after they have already accepted it.

Path
bookingIdstring(uuid)required

The project44-generated booking identifier

Bodyapplication/jsonrequired
Any of:

Carrier response in the form of an Acceptance with identification information or a Rejection with a reason.

detailsOceanBookingResponseDetails (object) or TruckloadBookingResponseDetails (object)

Further response details applicable to the booking.

Any of:

Further response details applicable to the booking.

routeSegmentsArray of objects(RouteSegmentResponse)non-empty

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.

referenceKeysArray of objects(CustomAttribute)<= 25 items

A capacity-provider supplied list of custom key-value list pairs relevant to the booking which are shared with the shipper and will be used to initiate tracking within the project44 platform on top of shipper provided reference keys. If there is more than 25 reference keys in total, then excessive reference keys from this list will be omitted from the tracking initiation.

shipmentIdentifiersArray of objects(LogisticsIdentifier)

Methods for identifying the shipment; usually a BOOKING_NUMBER or BOL.

curl -i -X PUT \
  'https://na12.api.project44.com/services/booking/v1/bookings/{bookingId}/responses' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "shipmentIdentifiers": [
      {
        "type": "AIR_WAYBILL",
        "value": "AW_123456789"
      }
    ],
    "routeSegments": [
      {
        "routeSegmentId": "807127ac-e8dc-4a69-9032-48bcd62116a8",
        "fromDate": "2092-12-10",
        "toDate": "2092-12-12"
      }
    ],
    "details": {}
  }'

Responses

Successful Response

Bodyapplication/json
attributesArray of objects(CustomAttribute)

A shipper-provided list of custom key-value list pairs relevant to the booking which are shared with the carrier.

apiConfigurationobject

Field for configuring the behavior of this API.

automatedFailureReasonstring

An enumeration.

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"
bookingSourceMethodstring

Method by which a shipper initiates a request for a booking.

Default "API"
Enum"API""WEBAPP"
capacityProviderIdentifierobject

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.

carrierContactsArray of objects(BookingContact)

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.

carrierResponseMethodstring

Method by which a carrier responds to bookings.

Default "EMAIL"
Enum"API""EDI""EMAIL"
carrierRejectionNotesstring<= 300 characters

A free-text space for the carrier to provide extra information as to why they may reject the booking request.

carrierProvidedIdentifiersArray of objects(LogisticsIdentifier)<= 20 items

Carrier-supplied identifiers for the shipment to be transported. Fully mutable.

capacityProviderReferenceKeysArray of objects(CustomAttribute)<= 25 items

A capacity-provider supplied list of custom key-value list pairs relevant to the booking which are shared with the shipper and will be used to initiate tracking within the project44 platform on top of shipper provided reference keys. If there is more than 25 reference keys in total, then excessive reference keys from this list will be omitted from the tracking initiation.

createdDateTimestring(date-time)

The datetime when the booking was created.

expirationDateTimestring(date-time)

The datetime of expiration for this request from the shipper to the carrier. A timezone offset is required.

fuelSurchargeRateobject

A monetary value expressing amount and currency type.

idstring(uuid)

The project44-generated identifier for the booking.

lastModifiedDateTimestring(date-time)

The datetime when the booking was last updated.

lastAcceptedDateTimestring(date-time)

The datetime when the booking was last accepted.

masterShipmentIdstring(uuid)

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.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

rateIdentifiersArray of objects(RateIdentifier)non-empty

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.

routeSegmentIdsArray of strings(uuid)non-empty

List of route-segment ids which apply to the booking.

routeSegmentsArray of objects(RouteSegmentWithStops)

A list of locations from/to which the shipment load is expected to be transported, organized as pairs.

rejectionReasonstring

The reason a carrier may opt not to accept a booking from a shipper.

Enum"COST_NOT_AGREED""SHORT_ON_STAFF""NOT_WITHIN_SCOPE""TRANSIT_TIME_TOO_SHORT""REQUESTED_EQUIPMENT_NOT_AVAILABLE""OTHER"
shipmentIdstring(uuid)

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.

shipmentDetailsArray of objects(ShipmentDetails)

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.

shipperContactInfoobject

Contact method to reach the shipper making the booking request.

shippingDetailsBookingTruckloadShippingDetails (object) or OceanShippingDetails (object) or AirShippingDetails (object)

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.

Any of:

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.

statusstring

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.

Default "PROCESSING"
Enum"PROCESSING""UNDER_REVIEW""BOOKED""REJECTED""CANCELLED""EXPIRED"
shipmentIdentifiersArray of objects(LogisticsIdentifier)

Shipper-supplied identifiers for the shipment to be transported. Passed through from the parenting shipment and shared with the carrier.

totalRateobject

A monetary value expressing amount and currency type.

transportationModestring(TransportationMode)

An enumeration.

Enum"OCEAN""AIR""RAIL""TRUCKLOAD""LTL""VOLUME_LTL"
Response
application/json
{ "attributes": [ {} ], "apiConfiguration": { "bookingWebhookName": "string" }, "automatedFailureReason": "ERROR_CREDENTIALS", "bookingSourceMethod": "API", "capacityProviderIdentifier": { "type": "SCAC", "value": "string" }, "carrierContacts": [ {} ], "carrierResponseMethod": "EMAIL", "carrierRejectionNotes": "string", "carrierProvidedIdentifiers": [ {} ], "capacityProviderReferenceKeys": [ {} ], "createdDateTime": "2019-08-24T14:15:22Z", "expirationDateTime": "2019-08-24T14:15:22Z", "fuelSurchargeRate": { "amount": 0, "currency": "USD" }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "lastModifiedDateTime": "2019-08-24T14:15:22Z", "lastAcceptedDateTime": "2019-08-24T14:15:22Z", "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "notes": "string", "rateIdentifiers": [ {} ], "routeSegmentIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "routeSegments": [ {} ], "rejectionReason": "COST_NOT_AGREED", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentDetails": [ {} ], "shipperContactInfo": { "companyName": "string", "email": "user@example.com", "familyName": "string", "givenName": "string", "mobilePhoneNumber": "string", "phoneNumber": "string" }, "shippingDetails": { "accessorials": [], "flatbedType": "CONESTOGA", "loadPreference": "FULL", "trailerType": "FLATBED", "trailerDetails": "CONESTOGA", "trailerLength": {}, "trailerVolume": {} }, "status": "PROCESSING", "shipmentIdentifiers": [ {} ], "totalRate": { "amount": 0, "currency": "USD" }, "transportationMode": "OCEAN" }

Get Shipments

Request

As a shipper, fetch a shipment created for booking.

Query
identifier.typestring

The type of the custom shipment identifier to search against.

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"
identifier.valuestring

The value of the custom shipment identifier to search for; this filter is non-partial.

attribute.namestring

The name of the custom shipment attribute to search against.

attribute.valuesArray of strings

The values of the custom shipment attribute to search for; this filter is non-partial.

pageNumberinteger
Default 1
pageSizeinteger<= 100
Default 10
curl -i -X GET \
  'https://na12.api.project44.com/services/booking/v1/shipments?attribute.name=string&attribute.values=string&identifier.type=AIR_WAYBILL&identifier.value=string&pageNumber=1&pageSize=10' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Successful Response

Bodyapplication/json
paginationInfoobject

Pagination information about a collection of resources.

resultsArray of objects(BookedShipment)

List of resources contained on this page.

Response
application/json
{ "paginationInfo": { "pageSize": 0, "pageNumber": 0, "total": 0 }, "results": [ {} ] }

Create Shipment

Request

As a shipper, create a shipment for booking.

Bodyapplication/jsonrequired
attributesArray of objects(CustomAttribute)<= 5 items

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.

bookingsArray of objects(CreateUpdateBooking)

A list of bookings related to the shipment to create at the same time.

identifiersArray of objects(LogisticsIdentifier)<= 20 items
namestring

The descriptive name or otherwise human-readable description of the shipment created; this is not visible to the carrier.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

routeInfoobject(RouteInfo)

The stops and route for the shipment.

curl -i -X POST \
  https://na12.api.project44.com/services/booking/v1/shipments \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "identifiers": [
      {
        "type": "CUSTOMER_REFERENCE",
        "value": "SHIPMENT-12345"
      }
    ],
    "routeInfo": {
      "stops": [
        {
          "id": "e379cef8-5af6-47e3-9c8f-052faa2c5061",
          "type": "PICKUP",
          "arrivalDate": "2092-12-10",
          "location": {
            "address": {
              "addressLines": [
                "222 W. Merchandise Mart Plaza",
                "Suite 1744"
              ],
              "postalCode": "60654",
              "city": "Chicago",
              "state": "IL",
              "country": "US"
            }
          }
        },
        {
          "id": "b996b45d-94cb-42ac-aa6f-cd8c7cfe7a5b",
          "type": "DELIVERY",
          "arrivalDate": "2092-12-12",
          "location": {
            "address": {
              "addressLines": [
                "3800 N Lamar Blvd",
                "Suite 210"
              ],
              "postalCode": "78756",
              "city": "Austin",
              "state": "TX",
              "country": "US"
            }
          }
        }
      ],
      "routeSegments": [
        {
          "fromStopId": "e379cef8-5af6-47e3-9c8f-052faa2c5061",
          "toStopId": "b996b45d-94cb-42ac-aa6f-cd8c7cfe7a5b"
        }
      ]
    },
    "attributes": [
      {
        "name": "attribute name",
        "values": [
          "string value 1",
          "string value 2"
        ]
      }
    ]
  }'

Responses

Success

Bodyapplication/json
attributesArray of objects(CustomAttribute)<= 5 items

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.

bookingsArray of objects(Booking)

A list of all bookings related to the shipment.

createdDateTimestring(date-time)

The datetime when the shipment was created.

identifiersArray of objects(LogisticsIdentifier)<= 20 items
idstring(uuid)

The project44-generated shipment identifier

lastModifiedDateTimestring(date-time)

The datetime when the shipment was last updated.

namestring

The descriptive name or otherwise human-readable description of the shipment created; this is not visible to the carrier.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

routeInfoobject(RouteInfo)

The stops and route for the shipment.

Response
application/json
{ "identifiers": [ {} ], "routeInfo": { "stops": [], "routeSegments": [] }, "attributes": [ {} ], "name": "shipmentName", "notes": "shipmentNotes", "bookings": [ {} ], "id": "d1b4c593-7b6a-49d2-8c8e-12c914c20016", "createdDateTime": "2024-03-25T10:39:05", "lastModifiedDateTime": "2024-03-25T10:39:05" }

Get Shipment

Request

As a shipper, fetch a shipment created for booking.

Path
shipmentIdstring(uuid)required

The project44-generated shipment identifier

curl -i -X GET \
  'https://na12.api.project44.com/services/booking/v1/shipments/{shipmentId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Successful Response

Bodyapplication/json
attributesArray of objects(CustomAttribute)<= 5 items

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.

bookingsArray of objects(Booking)

A list of all bookings related to the shipment.

createdDateTimestring(date-time)

The datetime when the shipment was created.

identifiersArray of objects(LogisticsIdentifier)<= 20 items
idstring(uuid)

The project44-generated shipment identifier

lastModifiedDateTimestring(date-time)

The datetime when the shipment was last updated.

namestring

The descriptive name or otherwise human-readable description of the shipment created; this is not visible to the carrier.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

routeInfoobject(RouteInfo)

The stops and route for the shipment.

Response
application/json
{ "attributes": [ {} ], "bookings": [ {} ], "createdDateTime": "2019-08-24T14:15:22Z", "identifiers": [ {} ], "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "lastModifiedDateTime": "2019-08-24T14:15:22Z", "name": "string", "notes": "string", "routeInfo": { "routeSegments": [], "stops": [] } }

Update Shipment

Request

As a shipper, update a shipment for booking.

Path
shipmentIdstring(uuid)required

The project44-generated shipment identifier

Bodyapplication/jsonrequired
attributesArray of objects(CustomAttribute)<= 5 items

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.

bookingsArray of objects(CreateUpdateBookingWithId)

A list of all bookings related to the shipment.

identifiersArray of objects(LogisticsIdentifier)<= 20 items
namestring

The descriptive name or otherwise human-readable description of the shipment created; this is not visible to the carrier.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

routeInfoobject(RouteInfo)

The stops and route for the shipment.

curl -i -X PUT \
  'https://na12.api.project44.com/services/booking/v1/shipments/{shipmentId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "identifiers": [
      {
        "type": "CUSTOMER_REFERENCE",
        "value": "SHIPMENT-12345"
      }
    ],
    "routeInfo": {
      "stops": [
        {
          "id": "e379cef8-5af6-47e3-9c8f-052faa2c5061",
          "type": "PICKUP",
          "arrivalDate": "2092-12-10",
          "contacts": [],
          "accessorials": [],
          "location": {
            "identifiers": [],
            "address": {
              "addressLines": [
                "222 W. Merchandise Mart Plaza",
                "Suite 1744"
              ],
              "postalCode": "60654",
              "city": "Chicago",
              "state": "IL",
              "country": "US"
            }
          }
        },
        {
          "id": "b996b45d-94cb-42ac-aa6f-cd8c7cfe7a5b",
          "type": "DELIVERY",
          "arrivalDate": "2092-12-12",
          "contacts": [],
          "accessorials": [],
          "location": {
            "identifiers": [],
            "address": {
              "addressLines": [
                "3800 N Lamar Blvd",
                "Suite 210"
              ],
              "postalCode": "78756",
              "city": "Austin",
              "state": "TX",
              "country": "US"
            }
          }
        }
      ],
      "routeSegments": [
        {
          "fromStopId": "e379cef8-5af6-47e3-9c8f-052faa2c5061",
          "toStopId": "b996b45d-94cb-42ac-aa6f-cd8c7cfe7a5b"
        }
      ]
    },
    "attributes": [
      {
        "name": "attribute name",
        "values": [
          "string value 1",
          "string value 2"
        ]
      }
    ],
    "bookings": []
  }'

Responses

Success

Bodyapplication/json
attributesArray of objects(CustomAttribute)<= 5 items

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.

bookingsArray of objects(Booking)

A list of all bookings related to the shipment.

createdDateTimestring(date-time)

The datetime when the shipment was created.

identifiersArray of objects(LogisticsIdentifier)<= 20 items
idstring(uuid)

The project44-generated shipment identifier

lastModifiedDateTimestring(date-time)

The datetime when the shipment was last updated.

namestring

The descriptive name or otherwise human-readable description of the shipment created; this is not visible to the carrier.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

routeInfoobject(RouteInfo)

The stops and route for the shipment.

Response
application/json
{ "identifiers": [ {} ], "routeInfo": { "stops": [], "routeSegments": [] }, "attributes": [ {} ], "name": "shipmentName", "notes": "shipmentNotes", "bookings": [ {} ], "id": "d1b4c593-7b6a-49d2-8c8e-12c914c20016", "createdDateTime": "2024-03-25T10:39:05", "lastModifiedDateTime": "2024-03-25T10:39:05" }

Cancel All Bookings For Shipment

Request

As a shipper, change the status of all related and eligible bookings to CANCELLED.

Path
shipmentIdstring(uuid)required

The project44-generated shipment identifier

curl -i -X POST \
  'https://na12.api.project44.com/services/booking/v1/shipments/{shipmentId}/bookings/cancellations' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Successful Response

Bodyapplication/json
attributesArray of objects(CustomAttribute)<= 5 items

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.

bookingsArray of objects(Booking)

A list of all bookings related to the shipment.

createdDateTimestring(date-time)

The datetime when the shipment was created.

identifiersArray of objects(LogisticsIdentifier)<= 20 items
idstring(uuid)

The project44-generated shipment identifier

lastModifiedDateTimestring(date-time)

The datetime when the shipment was last updated.

namestring

The descriptive name or otherwise human-readable description of the shipment created; this is not visible to the carrier.

notesstring<= 300 characters

An optional, shipper-provided free-text space for notes on the shipment.

routeInfoobject(RouteInfo)

The stops and route for the shipment.

Response
application/json
{ "attributes": [ {} ], "bookings": [ {} ], "createdDateTime": "2019-08-24T14:15:22Z", "identifiers": [ {} ], "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "lastModifiedDateTime": "2019-08-24T14:15:22Z", "name": "string", "notes": "string", "routeInfo": { "routeSegments": [], "stops": [] } }

Multi-Modal: Packaging

API used for managing packages for shipment planning.

Operations

Multi-Modal: Document

...

Operations

Webhook

...

Operations

Shipment Webhook Data

Operations to describe the payload expected from project44 when integrated with a webhook for shipments.

Operations

Inventory Order and Load Webhook Data

Operations to describe the payload expected from project44 when integrated with a webhook for orders and loads.

Operations

Capacity Provider Metadata

...

Operations

Capacity Provider Contact Management

...

Operations

Capacity Provider Account Management

...

Operations

Capacity Provider Account Group Management

...

Operations

LTL: Push Tracking

...

Operations

LTL: Push Imaging

...

Operations

TL: Capacity Provider Push

...

Operations

Parcel: Push Tracking

...

Operations

Universal Push: Truckload

...

Operations

Push Updates

...

Operations

Analytics: Port Intelligence

...

Operations

Stop Location Management

...

Operations

Postal Address Validation

...

Operations

Appointments

Create, reschedule, cancel, fetch appointments in Yard Management Systems(YMS)

Operations

Capacity

Get capacity for a YMS site within the specified time range

Operations

Milestones

Update yard milestones for a shipment

Operations

Reason Codes

Retrieve all reason codes for the specified YMS site

Operations

Site Codes

Retrieve all sites for the specified YMS tenant

Operations

Slots

Get available slots for a shipment in Yard Management Systems(YMS)

Operations

Invitations

...

Operations

Ocean: Point-to-Point Schedules

...

Operations

LTL: Tracking

...

Operations

TL: Tracking

...

Operations

TL: Webhook

...

Operations

Parcel: Tracking

...

Operations

Parcel: Webhook

...

Operations

Rail: Tracking

...

Operations

Ocean: Tracking

...

Operations