Fleet Vehicle Management Integration Manual

Developer guidance for integrating DecisioQ fleet decisions with dispatch, telematics, maintenance, driver, compliance, fuel, energy, lifecycle, and financial-control systems.
1Fleet Vehicle Management Overview

The Fleet Vehicle Management sector in the DecisioQ Decision Catalog is identified by AUTO-FLEET. It supports decision support across dispatch, driver management, maintenance, compliance and safety, fuel and energy, cost control, digital operations, lifecycle planning, and business performance.

DecisioQ integrations should load sector, category, decision, Decision Preparation Model, and scenario metadata from the Decision Catalog. Do not hard-code old template codes, static decision lists, or legacy request models.

Recommended first deployment: start with one operational workflow where a ranked recommendation is useful but human review still matters, such as vehicle assignment, driver assignment, preventive maintenance priority, fuel exception approval, or replacement planning.

2Catalog Discovery Flow

Fleet client applications should use the same discovery flow as the Business Decision Studio:

  1. Load GET /decisioncatalog through the approved server-side Decision Catalog gateway.
  2. Populate Sector from catalog.sectors[] and select AUTO-FLEET for Fleet Vehicle Management.
  3. Populate Category from selectedSector.categories[]. Example categories include Driver Management, Compliance & Safety, Cost & Financial Control, Digital Operations, Fuel & Energy Management, Business Performance, Maintenance, Dispatch, and Lifecycle Planning.
  4. Populate Decision from selectedCategory.decisions[] when available, or call /decisioncatalog/sectors/{sectorCode}/categories/{categoryCode}/decisions.
  5. Display Decision Name only in the dropdown while keeping decisionId as the option value.
  6. Load full decision detail from /decisioncatalog/decisions/{decisionId} before rendering Guided Data Collection.

Decision detail is the source of truth for criterion names, data guidance, scale, direction, profile options, scenarios, and overview metadata.

For regional deployments, keep DecisioQ technical identifiers stable and localize only user-facing labels and guidance. Unless the selected endpoint and decision schema explicitly support unit-qualified input, convert mileage, distance, pressure, temperature, mass, volume, speed, fuel consumption, and other measurements to the required canonical units before submission. Do not infer units or currency from locale.

3Fleet Use Cases
Use CasePrimary UsersTypical Inputs
Vehicle assignmentDispatchers, route planners, operations teamsVehicle capability, location, availability, utilization, maintenance status, route fit, service window.
Driver assignment and exception reviewDispatchers, safety teams, fleet managersAvailability, certifications, hours-of-service status, safety score, route familiarity, overtime risk.
Maintenance prioritizationMaintenance planners, shop supervisorsMileage, engine hours, fault codes, inspection defects, downtime risk, workshop capacity, parts availability.
Compliance and safety interventionCompliance teams, safety managersInspection urgency, policy exceptions, violation severity, driver risk, audit exposure, training history.
Fuel and energy decisionsFuel managers, EV operations, route plannersFuel price, charging availability, range, route distance, dwell time, contract terms, exception severity.
Lifecycle and replacement planningFleet managers, finance, procurementDepreciation, lifecycle cost, repair history, utilization, resale value, downtime, capital constraints.
Digital operations and system upgradesOperations leaders, IT, transformation teamsBusiness value, integration complexity, user adoption, operational risk, data readiness.
Business performance improvementExecutives, operations leaders, analystsCost savings, service impact, process maturity, benchmark gap, customer impact, implementation effort.
4Business Data Mapping

Fleet integrations should map vehicle, driver, route, maintenance, telematics, fuel, compliance, and financial data into decision-specific Business Data. The selected decision detail defines which criteria are required and how each value should be measured.

Business Data SourceCommon UseIntegration Notes
Vehicle ID, driver ID, route ID, work order ID, asset ID, or job IDoptionId and audit correlation.Keep stable source-system IDs so recommendations can be traced back to fleet, dispatch, maintenance, and finance systems.
Telematics and live operations dataDispatch, safety, maintenance, routing, utilization decisions.Normalize timestamps, location freshness, odometer, engine hours, fault codes, idling, and sensor confidence.
Maintenance and inspection recordsPreventive maintenance, repair-vs-replace, shop scheduling, downtime planning.Separate current fault severity from long-term maintenance history and warranty eligibility.
Driver profile and compliance dataAssignment, coaching, safety intervention, policy exception decisions.Use current certification and hours-of-service status. Do not mix unavailable drivers into eligible candidate sets.
Fuel, charging, and energy dataFueling strategy, EV charging, range risk, route energy decisions.Keep units clear for cost, distance, range, dwell time, and fuel or charging availability.
Financial and lifecycle dataReplacement, capital plan, insurance, outsourcing, expansion decisions.Distinguish purchase cost, operating cost, depreciation, resale value, lease terms, and downtime cost.
Policy, safety, and regulatory dataCompliance inspection, exception, audit, and safety prioritization.Capture jurisdiction, deadline, severity, recurrence, and exposure as distinct criteria when the decision expects them.

Do not invent criterion IDs. Use the canonical criteria returned by /decisioncatalog/decisions/{decisionId}, including criterion overview metadata, unit, direction, scale, and data guidance.

5Preview and Execute Workflow

Production integrations should keep credentials and bearer tokens on trusted servers or server-side gateways. Browser pages should use same-origin proxy handlers or their own backend service.

  1. Trusted backend obtains a JWT token from identity.vinquery.com.
  2. Application loads catalog and decision detail metadata.
  3. User or system prepares Business Data for candidate vehicles, drivers, routes, maintenance jobs, fuel options, compliance cases, or lifecycle actions.
  4. Call POST /api/v1/validate to validate and prepare the decision input before execution.
  5. Call POST /api/v1/decide to return the authoritative Decision Result.
  6. Display the recommendation, ranked alternatives, warnings, assumptions, and Explanation of Decision Result.
  7. Keep execution trace and diagnostics available to integrators, but collapsed or hidden by default for business users.

Use /api/v1/decide for both Prepared Criteria Mode and business-data integrations that submit a businessData object. New public onboarding should prefer Preview Decision and Execute Decision terminology.

6Example Request Shape

The exact fields depend on the selected Fleet Vehicle Management decision. The example below shows the integration style rather than a guaranteed schema for every decision.

{
  "decisionId": "AUTO-FLEET-009",
  "decisionPreparationModelId": "AUTO-FLEET-PROFILE-STANDARD",
  "scenarioId": "AUTO-FLEET-SCENARIO-DRIVER-ASSIGNMENT",
  "businessData": {
    "candidates": [
      {
        "optionId": "DRIVER-1842",
        "name": "Driver A - local delivery route",
        "values": {
          "availabilityScore": 91,
          "certificationMatchScore": 96,
          "hoursOfServiceScore": 82,
          "safetyScore": 88,
          "routeFamiliarityScore": 79,
          "overtimeRiskScore": 24
        }
      },
      {
        "optionId": "DRIVER-2057",
        "name": "Driver B - regional delivery route",
        "values": {
          "availabilityScore": 86,
          "certificationMatchScore": 92,
          "hoursOfServiceScore": 74,
          "safetyScore": 91,
          "routeFamiliarityScore": 84,
          "overtimeRiskScore": 37
        }
      }
    ]
  },
  "requestContext": {
    "correlationId": "fleet-dispatch-20260717-001"
  }
}
7Backend Call Pattern

This pattern belongs in a trusted backend, not directly in browser JavaScript.

async function executeFleetDecision(decisionInput, jwtToken) {
  const response = await fetch(`${process.env.DECISIOQ_BASE_URL}/api/v1/decide`, {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${jwtToken}`,
      "Content-Type": "application/json"
    },
    body: JSON.stringify(decisionInput)
  });

  if (!response.ok) {
    throw new Error(`DecisioQ execution failed: ${response.status} ${await response.text()}`);
  }

  return await response.json();
}
8UI and Workflow Integration
UI ElementRecommended DisplayWhy It Matters
Choose a DecisionSector, Category, Decision, Profile, and Scenario selectors populated from catalog metadata.Users see business names while integrators retain stable IDs.
Selection OverviewSector, category, and decision overviews in one collapsible panel.Fleet, dispatch, maintenance, and safety users understand the decision before entering data.
Guided Data CollectionCriterion label, field, data type indicator, summary, and expandable "More about this criterion".Improves vehicle, driver, maintenance, and compliance data quality.
Candidate CasesTwo fields per row where practical, editable option ID, and visible units or data type indicators.Dispatchers and fleet managers can compare alternatives quickly.
Decision ResultRecommendation, ranking, confidence, and key drivers.Users need the answer and the reason.
Outcome Follow-upAccepted, Rejected, or Overridden; selected option and override reason when applicable.Connects the recommendation to the action actually taken.
Realized ValueOutcome status plus a consistently defined financial or operational metric.Measures adoption and business value without changing deterministic scoring.
ExplanationBusiness-friendly explanation without AI provider branding.Supports trust while keeping the UI provider-neutral.
DiagnosticsCollapsed technical panel for status, timings, warnings, and errors.Useful for integrators without distracting business users.
9Production Readiness
  • Store identity credentials, Decision API base URL, and proxy configuration in trusted server configuration or a secret manager.
  • Do not expose bearer tokens or integration credentials in browser code.
  • Use catalog metadata rather than hard-coded categories, decisions, criteria, profiles, or scenarios.
  • Validate Business Data before execution and show user-friendly validation messages.
  • Persist correlation ID, vehicle ID, driver ID, route ID, work order ID, decision ID, profile ID, scenario ID, selected option, score, and explanation for audit.
  • Retain the successful decision response requestId with the host business transaction, then call POST /api/v1/decision-outcomes when the action and realized result are known.
  • Require an overrideReason for overridden recommendations; never infer acceptance merely because a result was displayed.
  • Monitor GET /api/v1/decision-outcomes/summary for acceptance rate, override rate, and realized-value aggregates. Treat outcome feedback as reporting evidence, not automatic model training.
  • Redact driver identifiers, location traces, safety notes, customer route details, and sensitive cost data in logs and diagnostics.
  • Monitor catalog load failures, token refresh failures, API latency, validation failures, account verification failures, and unusual exclusion rates.
  • Define fallback behavior so dispatch, maintenance, safety, and compliance workflows remain usable when DecisioQ is unavailable.
  • Review Decision Preparation Models and scenario assumptions with operations, maintenance, safety, and finance owners when policies or operating conditions change.
10Troubleshooting
SymptomLikely CauseFix
Category list is empty.The catalog response does not include categories for the selected sector, or the client is reading an old category layer.Use selectedSector.categories[] from /decisioncatalog.
Decision dropdown shows IDs only.The client did not load decision detail or category decision names.Display Decision Name as the label and keep decision ID as the option value.
Criterion guidance is missing.Decision detail lacks criterion overview metadata or the page is not rendering it.Read criterion overview from /decisioncatalog/decisions/{decisionId} and show available summaries.
Secure session could not be refreshed.Token proxy or identity service configuration failed.Check server-side identity configuration and proxy logs; do not request tokens directly from browser JavaScript.
Decision execution failed.Decision API unavailable, invalid Business Data, authorization failure, or account verification issue.Check response envelope, HTTP status, correlation ID, Decision API health, and server logs.
Unexpected recommendation.Scale, units, direction, or values do not match catalog criterion guidance.Compare Business Data fields against criterion overview and validation metadata.
Live fleet recommendation seems stale.Telematics, driver availability, or maintenance state changed after the decision input was prepared.Refresh live operational data close to execution time and include data freshness in the decision context where available.