Version 4.0.0 of project44's API
Version 4.0.0 of project44's API
Use this POST call to start a tracking job, initializing Truckload Tracking. Note that If the shipment is initialized by using GeoCoordinates instead of an address, it may be possible that a street address will not be returned in the response.
shipment
Contains fields used to configure the truckload shipment API.
A list of up to 5 attributes (name/value pairs) to associate with this shipment. These values will be returned unchanged with each status response for the shipment and can also be used to group together related shipments in reporting scenarios, e.g. all shipments tracked for "division":"Central". The attribute names have to be unique within the list. These attributes may optionally be predefined by your organization's admin
The requested capacity provider account group containing the account used for authentication with the capacity provider's API.
A list of equipment identifier changes that should be applied to the shipment
A user-defined list of equipment identifiers identifying truckload equipment that can be tracked, such as cell phones and electronic logging devices (ELDs). These need not be unique to this shipment.
The project44-generated id for the shipment. This may not be provided when creating a shipment, but will always be returned in the shipment confirmation. This id may be used in subsequent API calls to reference a shipment.
Computed value representing how long (in minutes) shipment is being Idle. This value is available while whole status history is being requested.
The project44-generated id for tracking an intermodal shipment. This id may be used in subsequent API calls to reference a shipment.
A user-defined list of all the point of interest for the shipment.
Contains fields which pertain to the shipment contents.
A user-defined list of shipment identifiers that are unique to this shipment and carrier identifier. These may be used in subsequent API calls along with the carrier identifier to reference a shipment. They may also be used by project44 to track the shipment. Only one shipment identifier of each type may be provided.
The project44-generated id for the truckload shipment. This id may be used in subsequent API calls to reference a shipment.
A user-defined list of all the shipment stops for the shipment, including stop locations and appointment windows. This list must contain the shipment's origin and destination and any stops of interest in between (other pickup or delivery locations).
Contains fields which influence the way project44 calculates arrival estimates for stops.
Contains information about how we obtain tracking data for the shipment. Currently, this list always includes either zero or one active tracking method. Future versions will be able to combine data from more than one tracking method. In that case, the primary tracking method will be listed first.
curl -i -X POST \ https://developers.project44.com/_mock/guides/shippers/visibility/ftl/api/api/v4/tl/shipments \ -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \ -H 'Content-Type: application/json' \ -d '{ "apiConfiguration": { "fallBackToDefaultAccountGroup": true, "webhookEndpointConfigName": "string", "enableIntelligentMatching": true }, "attributes": [ { "name": "string", "predefined": true, "value": "string", "values": [ "string" ] } ], "capacityProviderAccountGroup": { "code": "string", "accounts": [ { "code": "string" } ] }, "carrierIdentifier": { "type": "SCAC", "value": "string" }, "equipmentIdentifierChanges": [ { "timestamp": "string", "type": "MOBILE_PHONE_NUMBER", "value": "string" } ], "equipmentIdentifiers": [ { "shouldDelete": true, "type": "MOBILE_PHONE_NUMBER", "value": "string" } ], "id": 0, "idleDuration": 0, "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "pointsOfInterest": [ { "geoCoordinates": { "latitude": -90, "longitude": -180 }, "location": { "address": { "postalCode": "string", "addressLines": [ "str" ], "city": "string", "state": "string", "country": "US" }, "contact": { "companyName": "string", "contactName": "string", "phoneNumber": "string", "phoneNumberCountryCode": "string", "phoneNumber2": "string", "phoneNumber2CountryCode": "string", "email": "string", "faxNumber": "string", "faxNumberCountryCode": "string" } }, "locationIdentifiers": [ { "type": "EXTERNAL", "value": "string" } ], "pointOfInterestDescription": "string", "pointOfInterestId": "string", "pointOfInterestName": "string", "pointOfInterestType": "GENERAL", "shouldDelete": true } ], "sensors": [ { "identifier": { "type": "TEMPERATURE", "value": "string" }, "max": 0.1, "min": 0.1, "target": 0.1 } ], "shipmentDetails": { "lineItems": [ { "commodityCode": "string", "contact": { "companyName": "string", "contactName": "string", "phoneNumber": "string", "phoneNumberCountryCode": "string", "phoneNumber2": "string", "phoneNumber2CountryCode": "string", "email": "string", "faxNumber": "string", "faxNumberCountryCode": "string" }, "deliveryStopNumber": 0, "description": "string", "freightClass": "50", "handlingUnitPackageType": "PLT", "handlingUnitQuantity": 0, "involvedParties": [ { "partyIdentifiers": [ {} ] } ], "itemIdentifiers": [ { "type": "PURCHASE_ORDER", "value": "string" } ], "itemPackageType": "BAG", "itemQuantity": 0, "monetaryValue": { "currency": "USD", "amount": 0 }, "pickupStopNumber": 0, "subLineItems": [ { "commodityCode": "string", "contact": { "companyName": "string", "contactName": "string", "phoneNumber": "string", "phoneNumberCountryCode": "string", "phoneNumber2": "string", "phoneNumber2CountryCode": "string", "email": "string", "faxNumber": "string", "faxNumberCountryCode": "string" }, "description": "string", "freightClass": "50", "involvedParties": [ { "partyIdentifiers": [] } ], "itemIdentifiers": [ {} ], "itemPackageType": "BAG", "itemQuantity": 0, "monetaryValue": { "currency": "USD", "amount": 0 }, "totalWeight": { "weight": 0, "weightUnit": "LB" } } ], "totalWeight": { "weight": 0, "weightUnit": "LB" } } ] }, "shipmentIdentifiers": [ { "type": "BILL_OF_LADING", "value": "string" } ], "shipmentLegId": "6798b072-0783-4009-baaf-2b9780277fbd", "shipmentStops": [ { "stopNumber": 1, "appointmentWindow": { "startDateTime": "2019-08-24T14:15:22Z", "endDateTime": "2019-08-24T14:15:22Z", "localTimeZoneIdentifier": "string" }, "additionalAppointmentWindows": [ { "type": "STRATEGIC", "appointmentWindow": { "startDateTime": "2019-08-24T14:15:22Z", "endDateTime": "2019-08-24T14:15:22Z", "localTimeZoneIdentifier": "string" }, "appointmentStatus": "PENDING", "identifiers": [ { "type": "DOCK", "value": "string" } ] } ], "location": { "address": { "postalCode": "string", "addressLines": [ "str" ], "city": "string", "state": "string", "country": "US" }, "contact": { "companyName": "string", "contactName": "string", "phoneNumber": "string", "phoneNumberCountryCode": "string", "phoneNumber2": "string", "phoneNumber2CountryCode": "string", "email": "string", "faxNumber": "string", "faxNumberCountryCode": "string" } }, "locationIdentifiers": [ { "type": "EXTERNAL", "value": "string" } ], "stopName": "string", "geoCoordinates": { "latitude": -90, "longitude": -180 }, "stopType": "PICKUP", "stopDescription": "string", "involvedParties": [ { "partyIdentifiers": [ { "type": "ACCOUNT", "value": "string" } ] } ], "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "externalArrivalEstimate": { "source": "SHIPPER", "dateTime": "2019-08-24T14:15:22Z" } } ], "shippingDetails": { "multipleDrivers": true, "truckDetails": { "truckDimensions": { "length": 0, "width": 0, "height": 0, "unitOfMeasure": "IN" }, "weight": 0, "weightUnitOfMeasure": "LB", "truckType": "AUTO_CARRIER" }, "hazmatDetails": { "hazardClasses": [ "string" ] } }, "trackingDetails": [ { "equipmentIdentifier": { "shouldDelete": true, "type": "MOBILE_PHONE_NUMBER", "value": "string" }, "equipmentIdentifierSource": "CUSTOMER", "trackingType": "MOBILE_PHONE" } ] }'
{ "infoMessages": [ { … } ], "shipment": { "apiConfiguration": { … }, "attributes": [ … ], "capacityProviderAccountGroup": { … }, "carrierIdentifier": { … }, "equipmentIdentifierChanges": [ … ], "equipmentIdentifiers": [ … ], "id": 0, "idleDuration": 0, "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "pointsOfInterest": [ … ], "sensors": [ … ], "shipmentDetails": { … }, "shipmentIdentifiers": [ … ], "shipmentLegId": "6798b072-0783-4009-baaf-2b9780277fbd", "shipmentStops": [ … ], "shippingDetails": { … }, "trackingDetails": [ … ] } }
Use this endpoint to update a truckload shipment with a given shipment identifier.
Example: You can update location fields or appointment windows to reflect changes with this endpoint.
Note that tracking information updates are currently not supported. This includes shipmentIdentifiers, capacityProviderAccountGroup, and apiConfiguration changes.* It is suggested to first get the current shipment object from the GET shipment endpoint, make the desired modifications, and then PUT the modified shipment to this endpoint. After the modified shipment is successfully submitted, the updated stops, attributes, shipping details etc. will be applied and used in tracking from then on. If a shipment PUT request comes in with only GeoCoordinates, it is possible that a street address will not be returned in the response.shipment
Contains fields used to configure the truckload shipment API.
A list of up to 5 attributes (name/value pairs) to associate with this shipment. These values will be returned unchanged with each status response for the shipment and can also be used to group together related shipments in reporting scenarios, e.g. all shipments tracked for "division":"Central". The attribute names have to be unique within the list. These attributes may optionally be predefined by your organization's admin
The requested capacity provider account group containing the account used for authentication with the capacity provider's API.
A list of equipment identifier changes that should be applied to the shipment
A user-defined list of equipment identifiers identifying truckload equipment that can be tracked, such as cell phones and electronic logging devices (ELDs). These need not be unique to this shipment.
The project44-generated id for the shipment. This may not be provided when creating a shipment, but will always be returned in the shipment confirmation. This id may be used in subsequent API calls to reference a shipment.
Computed value representing how long (in minutes) shipment is being Idle. This value is available while whole status history is being requested.
The project44-generated id for tracking an intermodal shipment. This id may be used in subsequent API calls to reference a shipment.
A user-defined list of all the point of interest for the shipment.
Contains fields which pertain to the shipment contents.
A user-defined list of shipment identifiers that are unique to this shipment and carrier identifier. These may be used in subsequent API calls along with the carrier identifier to reference a shipment. They may also be used by project44 to track the shipment. Only one shipment identifier of each type may be provided.
The project44-generated id for the truckload shipment. This id may be used in subsequent API calls to reference a shipment.
A user-defined list of all the shipment stops for the shipment, including stop locations and appointment windows. This list must contain the shipment's origin and destination and any stops of interest in between (other pickup or delivery locations).
Contains fields which influence the way project44 calculates arrival estimates for stops.
Contains information about how we obtain tracking data for the shipment. Currently, this list always includes either zero or one active tracking method. Future versions will be able to combine data from more than one tracking method. In that case, the primary tracking method will be listed first.
curl -i -X PUT \ https://developers.project44.com/_mock/guides/shippers/visibility/ftl/api/api/v4/tl/shipments \ -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \ -H 'Content-Type: application/json' \ -d '{ "apiConfiguration": { "fallBackToDefaultAccountGroup": true, "webhookEndpointConfigName": "string", "enableIntelligentMatching": true }, "attributes": [ { "name": "string", "predefined": true, "value": "string", "values": [ "string" ] } ], "capacityProviderAccountGroup": { "code": "string", "accounts": [ { "code": "string" } ] }, "carrierIdentifier": { "type": "SCAC", "value": "string" }, "equipmentIdentifierChanges": [ { "timestamp": "string", "type": "MOBILE_PHONE_NUMBER", "value": "string" } ], "equipmentIdentifiers": [ { "shouldDelete": true, "type": "MOBILE_PHONE_NUMBER", "value": "string" } ], "id": 0, "idleDuration": 0, "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "pointsOfInterest": [ { "geoCoordinates": { "latitude": -90, "longitude": -180 }, "location": { "address": { "postalCode": "string", "addressLines": [ "str" ], "city": "string", "state": "string", "country": "US" }, "contact": { "companyName": "string", "contactName": "string", "phoneNumber": "string", "phoneNumberCountryCode": "string", "phoneNumber2": "string", "phoneNumber2CountryCode": "string", "email": "string", "faxNumber": "string", "faxNumberCountryCode": "string" } }, "locationIdentifiers": [ { "type": "EXTERNAL", "value": "string" } ], "pointOfInterestDescription": "string", "pointOfInterestId": "string", "pointOfInterestName": "string", "pointOfInterestType": "GENERAL", "shouldDelete": true } ], "sensors": [ { "identifier": { "type": "TEMPERATURE", "value": "string" }, "max": 0.1, "min": 0.1, "target": 0.1 } ], "shipmentDetails": { "lineItems": [ { "commodityCode": "string", "contact": { "companyName": "string", "contactName": "string", "phoneNumber": "string", "phoneNumberCountryCode": "string", "phoneNumber2": "string", "phoneNumber2CountryCode": "string", "email": "string", "faxNumber": "string", "faxNumberCountryCode": "string" }, "deliveryStopNumber": 0, "description": "string", "freightClass": "50", "handlingUnitPackageType": "PLT", "handlingUnitQuantity": 0, "involvedParties": [ { "partyIdentifiers": [ {} ] } ], "itemIdentifiers": [ { "type": "PURCHASE_ORDER", "value": "string" } ], "itemPackageType": "BAG", "itemQuantity": 0, "monetaryValue": { "currency": "USD", "amount": 0 }, "pickupStopNumber": 0, "subLineItems": [ { "commodityCode": "string", "contact": { "companyName": "string", "contactName": "string", "phoneNumber": "string", "phoneNumberCountryCode": "string", "phoneNumber2": "string", "phoneNumber2CountryCode": "string", "email": "string", "faxNumber": "string", "faxNumberCountryCode": "string" }, "description": "string", "freightClass": "50", "involvedParties": [ { "partyIdentifiers": [] } ], "itemIdentifiers": [ {} ], "itemPackageType": "BAG", "itemQuantity": 0, "monetaryValue": { "currency": "USD", "amount": 0 }, "totalWeight": { "weight": 0, "weightUnit": "LB" } } ], "totalWeight": { "weight": 0, "weightUnit": "LB" } } ] }, "shipmentIdentifiers": [ { "type": "BILL_OF_LADING", "value": "string" } ], "shipmentLegId": "6798b072-0783-4009-baaf-2b9780277fbd", "shipmentStops": [ { "stopNumber": 1, "appointmentWindow": { "startDateTime": "2019-08-24T14:15:22Z", "endDateTime": "2019-08-24T14:15:22Z", "localTimeZoneIdentifier": "string" }, "additionalAppointmentWindows": [ { "type": "STRATEGIC", "appointmentWindow": { "startDateTime": "2019-08-24T14:15:22Z", "endDateTime": "2019-08-24T14:15:22Z", "localTimeZoneIdentifier": "string" }, "appointmentStatus": "PENDING", "identifiers": [ { "type": "DOCK", "value": "string" } ] } ], "location": { "address": { "postalCode": "string", "addressLines": [ "str" ], "city": "string", "state": "string", "country": "US" }, "contact": { "companyName": "string", "contactName": "string", "phoneNumber": "string", "phoneNumberCountryCode": "string", "phoneNumber2": "string", "phoneNumber2CountryCode": "string", "email": "string", "faxNumber": "string", "faxNumberCountryCode": "string" } }, "locationIdentifiers": [ { "type": "EXTERNAL", "value": "string" } ], "stopName": "string", "geoCoordinates": { "latitude": -90, "longitude": -180 }, "stopType": "PICKUP", "stopDescription": "string", "involvedParties": [ { "partyIdentifiers": [ { "type": "ACCOUNT", "value": "string" } ] } ], "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "externalArrivalEstimate": { "source": "SHIPPER", "dateTime": "2019-08-24T14:15:22Z" } } ], "shippingDetails": { "multipleDrivers": true, "truckDetails": { "truckDimensions": { "length": 0, "width": 0, "height": 0, "unitOfMeasure": "IN" }, "weight": 0, "weightUnitOfMeasure": "LB", "truckType": "AUTO_CARRIER" }, "hazmatDetails": { "hazardClasses": [ "string" ] } }, "trackingDetails": [ { "equipmentIdentifier": { "shouldDelete": true, "type": "MOBILE_PHONE_NUMBER", "value": "string" }, "equipmentIdentifierSource": "CUSTOMER", "trackingType": "MOBILE_PHONE" } ] }'
{ "infoMessages": [ { … } ], "shipment": { "apiConfiguration": { … }, "attributes": [ … ], "capacityProviderAccountGroup": { … }, "carrierIdentifier": { … }, "equipmentIdentifierChanges": [ … ], "equipmentIdentifiers": [ … ], "id": 0, "idleDuration": 0, "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "pointsOfInterest": [ … ], "sensors": [ … ], "shipmentDetails": { … }, "shipmentIdentifiers": [ … ], "shipmentLegId": "6798b072-0783-4009-baaf-2b9780277fbd", "shipmentStops": [ … ], "shippingDetails": { … }, "trackingDetails": [ … ] } }
curl -i -X DELETE \ 'https://developers.project44.com/_mock/guides/shippers/visibility/ftl/api/api/v4/tl/shipments?carrierIdentifier.type=SCAC&carrierIdentifier.value=string&shipmentIdentifier.type=BILL_OF_LADING&shipmentIdentifier.value=string' \ -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
{ "httpStatusCode": 0, "httpMessage": "string", "errorMessage": "string", "errors": [ { … } ], "supportReferenceId": "string" }
curl -i -X GET \ 'https://developers.project44.com/_mock/guides/shippers/visibility/ftl/api/api/v4/tl/shipments/{id}' \ -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
OK
Contains fields used to configure the truckload shipment API.
A list of up to 5 attributes (name/value pairs) to associate with this shipment. These values will be returned unchanged with each status response for the shipment and can also be used to group together related shipments in reporting scenarios, e.g. all shipments tracked for "division":"Central". The attribute names have to be unique within the list. These attributes may optionally be predefined by your organization's admin
The requested capacity provider account group containing the account used for authentication with the capacity provider's API.
A list of equipment identifier changes that should be applied to the shipment
A user-defined list of equipment identifiers identifying truckload equipment that can be tracked, such as cell phones and electronic logging devices (ELDs). These need not be unique to this shipment.
The project44-generated id for the shipment. This may not be provided when creating a shipment, but will always be returned in the shipment confirmation. This id may be used in subsequent API calls to reference a shipment.
Computed value representing how long (in minutes) shipment is being Idle. This value is available while whole status history is being requested.
The project44-generated id for tracking an intermodal shipment. This id may be used in subsequent API calls to reference a shipment.
A user-defined list of all the point of interest for the shipment.
Contains fields which pertain to the shipment contents.
A user-defined list of shipment identifiers that are unique to this shipment and carrier identifier. These may be used in subsequent API calls along with the carrier identifier to reference a shipment. They may also be used by project44 to track the shipment. Only one shipment identifier of each type may be provided.
The project44-generated id for the truckload shipment. This id may be used in subsequent API calls to reference a shipment.
A user-defined list of all the shipment stops for the shipment, including stop locations and appointment windows. This list must contain the shipment's origin and destination and any stops of interest in between (other pickup or delivery locations).
Contains fields which influence the way project44 calculates arrival estimates for stops.
Contains information about how we obtain tracking data for the shipment. Currently, this list always includes either zero or one active tracking method. Future versions will be able to combine data from more than one tracking method. In that case, the primary tracking method will be listed first.
{ "apiConfiguration": { "fallBackToDefaultAccountGroup": true, "webhookEndpointConfigName": "string", "enableIntelligentMatching": true }, "attributes": [ { … } ], "capacityProviderAccountGroup": { "code": "string", "accounts": [ … ] }, "carrierIdentifier": { "type": "SCAC", "value": "string" }, "equipmentIdentifierChanges": [ { … } ], "equipmentIdentifiers": [ { … } ], "id": 0, "idleDuration": 0, "masterShipmentId": "2e04ec4a-749a-4ef4-a452-b7dc8cca16aa", "pointsOfInterest": [ { … } ], "sensors": [ { … } ], "shipmentDetails": { "lineItems": [ … ] }, "shipmentIdentifiers": [ { … } ], "shipmentLegId": "6798b072-0783-4009-baaf-2b9780277fbd", "shipmentStops": [ { … } ], "shippingDetails": { "multipleDrivers": true, "truckDetails": { … }, "hazmatDetails": { … } }, "trackingDetails": [ { … } ] }
Use this endpoint to update a truckload shipment.
Example: You can update location fields or appointment windows to reflect changes with this endpoint.
Note that tracking information updates are currently not supported. This includes shipmentIdentifiers, capacityProviderAccountGroup, and apiConfiguration changes.* It is suggested to first get the current shipment object from the GET shipment endpoint, make the desired modifications, and then PUT the modified shipment to this endpoint. After the modified shipment is successfully submitted, the updated stops, attributes, shipping details etc. will be applied and used in tracking from then on. If a shipment PUT request comes in with only GeoCoordinates, it is possible that a street address will not be returned in the response.shipment
Contains fields used to configure the truckload shipment API.
A list of up to 5 attributes (name/value pairs) to associate with this shipment. These values will be returned unchanged with each status response for the shipment and can also be used to group together related shipments in reporting scenarios, e.g. all shipments tracked for "division":"Central". The attribute names have to be unique within the list. These attributes may optionally be predefined by your organization's admin
The requested capacity provider account group containing the account used for authentication with the capacity provider's API.
A list of equipment identifier changes that should be applied to the shipment
A user-defined list of equipment identifiers identifying truckload equipment that can be tracked, such as cell phones and electronic logging devices (ELDs). These need not be unique to this shipment.
The project44-generated id for the shipment. This may not be provided when creating a shipment, but will always be returned in the shipment confirmation. This id may be used in subsequent API calls to reference a shipment.
Computed value representing how long (in minutes) shipment is being Idle. This value is available while whole status history is being requested.
The project44-generated id for tracking an intermodal shipment. This id may be used in subsequent API calls to reference a shipment.
A user-defined list of all the point of interest for the shipment.
Contains fields which pertain to the shipment contents.