Skip to main content
Fleetalyse
Partner API & Tracking API

Quick start

Your first authenticated call, customer, fleet, device and test activation.

The Fleetalyse Partner Programme is running as a pilot. The API documented here is available to approved partners; you can build against test mode as soon as your partner account is open. About partnering with Fleetalyse

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.

APIBase URLKey
Partner API (management)https://fleetalyse.co.uk/partner-api/v1Management key fpk_live_… / fpk_test_…
Tracking API (data)https://fleetalyse.co.uk/tracking-api/v1Tracking-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
curl https://fleetalyse.co.uk/partner-api/v1/ping \
  -H "Authorization: Bearer $FLEETALYSE_KEY"

PHP
<?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;

Node.js
const res = await fetch('https://fleetalyse.co.uk/partner-api/v1/ping', {
  headers: { Authorization: `Bearer ${process.env.FLEETALYSE_KEY}` },
});
console.log(await res.json());

Python
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())

Response
{
  "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.

Shell
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

WhatsApp us