Introduction
"Advancing transportation technology through API connections"
The Core Services API is designed to be easy to use and simple to test to help project44's customers and partners get up and running quickly. Use the API endpoints to connect to your Carriers and other Capacity Providers to obtain rate quotes, dispatch and track shipments and retrieve the documents needed for invoicing and reconciling payments.
The current version of the API is v4, which is not backward compatible. Any organization who went live before August 2018 will require a version bump to use the new APIs. Contact your project44 representative to learn more about upgrading to v4.
Getting Started
The project44 API is a RESTful API. This means that the API is designed to allow you to work with objects using familiar HTTP verbs like so:
- read =
GET
- create =
POST
- update =
PUT
- delete =
DELETE
All production API requests are made to:
Americas: https://na12.api.project44.com/api/v4
Europe: https://eu12.api.project44.com/api/v4
There is also a testing sandbox to use when developing and testing applications, with requests being made to:
Americas:https://na12.api.sandbox.p-44.com/api/v4
The following domains are deprecated, and will no longer work after 2025-03-31:
Americas Production: https://cloud.p-44.com/api/v4
Americas Production: https://cloud-v2.p-44.com/api/v4
Europe Production: https://cloud.eu.p-44.com/api/v4
Europe Production: https://cloud-v2.eu.p-44.com/api/v4
Americas Sandbox: https://test.p-44.com/api/v4
The Core Services API is available to project44 customers and integration partners and all organizations must acquire valid credentials prior to using the web services. All the API endpoints require authentication. Please see the Authentication section below for additional information.
Supported Data Formats
The project44 API uses JSON
as the default format.
Why JSON?
JSON is inherently more efficient than XML as fewer bits are being passed across the wire, and less machine time is required to process the data on either end. JSON is a string representation of a key/value pair where the values can be arrays, strings, integers or even full objects. The key names are relevant and enable JSON parsers to quickly scan through the records and convert them into objects developers can interact with in code. JSON is also lightweight, which means existing objects and collections can be serialized and deserialized quickly and easily.
Software Development Kits (SDKs)
While you can use project44 APIs by making direct HTTP requests, we provide client library code for all our APIs that make it easier to access them from your favorite languages.
Currently we support Java and C# client libraries. See the SDKs page for links to the updated SDKs.
Connectivity Troubleshooting
As a result of project44 infrastructure changes, some customers have reported experiencing issues with connectivity to project44. Below we have documented issue symptoms and corrective action you can take.
IP Change
SUMMARY: The underlying IPs associated with the endpoint customer(s) are pushing data to changed at the time of the outage. If customer IT teams have IP whitelisting configured on customer firewall or other network security systems for external traffic to project44, this would have caused the outage.
REMEDY: project44 Tech suggests updating your firewall whitelists to permit traffic on a DNS/URL-basis, as opposed explicitly whitelisting the underlying IPs. This change in configuration in customer system(s) would eliminate risk of outage when project44 makes necessary infrastructure changes in the future.
Certificate Issues
Pinning Certificates
SUMMARY: Autorotation of certificates was enabled at the time some customers began experiencing 'handshake' connectivity errors. This may negatively affect customers if they pin leaf or intermediate certs.
REMEDY: We do not recommend pinning leaf or intermediate certs as they might be revoked and rotated without notice.
Allowable Cipher Changes
SUMMARY: Cipher ECDHE-ECDSA-AES256-SHA
is no longer allowed by project44 systems due to a second order effect of critical infrastructure changes. This is causing some customers to experience 'handshake' errors.
REMEDY: Varies based on IT system, but customers should remove support for the ECDHE-ECDSA-AES256-SHA
Cipher in favor of any of the Ciphers now Supported below.
Ciphers Currently Supported
- ECDHE-ECDSA-AES128-GCM-SHA256
- ECDHE-ECDSA-CHACHA20-POLY1305
- ECDHE-RSA-AES128-GCM-SHA256
- ECDHE-RSA-CHACHA20-POLY1305
- ECDHE-ECDSA-AES128-SHA256
- ECDHE-ECDSA-AES128-SHA
- ECDHE-RSA-AES128-SHA256
- ECDHE-RSA-AES128-SHA
- AES128-GCM-SHA256
- AES128-SHA256
- AES128-SHA
- ECDHE-ECDSA-AES256-GCM-SHA384
- ECDHE-ECDSA-AES256-SHA384
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-RSA-AES256-SHA384
- ECDHE-RSA-AES256-SHA
- AES256-GCM-SHA384
- AES256-SHA256
- AES256-SHA
- DES-CBC3-SHA
- AEAD-AES128-GCM-SHA256
- AEAD-AES256-GCM-SHA384
- AEAD-CHACHA20-POLY1305-SHA256