Introducing the ShieldGPS API
Bring your tracker locations into your own software with the ShieldGPS API. A few practical ideas and where to get started.
The new ShieldGPS API lets you bring your tracking data into the software you already use. You can retrieve device details, check the latest reported location and pull recorded location history to build your own tools and reports.
It’s a read-only REST API with JSON responses. If you’re ready to try it, head to the API documentation for authentication, endpoints and example requests.
What could you use it for?
- Put vehicle locations beside your jobs. Add a work van’s latest reported position to your internal dashboard, alongside the day’s bookings.
- Find equipment from its inventory record. Show a tracked asset’s last known location and when it was recorded in your own system.
- Build your own reports. Pull recorded location history into your reporting tools, or plot the points on a map.
Your integration handles how the data is displayed and used.
Getting started
API access must be enabled for your account, and it covers active trackers on eligible premium plans. In the dashboard, open Settings → API Access to enable your API key. Copy it when it’s shown and keep it on your server, out of browser code and public repositories. If access isn’t available, contact us.
Try it from your terminal
On your server, set the SHIELDGPS_API_KEY environment variable to your key. This request lists eligible devices on your account:
Request
curl --silent --show-error \
"https://shieldgps.com/api/public/v1/devices" \
-H "Authorization: Bearer $SHIELDGPS_API_KEY"
Sample JSON response
This fictional tracker is online. Its identifiers and readings are made up, and the coordinates are deliberately coarse.
{
"data": [
{
"id": "00000000-0000-4000-8000-000000000001",
"imei": "000000000000000",
"name": "Example van",
"model": "OB22",
"state": "active",
"isOnline": true,
"lastSeenAt": "2026-10-09T10:25:05Z",
"lastMotionAt": "2026-10-09T10:24:45Z",
"battery": 85,
"lastLocation": {
"latitude": 51.5,
"longitude": -0.1,
"speed": 0.0,
"heading": 90,
"battery": 85,
"positionAt": "2026-10-09T10:25:00Z"
}
}
],
"hasMore": false,
"nextCursor": null
}
When you start using locations, show the position’s timestamp too. The latest report may be old, and missing readings can leave gaps in history.
The full API reference covers location requests, pagination, rate limits and history limits.