DecisioQ System Architecture Decision Concepts Decision List API Guide Client Kit Developer Center Decision Studio Quick Start Playground End-to-End Examples

AUTO-PARK-002 End-to-End Example

Recommend Parking Zone

Try the interactive showcase

Parking Lot ManagementBusiness Data + Prepared CriteriaAHP priorities

Decision Overview

Compare parking zones using availability, walking distance, customer priority, occupancy pressure, and operational fit.

Compare eligible zones for the same visitor. Keep customer priority consistent for that visitor. Confirm accessibility, permit, vehicle-size, and availability requirements before ranking; this demo does not reserve a space.

Catalog decision: AUTO-PARK-002. Sector: Parking Lot Management. Samples are fictional, not operational advice or production observations.

5-Minute Quick Path

  1. Review the three candidates in the interactive showcase.
  2. Start with the first working Business Data request, or send Prepared Criteria when values are already calculated.
  3. Inspect the ranking and rerun with changed inputs or AHP priorities.

Criteria and Scales

Use raw values in the published units. The engine normalizes them. AHP changes importance, not the direction or scale of an input.

IDMeaningUnitValidationDirectionBalanced weight
space_availabilitySpace AvailabilityPercentagepercentage_0_to_100maximize25%
walking_distanceWalking DistanceMetersnon_negative_numberminimize15%
customer_priorityCustomer PriorityRatingrating_1_to_5maximize20%
occupancy_pressureOccupancy PressurePercentagepercentage_0_to_100minimize20%
operational_fitOperational FitRatingrating_1_to_5maximize20%

Data Preparation Guide

Business records → input schema → mapping profile → canonical criteria → ranking.

Use mapping profile parking-lot-manageme-recommend-parking-zone-auto-park-002 version 1.0.0. These records contain business assessments as well as measurements; this profile renames and reshapes them, but does not infer scores from free text. Govern rating and scoring rubrics before production use.

The showcase collects Prepared Criteria directly. Its sample values match both downloadable request modes below.

Mapping profile · Input schema

Business sourceCanonical criterionTransformation
option.parking.operations.spaceAvailabilityspace_availabilityDirect value; no unit conversion
option.parking.operations.walkingDistancewalking_distanceDirect value; no unit conversion
option.parking.operations.customerPrioritycustomer_priorityDirect value; no unit conversion
option.parking.operations.occupancyPressureoccupancy_pressureDirect value; no unit conversion
option.parking.operations.operationalFitoperational_fitDirect value; no unit conversion

Business Data Mode

Complete illustrative request with three candidates and an explicit decisionVersion. Send it to the decision execute endpoint; do not add an options array to this envelope.

Response identifiers: the current published profile uses root-relative identity paths, so translation returns generated IDs option-1, option-2, and option-3 in input order, with fallback option names. Map these back to the source records by that order. Prepared Criteria retains the explicit source IDs and names. Preserving source identity in Business Data requires a reviewed profile update; this example does not modify the deployed profile.
{
  "decisionId": "AUTO-PARK-002",
  "decisionVersion": "1.0.0",
  "businessData": {
    "requestContext": {
      "sourceSystem": "automotive-profile-factory",
      "correlationId": "factory-auto-park-002"
    },
    "parkingOperations": [
      {
        "optionId": "ZONE-A",
        "name": "Entrance zone",
        "parking": {
          "operations": {
            "spaceAvailability": 72,
            "walkingDistance": 80,
            "customerPriority": 4,
            "occupancyPressure": 82,
            "operationalFit": 4.7
          }
        }
      },
      {
        "optionId": "ZONE-B",
        "name": "Covered zone",
        "parking": {
          "operations": {
            "spaceAvailability": 90,
            "walkingDistance": 220,
            "customerPriority": 4,
            "occupancyPressure": 48,
            "operationalFit": 4.4
          }
        }
      },
      {
        "optionId": "ZONE-C",
        "name": "Overflow zone",
        "parking": {
          "operations": {
            "spaceAvailability": 98,
            "walkingDistance": 480,
            "customerPriority": 4,
            "occupancyPressure": 20,
            "operationalFit": 3.2
          }
        }
      }
    ]
  }
}

Download Business Data request

Prepared Criteria Mode

The same candidates after direct mapping. This request uses the balanced profile with no named scenario. Do not add businessData to this envelope.

{
  "decisionId": "AUTO-PARK-002",
  "decisionName": "Recommend Parking Zone",
  "profileId": "balanced",
  "scenarioId": null,
  "options": [
    {
      "optionId": "ZONE-A",
      "name": "Entrance zone",
      "values": {
        "space_availability": 72,
        "walking_distance": 80,
        "customer_priority": 4,
        "occupancy_pressure": 82,
        "operational_fit": 4.7
      }
    },
    {
      "optionId": "ZONE-B",
      "name": "Covered zone",
      "values": {
        "space_availability": 90,
        "walking_distance": 220,
        "customer_priority": 4,
        "occupancy_pressure": 48,
        "operational_fit": 4.4
      }
    },
    {
      "optionId": "ZONE-C",
      "name": "Overflow zone",
      "values": {
        "space_availability": 98,
        "walking_distance": 480,
        "customer_priority": 4,
        "occupancy_pressure": 20,
        "operational_fit": 3.2
      }
    }
  ]
}

Download Prepared Criteria request

Understanding the Result

Verified local computation, not a hosted API response. The repository TOPSIS engine ranked these exact samples in-process. TOPSIS scores are relative closeness coefficients, not probabilities or confidence percentages.

RankCandidateScore
1Covered zone0.671606
2Overflow zone0.561524
3Entrance zone0.438476

Winner: ZONE-B. Download computation and AHP verification.

Check candidate eligibility and input evidence before acting. Adding or removing candidates can change normalization and the ranking. The showcase displays the actual service response, which may differ when the deployed catalog or configuration differs.

AHP Weights and Sensitivity

Open the paired showcase, choose “Help me generate weights (AHP)”, complete every comparison, and generate consistent weights before running. Option scores describe performance; weights express importance. Read the explanation.

Change one judgment or one measured input at a time, regenerate weights if needed, and compare the winner and score gap. A single unchanged winner is not a formal stability guarantee.

Profiles and Scenarios

The baseline uses balanced and scenarioId: null. Retrieve the deployed decision definition before selecting another profile or named scenario; never assume that “standard” exists. AHP does not override eligibility or safety requirements.

Run the Request

Use either JSON download with your existing authenticated API client. Endpoint and authentication details are in the API Guide. This browser-origin example calls the portal proxy, whose service connection must be configured:

const request = await fetch('/examples/auto-park-002/business-data-request.json').then(r => r.json());
const response = await fetch('/decisioq-decision-api-proxy.ashx?operation=execute', {
  method: 'POST', headers: {'Content-Type': 'application/json'},
  body: JSON.stringify(request)
});
const result = await response.json();
if (!response.ok) throw new Error(JSON.stringify(result));
console.log(result);

For validation errors, check canonical IDs, required values, units, and current catalog ranges. A transport error is not a decision rejection.

Try the showcase · All examples · Playground