Vehicle Inspection & Testing Integration Manual
Developer guidance for integrating DecisioQ inspection, emissions, diagnostic, compliance, quality, certification, and inspection network decisions.The Vehicle Inspection & Testing sector in the DecisioQ Decision Catalog is identified by AUTO-INSP. It currently covers 100 decision types across safety inspection, emissions testing, diagnostic testing, roadworthiness assessment, compliance, certificate issuance, inspection operations, quality assurance, fraud detection, equipment analytics, data reporting, fleet programs, and strategic inspection network planning.
DecisioQ integrations should load sector, category, decision, Decision Preparation Model, scenario, criterion, and decision overview metadata from the Decision Catalog. Do not hard-code old static decision lists or legacy request models.
DecisioQ should not replace certified measurement equipment or statutory pass/fail rules. It should support explainable business decisions around routing, prioritization, review, certification workflow, exception handling, and audit-ready recommendations.
Vehicle inspection client applications should use the same discovery flow as the Business Decision Studio:
- Load
GET /decisioncatalogthrough the approved server-side Decision Catalog gateway. - Populate Sector from
catalog.sectors[]and selectAUTO-INSPfor Vehicle Inspection & Testing. - Populate Category from
selectedSector.categories[]. Example categories include Safety Inspection, Emissions Testing, Diagnostic Testing, Roadworthiness Assessment, Compliance & Certification, Inspection Operations, Inspection Quality Assurance, Fraud & Anomaly Detection, Calibration & Equipment Analytics, and Strategic & Enterprise Operations. - Populate Decision from
selectedCategory.decisions[]when available, or call/decisioncatalog/sectors/{sectorCode}/categories/{categoryCode}/decisions. - Display Decision Name only in the dropdown while keeping
decisionIdas the option value. - Load full decision detail from
/decisioncatalog/decisions/{decisionId}before rendering Guided Data Collection.
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.
| Category | Decision Count | Representative Decisions |
|---|---|---|
| Safety Inspection | 8 | Approve Safety Inspection Pass, Determine Critical Safety Defects, Evaluate Tire Safety |
| Emissions Testing | 7 | Approve Emissions Certificate, Evaluate Exhaust Emissions, Recommend Emissions Repair Action |
| Diagnostic Testing | 7 | Determine Diagnostic Test Scope, Determine Sensor Fault Priority |
| Roadworthiness Assessment | 6 | Approve Roadworthiness Certificate, Determine Operational Restrictions |
| Inspection Operations | 7 | Assign Vehicle Inspector, Allocate Inspection Bay |
| Fraud & Anomaly Detection | 4 | Detect Inspection Fraud Risk, Determine Inspector Integrity Review Need |
| Strategic & Enterprise Operations | 4 | Evaluate Inspection Station Expansion, Determine Technology Investment Priority |
| Workflow | Business Question | Systems Involved |
|---|---|---|
| Safety inspection disposition | Which vehicle, defect, or inspection outcome should be recommended for pass, fail, advisory, restriction, retest, or review? | Inspection forms, photo evidence, VIN, odometer, defect library, regulatory rule engine |
| Emissions and diagnostic routing | Which failed or borderline test should be routed to retest, repair referral, waiver review, or escalation? | Emissions analyzer, OBD-II, diagnostic scan, repair history, customer deadline |
| Inspector and bay assignment | Which certified inspector, lane, bay, or mobile route should handle a vehicle based on workload, equipment, and promise time? | Scheduling, workforce, equipment status, appointment queue, customer communication |
| Certification readiness | Which completed inspections are ready for certificate issuance, hold, correction, or manual review? | Certificate system, payment, identity verification, VIN match, evidence completeness |
| Quality and fraud review | Which inspection records, stations, inspectors, or devices should be selected for quality review or integrity investigation? | Audit logs, equipment telemetry, override history, anomaly analytics, compliance reporting |
| Fleet and enterprise planning | Which inspection intervals, station investments, backlog recovery plans, or program changes should be prioritized? | Fleet maintenance, reporting, station operations, financial planning, governance |
Vehicle inspection integrations should map operational inspection data into decision-specific Business Data. The selected decision detail defines which criteria are required, how values are measured, and which direction, scale, and unit each criterion expects.
| Business Data Source | Common Use | Integration Notes |
|---|---|---|
| Vehicle and appointment data | VIN, plate, odometer, vehicle class, inspection type, jurisdiction, appointment, customer or fleet account | Use stable source-system IDs so results can be traced to the inspection record. |
| Inspection observations | Checklist findings, defect severity, photos, videos, inspector notes, retest history | Normalize defect names and severity scales before execution. |
| Testing equipment output | Emissions, OBD readiness, sensor data, brake, alignment, headlamp, opacity, or safety equipment results | Keep statutory thresholds in deterministic rules and pass rule outcomes into DecisioQ where useful. |
| Operations context | Bay availability, inspector certification, queue length, SLA, mobile route, device status | Refresh values close to execution time for assignment and scheduling decisions. |
| Compliance context | Jurisdiction, certificate state, waiver eligibility, evidence completeness, audit flags | Keep regulator-specific rule decisions auditable and show user-friendly explanations. |
| Quality analytics | Override rate, abnormal pass rate, repeat defects, equipment drift, station history | Use canonical criterion IDs from decision detail; do not invent local IDs. |
Do not invent criterion IDs. Use the canonical criteria returned by /decisioncatalog/decisions/{decisionId}, including criterion overview metadata, unit, direction, scale, and data guidance.
- Authenticate through the approved server-side identity flow. Browser pages should not directly handle credentials.
- Load the Decision Catalog and let the user choose Sector, Category, Decision, Decision Preparation Model, and Scenario.
- Load decision detail and render Guided Data Collection from returned criteria.
- User or system prepares Business Data for candidate vehicles, inspection outcomes, inspectors, bays, equipment, retest actions, certificates, or review cases.
- Call
POST /api/v1/validateto validate and prepare the decision input before execution. - Call
POST /api/v1/decideto return the authoritative Decision Result. - Display recommendation, ranked alternatives, warnings, assumptions, and Explanation of Decision Result.
- Keep execution trace and diagnostics collapsed by default for developer and integrator review.
The exact fields depend on the selected Vehicle Inspection & Testing decision. The example below shows the integration style rather than a guaranteed schema for every decision.
{
"decisionId": "AUTO-INSP-008",
"decisionPreparationModelId": "AUTO-INSP-PROFILE-STANDARD",
"scenarioId": "AUTO-INSP-SCENARIO-SAFETY-REVIEW",
"businessData": {
"correlationId": "inspection-20260717-1042",
"inspectionType": "SafetyInspection",
"jurisdiction": "ON",
"stationId": "STATION-102",
"vehicleClass": "Passenger",
"options": [
{
"optionId": "INSPECTION-ACTION-PASS-WITH-ADVISORY",
"label": "Pass With Advisory",
"values": {
"safetySeverityScore": 28,
"evidenceCompletenessScore": 96,
"regulatoryRiskScore": 12,
"customerImpactScore": 35,
"retestLikelihoodScore": 22
}
},
{
"optionId": "INSPECTION-ACTION-REQUIRE-REPAIR",
"label": "Require Repair Before Certificate",
"values": {
"safetySeverityScore": 78,
"evidenceCompletenessScore": 92,
"regulatoryRiskScore": 84,
"customerImpactScore": 64,
"retestLikelihoodScore": 70
}
}
]
}
}
Call DecisioQ from a trusted backend service. Keep identity credentials, account verification, and service configuration outside public browser code.
async function executeVehicleInspectionDecision(jwtToken, preparedDecisionInput) {
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(preparedDecisionInput)
});
const payload = await response.json();
if (!response.ok) {
throw new Error(payload.message || "Decision execution failed.");
}
return payload;
}
- Use a guided decision selector: Sector, Category, Decision, Decision Preparation Model, and Scenario.
- Show Selection Overview for sector, category, and decision metadata so business users understand the decision before entering data.
- Render Guided Data Collection from criterion definitions and show criterion overview summaries where available.
- Display Decision Name in selectors and show the selected
decisionIdseparately for developers and integrators. - For inspection stations, keep operational screens simple: recommendation, reason, required action, warnings, and next step.
- Keep execution trace and diagnostics available to integrators but collapsed by default.
- Never expose internal proxy URLs, service credentials, signing keys, or account verification details in browser code.
- Confirm inspection decisions support the right jurisdiction, inspection type, vehicle class, and effective policy date.
- Validate Business Data before execution and show user-friendly validation messages.
- Persist correlation ID, VIN, plate, inspection ID, station ID, inspector ID, device ID, certificate ID, decision ID, profile ID, scenario ID, selected option, score, and explanation for audit.
- Retain the successful decision response
requestIdwith the host business transaction, then callPOST /api/v1/decision-outcomeswhen the action and realized result are known. - Require an
overrideReasonfor overridden recommendations; never infer acceptance merely because a result was displayed. - Monitor
GET /api/v1/decision-outcomes/summaryfor acceptance rate, override rate, and realized-value aggregates. Treat outcome feedback as reporting evidence, not automatic model training. - Keep statutory pass/fail rule evaluation separate and deterministic; use DecisioQ for multi-factor routing, prioritization, review, and recommendation decisions.
- Monitor preview failures, execution failures, account verification errors, timeout rates, and unexpected warning counts.
- Review Decision Preparation Models and scenario assumptions with inspection, compliance, operations, and quality owners when rules, equipment, or market conditions change.
| Symptom | Likely Cause | Fix |
|---|---|---|
| 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. |
| Safety or emissions outcome conflicts with equipment result. | The inspection system mixed statutory rule decisions with DecisioQ recommendation decisions. | Keep certified equipment and regulator rules authoritative, then use DecisioQ for routing, prioritization, exception, and review decisions. |
| 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. |
| Inspector assignment seems stale. | Queue, certification, bay, device, route, or workload data changed after the decision input was prepared. | Refresh source-system context close to execution time and include data freshness where available. |
