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

Create a shipment.

Request

Query
userobject(UserPrincipalDomain)required
user.​accountNonExpiredboolean
user.​accountNonLockedboolean
user.​credentialsNonExpiredboolean
user.​enabledboolean
user.​idinteger(int64)
user.​localestring
user.​registrationDatestring(date-time)
user.​tenantIdinteger(int64)
user.​tenantUuidstring(uuid)
user.​tenantPurposestring
Enum"DEFAULT""DEMO""PROOF_OF_CONCEPT""INTERNAL_TEST""TEST""PRODUCTION""ARCHIVED""INTERNAL_INFRASTRUCTURE"
user.​usernamestring
Bodyrequired
accessorialServicesArray of objects(AccessorialService)

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.

apiConfigurationobject(ShipmentApiConfiguration)

Contains fields used to configure the shipment API.

capacityProviderAccountGroupobject(CapacityProviderAccountGroup)

The requested capacity provider account group containing the account used for authentication with the capacity provider's API.

carrierCodestring

SCAC of the carrier that is to pick up this shipment. Required only for capacity providers that support multiple SCACs.

capacityProviderQuoteNumberstring

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.

customsInfoobject(CustomsInfo)

A customs broker information.

currencyCodestring(enum)(Currency)

The currency of the shipment value

Enum"USD""CAD""MXN""EUR"
destinationLocationobject(Location)

A physical location.

deliveryWindowobject(LocalDateTimeWindow)

A date and time range, local to the applicable location, representing a window of availability.

deliveryNotestring

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.

destinationInvolvedPartiesArray of objects(Party)

A list of parties and their identifiers related to the destination location. These are typically your customers receiving freight at the destination.

directionOverridestring

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"
enhancedHandlingUnitsArray of objects(HandlingUnit)

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.

emergencyContactobject(Contact)

Contact information.

handlingUnitTypeQuantitiesArray of objects(HandlingUnitTypeQuantity)

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.

lineItemsArray of objects(LineItem)

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.

lengthUnitstring(enum)(LengthUnit)

Length measurement units

Default "FT"
Enum"IN""CM""FT""M"
originLocationobject(Location)

A physical location.

originInvolvedPartiesArray of objects(Party)

A list of parties and their identifiers related to the origin location. These are typically your suppliers providing freight at the origin.

pickupWindowobject(LocalDateTimeWindow)

A date and time range, local to the applicable location, representing a window of availability.

pickupNotestring

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.

paymentTermsOverridestring

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"
requesterLocationobject(Location)

A physical location.

rateQuoteIdstring

The quote ID from project44. This is an optional field.

shipmentIdentifiersArray of objects(ShipmentIdentifier)

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.

totalLinearFeetinteger(int32)

The total linear feet that the shipment being quoted will take up in a trailer. Only for volume LTL shipments.

totalHandlingUnitsinteger(int32)>= 1

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.

weightUnitstring(enum)(WeightUnit)

Weight measurement units (default: 'LB').

Default "LB"
Enum"LB""KG"
curl -i -X POST \
  'https://na12.api.project44.com/api/v2/shipments?accountNonExpired=true&accountNonLocked=true&credentialsNonExpired=true&enabled=true&id=0&locale=string&registrationDate=2019-08-24T14%3A15%3A22Z&tenantId=0&tenantPurpose=DEFAULT&tenantUuid=e46705ba-31a8-4f12-b6d3-f41ec1d77a9a&username=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "accessorialServices": [
      {
        "code": "string"
      }
    ],
    "apiConfiguration": {
      "allowUnsupportedAccessorials": true,
      "enableUnitConversion": true,
      "fallBackToDefaultAccountGroup": true,
      "noteConfiguration": {
        "enableTruncation": true,
        "noteSections": [
          {
            "name": "PICKUP_NOTE"
          }
        ]
      },
      "preScheduledPickup": true,
      "pickupOnly": true
    },
    "capacityProviderAccountGroup": {
      "accounts": [
        {
          "code": "string"
        }
      ],
      "code": "string"
    },
    "carrierCode": "string",
    "capacityProviderQuoteNumber": "string",
    "customsInfo": {
      "customsBrokerLocation": {
        "address": {
          "addressLines": [
            "string"
          ],
          "city": "string",
          "country": "US",
          "postalCode": "string",
          "state": "string"
        },
        "contact": {
          "companyName": "string",
          "contactName": "string",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumberCountryCode": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string"
        }
      }
    },
    "currencyCode": "USD",
    "destinationLocation": {
      "address": {
        "addressLines": [
          "string"
        ],
        "city": "string",
        "country": "US",
        "postalCode": "string",
        "state": "string"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumberCountryCode": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string"
      }
    },
    "deliveryWindow": {
      "date": "2019-08-24",
      "endTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      },
      "startTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      }
    },
    "deliveryNote": "string",
    "destinationInvolvedParties": [
      {
        "addressInfo": {
          "addressLines": [
            "string"
          ],
          "addressLabel": "string",
          "city": "string",
          "country": "US",
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "postalCode": "string",
          "state": "string"
        },
        "contactInfo": {
          "companyName": "string",
          "email": "user@example.com",
          "familyName": "string",
          "givenName": "string",
          "mobilePhoneNumber": "string",
          "phoneNumber": "string"
        },
        "identifyingCodes": {
          "codeListProvider": "WAVE",
          "codeListName": "DID",
          "partyCode": "string"
        },
        "locationIdentifiers": [
          {
            "type": "EXTERNAL",
            "value": "string"
          }
        ],
        "partyType": "SHIPPER",
        "vatNumber": "string"
      }
    ],
    "directionOverride": "SHIPPER",
    "enhancedHandlingUnits": [
      {
        "commodityType": "string",
        "contact": {
          "companyName": "string",
          "contactName": "string",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumberCountryCode": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string"
        },
        "deliveryStopNumber": 0,
        "description": "string",
        "freightClasses": [
          "string"
        ],
        "handlingUnitType": "BAG",
        "harmonizedCode": "string",
        "handlingUnitQuantity": 0,
        "handlingUnitDimensions": {
          "height": 0,
          "length": 0,
          "width": 0
        },
        "nmfcCodes": [
          {
            "code": "string"
          }
        ],
        "pickupStopNumber": 0,
        "packages": [
          {
            "contact": {
              "companyName": "string",
              "contactName": "string",
              "email": "string",
              "faxNumber": "string",
              "faxNumberCountryCode": "string",
              "phoneNumber": "string",
              "phoneNumberCountryCode": "string",
              "phoneNumber2": "string",
              "phoneNumber2CountryCode": "string"
            },
            "description": "string",
            "freightClass": "string",
            "involvedParties": [
              {
                "addressInfo": {
                  "addressLines": []
                },
                "contactInfo": {},
                "identifyingCodes": {},
                "locationIdentifiers": [
                  null
                ],
                "partyType": "SHIPPER",
                "vatNumber": "string"
              }
            ],
            "nmfcCodes": [
              {
                "code": "string"
              }
            ],
            "packageQuantity": 0,
            "packageContainerType": "BAG",
            "packageDimensions": {
              "height": 0,
              "length": 0,
              "width": 0
            },
            "packageContents": [
              {
                "countryOfManufacture": "US",
                "description": "string",
                "hazmatDetails": [
                  null
                ],
                "packageContentQuantity": 0,
                "packageContentIdentifiers": [
                  null
                ]
              }
            ],
            "weightPerPackage": 0
          }
        ],
        "stackable": true,
        "totalValue": {
          "amount": 0,
          "currency": "USD"
        },
        "weightPerHandlingUnit": 0
      }
    ],
    "emergencyContact": {
      "companyName": "string",
      "contactName": "string",
      "email": "string",
      "faxNumber": "string",
      "faxNumberCountryCode": "string",
      "phoneNumber": "string",
      "phoneNumberCountryCode": "string",
      "phoneNumber2": "string",
      "phoneNumber2CountryCode": "string"
    },
    "handlingUnitTypeQuantities": [
      {
        "handlingUnitType": "BAG",
        "quantity": 0
      }
    ],
    "lineItems": [
      {
        "commodityType": "string",
        "countryOfManufacture": "US",
        "description": "string",
        "freightClass": "50,55,60,65,70,77.5,85,92.5,100,110,125,150,175,200,250,300,400,500",
        "hazmatDetail": {
          "hazardClass": "string",
          "identificationNumber": "string",
          "properShippingName": "string",
          "packingGroup": "I"
        },
        "harmonizedCode": "string",
        "id": 0,
        "insuranceAmount": 0,
        "nmfcItemCode": "string",
        "nmfcSubCode": "string",
        "packageDimensions": {
          "height": 0,
          "length": 0,
          "width": 0
        },
        "packageType": "BAG",
        "stackable": true,
        "totalWeight": 1,
        "totalPackages": 1,
        "totalPieces": 1,
        "totalValue": 0
      }
    ],
    "lengthUnit": "IN",
    "originLocation": {
      "address": {
        "addressLines": [
          "string"
        ],
        "city": "string",
        "country": "US",
        "postalCode": "string",
        "state": "string"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumberCountryCode": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string"
      }
    },
    "originInvolvedParties": [
      {
        "addressInfo": {
          "addressLines": [
            "string"
          ],
          "addressLabel": "string",
          "city": "string",
          "country": "US",
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "postalCode": "string",
          "state": "string"
        },
        "contactInfo": {
          "companyName": "string",
          "email": "user@example.com",
          "familyName": "string",
          "givenName": "string",
          "mobilePhoneNumber": "string",
          "phoneNumber": "string"
        },
        "identifyingCodes": {
          "codeListProvider": "WAVE",
          "codeListName": "DID",
          "partyCode": "string"
        },
        "locationIdentifiers": [
          {
            "type": "EXTERNAL",
            "value": "string"
          }
        ],
        "partyType": "SHIPPER",
        "vatNumber": "string"
      }
    ],
    "pickupWindow": {
      "date": "2019-08-24",
      "endTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      },
      "startTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      }
    },
    "pickupNote": "string",
    "paymentTermsOverride": "PREPAID",
    "requesterLocation": {
      "address": {
        "addressLines": [
          "string"
        ],
        "city": "string",
        "country": "US",
        "postalCode": "string",
        "state": "string"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumberCountryCode": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string"
      }
    },
    "rateQuoteId": "string",
    "shipmentIdentifiers": [
      {
        "type": "BILL_OF_LADING",
        "value": "string"
      }
    ],
    "totalLinearFeet": 0,
    "totalHandlingUnits": 1,
    "weightUnit": "LB"
  }'

Responses

Created

Body
capacityProviderBolUrlstring

URL pointing to a PDF document of the capacity provider's Bill of Lading, if available.

idinteger(int64)

The project44-generated id of this LTL shipment. This can be passed to LTL tracking to retrieve this shipment's status information.

infoMessagesArray of objects(Message)

System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here.

packingVisualizationUrlstring

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})

pickupNotestring

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.

pickupDateTimestring(date-time)

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)

shipmentIdentifiersArray of objects(ShipmentIdentifier)

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.

Response
{ "capacityProviderBolUrl": "string", "id": 0, "infoMessages": [ {} ], "packingVisualizationUrl": "string", "pickupNote": "string", "pickupDateTime": "2019-08-24T14:15:22Z", "shipmentIdentifiers": [ {} ] }

Create a shipment.

Request

Query
userobject(UserPrincipalDomain)required
user.​accountNonExpiredboolean
user.​accountNonLockedboolean
user.​credentialsNonExpiredboolean
user.​enabledboolean
user.​idinteger(int64)
user.​localestring
user.​registrationDatestring(date-time)
user.​tenantIdinteger(int64)
user.​tenantUuidstring(uuid)
user.​tenantPurposestring
Enum"DEFAULT""DEMO""PROOF_OF_CONCEPT""INTERNAL_TEST""TEST""PRODUCTION""ARCHIVED""INTERNAL_INFRASTRUCTURE"
user.​usernamestring
Bodyrequired
accessorialServicesArray of objects(AccessorialService)

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.

apiConfigurationobject(ShipmentApiConfiguration)

Contains fields used to configure the shipment API.

capacityProviderAccountGroupobject(CapacityProviderAccountGroup)

The requested capacity provider account group containing the account used for authentication with the capacity provider's API.

carrierCodestring

SCAC of the carrier that is to pick up this shipment. Required only for capacity providers that support multiple SCACs.

capacityProviderQuoteNumberstring

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.

customsInfoobject(CustomsInfo)

A customs broker information.

currencyCodestring(enum)(Currency)

The currency of the shipment value

Enum"USD""CAD""MXN""EUR"
destinationLocationobject(Location)

A physical location.

deliveryWindowobject(LocalDateTimeWindow)

A date and time range, local to the applicable location, representing a window of availability.

deliveryNotestring

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.

destinationInvolvedPartiesArray of objects(Party)

A list of parties and their identifiers related to the destination location. These are typically your customers receiving freight at the destination.

directionOverridestring

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"
enhancedHandlingUnitsArray of objects(HandlingUnit)

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.

emergencyContactobject(Contact)

Contact information.

handlingUnitTypeQuantitiesArray of objects(HandlingUnitTypeQuantity)

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.

lineItemsArray of objects(LineItem)

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.

lengthUnitstring(enum)(LengthUnit)

Length measurement units

Default "FT"
Enum"IN""CM""FT""M"
originLocationobject(Location)

A physical location.

originInvolvedPartiesArray of objects(Party)

A list of parties and their identifiers related to the origin location. These are typically your suppliers providing freight at the origin.

pickupWindowobject(LocalDateTimeWindow)

A date and time range, local to the applicable location, representing a window of availability.

pickupNotestring

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.

paymentTermsOverridestring

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"
requesterLocationobject(Location)

A physical location.

rateQuoteIdstring

The quote ID from project44. This is an optional field.

shipmentIdentifiersArray of objects(ShipmentIdentifier)

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.

totalLinearFeetinteger(int32)

The total linear feet that the shipment being quoted will take up in a trailer. Only for volume LTL shipments.

totalHandlingUnitsinteger(int32)>= 1

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.

weightUnitstring(enum)(WeightUnit)

Weight measurement units (default: 'LB').

Default "LB"
Enum"LB""KG"
curl -i -X POST \
  'https://na12.api.project44.com/api/v3/shipments?accountNonExpired=true&accountNonLocked=true&credentialsNonExpired=true&enabled=true&id=0&locale=string&registrationDate=2019-08-24T14%3A15%3A22Z&tenantId=0&tenantPurpose=DEFAULT&tenantUuid=e46705ba-31a8-4f12-b6d3-f41ec1d77a9a&username=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "accessorialServices": [
      {
        "code": "string"
      }
    ],
    "apiConfiguration": {
      "allowUnsupportedAccessorials": true,
      "enableUnitConversion": true,
      "fallBackToDefaultAccountGroup": true,
      "noteConfiguration": {
        "enableTruncation": true,
        "noteSections": [
          {
            "name": "PICKUP_NOTE"
          }
        ]
      },
      "preScheduledPickup": true,
      "pickupOnly": true
    },
    "capacityProviderAccountGroup": {
      "accounts": [
        {
          "code": "string"
        }
      ],
      "code": "string"
    },
    "carrierCode": "string",
    "capacityProviderQuoteNumber": "string",
    "customsInfo": {
      "customsBrokerLocation": {
        "address": {
          "addressLines": [
            "string"
          ],
          "city": "string",
          "country": "US",
          "postalCode": "string",
          "state": "string"
        },
        "contact": {
          "companyName": "string",
          "contactName": "string",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumberCountryCode": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string"
        }
      }
    },
    "currencyCode": "USD",
    "destinationLocation": {
      "address": {
        "addressLines": [
          "string"
        ],
        "city": "string",
        "country": "US",
        "postalCode": "string",
        "state": "string"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumberCountryCode": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string"
      }
    },
    "deliveryWindow": {
      "date": "2019-08-24",
      "endTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      },
      "startTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      }
    },
    "deliveryNote": "string",
    "destinationInvolvedParties": [
      {
        "addressInfo": {
          "addressLines": [
            "string"
          ],
          "addressLabel": "string",
          "city": "string",
          "country": "US",
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "postalCode": "string",
          "state": "string"
        },
        "contactInfo": {
          "companyName": "string",
          "email": "user@example.com",
          "familyName": "string",
          "givenName": "string",
          "mobilePhoneNumber": "string",
          "phoneNumber": "string"
        },
        "identifyingCodes": {
          "codeListProvider": "WAVE",
          "codeListName": "DID",
          "partyCode": "string"
        },
        "locationIdentifiers": [
          {
            "type": "EXTERNAL",
            "value": "string"
          }
        ],
        "partyType": "SHIPPER",
        "vatNumber": "string"
      }
    ],
    "directionOverride": "SHIPPER",
    "enhancedHandlingUnits": [
      {
        "commodityType": "string",
        "contact": {
          "companyName": "string",
          "contactName": "string",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumberCountryCode": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string"
        },
        "deliveryStopNumber": 0,
        "description": "string",
        "freightClasses": [
          "string"
        ],
        "handlingUnitType": "BAG",
        "harmonizedCode": "string",
        "handlingUnitQuantity": 0,
        "handlingUnitDimensions": {
          "height": 0,
          "length": 0,
          "width": 0
        },
        "nmfcCodes": [
          {
            "code": "string"
          }
        ],
        "pickupStopNumber": 0,
        "packages": [
          {
            "contact": {
              "companyName": "string",
              "contactName": "string",
              "email": "string",
              "faxNumber": "string",
              "faxNumberCountryCode": "string",
              "phoneNumber": "string",
              "phoneNumberCountryCode": "string",
              "phoneNumber2": "string",
              "phoneNumber2CountryCode": "string"
            },
            "description": "string",
            "freightClass": "string",
            "involvedParties": [
              {
                "addressInfo": {
                  "addressLines": []
                },
                "contactInfo": {},
                "identifyingCodes": {},
                "locationIdentifiers": [
                  null
                ],
                "partyType": "SHIPPER",
                "vatNumber": "string"
              }
            ],
            "nmfcCodes": [
              {
                "code": "string"
              }
            ],
            "packageQuantity": 0,
            "packageContainerType": "BAG",
            "packageDimensions": {
              "height": 0,
              "length": 0,
              "width": 0
            },
            "packageContents": [
              {
                "countryOfManufacture": "US",
                "description": "string",
                "hazmatDetails": [
                  null
                ],
                "packageContentQuantity": 0,
                "packageContentIdentifiers": [
                  null
                ]
              }
            ],
            "weightPerPackage": 0
          }
        ],
        "stackable": true,
        "totalValue": {
          "amount": 0,
          "currency": "USD"
        },
        "weightPerHandlingUnit": 0
      }
    ],
    "emergencyContact": {
      "companyName": "string",
      "contactName": "string",
      "email": "string",
      "faxNumber": "string",
      "faxNumberCountryCode": "string",
      "phoneNumber": "string",
      "phoneNumberCountryCode": "string",
      "phoneNumber2": "string",
      "phoneNumber2CountryCode": "string"
    },
    "handlingUnitTypeQuantities": [
      {
        "handlingUnitType": "BAG",
        "quantity": 0
      }
    ],
    "lineItems": [
      {
        "commodityType": "string",
        "countryOfManufacture": "US",
        "description": "string",
        "freightClass": "50,55,60,65,70,77.5,85,92.5,100,110,125,150,175,200,250,300,400,500",
        "hazmatDetail": {
          "hazardClass": "string",
          "identificationNumber": "string",
          "properShippingName": "string",
          "packingGroup": "I"
        },
        "harmonizedCode": "string",
        "id": 0,
        "insuranceAmount": 0,
        "nmfcItemCode": "string",
        "nmfcSubCode": "string",
        "packageDimensions": {
          "height": 0,
          "length": 0,
          "width": 0
        },
        "packageType": "BAG",
        "stackable": true,
        "totalWeight": 1,
        "totalPackages": 1,
        "totalPieces": 1,
        "totalValue": 0
      }
    ],
    "lengthUnit": "IN",
    "originLocation": {
      "address": {
        "addressLines": [
          "string"
        ],
        "city": "string",
        "country": "US",
        "postalCode": "string",
        "state": "string"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumberCountryCode": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string"
      }
    },
    "originInvolvedParties": [
      {
        "addressInfo": {
          "addressLines": [
            "string"
          ],
          "addressLabel": "string",
          "city": "string",
          "country": "US",
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "postalCode": "string",
          "state": "string"
        },
        "contactInfo": {
          "companyName": "string",
          "email": "user@example.com",
          "familyName": "string",
          "givenName": "string",
          "mobilePhoneNumber": "string",
          "phoneNumber": "string"
        },
        "identifyingCodes": {
          "codeListProvider": "WAVE",
          "codeListName": "DID",
          "partyCode": "string"
        },
        "locationIdentifiers": [
          {
            "type": "EXTERNAL",
            "value": "string"
          }
        ],
        "partyType": "SHIPPER",
        "vatNumber": "string"
      }
    ],
    "pickupWindow": {
      "date": "2019-08-24",
      "endTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      },
      "startTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      }
    },
    "pickupNote": "string",
    "paymentTermsOverride": "PREPAID",
    "requesterLocation": {
      "address": {
        "addressLines": [
          "string"
        ],
        "city": "string",
        "country": "US",
        "postalCode": "string",
        "state": "string"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumberCountryCode": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string"
      }
    },
    "rateQuoteId": "string",
    "shipmentIdentifiers": [
      {
        "type": "BILL_OF_LADING",
        "value": "string"
      }
    ],
    "totalLinearFeet": 0,
    "totalHandlingUnits": 1,
    "weightUnit": "LB"
  }'

Responses

Created

Body
capacityProviderBolUrlstring

URL pointing to a PDF document of the capacity provider's Bill of Lading, if available.

idinteger(int64)

The project44-generated id of this LTL shipment. This can be passed to LTL tracking to retrieve this shipment's status information.

infoMessagesArray of objects(Message)

System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here.

packingVisualizationUrlstring

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})

pickupNotestring

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.

pickupDateTimestring(date-time)

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)

shipmentIdentifiersArray of objects(ShipmentIdentifier)

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.

Response
{ "capacityProviderBolUrl": "string", "id": 0, "infoMessages": [ {} ], "packingVisualizationUrl": "string", "pickupNote": "string", "pickupDateTime": "2019-08-24T14:15:22Z", "shipmentIdentifiers": [ {} ] }

Cancel a dispatched shipment.

Request

Query
userobject(UserPrincipalDomain)required
user.​accountNonExpiredboolean
user.​accountNonLockedboolean
user.​credentialsNonExpiredboolean
user.​enabledboolean
user.​idinteger(int64)
user.​localestring
user.​registrationDatestring(date-time)
user.​tenantIdinteger(int64)
user.​tenantUuidstring(uuid)
user.​tenantPurposestring
Enum"DEFAULT""DEMO""PROOF_OF_CONCEPT""INTERNAL_TEST""TEST""PRODUCTION""ARCHIVED""INTERNAL_INFRASTRUCTURE"
user.​usernamestring
Bodyrequired
apiConfigurationobject(LtlShipmentCancellationApiConfiguration)

Contains fields used to configure the LTL shipment API.

capacityProviderAccountGroupobject(CapacityProviderAccountGroup)

The requested capacity provider account group containing the account used for authentication with the capacity provider's API.

originAddressobject(Address)

A postal address.

shipmentIdentifiersArray of objects(LtlShipmentIdentifier)

${LtlShipmentCancellation.v4.apiModel.shipmentIdentifiers.value}

curl -i -X POST \
  'https://na12.api.project44.com/api/v3/shipments/cancellations?accountNonExpired=true&accountNonLocked=true&credentialsNonExpired=true&enabled=true&id=0&locale=string&registrationDate=2019-08-24T14%3A15%3A22Z&tenantId=0&tenantPurpose=DEFAULT&tenantUuid=e46705ba-31a8-4f12-b6d3-f41ec1d77a9a&username=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "apiConfiguration": {
      "fallBackToDefaultAccountGroup": true
    },
    "capacityProviderAccountGroup": {
      "accounts": [
        {
          "code": "string"
        }
      ],
      "code": "string"
    },
    "originAddress": {
      "addressLines": [
        "string"
      ],
      "city": "string",
      "country": "US",
      "postalCode": "string",
      "state": "string"
    },
    "shipmentIdentifiers": [
      {
        "primaryForType": true,
        "source": "CUSTOMER",
        "type": "PRO",
        "value": "string"
      }
    ]
  }'

Responses

OK

Body
infoMessagesArray of objects(Message)

${ApiModel.infoMessages.value}

shipmentIdentifiersArray of objects(LtlShipmentIdentifier)

${LtlShipmentCancellationConfirmation.apiModel.shipmentIdentifiers.value}

Response
{ "infoMessages": [ {} ], "shipmentIdentifiers": [ {} ] }

Get all ProNumber blocks.

Request

curl -i -X GET \
  https://na12.api.project44.com/api/v3/shipments/pronumbers/query \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/jsonArray [
blockStartinteger(int64)
blockEndinteger(int64)
currentProNumberinteger(int64)
remainingProsInBlockinteger(int64)
vendorIdstring
]
Response
application/json
[ { "blockStart": 0, "blockEnd": 0, "currentProNumber": 0, "remainingProsInBlock": 0, "vendorId": "string" } ]

Update a ProNumber for specific vendor.

Request

Bodyapplication/jsonrequired
blockStartinteger(int64)
blockEndinteger(int64)
checkDigitinteger(int64)
vendorIdstring
curl -i -X PUT \
  https://na12.api.project44.com/api/v3/shipments/pronumbers/query \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "blockStart": 0,
    "blockEnd": 0,
    "checkDigit": 0,
    "vendorId": "string"
  }'

Responses

OK

Bodyapplication/json
string
Response
application/json
"string"

Generate a ProNumber for specific vendor.

Request

Query
userobject(UserPrincipalDomain)required
user.​accountNonExpiredboolean
user.​accountNonLockedboolean
user.​credentialsNonExpiredboolean
user.​enabledboolean
user.​idinteger(int64)
user.​localestring
user.​registrationDatestring(date-time)
user.​tenantIdinteger(int64)
user.​tenantUuidstring(uuid)
user.​tenantPurposestring
Enum"DEFAULT""DEMO""PROOF_OF_CONCEPT""INTERNAL_TEST""TEST""PRODUCTION""ARCHIVED""INTERNAL_INFRASTRUCTURE"
user.​usernamestring
Bodyapplication/jsonrequired
apiConfigurationobject(ProNumberQueryApiConfiguration)
capacityProviderAccountGroupobject(CapacityProviderAccountGroup)

The requested capacity provider account group containing the account used for authentication with the capacity provider's API.

originLocationobject(Address)

A postal address.

curl -i -X POST \
  'https://na12.api.project44.com/api/v3/shipments/pronumbers/query?accountNonExpired=true&accountNonLocked=true&credentialsNonExpired=true&enabled=true&id=0&locale=string&registrationDate=2019-08-24T14%3A15%3A22Z&tenantId=0&tenantPurpose=DEFAULT&tenantUuid=e46705ba-31a8-4f12-b6d3-f41ec1d77a9a&username=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "apiConfiguration": {
      "fallBackToDefaultAccountGroup": true
    },
    "capacityProviderAccountGroup": {
      "accounts": [
        {
          "code": "string"
        }
      ],
      "code": "string"
    },
    "originLocation": {
      "addressLines": [
        "string"
      ],
      "city": "string",
      "country": "US",
      "postalCode": "string",
      "state": "string"
    }
  }'

Responses

OK

Bodyapplication/json
proNumberstring
vendorIdstring
Response
application/json
{ "proNumber": "string", "vendorId": "string" }

Create a shipment.

Request

Query
userobject(UserPrincipalDomain)required
user.​accountNonExpiredboolean
user.​accountNonLockedboolean
user.​credentialsNonExpiredboolean
user.​enabledboolean
user.​idinteger(int64)
user.​localestring
user.​registrationDatestring(date-time)
user.​tenantIdinteger(int64)
user.​tenantUuidstring(uuid)
user.​tenantPurposestring
Enum"DEFAULT""DEMO""PROOF_OF_CONCEPT""INTERNAL_TEST""TEST""PRODUCTION""ARCHIVED""INTERNAL_INFRASTRUCTURE"
user.​usernamestring
Bodyrequired
accessorialServicesArray of objects(AccessorialService)

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.

apiConfigurationobject(ShipmentApiConfiguration)

Contains fields used to configure the shipment API.

capacityProviderAccountGroupobject(CapacityProviderAccountGroup)

The requested capacity provider account group containing the account used for authentication with the capacity provider's API.

carrierCodestring

SCAC of the carrier that is to pick up this shipment. Required only for capacity providers that support multiple SCACs.

capacityProviderQuoteNumberstring

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.

customsInfoobject(CustomsInfo)

A customs broker information.

currencyCodestring(enum)(Currency)

The currency of the shipment value

Enum"USD""CAD""MXN""EUR"
destinationLocationobject(Location)

A physical location.

deliveryWindowobject(LocalDateTimeWindow)

A date and time range, local to the applicable location, representing a window of availability.

deliveryNotestring

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.

destinationInvolvedPartiesArray of objects(Party)

A list of parties and their identifiers related to the destination location. These are typically your customers receiving freight at the destination.

directionOverridestring

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"
enhancedHandlingUnitsArray of objects(HandlingUnit)

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.

emergencyContactobject(Contact)

Contact information.

handlingUnitTypeQuantitiesArray of objects(HandlingUnitTypeQuantity)

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.

lineItemsArray of objects(LineItem)

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.

lengthUnitstring(enum)(LengthUnit)

Length measurement units

Default "FT"
Enum"IN""CM""FT""M"
originLocationobject(Location)

A physical location.

originInvolvedPartiesArray of objects(Party)

A list of parties and their identifiers related to the origin location. These are typically your suppliers providing freight at the origin.

pickupWindowobject(LocalDateTimeWindow)

A date and time range, local to the applicable location, representing a window of availability.

pickupNotestring

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.

paymentTermsOverridestring

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"
requesterLocationobject(Location)

A physical location.

rateQuoteIdstring

The quote ID from project44. This is an optional field.

shipmentIdentifiersArray of objects(LtlShipmentIdentifier)

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.

totalLinearFeetinteger(int32)

The total linear feet that the shipment being quoted will take up in a trailer. Only for volume LTL shipments.

totalHandlingUnitsinteger(int32)>= 1

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.

weightUnitstring(enum)(WeightUnit)

Weight measurement units (default: 'LB').

Default "LB"
Enum"LB""KG"
curl -i -X POST \
  'https://na12.api.project44.com/api/v4/ltl/dispatchedshipments?accountNonExpired=true&accountNonLocked=true&credentialsNonExpired=true&enabled=true&id=0&locale=string&registrationDate=2019-08-24T14%3A15%3A22Z&tenantId=0&tenantPurpose=DEFAULT&tenantUuid=e46705ba-31a8-4f12-b6d3-f41ec1d77a9a&username=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "accessorialServices": [
      {
        "code": "string"
      }
    ],
    "apiConfiguration": {
      "allowUnsupportedAccessorials": true,
      "enableUnitConversion": true,
      "fallBackToDefaultAccountGroup": true,
      "noteConfiguration": {
        "enableTruncation": true,
        "noteSections": [
          {
            "name": "PICKUP_NOTE"
          }
        ]
      },
      "preScheduledPickup": true,
      "pickupOnly": true
    },
    "capacityProviderAccountGroup": {
      "accounts": [
        {
          "code": "string"
        }
      ],
      "code": "string"
    },
    "carrierCode": "string",
    "capacityProviderQuoteNumber": "string",
    "customsInfo": {
      "customsBrokerLocation": {
        "address": {
          "addressLines": [
            "string"
          ],
          "city": "string",
          "country": "US",
          "postalCode": "string",
          "state": "string"
        },
        "contact": {
          "companyName": "string",
          "contactName": "string",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumberCountryCode": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string"
        }
      }
    },
    "currencyCode": "USD",
    "destinationLocation": {
      "address": {
        "addressLines": [
          "string"
        ],
        "city": "string",
        "country": "US",
        "postalCode": "string",
        "state": "string"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumberCountryCode": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string"
      }
    },
    "deliveryWindow": {
      "date": "2019-08-24",
      "endTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      },
      "startTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      }
    },
    "deliveryNote": "string",
    "destinationInvolvedParties": [
      {
        "addressInfo": {
          "addressLines": [
            "string"
          ],
          "addressLabel": "string",
          "city": "string",
          "country": "US",
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "postalCode": "string",
          "state": "string"
        },
        "contactInfo": {
          "companyName": "string",
          "email": "user@example.com",
          "familyName": "string",
          "givenName": "string",
          "mobilePhoneNumber": "string",
          "phoneNumber": "string"
        },
        "identifyingCodes": {
          "codeListProvider": "WAVE",
          "codeListName": "DID",
          "partyCode": "string"
        },
        "locationIdentifiers": [
          {
            "type": "EXTERNAL",
            "value": "string"
          }
        ],
        "partyType": "SHIPPER",
        "vatNumber": "string"
      }
    ],
    "directionOverride": "SHIPPER",
    "enhancedHandlingUnits": [
      {
        "commodityType": "string",
        "contact": {
          "companyName": "string",
          "contactName": "string",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumberCountryCode": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string"
        },
        "deliveryStopNumber": 0,
        "description": "string",
        "freightClasses": [
          "string"
        ],
        "handlingUnitType": "BAG",
        "harmonizedCode": "string",
        "handlingUnitQuantity": 0,
        "handlingUnitDimensions": {
          "height": 0,
          "length": 0,
          "width": 0
        },
        "nmfcCodes": [
          {
            "code": "string"
          }
        ],
        "pickupStopNumber": 0,
        "packages": [
          {
            "contact": {
              "companyName": "string",
              "contactName": "string",
              "email": "string",
              "faxNumber": "string",
              "faxNumberCountryCode": "string",
              "phoneNumber": "string",
              "phoneNumberCountryCode": "string",
              "phoneNumber2": "string",
              "phoneNumber2CountryCode": "string"
            },
            "description": "string",
            "freightClass": "string",
            "involvedParties": [
              {
                "addressInfo": {
                  "addressLines": []
                },
                "contactInfo": {},
                "identifyingCodes": {},
                "locationIdentifiers": [
                  null
                ],
                "partyType": "SHIPPER",
                "vatNumber": "string"
              }
            ],
            "nmfcCodes": [
              {
                "code": "string"
              }
            ],
            "packageQuantity": 0,
            "packageContainerType": "BAG",
            "packageDimensions": {
              "height": 0,
              "length": 0,
              "width": 0
            },
            "packageContents": [
              {
                "countryOfManufacture": "US",
                "description": "string",
                "hazmatDetails": [
                  null
                ],
                "packageContentQuantity": 0,
                "packageContentIdentifiers": [
                  null
                ]
              }
            ],
            "weightPerPackage": 0
          }
        ],
        "stackable": true,
        "totalValue": {
          "amount": 0,
          "currency": "USD"
        },
        "weightPerHandlingUnit": 0
      }
    ],
    "emergencyContact": {
      "companyName": "string",
      "contactName": "string",
      "email": "string",
      "faxNumber": "string",
      "faxNumberCountryCode": "string",
      "phoneNumber": "string",
      "phoneNumberCountryCode": "string",
      "phoneNumber2": "string",
      "phoneNumber2CountryCode": "string"
    },
    "handlingUnitTypeQuantities": [
      {
        "handlingUnitType": "BAG",
        "quantity": 0
      }
    ],
    "lineItems": [
      {
        "commodityType": "string",
        "countryOfManufacture": "US",
        "description": "string",
        "freightClass": "50,55,60,65,70,77.5,85,92.5,100,110,125,150,175,200,250,300,400,500",
        "hazmatDetail": {
          "hazardClass": "string",
          "identificationNumber": "string",
          "properShippingName": "string",
          "packingGroup": "I"
        },
        "harmonizedCode": "string",
        "id": 0,
        "insuranceAmount": 0,
        "nmfcItemCode": "string",
        "nmfcSubCode": "string",
        "packageDimensions": {
          "height": 0,
          "length": 0,
          "width": 0
        },
        "packageType": "BAG",
        "stackable": true,
        "totalWeight": 1,
        "totalPackages": 1,
        "totalPieces": 1,
        "totalValue": 0
      }
    ],
    "lengthUnit": "IN",
    "originLocation": {
      "address": {
        "addressLines": [
          "string"
        ],
        "city": "string",
        "country": "US",
        "postalCode": "string",
        "state": "string"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumberCountryCode": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string"
      }
    },
    "originInvolvedParties": [
      {
        "addressInfo": {
          "addressLines": [
            "string"
          ],
          "addressLabel": "string",
          "city": "string",
          "country": "US",
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "postalCode": "string",
          "state": "string"
        },
        "contactInfo": {
          "companyName": "string",
          "email": "user@example.com",
          "familyName": "string",
          "givenName": "string",
          "mobilePhoneNumber": "string",
          "phoneNumber": "string"
        },
        "identifyingCodes": {
          "codeListProvider": "WAVE",
          "codeListName": "DID",
          "partyCode": "string"
        },
        "locationIdentifiers": [
          {
            "type": "EXTERNAL",
            "value": "string"
          }
        ],
        "partyType": "SHIPPER",
        "vatNumber": "string"
      }
    ],
    "pickupWindow": {
      "date": "2019-08-24",
      "endTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      },
      "startTime": {
        "hour": 0,
        "minute": 0,
        "nano": 0,
        "second": 0
      }
    },
    "pickupNote": "string",
    "paymentTermsOverride": "PREPAID",
    "requesterLocation": {
      "address": {
        "addressLines": [
          "string"
        ],
        "city": "string",
        "country": "US",
        "postalCode": "string",
        "state": "string"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumberCountryCode": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string"
      }
    },
    "rateQuoteId": "string",
    "shipmentIdentifiers": [
      {
        "primaryForType": true,
        "source": "CUSTOMER",
        "type": "PRO",
        "value": "string"
      }
    ],
    "totalLinearFeet": 0,
    "totalHandlingUnits": 1,
    "weightUnit": "LB"
  }'

Responses

Created

Body
capacityProviderBolUrlstring

URL pointing to a PDF document of the capacity provider's Bill of Lading, if available.

idinteger(int64)

The id of the dispatched shipment.

infoMessagesArray of objects(Message)

System messages and messages from the capacity provider with severity 'INFO' or 'WARNING'. No messages with severity 'ERROR' will be returned here.

packingVisualizationUrlstring

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})

pickupNotestring

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.

pickupDateTimestring(date-time)

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)

shipmentIdentifiersArray of objects(LtlShipmentIdentifier)

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.

Response
{ "capacityProviderBolUrl": "string", "id": 0, "infoMessages": [ {} ], "packingVisualizationUrl": "string", "pickupNote": "string", "pickupDateTime": "2019-08-24T14:15:22Z", "shipmentIdentifiers": [ {} ] }

Cancel a dispatched shipment by id.

Request

Path
idinteger(int64)required

The project44-generated id of the dispatched LTL shipment to be cancelled.

Query
userobject(UserPrincipalDomain)required
user.​accountNonExpiredboolean
user.​accountNonLockedboolean
user.​credentialsNonExpiredboolean
user.​enabledboolean
user.​idinteger(int64)
user.​localestring
user.​registrationDatestring(date-time)
user.​tenantIdinteger(int64)
user.​tenantUuidstring(uuid)
user.​tenantPurposestring
Enum"DEFAULT""DEMO""PROOF_OF_CONCEPT""INTERNAL_TEST""TEST""PRODUCTION""ARCHIVED""INTERNAL_INFRASTRUCTURE"
user.​usernamestring
Bodyrequired
apiConfigurationobject(LtlShipmentCancellationApiConfiguration)

Contains fields used to configure the LTL shipment API.

capacityProviderAccountGroupobject(CapacityProviderAccountGroup)

The requested capacity provider account group containing the account used for authentication with the capacity provider's API.

originAddressobject(Address)

A postal address.

shipmentIdentifiersArray of objects(LtlShipmentIdentifier)

${LtlShipmentCancellation.v4.apiModel.shipmentIdentifiers.value}

curl -i -X POST \
  'https://na12.api.project44.com/api/v4/ltl/shipments/{id}/cancellations?accountNonExpired=true&accountNonLocked=true&credentialsNonExpired=true&enabled=true&id=0&locale=string&registrationDate=2019-08-24T14%3A15%3A22Z&tenantId=0&tenantPurpose=DEFAULT&tenantUuid=e46705ba-31a8-4f12-b6d3-f41ec1d77a9a&username=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "apiConfiguration": {
      "fallBackToDefaultAccountGroup": true
    },
    "capacityProviderAccountGroup": {
      "accounts": [
        {
          "code": "string"
        }
      ],
      "code": "string"
    },
    "originAddress": {
      "addressLines": [
        "string"
      ],
      "city": "string",
      "country": "US",
      "postalCode": "string",
      "state": "string"
    },
    "shipmentIdentifiers": [
      {
        "primaryForType": true,
        "source": "CUSTOMER",
        "type": "PRO",
        "value": "string"
      }
    ]
  }'

Responses

Created

Body
infoMessagesArray of objects(Message)

${ApiModel.infoMessages.value}

shipmentIdentifiersArray of objects(LtlShipmentIdentifier)

${LtlShipmentCancellationConfirmation.apiModel.shipmentIdentifiers.value}

Response
{ "infoMessages": [ {} ], "shipmentIdentifiers": [ {} ] }

Cancel a dispatched shipment by shipment identifier.

Request

Query
userobject(UserPrincipalDomain)required
user.​accountNonExpiredboolean
user.​accountNonLockedboolean
user.​credentialsNonExpiredboolean
user.​enabledboolean
user.​idinteger(int64)
user.​localestring
user.​registrationDatestring(date-time)
user.​tenantIdinteger(int64)
user.​tenantUuidstring(uuid)
user.​tenantPurposestring
Enum"DEFAULT""DEMO""PROOF_OF_CONCEPT""INTERNAL_TEST""TEST""PRODUCTION""ARCHIVED""INTERNAL_INFRASTRUCTURE"
user.​usernamestring
Bodyrequired
apiConfigurationobject(LtlShipmentCancellationApiConfiguration)

Contains fields used to configure the LTL shipment API.

capacityProviderAccountGroupobject(CapacityProviderAccountGroup)

The requested capacity provider account group containing the account used for authentication with the capacity provider's API.

originAddressobject(Address)

A postal address.

shipmentIdentifiersArray of objects(LtlShipmentIdentifier)

${LtlShipmentCancellation.v4.apiModel.shipmentIdentifiers.value}

curl -i -X POST \
  'https://na12.api.project44.com/api/v4/ltl/shipments/cancellations?accountNonExpired=true&accountNonLocked=true&credentialsNonExpired=true&enabled=true&id=0&locale=string&registrationDate=2019-08-24T14%3A15%3A22Z&tenantId=0&tenantPurpose=DEFAULT&tenantUuid=e46705ba-31a8-4f12-b6d3-f41ec1d77a9a&username=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "apiConfiguration": {
      "fallBackToDefaultAccountGroup": true
    },
    "capacityProviderAccountGroup": {
      "accounts": [
        {
          "code": "string"
        }
      ],
      "code": "string"
    },
    "originAddress": {
      "addressLines": [
        "string"
      ],
      "city": "string",
      "country": "US",
      "postalCode": "string",
      "state": "string"
    },
    "shipmentIdentifiers": [
      {
        "primaryForType": true,
        "source": "CUSTOMER",
        "type": "PRO",
        "value": "string"
      }
    ]
  }'

Responses

Created

Body
infoMessagesArray of objects(Message)

${ApiModel.infoMessages.value}

shipmentIdentifiersArray of objects(LtlShipmentIdentifier)

${LtlShipmentCancellationConfirmation.apiModel.shipmentIdentifiers.value}

Response
{ "infoMessages": [ {} ], "shipmentIdentifiers": [ {} ] }

Get all ProNumber blocks.

Request

curl -i -X GET \
  https://na12.api.project44.com/api/v4/shipments/pronumbers/query \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/jsonArray [
blockStartinteger(int64)
blockEndinteger(int64)
currentProNumberinteger(int64)
remainingProsInBlockinteger(int64)
vendorIdstring
]
Response
application/json
[ { "blockStart": 0, "blockEnd": 0, "currentProNumber": 0, "remainingProsInBlock": 0, "vendorId": "string" } ]

Update a ProNumber for specific vendor.

Request

Bodyapplication/jsonrequired
blockStartinteger(int64)
blockEndinteger(int64)
checkDigitinteger(int64)
vendorIdstring
curl -i -X PUT \
  https://na12.api.project44.com/api/v4/shipments/pronumbers/query \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "blockStart": 0,
    "blockEnd": 0,
    "checkDigit": 0,
    "vendorId": "string"
  }'

Responses

OK

Bodyapplication/json
string
Response
application/json
"string"

Generate a ProNumber for specific vendor.

Request

Query
userobject(UserPrincipalDomain)required
user.​accountNonExpiredboolean
user.​accountNonLockedboolean
user.​credentialsNonExpiredboolean
user.​enabledboolean
user.​idinteger(int64)
user.​localestring
user.​registrationDatestring(date-time)
user.​tenantIdinteger(int64)
user.​tenantUuidstring(uuid)
user.​tenantPurposestring
Enum"DEFAULT""DEMO""PROOF_OF_CONCEPT""INTERNAL_TEST""TEST""PRODUCTION""ARCHIVED""INTERNAL_INFRASTRUCTURE"
user.​usernamestring
Bodyapplication/jsonrequired
apiConfigurationobject(ProNumberQueryApiConfiguration)
capacityProviderAccountGroupobject(CapacityProviderAccountGroup)

The requested capacity provider account group containing the account used for authentication with the capacity provider's API.

originLocationobject(Address)

A postal address.

curl -i -X POST \
  'https://na12.api.project44.com/api/v4/shipments/pronumbers/query?accountNonExpired=true&accountNonLocked=true&credentialsNonExpired=true&enabled=true&id=0&locale=string&registrationDate=2019-08-24T14%3A15%3A22Z&tenantId=0&tenantPurpose=DEFAULT&tenantUuid=e46705ba-31a8-4f12-b6d3-f41ec1d77a9a&username=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "apiConfiguration": {
      "fallBackToDefaultAccountGroup": true
    },
    "capacityProviderAccountGroup": {
      "accounts": [
        {
          "code": "string"
        }
      ],
      "code": "string"
    },
    "originLocation": {
      "addressLines": [
        "string"
      ],
      "city": "string",
      "country": "US",
      "postalCode": "string",
      "state": "string"
    }
  }'

Responses

OK

Bodyapplication/json
proNumberstring
vendorIdstring
Response
application/json
{ "proNumber": "string", "vendorId": "string" }

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

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