OData API
Introduction
Section titled “Introduction”The OData API (TMWSuite.OData) provides programmatic access to TMW.Suite data through CloudHub Connector. It is an ASP.NET Core Web API built on OData v4 that exposes entity sets for querying and updating records in a Suite database.
API requests are sent to Trimble Transportation Cloud at the /tte-tmwsuite/v0/odata/ path prefix. CloudHub routes each request to the customer’s on-premise CloudHub Connector instance, which executes the operation against the local Suite SQL Server database.
Capabilities
Section titled “Capabilities”The API supports standard OData query options on list endpoints, including:
$filter— Filter results by property values (not all OData filter syntax is supported)$select— Request a specific set of properties$expand— Include related sub-resources$orderby— Sort results by one or more fields, with optional directionlimit/offset— Paginate through result setscount— Include a total record count in the response
In addition to read operations, the API supports create, update, and delete operations on many entity types, aggregation endpoints for selected resources, and Dynamic Query endpoints including query, update, and update/batch.
The published OpenAPI definition does not include request or response examples.
Entity Types
Section titled “Entity Types”The API exposes entity sets across major Suite functional areas, including:
- Master data: Carriers, companies, cities, commodities, contacts, drivers, third parties, and zip codes
- Equipment: Tractors, trailers, and tractor/trailer accessories
- Operations: Orders, trips, legs, stops, freight, asset assignments, load requirements, and events
- Financial: Invoices, pay headers, pay-to records, expense and revenue allocations, and master bills
- Configuration: Accounts payable transfer types, driver qualifications, expirations, label files, and general info
See the OpenAPI definition for the complete list of available endpoints, request parameters, and response schemas.
List carriers
Section titled “List carriers”GET /transportation/tte-tmwsuite/v0/odata/carriers?limit=10&offset=0&count=true HTTP/1.1Host: cloud.dev.api.trimblecloud.comAuthorization: Bearer {access_token}A successful response is HTTP 200 OK. Add $filter, $orderby, $select, or $expand as needed. See the OpenAPI definition for the CarrierReturnModel list wrapper.
Batch Dynamic Query update
Section titled “Batch Dynamic Query update”POST /tte-tmwsuite/v0/odata/dynamicQuery/update/batch executes multiple Dynamic Framework updates in a single transaction. The body is an UpdateBuilderBatchRequest whose requests map keys each item. Each item requires targetTable.
POST /transportation/tte-tmwsuite/v0/odata/dynamicQuery/update/batch HTTP/1.1Host: cloud.dev.api.trimblecloud.comAuthorization: Bearer {access_token}Content-Type: application/json{ "requests": { "item1": { "targetTable": "company", "request": { "rawUpdate": { "updateTable": "company", "updateOperation": 1, "columns": [], "whereClauseColumns": [], "customWhereClauses": [] } } } }}A successful response is HTTP 200 OK with an UpdateBuilderBatchResponse. See the OpenAPI definition for UpdateBuilderBatchRequest, UpdateBuilderRawUpdate, and UpdateBuilderColumn.
Use Cases
Section titled “Use Cases”- Retrieve carrier, driver, or company profiles to populate dropdowns or validate data in a custom application.
- Query orders, trips, or equipment status for real-time operational dashboards.
- Update records such as asset assignments or driver qualifications from an external workflow system.
- Integrate third-party logistics or accounting systems with Suite without direct database connectivity.
For details on authentication, CloudHub configuration, and getting access to the API, see the Access guide.