TruckMate 2023.1 New Features: Web/APIs

Required upgrade (TM-162557)

TruckMate 2022.x and later requires DB2 version 11.5.6.

You must upgrade your instance of DB2 to this version before upgrading TruckMate.

Support for DB2 version 11.1.3 ended as of TruckMate 2021.4.

The TruckMate ART Server is a high-performance, multi-threaded HTTP server running TruckMate API services designed using Representational State Transfer (RESTful) API principles.

The ART Server currently supports the following public APIs:

  • TruckMate REST API Bundle

  • Master Data APIs

  • Freight Bill Import

  • Profile Import

  • Imaging

The API release notes cover all changes made to all TruckMate public APIs.

Sunsetted

The FB Import and Profiles REST APIs have been sunsetted.

  • Sunset date: March 31, 2024

  • Alternatives:

    • FB Import: TruckMate REST API

    • Profiles: Master Data REST API

The Sunset header field has been added to the endpoints, indicating when the resource is expected to become unresponsive. After the sunset period, the API will remain within the source code for an additional year along with a deprecation header.

Case Issue Case Name

TM-168414

Add sunset header to Profiles API

TM-168744

Add sunset header to FB Import REST API

Deprecated

The TM4Web REST and SOAP APIs have been deprecated.

  • Deprecation date: March 31, 2023

  • Alternative: TruckMate REST API

A deprecation header has been added to the endpoints. This allows any remaining consumers a final chance to migrate away from the API. It also notifies any new applications that encounter the API about the risk of depending on the resource.

Case Issue Case Name

TM-168523

Replace sunset header with deprecation

ART Admin

Now, you can browse Windows Explorer when selecting the log path and file handling directories.

tm 166781 231a

Case Issue Case Name

TM-166781

Add ability to browse folder when setting log path in ARTADMIN

TruckMate API

The TruckMate REST APIs are a comprehensive set of RESTful services, allowing developers to integrate TruckMate with custom or third-party applications, automate tasks, and much more.

Some ways you can use these APIs include:

  • Internal systems: Share data and streamline internal business processes

  • External data sharing and connection: Share TruckMate data with third party systems

  • Application integrations: Access TruckMate data in real time

  • Embedded content: Request TruckMate data to include onto your site

Available endpoints and methods differ depending on the license keys and authorization methods used.

To use the TruckMate REST APIs, we recommend upgrading directly to the latest version of TruckMate instead of an earlier release. This gives you access to the most current, improved, and expanded set of API methods and endpoints.

The following additional information is available on the Trimble Transportation Learning Center:

These tables list issues in alphabetical order by case number.

Orders API

Case Issue Case Name Endpoint Description

TM-166142

Dangerous goods UN number assignment via API

POST /orders

POST /orders/:orderId/details

PUT /orders/:orderId

PUT /orders/:orderId/details/:detailId

The Orders API has been enhanced to ensure that dangerous goods and commodities linked to UN numbers are managed with the same logic and validations as the Customer Service Windows application.

TM-166672

Implement onlyPostedResults query option - orders aCharges and orders osds

POST /orders/{orderId}/aCharges?onlyPostedResults=true

POST /orders/{orderId}/osds?onlyPostedResults=true

To improve on API performance, when adding accessorial charge records to an order, we have added a new control option through a query string parameter to limit the records returned to only those sent in the request. By default, TruckMate APIs respond with all existing child resources not limited to those sent with the POST request.

  • Accessorial charge records can be viewed in the Customer Service application > Acc Chgs tab.

  • OS&D information for an order can be viewed in the Customer Service application > OS&D/POD tab.

TM-167782

Add aChargeType field to order aCharges and order interliner aCharges(GET)

GET /orders

GET /orders/{orderId}

GET/orders/{orderId}/aCharges

The Orders API aCharges resource now retrieves the accessorial charge type (aChargeType)

Trips API

Case Issue Case Name Endpoint Description

TM-165675

Missing fields from orders in trips response body

GET /trips/:tripNumber/orders

The Trips API now retrieves the following additional fields within the orders child resource:

  • webStatus

  • webUpdate

  • webAccept

  • quoteId

  • distancedistanceUnits

  • requestedEquipment

  • temperature

  • volume

  • piecesUnits

  • weightUnits

  • lengthUnits

  • cubeUnits

  • volumeUnits

  • areaUnits

  • timeUnits

  • palletUnits

  • temperatureUnits

TM-166656

onlyPostedResults query option - Trips API

POST

/trips/:tripNumber/carriers/:loadSummaryId/aCharges

/trips/:tripNumber/chassis

/trips/:tripNumber/containers

/trips/:tripNumber/drivers

/trips/:tripNumber/equipment

/trips/:tripNumber/powerUnits

/trips/:tripNumber/trailers

/trips/:tipNumbers/seals

TruckMate POST child endpoints allow submitting multiple records. The issue is that the return contains all the child resources, not just what was POSTed.

To improve performance, all Trips POST endpoints now allow the return of a subset of the full representation via the onlyPostedResults query option.

Master Data API

The Master Data management API allows an external system to create, retrieve, update or delete TruckMate configuration data. Some data types include client, vendor and driver profiles, as well as sites, zones, commodity codes, etc.

These tables list issues in alphabetical order by case number.

Case Issue Case Name Description

TM-166209

Master Data - add count

Following Trimble API standards, the count field now exists within all the Master Data APIs that use offset-based pagination.

count represents the total number of items in the entire query result, across all pages.

TM-167196

Master Data Allow response header missing

405 Method Not Allowed

Ensure all endpoint methods which are not supported correctly respond with the HTTP Allow header containing a list of valid methods for the requested resource.

TM-167634

TM-167644

MasterData - InvalidDBValue

MasterData - invalidBusinessLogic

Corrected several error response codes:

  • invalidDBValue

  • invalidBusinessLogic

  • invalidString

  • missingRequiredField

  • invalidEnum

TM-167964

Add $select parameter to all MasterData endpoints

To improve performance, all Master Data GET/POST/PUT endpoints now support the oData $select query parameter. This parameter allows a return of a subset of the full representation of the resource.

TM-166533

cubeCapRuleIndicator should be defined as enum

Corrected enumeration values both as documented in the OpenAPI specification and as displayed in the error response descriptions.

TM-167316

rangeField1 is not returning correct enum values in masterData API

TM-167394

Fix openAPI doc for masterData API to correct the order in which enum values appear for PUT /clients/{clientId}/cubePolicies/{cubePolicyId}

Clients

Case Issue Case Name Endpoint(s) Description

TM-166212

"clients" - Child "contacts" - GET masterData/clients, ~/:clientId/contacts, ~/:contactId

GET masterData/clients

GET masterData/clients/:clientId

GET masterData/clients/:clientId/contacts

GET masterData/clients/:clientId/contacts/:contactId

The Clients API now retrieves client contact records. This allows external systems to access contact information such as names and addresses, phone numbers, and email addresses.

Client contacts can be viewed in Customer & Vendor Profiles, on the Customer > Contacts tab.

GET masterData/clients

GET masterData/clients/:clientId

GET masterData/clients/:clientId/customDefs

GET masterData/clients/:clientId/customDefs/:customDefId

The Clients API now retrieves client custom-defined field records.

Client custom-defined fields can be viewed in Customer & Vendor Profiles, on the Customer > Custom Defined Fields tab.

TM-166213

"clients" - Header - POST masterData/clients - handle new fields

GET masterData/clients

POST masterData/clients

GET masterData/clients/:clientId

PUT masterData/clients/:clientId

The Clients API now retrieves the following fields from these tabs:

  • Credit Info: creditLimit field

  • Billing:

    • exportCode

    • thirdPartyClient

  • Accounts Payable:

    • applyTax1

    • applyTax2

  • Notes:

    • allowPopupNotes

    • comments

TM-167340

Add $select parameter for POST and GET /clients/{clientId}/discounts

GET / POST / PUT

The Clients API now allows a return of a subset of the full representation via the oData $select System Query option.

Vendors

Case Issue Case Name Endpoint Description

TM-166227

"vendors" - Header - GET masterData/vendors, ~/:vendorId

GET masterData/vendors

GET masterData/vendors/:vendorId

The Vendors API now retrieves the following fields from these tabs:

  • Address:

    • faxNotify

    • email

    • terminalZone

  • Accounts Payable:

    • applyTax1

    • applyTax2

  • Notes:

    • allowPopupNotes

    • comments

The Vendors API also now retrieves vendor user-defined fields. Vendor user-defined fields can be viewed in Customer & Vendor Profiles, on the Vendor > User Defined Fields tab.

TM-166228

"vendors" - Child "customDefs" - GET masterData/vendors, ~/:vendorId/customDefs, ~/customDefId

GET masterData/vendors

GET masterData/vendors/:vendorId

GET masterData/vendors/:vendorId/customDefs

GET masterData/vendors/:vendorId/customDefs/:customDefId

The Vendors API now retrieves vendor custom- defined field records.

Vendor custom defined fields can be viewed in the Customer & Vendor Profiles, on the Vendor > Custom Defined Fields tab.

TM-166229

"vendors" - Child "contacts" - GET masterData/vendors, ~/:vendorId/contacts, ~/:contactId

GET masterData/vendors

GET masterData/vendors/:vendorId

GET masterData/vendors/:vendorId/contacts

GET masterData/vendors/:vendorId/contacts/:contactId

The Vendors API now retrieves vendor contact records. This allows external systems to access contact information such as names and addresses, phone numbers, and email addresses.

Vendor contacts can be viewed in Customer & Vendor Profiles, on the Vendor > Contacts tab.

TM-167477

Vendors API - add VENDOR.SCAC_ID

GET masterData/vendors

GET masterData/vendors/:vendorId

The Vendors API now retrieves the Standard Carrier Alpha Code (scacNumber field) from the Customs Compliance tab.

The Standard Carrier Alpha Code is the recognized transportation company identification code used in the American National Standards Institute (ANSI) Accredited Standards Committee (ASC) X12 and United Nations EDIFACT approved electronic data interchange (EDI) transaction sets.

TM4Web

Case Issue Case Name Description

TM-167494

TM4Web Order Entry Details popup warnings overlap

Fixed an issue where required field pop up warnings were overlapping in the Order Entry details grid.