Fleet is a licensed module. Your licence switches it on with the flag dispatch_fleet. It comes with the Business plan, it is an add-on for Starter and Pro, and the 14-day trial includes it. This article shows what you can still do when the flag is absent or the licence has moved to read-only, and how to check the state from the API.
Before you start #
- You need the owner role, or another role that can read Fleet data.
- Licence states in general are described in
licence-states. This article covers only what they mean for Fleet.
What keeps working #
Reading never asks the licence anything. In both situations below you can still:
- Open every Fleet record through the
GETcalls under/api/v1/fleet: assets, meter readings, maintenance schedules, fuel, tyres, documents, inspections, trips, expenses, advances, positions and alerts. Each call returns the data as it stood. - Export your data. Paths under
/exportstay open in every licence state, and the Fleet exports atGET /fleet/export/{what}return CSV or JSON. - Keep every record. Dispatch never deletes Fleet data because a licence changed. When the flag returns, you carry on from where you stopped.
What stops #
Writes refuse, and the answer says why:
- The flag is absent. Any
POST,PATCH,PUTorDELETEunder/fleetanswersfeature_not_licensed(403). The message says that Fleet is part of no current licence, that your records stay open to read and export, and that the owner can ask about adding Fleet. Writes to the rest of Dispatch, such as tow jobs and invoices, carry on. - The licence is read-only. Every write other than an export, sign-in or backup call answers
licence_read_only(403). This covers Fleet and the rest of Dispatch. Seeplaybook-licence-expiredfor the steps to restore it.
Check the state #
- Send
GET /fleet/statuswith your token. Any signed-in user can call it. - Read the answer. It names the feature (
dispatch_fleet), whether it is licensed (licensed), the licence state (licence), and three flags:readsandexportsare always true, andwritesis true only when the feature is licensed and the licence allows changes. - If
writesis false, ask the owner to add Fleet to the plan or renew the licence, then callGET /fleet/statusagain.
Technical details
- The gate sits in the request guard. For a write, it first asks whether the licence allows writes at all, which produces
licence_read_only. It then checks the path: any path equal to/fleetor starting with/fleet/needsdispatch_fleet, which producesfeature_not_licensed. - The prefixes
/auth,/exportand/backupare exempt from the read-only write rule, so sign-in, exports and backups keep working. - In development builds licence checks are off and every feature counts as on.
- The Fleet nightly reminder job reads and writes alerts inside the server. Reminders you already have stay readable through
GET /fleet/alerts. - Imports at
POST /fleet/import/{what}are writes, so they follow the gate.
If something goes wrong #
feature_not_licensed(403): the licence lacksdispatch_fleet. Export what you need, then ask the owner about the Fleet add-on.licence_read_only(403): the licence has moved to read-only. Renew it; seelicence-statesandlicence-checks.- A read answers
not_found(404): that record does not exist. The licence does not hide records.