A unified developer portal for external integrators and internal members. Browse an interactive OpenAPI reference where every endpoint expands to show its field schema and runs a live read-only request against your carrier data, follow step-by-step partner guides for Motive, QuickBooks, EFS, Macropoint, Google Sheets, and Stripe, and manage your webhook endpoints from a gated member area — all alongside App MCP for ChatGPT, Claude, and Cursor. Carrier-scoped Row-Level Security is enforced on every request.
Developer & API documentation for TMSDASH
A unified developer portal for external integrators and internal members. Browse an interactive OpenAPI reference where every endpoint expands to show its field schema and runs a live read-only request against your carrier data, follow step-by-step partner guides for Motive, QuickBooks, EFS, Macropoint, Google Sheets, and Stripe, and manage your webhook endpoints from a gated member area — all alongside App MCP for ChatGPT, Claude, and Cursor. Carrier-scoped Row-Level Security is enforced on every request.
Quick start
The TMSDASH API lets your tools talk to your TMS data — push invoices to Google Sheets, sync loads into QuickBooks, or build a custom operations dashboard. You only need an API key and a couple of minutes.
YOUR_API_KEY with your key.curl -X GET "https://YOUR-APP.tmsdash.com/api/entities/Load" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"For developers
Send every request with Authorization: Bearer YOUR_API_KEY. Keys are scoped to your carrier workspace and respect per-entity Row-Level Security.
The always-current OpenAPI document is generated for you on the API dashboard page — download or inspect it there for exact paths and schemas.
Entity endpoints
| Entity | Operations | Access |
|---|---|---|
| Load | list · get · create · update · delete | Carrier-scoped (RLS) |
| Driver | list · get · create · update · delete | Carrier-scoped (RLS) |
| Vehicle | list · get · create · update · delete | Carrier-scoped (RLS) |
| Customer | list · get · create · update · delete | Carrier-scoped (RLS) |
| Invoice | list · get · create · update · delete | Carrier-scoped (RLS) |
| Maintenance | list · get · create · update | Carrier-scoped (RLS) |
| ComplianceItem | list · get · create · update | Carrier-scoped (RLS) |
| BoardLoad | list · get · create · update | Public read, owner write |
| PublicCarrier | list · get | Public read-only |
Backend functions
| Function | Description |
|---|---|
| searchPublicCarriers | Search the FMCSA carrier directory |
| enrichCarrier | Enrich a carrier from SAFER data |
| boardMarket | Load board marketplace actions |
| searchBoardLoads | Search internal load board |
| saveBoardLoad | Post freight to the board |
| submitCarrierReview | Submit a carrier rating |
| submitCarrierLead | Send a lead to a carrier |
| getMapConfig | Fetch map tiles / config |
Code samples
import { TMSDASH } from "@tmsdash/sdk";
const client = new TMSDASH({ apiKey: "YOUR_API_KEY" });
// List loads for this carrier
const loads = await client.entities.Load.list("-created_date", 20);
// Create a new load
const load = await client.entities.Load.create({
load_number: "LD-1042",
origin_city: "Dallas",
destination_city: "Denver",
pickup_date: "2026-10-01",
});import requests
BASE = "https://YOUR-APP.tmsdash.com"
HEADERS = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
}
# List loads
resp = requests.get(f"{BASE}/api/entities/Load", headers=HEADERS)
loads = resp.json()
# Create a load
new = requests.post(f"{BASE}/api/entities/Load", headers=HEADERS, json={
"load_number": "LD-1042",
"origin_city": "Dallas",
"destination_city": "Denver",
"pickup_date": "2026-10-01",
})AI integration
App MCP lets external AI clients like ChatGPT, Claude, and Cursor connect to your published TMSDASH app and work with the data, agents, and tools you authorize — no code required.
Public · No sign-in
Anyone can connect. The assistant can view records from enabled entities, but cannot change records, message agents, or run custom tools.
Sign-in required · OAuth
Users sign in with their app account. The assistant acts as that user and can view or change records, message agents, and run tools per the user's permissions — checked on every request.
Setup steps
OAuth users stay subject to your app's permissions, which TMSDASH verifies on every request — so an assistant can never exceed what the signed-in user is allowed to do.
Was this helpful?
An in-app AI assistant that answers operational questions and takes real actions across your TMSDASH data — loads, drivers, customers, invoices, maintenance, compliance, fuel, documents, and marketplace postings — right from a slide-out panel. It runs a bounded tool-calling loop: reading live data, then creating or updating records as you ask, with every write ownership-verified against your workspace and every tool result sanitized before it re-enters the model.
An external portal where your brokered carriers view and claim loads. Carriers sign in with an account, a share link, or an MC+PIN — no TMSDASH seat required.
Send documents out for legally-binding e-signatures. Place signature, initial, and date fields on any PDF, route to recipients in order, and track status through viewed → signed.
Tamper-evident record-keeping on the Base blockchain. Every new BOL, DVIR, invoice, signed document, and uploaded file gets a SHA-256 fingerprint anchored on-chain automatically, and a daily driver-GPS integrity commitment hashes each carrier's GPS activity once per morning. Only hashes go on-chain — document files, GPS coordinates, payments, and customer data always stay in TMSDASH private storage. The anchoring page tracks every anchor with verification, transaction tracking, and a testnet-to-mainnet network switch.
Start your free trial and explore this module with your own data.