Start a trial
Color

Fleet without the license

Know what keeps working when the Fleet module is missing from your license or the license is read-only, and how to check it.

For
OwnerFleet managerAdministrator
Hosting
Any hosting
Devices
All devices
Business
Fleet

Checked against Pop Dispatch 0.1.0

Fleet is a licensed module. Your license 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 license 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.
  • License states in general are described in licence-states. This article covers only what they mean for Fleet.

What keeps working #

Reading never asks the license anything. In both situations below you can still:

  1. Open every Fleet record through the GET calls under /api/v1/fleet: assets, meter readings, maintenance schedules, fuel, tires, documents, inspections, trips, expenses, advances, positions and alerts. Each call returns the data as it stood.
  2. Export your data. Paths under /export stay open in every license state, and the Fleet exports at GET /fleet/export/{what} return CSV or JSON.
  3. Keep every record. Pop Dispatch never deletes Fleet data because a license changed. When the flag returns, you carry on from where you stopped.

What stops #

Writes refuse, and the answer says why:

  1. The flag is absent. Any POST, PATCH, PUT or DELETE under /fleet answers feature_not_licensed (403). The message says that Fleet is part of no current license, that your records stay open to read and export, and that the owner can ask about adding Fleet. Writes to the rest of Pop Dispatch, such as tow jobs and invoices, carry on.
  2. The license 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 Pop Dispatch. See playbook-licence-expired for the steps to restore it.

Check the state #

  1. Send GET /fleet/status with your token. Any signed-in user can call it.
  2. Read the answer. It names the feature (dispatch_fleet), whether it is licensed (licensed), the license state (licence), and three flags: reads and exports are always true, and writes is true only when the feature is licensed and the license allows changes.
  3. If writes is false, ask the owner to add Fleet to the plan or renew the license, then call GET /fleet/status again.
Technical details
  • The gate sits in the request guard. For a write, it first asks whether the license allows writes at all, which produces licence_read_only. It then checks the path: any path equal to /fleet or starting with /fleet/ needs dispatch_fleet, which produces feature_not_licensed.
  • The prefixes /auth, /export and /backup are exempt from the read-only write rule, so sign-in, exports and backups keep working.
  • In development builds license 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 license lacks dispatch_fleet. Export what you need, then ask the owner about the Fleet add-on.
  • licence_read_only (403): the license has moved to read-only. Renew it; see licence-states and licence-checks.
  • A read answers not_found (404): that record does not exist. The license does not hide records.