Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
$kind: http-example
request:
url: "{{base_url}}/{{namespace}}/orchestrator/commit"
method: POST
headers:
Content-Type: application/json
Accept: application/json
body:
type: json
content: |-
{
"scheduled_date": "2026-05-16",
"assignments": [
{
"order_id": "order_7YqM3KpL2n",
"vehicle_id": "vehicle_Q1w2E3r4T5",
"driver_id": "driver_A1b2C3d4E5",
"sequence": 1,
"arrival": 1778918400,
"duration": 900,
"distance": 4200
}
]
}
response:
statusCode: 200
statusText: OK
headers:
Content-Type: application/json
body:
type: json
content: |-
{
"committed": ["order_7YqM3KpL2n"],
"failed": [],
"manifests": ["manifest_P9qR8sT7uV"]
}
order: 1000
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
$kind: http-example
request:
url: "{{base_url}}/{{namespace}}/orchestrator/run"
method: POST
headers:
Content-Type: application/json
Accept: application/json
body:
type: json
content: |-
{
"mode": "assign_drivers",
"order_ids": ["order_7YqM3KpL2n"],
"vehicle_ids": ["vehicle_Q1w2E3r4T5"],
"prior_assignments": [
{
"order_id": "order_7YqM3KpL2n",
"vehicle_id": "vehicle_Q1w2E3r4T5",
"sequence": 1
}
],
"options": {
"respect_skills": true,
"require_active_shift": false
}
}
response:
statusCode: 200
statusText: OK
headers:
Content-Type: application/json
body:
type: json
content: |-
{
"assignments": [
{
"order_id": "order_7YqM3KpL2n",
"vehicle_id": "vehicle_Q1w2E3r4T5",
"driver_id": "driver_A1b2C3d4E5",
"sequence": null
}
],
"unassigned": [],
"summary": {
"drivers_assigned": 1,
"vehicles_assigned": 0
}
}
order: 2000
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
$kind: http-example
request:
url: "{{base_url}}/{{namespace}}/orchestrator/run"
method: POST
headers:
Content-Type: application/json
Accept: application/json
body:
type: json
content: |-
{
"mode": "assign_vehicles",
"order_ids": ["order_heavy_01", "order_cold_02", "order_oversized_04"],
"vehicle_ids": ["vehicle_capacity_truck_01", "vehicle_cold_van_01"],
"prior_assignments": [],
"options": {
"engine": "capacity",
"respect_capacity": true,
"respect_skills": true,
"balance_workload": false
}
}
response:
statusCode: 200
statusText: OK
headers:
Content-Type: application/json
body:
type: json
content: |-
{
"assignments": [
{
"order_id": "order_heavy_01",
"vehicle_id": "vehicle_capacity_truck_01",
"driver_id": null,
"sequence": 1,
"arrival": null,
"duration": null,
"distance": null
},
{
"order_id": "order_cold_02",
"vehicle_id": "vehicle_cold_van_01",
"driver_id": null,
"sequence": 1,
"arrival": null,
"duration": null,
"distance": null
}
],
"unassigned": ["order_oversized_04"],
"summary": {
"engine": "capacity",
"allocation_strategy": "capacity_only",
"assigned": 2,
"unassigned": 1,
"unassigned_reasons": [
{
"order_id": "order_oversized_04",
"reason": "capacity_exceeded"
}
],
"respect_capacity": true,
"respect_skills": true,
"balance_workload": false
}
}
order: 1200
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
$kind: http-example
request:
url: "{{base_url}}/{{namespace}}/orchestrator/run"
method: POST
headers:
Content-Type: application/json
Accept: application/json
body:
type: json
content: |-
{
"mode": "assign_vehicles",
"order_ids": ["order_7YqM3KpL2n", "order_8AkN4LqP9x"],
"vehicle_ids": ["vehicle_Q1w2E3r4T5", "vehicle_A9s8D7f6G5"],
"options": {
"engine": "vroom",
"allocation_strategy": "route_aware",
"geometry": false,
"respect_capacity": true,
"respect_skills": true
}
}
response:
statusCode: 200
statusText: OK
headers:
Content-Type: application/json
body:
type: json
content: |-
{
"assignments": [
{
"order_id": "order_7YqM3KpL2n",
"vehicle_id": "vehicle_Q1w2E3r4T5",
"driver_id": null,
"sequence": 1,
"arrival": 1778918400,
"duration": 900,
"distance": 4200
},
{
"order_id": "order_8AkN4LqP9x",
"vehicle_id": "vehicle_A9s8D7f6G5",
"driver_id": null,
"sequence": 1,
"arrival": 1778919300,
"duration": 780,
"distance": 3600
}
],
"unassigned": [],
"summary": {
"engine": "vroom",
"allocation_strategy": "route_aware",
"cost": 7800,
"routes": 2,
"unassigned": 0,
"duration": 1680,
"distance": 7800
}
}
order: 1000
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
$kind: http-example
request:
url: "{{base_url}}/{{namespace}}/orchestrator/run"
method: POST
headers:
Content-Type: application/json
Accept: application/json
body:
type: json
content: |-
{
"mode": "assign_vehicles",
"order_ids": ["order_heavy_01", "order_cold_02", "order_parcel_03"],
"vehicle_ids": ["vehicle_capacity_truck_01", "vehicle_cold_van_01"],
"prior_assignments": [],
"options": {
"engine": "vroom",
"allocation_strategy": "capacity_only",
"respect_capacity": true,
"respect_skills": true,
"balance_workload": true
}
}
response:
statusCode: 200
statusText: OK
headers:
Content-Type: application/json
body:
type: json
content: |-
{
"assignments": [
{
"order_id": "order_heavy_01",
"vehicle_id": "vehicle_capacity_truck_01",
"driver_id": null,
"sequence": 1,
"arrival": 0,
"duration": 0,
"distance": 0
},
{
"order_id": "order_cold_02",
"vehicle_id": "vehicle_cold_van_01",
"driver_id": null,
"sequence": 1,
"arrival": 0,
"duration": 0,
"distance": 0
}
],
"unassigned": ["order_parcel_03"],
"summary": {
"engine": "vroom",
"allocation_strategy": "capacity_only",
"routes": 2,
"unassigned": 1
}
}
order: 1100
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
$kind: collection
description: |-
Orchestrator endpoints generate and commit FleetOps resource assignment plans. All resource identifiers accepted and returned by the consumable API are public IDs.

`POST /orchestrator/run` supports route-aware VROOM allocation, VROOM capacity-only allocation, native Fleetbase capacity-only allocation, driver assignment, route optimization, and multi-phase prior-assignment flows.

Capacity-only allocation is for clients who need to answer which vehicles can carry selected orders by weight, volume, pallet count, parcel count, skills, and task limits without relying on vehicle GPS positions.
order: 8500
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
$kind: params
fields:
- name: scheduled_date
type: date
description: Manifest scheduled date. Defaults to the current date when omitted.
- name: assignments
type: array of objects
description: Proposed assignment records to commit. All IDs are public resource IDs.
fields:
- name: order_id
type: string
description: Public order ID.
- name: vehicle_id
type: string
description: Public vehicle ID.
- name: driver_id
type: string
description: Public driver ID, when a driver is assigned.
- name: sequence
type: integer
description: Stop sequence for the order within the vehicle route.
- name: arrival
type: integer
description: Estimated arrival time as a Unix timestamp.
- name: duration
type: integer
description: Duration from the previous stop in seconds.
- name: distance
type: integer
description: Distance from the previous stop in meters.
- name: waypoint_sequence
type: array of strings
description: Optional ordered waypoint public IDs for multi-stop route updates.
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
$kind: http-request
description: |-
Commits a proposed orchestrator plan by creating manifests and applying vehicle and driver assignments to orders. Assignment records must use public resource IDs.

This endpoint is engine-agnostic: commit the `assignments` returned by route-aware VROOM, VROOM capacity-only, native capacity-only, or multi-phase orchestration runs. Do not submit internal UUIDs or database IDs.
url: "{{base_url}}/{{namespace}}/orchestrator/commit"
method: POST
headers:
Content-Type: application/json
Accept: application/json
body:
type: json
content: |
{
"scheduled_date": "2026-05-16",
"assignments": [
{
"order_id": "{{order_id}}",
"vehicle_id": "{{vehicle_id}}",
"driver_id": "{{driver_id}}",
"sequence": 1,
"arrival": 1778918400,
"duration": 900,
"distance": 4200
}
]
}
examples: ./.resources/Commit Orchestrator Plan.resources/examples
order: 2000
Loading
Loading