Skip to main content

What is a Routing Schedule?

A Routing Schedule runs route optimization for a hub automatically at the times you set, without anyone opening the app. Its attributes consist of IDs, the Configuration Profile it uses, repetition data (daily, weekly, monthly, by date, or a custom interval), the active window of the schedule, an Auto Dispatch flag, and the outcome of the last run. Every run reads the Configuration Profile named by configurationId, which is what supplies the hub and the vehicles. Neither is sent when you create the schedule, and neither is copied into it — a change to the profile applies to the very next run. Related Guide: Routing Schedule

Key Features

Read routing schedule

GET /routing/schedules

Read routing schedule by ID

GET /routing/schedule/

Create routing schedule

POST /routing/schedule

Update routing schedule by ID

PUT /routing/schedule/

Update partially routing schedule by ID

PATCH /routing/schedule/

Delete routing schedule by ID

DELETE /routing/schedule/

Permissions

Each endpoint is guarded by its own data permission. A call made without it answers 403 with the sys-035 code. Schedules are scoped to your organization. A schedule that belongs to another organization is reported as not found rather than returned.

Repeat Cycle

periode decides how the schedule repeats, and it decides the shape of each entry in schedules. startTime and endTime use the Y-m-d H:i format, and times use H:i. Schedules are evaluated once a minute against the application timezone, so a run starts within a minute of its scheduled time.
For monthly, date is the day of the month written as two digits"01", not "1". For byDate, date is a full Y-m-d date.
timeSchedules appears in every response. It is the timetable the server derives from periode and schedules, and it is read-only — send periode and schedules and let the server rebuild it.

What a Run Does

  1. Collects the hub’s active visits — those with a status of UNASSIGNED or ONGOING. A single run collects at most 1500 visits, oldest first by creation time.
  2. Reads vehicles and optimization settings from the Configuration Profile.
  3. Creates a routing result named {schedule name} - {date time}, marked createdFrom: "SCHEDULER", so scheduled results are distinguishable from manual ones. It appears in Routing → Result like any other.
  4. Dispatches every vehicle on the result when autoDispatch is true, and stops after step 3 when it is false.
The outcome of the last run is reported in logExecuted, including the status, the reason it was skipped or failed, the routing result it produced, and the dispatch counts. A schedule that has never run has no logExecuted.
  • Routing - Route optimization and routing results
  • Vehicle - Vehicles used by a run
  • Task Schedule - The same repetition model, applied to tasks