The Fleetalyse Partner API lets your server manage customers, fleets, devices and tracking services, and the Tracking API lets it read vehicle positions and journeys for your own interface. Both are JSON over HTTPS, versioned under /v1, and authenticated with API keys you create in the Partner portal.
| API | Base URL | Key |
|---|---|---|
| Partner API (management) | https://fleetalyse.co.uk/partner-api/v1 | Management key fpk_live_… / fpk_test_… |
| Tracking API (data) | https://fleetalyse.co.uk/tracking-api/v1 | Tracking-data key ftk_live_… / ftk_test_… |
1. Create a test key
In the Partner portal switch to Test mode, open API credentials and create a management key. Test keys only see test data, run against a simulator and never create charges. The secret is shown once — store it in your server's secret store, never in a browser or mobile app.
2. Make your first call
curl https://fleetalyse.co.uk/partner-api/v1/ping \
-H "Authorization: Bearer $FLEETALYSE_KEY"<?php
$ch = curl_init('https://fleetalyse.co.uk/partner-api/v1/ping');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('FLEETALYSE_KEY')],
CURLOPT_RETURNTRANSFER => true,
]);
$me = json_decode(curl_exec($ch), true);
echo $me['partner'], ' ', $me['livemode'] ? 'live' : 'test', PHP_EOL;const res = await fetch('https://fleetalyse.co.uk/partner-api/v1/ping', {
headers: { Authorization: `Bearer ${process.env.FLEETALYSE_KEY}` },
});
console.log(await res.json());import os, requests
r = requests.get('https://fleetalyse.co.uk/partner-api/v1/ping',
headers={'Authorization': 'Bearer ' + os.environ['FLEETALYSE_KEY']}, timeout=30)
print(r.json()){
"object": "ping",
"ok": true,
"livemode": false,
"partner": "ptn_8Qm3...",
"credential": "key_2Hc9...",
"credential_class": "management",
"scopes": ["customers.write", "devices.write", "fleets.write", "services.activate"],
"fleet_scope": "all",
"time": "2026-10-01T09:30:00Z",
"request_id": "req_5sd8..."
}3. Create a customer and a fleet
A customer is your customer's business; a fleet is the tracking account its vehicles live in (the plan is a fleet setting). Use your own identifiers as external_reference so you can find them again. Every write needs an Idempotency-Key header — see Idempotency.
curl -X POST https://fleetalyse.co.uk/partner-api/v1/customers \
-H "Authorization: Bearer $FLEETALYSE_KEY" \
-H "Idempotency-Key: customer-C1042" \
-H "Content-Type: application/json" \
-d '{"name": "Acme Deliveries Ltd", "external_reference": "C1042"}'
curl -X POST https://fleetalyse.co.uk/partner-api/v1/fleets \
-H "Authorization: Bearer $FLEETALYSE_KEY" \
-H "Idempotency-Key: fleet-C1042-main" \
-H "Content-Type: application/json" \
-d '{"customer_id": "cus_…", "name": "Acme vans", "plan_code": "pro", "external_reference": "C1042-main"}'A new fleet is provisioned in the background; it becomes ready in a few seconds (event fleet.ready).
4. Register a device and activate it
Register a tracker by IMEI or serial, then request an activation. Activation is asynchronous: you get 202 Accepted with an operation to poll, and a service.activation_completed webhook when the service is confirmed active. See Activations & operations.
5. Receive webhooks
Add an HTTPS endpoint under Webhooks, verify the Fleetalyse-Signature header of each request and answer with any 2xx status. The endpoint becomes active when it accepts the signed test event. See Webhooks.
What next
- Work through the Integration checklist before you switch to live keys.
- Read the Sample retail-order integration: payment confirmation → activation → cancellation in one small PHP file.
- Browse every endpoint in the API reference or download the OpenAPI document:
https://fleetalyse.co.uk/partner-api/v1/openapi.json.