Skip to content

Troubleshooting

Use this guide to diagnose common integration issues. For error response formats and HTTP status code meanings, see Error Handling.

SymptomLikely causeWhat to check
401 Unauthorized on every TTC requestToken missing, expired, or malformedConfirm Authorization: Bearer {access_token} is set; request a new token from Trimble Identity
401 immediately after token requestWrong scope or credentialsUse grant_type=client_credentials with scope sas_token and the correct client ID and secret
403 Forbidden on direct CHC callsLicense header issueSupply a valid InternalProductKey header; confirm it has not expired (~15 minutes)
Requests reach the wrong tenant’s dataCloudHub configuration mismatchVerify the account’s CloudHub configuration record points to the correct CHC OData endpoint — see CloudHub Configuration
SymptomLikely causeWhat to check
Empty result setOverly restrictive $filterTest without filters first, then narrow incrementally
400 Bad Request on list endpointsInvalid OData query syntaxVerify property names, operators, and quoting in $filter and $orderby; check the OpenAPI definition for supported query options
400 on write operationsValidation failureRead the errors[].description field in the TrimbleErrorResponse body
Slow or timed-out responsesPayload or result set too largeReduce limit, use $select to return fewer fields, and paginate — see Best Practices
SymptomLikely causeWhat to check
404 Not Found on GET by IDRecord does not exist in the tenant databaseConfirm the ID is correct for the configured customer environment
400 Bad Request on POST or PUTRequired field missing or invalidCheck title and detail in the StandardTrimbleErrorV2 body; compare your payload to the schema in the OpenAPI definition
Empty or truncated list resultsPagination or filter too narrowAdjust pageSize (maximum 100) and pageIndex; $select is unsupported
Inconsistent results between environmentsDifferent tenant configurationDev and production TTC environments use separate accounts and CloudHub configuration records
SymptomLikely causeWhat to check
400 on create-order-canonical-modelMissing required order fieldsbillTo, shipper, and consignee are required on every canonical order request
400 referencing a leg, stop, or orderEntity not foundConfirm the referenced ord_hdrnumber, lgh_number, or stp_number exists in the tenant database
400 on freight payloadInvalid quantity fieldsEach freight line needs a valid measure (weight, count, quantity, volume, or dimensions with units) — see the OrderCreate OpenAPI FreightRequest schema
201 but incomplete dispatchPartial payloadReview the returned DispatchContainer to confirm all expected moves, legs, stops, and freight were created
SymptomLikely causeWhat to check
Connection refused or DNS failureWrong host or CHC not reachableFor TTC paths, use cloud.dev.api.trimblecloud.com in dev; for direct CHC, confirm the customer’s public URL in CloudHub configuration — see CHC Installation
CHC installed but TTC cannot route requestsCHC not publicly reachable or wrong oDataEndpointVerify HTTPS is configured, firewall allows TTC traffic, and CloudHub configuration points to the public CHC URL
BuildInfo returns error or times outCHC not running in IISCheck IIS application pool status and Windows Event Viewer — see verify installation
Cities $count failsDatabase connection issueVerify ConnectionStrings.Default in appsettings.json; confirm encryption keys exist if the string is encrypted — see connection string encryption
500 Internal Server ErrorTransient or downstream failureRetry with exponential backoff; if persistent, contact support with the requestId from the error response
Documentation page not found locallyStale dev server cacheRun pnpm astro sync, delete the .astro folder, and restart the dev server

If the issue persists after checking the items above, contact Trimble Transportation support. Gather the following before opening a case:

  • HTTP method, full URL, and approximate timestamp of the failing request
  • HTTP status code and full error response body
  • requestId from any Trimble error object
  • TTC account ID and environment (dev, staging, or production)
  • Whether the call goes through TTC or directly to CHC