Geotab’s MyGeotab platform is one of the most open and extensible fleet management systems available. Its REST-based API provides programmatic access to virtually every data point in the platform — vehicle locations, engine diagnostics, driver behavior scores, trip history, fuel consumption, maintenance records, and more. For organizations that want to move beyond the standard MyGeotab dashboard and build custom workflows, automated reporting, or deep integrations with other enterprise systems, the Geotab API is the foundation.
This guide provides a technical overview of the Geotab API architecture, authentication model, and the most common integration patterns we build for our clients.
Geotab API Architecture Overview
The Geotab API is a JSON-RPC API served over HTTPS. All API calls are made to a single endpoint:
https://[server].geotab.com/apiv1/
The [server] component is specific to your MyGeotab database — it may be my.geotab.com, my2.geotab.com, my3.geotab.com, or another regional server. Your server assignment is determined when your database is provisioned and can be found in your MyGeotab login URL.
Every API call follows the same structure:
POST https://[server].geotab.com/apiv1/
Content-Type: application/json
{
"method": "Get",
"params": {
"typeName": "Device",
"credentials": {
"database": "YourDatabase",
"userName": "api@yourdomain.com",
"sessionId": "your-session-token"
}
}
}
Authentication: Session-Based Credentials
The Geotab API uses session-based authentication. You first call the Authenticate method with your username and password to receive a session token, then include that token in all subsequent API calls.
POST https://my.geotab.com/apiv1/
{
"method": "Authenticate",
"params": {
"database": "YourDatabase",
"userName": "api@yourdomain.com",
"password": "your-api-password"
}
}
The response includes a credentials object containing the sessionId and the correct server for your database. Always use the server returned in the authentication response for all subsequent calls — your database may be on a different server than the one you authenticated against.
Best practice: Create a dedicated API user in MyGeotab with the minimum required permissions for your integration. Never use an admin account for API access.
Core API Methods
The Geotab API uses a small set of generic methods that operate on named entity types:
Get— Retrieve entities (vehicles, trips, exceptions, etc.)Add— Create new entitiesSet— Update existing entitiesRemove— Delete entitiesGetFeed— Stream high-volume data (GPS positions, status data) efficientlyMultiCall— Execute multiple API calls in a single HTTP request
Common Integration Patterns
Real-Time Vehicle Location Feed
The most common integration requirement is a real-time vehicle location feed for display in a custom map or dispatch application. The GetFeed method with typeName: "DeviceStatusInfo" provides the current location, speed, heading, and ignition status for all vehicles in your fleet, updated every 30 seconds.
Trip History Export to ERP
For mileage-based payroll or cost allocation, a daily trip history export is typically required. The Get method with typeName: "Trip" and a date range filter returns all trips for all vehicles in the specified period, including start/end times, start/end locations, total distance, and driver assignment.
Exception Event Webhooks
Geotab supports outbound webhooks for exception events — speeding violations, geofence entries/exits, harsh driving events, and custom rule triggers. Configuring a webhook endpoint in MyGeotab causes Geotab to POST a JSON payload to your endpoint in real-time when an exception occurs, enabling immediate automated responses.
Zoho CRM Integration
For Zoho One customers, connecting Geotab to Zoho CRM enables field service teams to see vehicle locations alongside customer records, automatically log service visits as CRM activities, and trigger follow-up workflows based on geofence events. We build these integrations using Zoho’s Deluge scripting language and Zoho Flow for event-driven automation.
SDK and Development Resources
Geotab provides official SDKs for .NET, Java, JavaScript, and Python. The Python SDK (mygeotab) is available via pip and is the fastest way to start building integrations:
pip install mygeotab
import mygeotab
api = mygeotab.API(username='api@yourdomain.com',
password='password',
database='YourDatabase')
api.authenticate()
vehicles = api.get('Device')
Need a Custom Geotab Integration?
Insure Telematics specializes in building production-grade Geotab API integrations for commercial fleet operators. Whether you need a simple data export, a real-time dispatch integration, or a full bidirectional sync with your ERP or CRM, our team has the technical expertise to deliver it.
Learn more about our integration services or contact us for a free technical assessment.