Dispatch and routes
Create and change routes, assign and unassign stops, work with transfers, and look up addresses on the map.
Paths are relative to https://api.rushhourapp.com/api/v1. See the API reference overview for how to read each entry.
Routes
| Method | Path | Summary |
|---|---|---|
POST | /Routes | Add route. |
GET | /Routes/{id} | Get route. |
PUT | /Routes/{id} | Update route. |
DELETE | /Routes/{id} | Delete route. |
POST | /Routes/{id}/assign-unassigned-stop | Assign unassigned stop. |
POST | /Routes/{id}/auto-reroute | Auto reroute. |
GET | /Routes/{id}/optimization-status | Get optimization status. |
PUT | /Routes/{id}/RouteItems/CloseAll | Close all route items for route. |
PUT | /Routes/{id}/routeItems/updateStatus/{status} | Update route items status. |
PUT | /Routes/{id}/stops | Update route stops. |
PUT | /Routes/{id}/updateStatus/{status} | Update route status. |
GET | /Routes/active | Get active routes. |
PUT | /Routes/AvoidTolls | Switch avoid tolls. |
PUT | /Routes/ChangeOrderRoute | Change order route. |
PUT | /Routes/MoveOrderOnRouteToUnassigned | Move order on route to unassigned. |
PUT | /Routes/MoveToUnassigned | Move to unassigned. |
POST | /Routes/NewTransfer | Create transfer. |
GET | /Routes/OrderRouteSnapshot | Get order route snapshot. |
GET | /Routes/RouteIds | Get route IDs for order stop. |
GET | /Routes/RouteItemDetails | Get route item details. |
GET | /Routes/RouteItemGroups | Get route item groups. |
GET | /Routes/Routes | Get routes. |
POST | /Routes/TransferOptions | Get transfer options. |
GET | /Routes/TransferRouteItems | Get transfer route items. |
DELETE | /Routes/Transfers/{transferStopId} | Delete transfer. |
PUT | /Routes/TransferStops/{transferStopId}/Address | Update transfer address. |
GET | /Routes/UnassignedFilters | Location options for the dispatch "Add Pickup" search box. |
GET | /Routes/UnassignedRoutes | Unassigned stops for the dispatch "Add Pickup" panel. |
GET | /Routes/UnassignedStopRouteSuggestions | Ranks the active routes by how well they could take an unassigned pickup, best first. |
POST /Routes
Add route.
Required access: the Edit/Delete/Create Route permission.
Request body: Route (JSON).
Response: envelope; data is Route.
GET /Routes/{id}
Get route.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes | |
separateCompletedDirections | query | boolean | No | Default: false. |
Also accepts the shared list parameters.
Response: envelope; data is RouteResponse.
PUT /Routes/{id}
Update route.
Required access: the Edit/Delete/Create Route permission.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes |
Request body: Route (JSON).
Response: envelope; data is Route.
DELETE /Routes/{id}
Delete route.
Required access: the Edit/Delete/Create Route permission.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes |
Response: envelope; data is Route.
POST /Routes/{id}/assign-unassigned-stop
Assign unassigned stop.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes |
Request body: AssignUnassignedStopRequest (JSON).
Response: envelope; data has no documented shape.
POST /Routes/{id}/auto-reroute
Auto reroute.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes |
Request body: AutoRerouteRouteRequest (JSON).
Response: envelope; data has no documented shape.
GET /Routes/{id}/optimization-status
Get optimization status.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes | |
countryIds | query | array of integer (int32) | No |
Response: RouteOptimizationStatus as the whole response body, without the envelope.
PUT /Routes/{id}/RouteItems/CloseAll
Close all route items for route.
Required access: the Close All permission.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes |
Response: envelope; data has no documented shape.
PUT /Routes/{id}/routeItems/updateStatus/{status}
Update route items status.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes | |
status | path | integer (int32) | Yes | One of: 0 (ToDo), 1 (Done), 2 (Pending). |
allowIncreaseDeliveryQuantity | query | boolean | No | Default: true. |
closeOrder | query | boolean | No | Default: true. |
getUpdateStatus | query | boolean | No | Default: false. |
Request body: RouteItemStopGroup (JSON).
Response: envelope; data is Route.
PUT /Routes/{id}/stops
Update route stops.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes | |
validateIsAssigned | query | boolean | No | Default: false. |
Request body: array of RouteItemGroup (JSON).
Response: envelope; data is Route.
PUT /Routes/{id}/updateStatus/{status}
Update route status.
Required access: the Archive permission.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | integer (int32) | Yes | |
status | path | string | Yes | One of: Archive, StartNow, StartNext, Restore, Completed. |
Response: envelope; data has no documented shape.
GET /Routes/active
Get active routes.
Response: envelope; data is RoutePagedList.
PUT /Routes/AvoidTolls
Switch avoid tolls.
Required access: the Edit/Delete/Create Route permission.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
avoidTolls | query | boolean | No | |
routeId | query | integer (int32) | No |
Response: envelope; data has no documented shape.
PUT /Routes/ChangeOrderRoute
Change order route.
Request body: ChangeOrderRouteRequest (JSON).
Response: envelope; data has no documented shape.
PUT /Routes/MoveOrderOnRouteToUnassigned
Move order on route to unassigned.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
orderId | query | integer (int32) | No | |
routeId | query | integer (int32) | No |
Response: envelope; data has no documented shape.
PUT /Routes/MoveToUnassigned
Move to unassigned.
Required access: the Assign/Unassign Orders permission.
Request body: MoveToUnassignedRequest (JSON).
Response: envelope; data is Route.
POST /Routes/NewTransfer
Create transfer.
Request body: TransferStop (JSON).
Response: envelope; data is OrderStop.
GET /Routes/OrderRouteSnapshot
Get order route snapshot.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
orderId | query | integer (int32) | No |
Response: envelope; data is OrderRouteSnapshotDto.
GET /Routes/RouteIds
Get route IDs for order stop.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
orderStopId | query | integer (int32) | No |
Response: envelope; data is array of integer (int32).
GET /Routes/RouteItemDetails
Get route item details.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
AddressName | query | string | No | |
FullAddress | query | string | No | |
IsAllItemsDone | query | boolean | No | |
isUsePagination | query | boolean | No | Default: false. |
LocationCompanyName | query | string | No | |
LocationContactNumber | query | string | No | |
LocationContactNumberExtension | query | string | No | |
orderId | query | integer (int32) | No | |
OrderStopId | query | integer (int32) | No | |
routeId | query | integer (int32) | No | |
Status | query | integer (int32) | No | One of: 0 (ToDo), 1 (Done), 2 (Pending). |
Types | query | array of string | No | One of: Pickup, DeliveryToTransfer, PickupFromTransfer, Delivery. |
Also accepts the shared list parameters.
Response: envelope; data is RouteItemGroupPagedList.
GET /Routes/RouteItemGroups
Get route item groups.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
AddressName | query | string | No | |
FullAddress | query | string | No | |
IsAllItemsDone | query | boolean | No | |
LocationCompanyName | query | string | No | |
LocationContactNumber | query | string | No | |
LocationContactNumberExtension | query | string | No | |
OrderStopId | query | integer (int32) | No | |
routeId | query | integer (int32) | No | |
Status | query | integer (int32) | No | One of: 0 (ToDo), 1 (Done), 2 (Pending). |
Types | query | array of string | No | One of: Pickup, DeliveryToTransfer, PickupFromTransfer, Delivery. |
Also accepts the shared list parameters.
Response: envelope; data is RouteItemGroupPagedList.
GET /Routes/Routes
Get routes.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
completedRoutes | query | boolean | No | Default: false. |
routeItemStatus | query | integer (int32) | No | One of: 0 (ToDo), 1 (Done), 2 (Pending). |
separateCompletedDirections | query | boolean | No | Default: false. |
Also accepts the shared list parameters.
Response: envelope; data is RouteResponsePagedList.
POST /Routes/TransferOptions
Get transfer options.
Request body: TransferStop (JSON).
Response: envelope; data is TransferStop.
GET /Routes/TransferRouteItems
Get transfer route items.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
routeId | query | integer (int32) | No | |
transferStopIds | query | array of integer (int32) | No |
Response: envelope; data is array of RouteItem.
DELETE /Routes/Transfers/{transferStopId}
Delete transfer.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
transferStopId | path | integer (int32) | Yes |
Response: envelope; data has no documented shape.
PUT /Routes/TransferStops/{transferStopId}/Address
Update transfer address.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
transferStopId | path | integer (int32) | Yes |
Request body: Address (JSON).
Response: envelope; data is TransferStop.
GET /Routes/UnassignedFilters
Location options for the dispatch "Add Pickup" search box.
Also accepts the shared list parameters.
Response: envelope; data is UnassignedFiltersRes.
GET /Routes/UnassignedRoutes
Unassigned stops for the dispatch "Add Pickup" panel.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
orderId | query | integer (int32) | No | |
orderItemId | query | integer (int32) | No | |
orderStopId | query | integer (int32) | No |
Also accepts the shared list parameters.
Response: envelope; data is UnassignedRoutesSlimResData.
GET /Routes/UnassignedStopRouteSuggestions
Ranks the active routes by how well they could take an unassigned pickup, best first.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
orderStopId | query | integer (int32) | No |
Response: envelope; data is array of UnassignedStopRouteSuggestionDto.
Maps
| Method | Path | Summary |
|---|---|---|
POST | /Maps/ExpandUrl | Expand a shortened map link. |
GET | /Maps/ReverseGeocode | Get the address at a map coordinate. |
POST /Maps/ExpandUrl
Expand a shortened map link.
Request body: ExpandUrlRequestDto (JSON).
Response: envelope; data is ExpandUrlResponseDto.
GET /Maps/ReverseGeocode
Get the address at a map coordinate.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
lat | query | number (double) | No | |
lng | query | number (double) | No |
Response: envelope; data is Address.