Access and permissions
Which permission each Fleet screen needs, who may see and change what, and the rules that keep people from approving their own work.
On this page (32)
Permissions by screenRolesVehicles list / DashboardVehiclesVehicle 360DashboardTCOCostsReportsDriversDocumentsFuel Card StatementsGPS / TelematicsTripsFuelOdometerFinesAccidentsWork ordersComplianceSettings / ConfigurationAssistantWork order recordReservationsAssignmentsFleet expensesDriver appVehicle formAll screensFeaturesFieldsAudit
Permissions by screen
| Screen | Menu | Permission needed |
|---|---|---|
| Fleet dashboard and vehicle board | Fleet > Fleet > Dashboard | fleet.view (page); fleet.create (New Vehicle) |
| Vehicles list | Fleet > Fleet > Vehicles | fleet.view; fleet.create (new) |
| Vehicle 360 | Fleet > Fleet > Vehicles > open a vehicle | fleet.view; buttons follow fleet.edit, fleet.assign, fleet.fuel.create, fleet.workorder.create, fleet.trip.create; tabs need fleet.trip.view / fleet.fuel.view / fleet.maintenance.view / fleet.accident.view / fleet.fine.view / fleet.cost.view / fleet.telematics.view |
| Drivers | Fleet > Fleet > Drivers | fleet.view (list; licence and medical details only with fleet.driver.view); save needs fleet.driver.view + fleet.create / fleet.edit |
| Assignments | Fleet > Fleet > Assignments | fleet.view (list); fleet.assign (create and actions) |
| Reservations | Fleet > Fleet > Reservations | fleet.view to see own bookings; fleet.assign sees all and decides; route needs fleet.log to book; feature switch Reservations |
| Fleet calendar | Fleet > Fleet > Calendar | fleet.view |
| Driver app | Fleet > Fleet > My Vehicle (Driver App) | fleet.view (page); sync needs fleet.log; the user must be linked to a driver profile |
| Trips | Fleet > Operations > Trips | fleet.trip.view (list); fleet.trip.create (create / start / end); feature switch Trips and daily logs |
| Odometer readings | Fleet > Operations > Odometer | fleet.view (list); fleet.log (record); fleet.edit (review) |
| Fuel fills | Fleet > Operations > Fuel | fleet.fuel.view (list); fleet.fuel.create (log); fleet.fuel.view + fleet.edit (review); feature switch Fuel |
| Fuel card statements | Fleet > Operations > Fuel Card Statements | fleet.fuel.view (list); fleet.fuel.create (import, actions) |
| GPS / Telematics | Fleet > Operations > GPS / Telematics | fleet.telematics.view; fleet.configure for connections, devices, geofences; feature switch GPS and telematics |
| Vehicle checklists (inspections) | Fleet > Operations > Vehicle Checklists | fleet.view (list); fleet.log (submit) |
| Daily logs | Fleet > Operations > Daily Logs | fleet.view (list); fleet.log (create); feature switch Trips and daily logs |
| Service requests | Fleet > Maintenance > Service Requests | fleet.maintenance.view (list, decide); fleet.log (new request); fleet.workorder.create (Create work order) |
| Work orders | Fleet > Maintenance > Work Orders | fleet.maintenance.view; fleet.workorder.create (create, edit, submit) |
| Work order record | Fleet > Maintenance > Work Orders > open a work order | fleet.maintenance.view; fleet.workorder.create (save, submit, purchase); approver per rule (default fleet.workorder.approve from AED 5,000) |
| Preventive maintenance (due board) | Fleet > Maintenance > Preventive Maintenance | fleet.maintenance.view |
| Breakdowns | Fleet > Maintenance > Breakdowns | fleet.maintenance.view (list, actions); fleet.log (report); fleet.workorder.create (work order) |
| Tyres | Fleet > Maintenance > Tyres | fleet.maintenance.view; fleet.edit (save, actions); feature switch Tyres and batteries |
| Batteries | Fleet > Maintenance > Batteries | fleet.maintenance.view; fleet.edit; feature switch Tyres and batteries |
| Parts used | Fleet > Maintenance > Parts | fleet.maintenance.view |
| Workshops | Fleet > Maintenance > Workshop | fleet.maintenance.view (list); fleet.configure (change) |
| Registration documents | Fleet > Compliance > Registration | fleet.view (list); fleet.edit (save, renew) |
| Insurance policies | Fleet > Compliance > Insurance | fleet.view; fleet.edit |
| Permits | Fleet > Compliance > Permits | fleet.view; fleet.edit |
| Inspection certificates | Fleet > Compliance > Inspections | fleet.view; fleet.edit |
| Fines | Fleet > Compliance > Fines | fleet.fine.view; fleet.edit (save, pay, dispute); fleet.fine.approve (approve deduction, mark deducted); feature switch Fines, accidents and claims |
| Accidents | Fleet > Compliance > Accidents | fleet.accident.view (list, edit, actions); fleet.log (report); feature switch Fines, accidents and claims |
| Insurance claims | Fleet > Compliance > Claims | fleet.accident.view; fleet.edit (actions) |
| All documents | Fleet > Compliance > Documents | fleet.view; fleet.edit |
| Fleet expenses | Fleet > Costs > Fleet Expenses | fleet.cost.view to see; fleet.edit (and fleet.cost.view) to save; approver needs the permission named on the Expense approval rule (default fleet.workorder.approve) |
| Fuel costs ledger | Fleet > Costs > Fuel Costs | fleet.cost.view |
| Maintenance costs ledger | Fleet > Costs > Maintenance Costs | fleet.cost.view |
| Lease and rental contracts | Fleet > Costs > Lease Costs | fleet.cost.view to see; fleet.edit to save or end; menu item can be switched off by the Leases feature switch |
| Total cost of ownership | Fleet > Costs > TCO | fleet.tco.view (needs fleet.cost.view) |
| Cost allocation | Fleet > Costs > Cost Allocation | fleet.cost.view |
| Replacement planning | Fleet > Costs > Replacement Planning | fleet.tco.view |
| Report pages | Fleet > Reports > Fleet Summary / Vehicle Utilization / Cost / KM / Fuel Efficiency / Maintenance / Downtime / Driver / Expiry / Accidents / Fines / TCO | Per report as listed; the menu entry shows only to people who hold it. Accidents and Fines entries go when the Fines, accidents and claims switch is off |
| All reports catalogue | Fleet > Reports > All Reports | fleet.view; each tile needs its own report permission |
| Pivot | Fleet > Reports > Pivot | fleet.view; Measure = Cost needs fleet.cost.view |
| Graphs | Fleet > Reports > Graphs | fleet.view; the two cost-by-month charts and Cost / KM need fleet.cost.view |
| Vehicle categories | Fleet > Configuration > Vehicle Categories | fleet.view to see; fleet.configure to change |
| Makes and models | Fleet > Configuration > Makes / Models | fleet.view; fleet.configure |
| Fuel types | Fleet > Configuration > Fuel Types | fleet.view; fleet.configure |
| Vehicle statuses | Fleet > Configuration > Vehicle Statuses | fleet.view |
| Service types | Fleet > Configuration > Service Types | fleet.view; fleet.configure |
| Maintenance plans | Fleet > Configuration > Maintenance Plans | fleet.view; fleet.configure |
| Document types | Fleet > Configuration > Document Types | fleet.view; fleet.configure |
| Permit types | Fleet > Configuration > Permit Types | fleet.view; fleet.configure |
| Inspection templates | Fleet > Configuration > Inspection Templates | fleet.view; fleet.configure |
| Telematics providers | Fleet > Configuration > Telematics Providers | fleet.configure (menu entry); the GPS screen needs fleet.telematics.view |
| Fuel cards | Fleet > Configuration > Fuel Cards | fleet.fuel.view to see; fleet.configure to change |
| Cost categories | Fleet > Configuration > Cost Categories | fleet.view; fleet.configure |
| Alert rules | Fleet > Configuration > Alert Rules | fleet.view; fleet.configure |
| Approval rules | Fleet > Configuration > Approval Rules | fleet.view; fleet.configure |
| Country profiles | Fleet > Configuration > Country Profiles | fleet.view; fleet.configure |
| Toll and parking accounts | Fleet > Configuration > Toll & Parking | fleet.view; fleet.configure |
| Other lists | Fleet > Configuration > Other Lists | fleet.view; fleet.configure |
| Fleet settings | Fleet > Configuration > Fleet Settings | fleet.view to open; fleet.configure to save |
| Feature switches and field rules | Applications > Fleet > Features (company administrator) | Company administrator (platform configuration screen) |
Roles
| Rule | What the system does |
|---|---|
| The four seeded fleet roles hold the intended permissions | Manager holds all 22 fleet codes. Coordinator has no fleet.workorder.approve, fleet.fine.approve, fleet.tco.view, fleet.configure. Workshop: view, edit, log, maintenance.view, workorder.create, inventory.view. Driver: view, log, trip.create, fuel.create only. Dependencies hold (e.g. granting fleet.tco.view also needs fleet.cost.view) |
Vehicles list / Dashboard
| Rule | What the system does |
|---|---|
| A user with fleet.view only is read-only | Pages open; no New Vehicle, Edit, Assign Driver, Log Fuel or Schedule Service buttons; Trips, Fuel, Fines, Accidents, Maintenance, Costs menus are absent or refuse with a permission message |
Vehicles
| Rule | What the system does |
|---|---|
| Registering a vehicle needs fleet.create; editing needs fleet.edit | VIEW refused on both; SHOP can edit but POST is refused (403 permission error, nothing saved) |
Vehicle 360
| Rule | What the system does |
|---|---|
| Change status and Sell / scrap / return need fleet.edit | Refused for both; no status change, no disposal request |
| Cost Summary and Costs tab need fleet.cost.view | Cost Summary card empty / hidden; tab call refused 'You cannot see costs.' |
| Live position needs fleet.telematics.view | VIEW: map blank and Telematics tab refuses 'You cannot see telematics.'; COORD sees the position |
| A vehicle disposal needs a second person | Requester refused; manager approves and the vehicle becomes Sold. With the rule switched off the sale completes at once |
Dashboard
| Rule | What the system does |
|---|---|
| Cost and fuel tiles follow permissions | 'Fuel Cost This Month' appears only with fleet.fuel.view or fleet.cost.view; 'Fuel and Maintenance Cost Trend' only with fleet.cost.view; VIEW sees neither |
TCO
| Rule | What the system does |
|---|---|
| Total cost of ownership and replacement analysis need fleet.tco.view | COORD refused; MGR sees TCO figures |
Costs
| Rule | What the system does |
|---|---|
| Cost ledger, allocation, leases and expenses need fleet.cost.view | All refused with a permission message |
Reports
| Rule | What the system does |
|---|---|
| Each report is gated by its own permission | Fleet Summary, Vehicle Register, Utilization, Document Expiry, Insurance, Odometer run; cost reports need cost.view, fuel need fuel.view, maintenance need maintenance.view, accidents / claims accident.view, fines fine.view, trips trip.view, TCO / Replacement tco.view, Driver Assignment / Driver driver.view; the others are refused. The report catalogue lists only what the user may run |
Drivers
| Rule | What the system does |
|---|---|
| Licence, medical and permit details hidden without fleet.driver.view | VIEW sees name, status, vehicle and licence expiry days only; licence number, country, categories, issue date, medical and permit dates are not returned; COORD sees them |
| Saving a driver needs fleet.driver.view plus create / edit | Both refused with a permission message; SHOP cannot edit driver data it cannot see |
Documents
| Rule | What the system does |
|---|---|
| Driver documents (licence scans) hidden from users without fleet.driver.view | Driver documents are not listed; creating one fails 'You cannot see driver documents.' |
Fuel Card Statements
| Rule | What the system does |
|---|---|
| Fuel card numbers are always masked | Only the last four digits show ('•••• 4321') everywhere; the full number is never in the list, a tooltip or the API response |
GPS / Telematics
| Rule | What the system does |
|---|---|
| Connections, devices and geofences need fleet.configure; secrets are never shown | COORD refused (view only); MGR sees 'has secret' but never the secret, password or token; webhook address is shown once as a path |
| Public telematics webhook rejects a wrong signature and a wrong key | 'The signature does not match.'; 'Telematics connection not found.'; not found for an inactive connection; no events stored |
Trips
| Rule | What the system does |
|---|---|
| Trips list needs fleet.trip.view; start / end need fleet.trip.create | VIEW refused on both; DRV cannot open the Trips list but can start and end a trip in the driver app |
Fuel
| Rule | What the system does |
|---|---|
| Fuel list needs fleet.fuel.view; logging needs fleet.fuel.create | VIEW refused; DRV can log a fill (also from the app) but the Fuel list is refused |
| A fill posted to the ledger cannot be deleted | Posted fill: 'This fill is posted to the ledger and cannot be deleted.'; unposted fill is removed, its card statement line goes back to Unmatched |
| A fuel fill is reviewed by someone other than who entered it | A refused 'Somebody other than the person who entered it reviews it.'; B clears it |
Odometer
| Rule | What the system does |
|---|---|
| Logging a reading needs fleet.log; accepting / rejecting needs fleet.edit | VIEW refused (needs fleet.log); DRV can record but the review is refused (needs fleet.edit) |
Fines
| Rule | What the system does |
|---|---|
| Fines need fleet.fine.view to see and fleet.edit to change | Without fine.view the list and Vehicle 360 Fines tab ('You cannot see fines.') are refused; fine.view alone cannot create, pay or dispute |
| A fine's salary deduction needs a different approver | K refused 'Somebody other than the person who asked has to approve it.'; M approves; state Queued |
| A fine already queued or deducted from salary is locked | 'A fine already recovered from salary cannot be changed.' |
Accidents
| Rule | What the system does |
|---|---|
| Accidents need fleet.accident.view to see and fleet.log to report | VIEW refused; DRV can report (driver app and screen) but cannot open the Accidents register without accident.view |
Work orders
| Rule | What the system does |
|---|---|
| Maintenance data needs fleet.maintenance.view; creating / saving work orders needs fleet.workorder.create | VIEW refused; maintenance.view alone cannot create, save, submit or raise a purchase order |
Compliance
| Rule | What the system does |
|---|---|
| Documents, insurance, claims and tyres need fleet.edit to change | All refused; lists still open for fleet.view (documents, insurance) or their view code |
Settings / Configuration
| Rule | What the system does |
|---|---|
| Fleet Settings, lookups, workshops and approval rules need fleet.configure | COORD refused (reads still work); MGR saves; changes are in the audit trail |
Assistant
| Rule | What the system does |
|---|---|
| Fleet assistant answers cost questions only with fleet.cost.view | VIEW refused; MGR gets the explanation. Questions on next service need only fleet.view |
Work order record
| Rule | What the system does |
|---|---|
| A requester cannot approve their own work order | W refused 'Somebody other than the person who asked has to approve it.'; a user without the permission gets 'You cannot approve this.'; M approves and 'Approved by' is M |
| The approver permission follows the approval rule, not a hard-coded code | 6,200 now needs no approval (straight to Approved); 12,000 can be approved only by a holder of the rule's permission |
| Two people editing one work order, and closed work orders | Second save 'Somebody else changed this work order. Reload it.'; completed / cancelled 'A closed work order cannot be changed.' |
| Parts already issued from stock cannot be altered or cancelled away | Line locked; cancel refused 'Parts have been issued - return them to stock in Inventory before cancelling.' |
Reservations
| Rule | What the system does |
|---|---|
| A requester cannot approve their own pool reservation | X refused 'Somebody other than the person who asked has to approve it.'; Y approves |
| Cancel is for the requester or a coordinator; a normal user sees only their own bookings | E refused 'Only the person who asked, or a fleet coordinator, can cancel it.' and sees only own bookings; coordinator sees and cancels all |
Assignments
| Rule | What the system does |
|---|---|
| A requester cannot approve their own assignment | A refused; B approves and the assignment becomes active |
Fleet expenses
| Rule | What the system does |
|---|---|
| A fleet expense above the rule needs a second person | Creator refused; approver approves and the cost is booked once; reject books nothing |
Driver app
| Rule | What the system does |
|---|---|
| A driver can only act on their own vehicle and trip | D1: item results not ok 'VHC-... is not assigned to you.' and 'This is not your trip.'; fleet.edit holders may act for any driver |
Vehicle form
| Rule | What the system does |
|---|---|
| Two people editing one vehicle | Second save refused 'Somebody else changed this vehicle. Reload it.'; nothing lost from the first save |
All screens
| Rule | What the system does |
|---|---|
| Company isolation of fleet records | Every call answers not found (404); lists of B never show A's vehicles, drivers, fines or costs; numbering (VHC-, WO-, FIN-) runs per company |
| Fleet rows need the app installed and the user to be a member of the company | Refused (not a member / permission) and, for the webhook, 'Fleet is not installed for this company.' |
Features
| Rule | What the system does |
|---|---|
| Turning a feature switch off refuses changes and hides menus but keeps records readable | Changes refused with capability_disabled; the Fuel and Fuel Costs menus disappear; existing fills remain readable (reads pass); everything works again after turning on |
| Each switch owns its routes: Reservations, Trips and daily logs, Fuel, GPS and telematics, Tyres and batteries, Fines accidents and claims, Leases | Only the switched area is refused (e.g. Fines off: new fine, accident and claim refused, Reports > Accidents and Fines menus go); Vehicles, Documents and the rest still work |
| Vehicles / drivers / assignments and Registration / insurance / permits cannot be switched off | They are listed as always on (no toggle) and the API refuses to disable them |
Fields
| Rule | What the system does |
|---|---|
| Field setting 'Police report number' = Required / Hidden | Required: 'Police report number is required by this company.'; Hidden: field not shown and a sent value is refused; Optional restores normal behaviour |
| Field settings for VIN, Chassis number, Engine number and Vehicle department | Required refuses the save; Hidden removes the field from the form and refuses a sent value; edits (PUT) obey the same rules |
Audit
| Rule | What the system does |
|---|---|
| Fleet decisions are audited with who and what | One entry per action (fleet.workorder.approve, fleet.fine.approve_deduction, fleet.fuel.clear, fleet.vehicle.dispose.approve, ...) with user, time and record id; no secret values in the entries |