API integration
Routix provides a versioned REST API that allows external applications, such as ERP systems, WMS platforms, BI tools, and AI agents, to securely access your transport management data.
The API is built on OAuth 2.1 and uses a proxy layer to provide stability, versioning, and fine-grained access control.
User level: Advanced
OAuth flow
Routix uses OAuth 2.1 to authenticate external applications. For API integrations, client credentials is the supported flow.
Client credentials flow
Use this flow for server-to-server communication. No user interaction is required.
Sequence
Request a token
curl -X POST https://api.routix.com/v1/oauth/token \
-H "Content-Type: application/json" \
-d '{
"grant_type": "client_credentials",
"client_id": "YOUR_CLIENT_ID",
"client_secret": "routix_..."
}'Response:
{
"access_token": "eyJhbGciOiJIUzI1NiIs...",
"token_type": "bearer",
"expires_in": 3600,
"scope": "routix:accounts:read routix:orders:read",
"organization_id": "123e4567-e89b-12d3-a456-426614174000",
"branch_ids": [
"550e8400-e29b-41d4-a716-446655440000",
"6ba7b810-9dad-11d1-80b4-00c04fd430c8"
]
}Key concepts
Scopes
Every API action is protected by a scope following this pattern:
routix:<resource>:<action>| Scope | Description |
|---|---|
| routix:accounts:read | Read customers, vendors, and carriers. |
| routix:accounts:write | Create and update accounts. |
| routix:orders:read | Read orders. |
| routix:orders:write | Create and update orders. |
| routix:projects:write | Update projects. |
| routix:shipments:write | Update shipments. |
| routix:trips:write | Update trips. |
| routix:vehicles:read | Read vehicles. |
| routix:vehicles:write | Create and update vehicles. |
| routix:items:write | Update items. |
| routix:tariffs:write | Update tariffs. |
| routix:zones:write | Update zones. |
| routix:quotations:write | Update quotations. |
| routix:staff:read | Read staff members. |
| routix:equipment:read | Read equipment. |
| routix:planning:read | Read planning and route data. |
| routix:invoices:read | Read invoices. |
| routix:invoices:write | Create and update invoices. |
Resource scoping
The API uses either an organization UUID or a branch UUID in the path, depending on the resource. For example:
- Organization UUID:
123e4567-e89b-12d3-a456-426614174000 - Branch UUID:
550e8400-e29b-41d4-a716-446655440000
That means:
branches,organizations,users, andmaster_datause the organization UUID.- Resources such as
accounts,projects,shipments, andtripsuse the branch UUID. - Access can still be restricted by the OAuth app configuration.
API versioning
| Version | Behavior |
|---|---|
| v1 | Stable, immutable field set that is safe for production integrations. |
| v2 | Superset of v1 with additional fields that may grow over time. |
Both versions run simultaneously. Use v1 for stable contracts and v2 when you need additional data.
Related pages
- API calls & examples
- Setup guide

