Reference Data
Meet the next generation of supply chain data consistency. With Shipwell's cutting-edge reference data standards, your data stays consistent across APIs and integrations. For example, with the Shipwell Charge Codes Standard, you may use the same charge codes across Shipwell APIs and Shipwell will also handle normalizing and ensuring charge code consistency across integrations and service providers. Say goodbye to mismatched data and hello to seamless connectivity.
Shipwell is the standard that brings everything togetherβeffortlessly. It's not just smart. It's scalable. Unify your supply chain, get powerful data, and get the capabilities you need with Shipwell.
Tip
Shipwell supports consistent reference data and standardized codes that are used throughput the platform and APIs.
Spreadsheet
The following spreadsheet file contains a quick view of the reference data that you may view in a tabular format.
API Endpoints
The {{baseUrl}}
in the URL formats below indicates that this should be replaced with the "base URL" of the environment and API. The {{baseUrl}} = {{scheme}}://{{environmentHost}}/{{basePath}}
.
For example:
-
https://sandbox-api.shipwell.com/v2
as the{{baseUrl}}
for asandbox
endpoint is constructed using the following information:-
{{scheme}} = "https"
(aka HTTP protocol or scheme) is"https"
-
{{environmentHost}} = "sandbox-api.shipwell.com"
is dependent on the environment [i.e."sandbox-api.shipwell.com"
(sandbox),"api.shipwell.com"
(production), etc.] -
{{basePath}} = "/v2"
is dependent on the endpoint, but is typically"/v2"
or""
(no base path for next generation endpoints like Orders )
-
Reference Data Endpoints
The following is a table that links to the API Reference details (that notes the request and response details for each API endpoint) on each reference data endpoint in the Type
column, provides the URL Endpoint Template
, and a Description
of the reference data.
Type | URL Endpoint Template | Description |
---|---|---|
π Accessorials | {{baseUrl}}/shipments/accessorials/ |
Lists pickup and delivery accessorials |
π Appointment Types | {{baseUrl}}/shipments/appointment-types/ |
Lists pickup and delivery appointment types |
π Charge Codes | {{baseUrl}}/reference-data/charge-codes/ |
Lists charge codes |
π Charge Line Item Categories | {{baseUrl}}/shipments/charge-line-item-categories/ |
Lists charge line item categories |
π Document Types | {{baseUrl}}/documents/document-types/ |
Lists all currently support document types |
π Equipment Types | {{baseUrl}}/shipments/equipment-types/ |
Lists all equipment types and descriptions |
π Hazmat and Hazard Classes | {{baseUrl}}/shipments/hazmat/ |
Lists all hazardous material codes and associated descriptions |
π Location Types | {{baseUrl}}/location-types/ |
Lists all location types codes used in the API |
π NMFC (National Motor Freight Classification) Codes | {{baseUrl}}/shipments/nmfc/ |
Lists all inputted NFMC codes currently in the system. A complete list is found here. |
π Package Types | {{baseUrl}}/shipments/package-types/ |
Lists all packaging types currently supported the platform. Note that different carriers might provide different package types. In these instances we provide carrier specific package types, i.e. {{baseUrl}}/quoting/fedex/package-types/ , {{baseUrl}}/quoting/ups/purolator/ , {{baseUrl}}/quoting/ups/package-types/ , {{baseUrl}}/quoting/usps/package-types/ . |
π Piece Types | {{baseUrl}}/shipments/piece-types/ |
Lists all piece types currently supported the platform |
π Point of Contact Roles or Job Titles | {{baseUrl}}/vendors/vendor-poc-roles/ |
Lists all vendor point of contact roles or job title roles supported in the platform |
π Service Levels | {{baseUrl}}/shipments/service-levels/ |
Lists all service levels (e.g. standard, guaranteed) supported by the platform |
π Shipment Modes | {{baseUrl}}/shipments/shipment-modes/ |
Lists all shipment modes and descriptions supported by the platform |
π Shipment Rep Roles | {{baseUrl}}/shipments/shipment-rep-roles/ |
Lists all shipment representative roles or shipment rep roles supported by the platform |
π Shipment Stop Status Reason Codes | {{baseUrl}}/shipments/stop-status-reason-codes/ |
Lists all supported shipment stop status reason codes in the platform |
π Shipment States / Shipment Statuses | {{baseUrl}}/shipments/statuses/ |
Lists all supported statuses in the platform. Note that some user or use cases call this shipment states. |
Shipwell Charge Codes Standard
Shipwell has a Shipwell Charge Codes Standard that ensures that charge codes are consistent across the platform and in integrations. The Shipwell Charge Codes Standard is available as reference data.
Versions
Over time different charge codes will be added and Shipwell will version this data in case other systems have breaking changes if/when new charge codes are introduced. For most systems additive changes are not breaking, but for some typed programming languages or hardcoded charge codes it is useful to have a static list at a point in time.
- If your API or user token has a set version of the API then this is utilized as the version even when you do not specify the version. Typically, this is a company-level setting in your account.
-
If you do not have a set version of the API set as a fallback version, then the version defaults to the
latest
version (note: versions/version numbers are dates) -
If you specify the
X-Shipwell-Version
request header when making a request, that will override the API version utilized in the request - Learn more about Shipwell API versioning here .
Version | Description |
---|---|
2024-06-11 |
2024 Shipwell Charge Codes Standard |
Specifying Version Header
If you make an API call to GET /reference-data/charge-codes
(see API reference), by default the latest version of the Shipwell Charge Codes Standard will be returned unless your account, API token, or API key is set to a particular API version in your company settings. You may override or specify a different version of the charge codes standard by passing the X-Shipwell-Version
request header.
curl --location --request GET 'https://sandbox-api.shipwell.com/reference-data/charge-codes/' \
--header 'Content-Type: application/json' \
--header 'Authorization: YOUR_AUTHORIZATION_HEADER' \
--header 'X-Shipwell-Version: 2024-06-11'
import requests
base_path = ""
host = "sandbox-api.shipwell.com"
target_url = "https://" + host + base_path + "/reference-data/charge-codes/"
shipwell_version = "2024-06-11"
headers = {
"Content-Type": "application/json",
"Authorization": "YOUR_AUTHORIZATION_HEADER",
"X-Shipwell-Version": shipwell_version
}
response = requests.get(target_url, headers=headers)
data = response.json()
print(data)
import java.io.IOException;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
OkHttpClient client = new OkHttpClient();
String basePath = "";
String host = "sandbox-api.shipwell.com";
String targetUrl = "https://" +
host +
base_path +
"/reference-data/charge-codes/";
String shipwellVersion = "2024-06-11";
Request request = new Request.Builder()
.url(targetUrl)
.header("Content-Type", "application/json")
.header("Authorization", "YOUR_AUTHORIZATION_HEADER")
.header("X-Shipwell-Version", shipwellVersion)
.build();
try (Response response = client.newCall(request).execute()) {
if (!response.isSuccessful()) throw new IOException("Unexpected code " + response);
response.body().string();
}