Create new orders in your Routific workspace
A POST request to the /orders
endpoint allows you to upload an array of orders into Routific under a specific workspace.
Request URL
post https://planning-service.beta.routific.com/v1/orders?workspaceId={workspaceId}
Finding your workspaceId
You can find the workspaceId by logging into Routific, selecting the Workspace you'd like to create orders for, and look at the url.
For example, in this url https://beta.routific.com/workspace/650603/routes the workspaceId is 650603.
Sample Request Payload
[
{
"name": "Metro",
"locations": [
{
"address": "510 W 8th Ave, Vancouver, BC V5Z 1C5",
"latitude": 49.26413,
"longitude": -123.11499
}
],
"phone": "+16043215582",
"email": "[email protected]",
"duration": 600, // in seconds
"load": 1,
"instructions": "Deliver at loading bay at the back of the building.",
"timeWindows": [
{
"startTime": "9:00",
"endTime": "10:00"
}
],
"customerOrderNumber": "external-1"
}
]
The body of the payload accepts an array of order entities, where each order entity consists of following properties.
Fields | Type | Description |
---|---|---|
name | String | Name of the Order |
locations (required) | Location object | Either an address or latitude/longitude is required. When only an address is given, we will geocode it for you. When both address and lat/lng are given, we will use the lat/lng location but display the address as given. |
phone | String | Used for SMS notifications or calling from the app |
String | Used for email notifications | |
duration | Number | Time spent at location in seconds (including parking) |
load | Number | Works in conjunction with "capacity" parameter. Use your own unit. |
instructions | String | Delivery instructions for your drivers will be displayed on the app |
timeWindows | TimeWindow object | The time window of delivery. We'll support multiple time-windows in the future, hence an array. |
customerOrderNumber | String | An external ID that you can provide to make referencing easier, both in the UI and when you pull the data out of the Routific platform. |
Sample Response Payload
[
{
"name": "Metro",
"locations": [
{
"address": "510 W 8th Ave, Vancouver, BC V5Z 1C5",
"status": "Geocoding"
}
],
"phone": "16043215582",
"email": "[email protected]",
"duration": 600,
"load": 1,
"instructions": "Deliver at loading bay at the back of the building.",
"timeWindows": [
{
"startTime": "09:00",
"endTime": "10:00"
}
],
"customerOrderNumber": "external-1",
"routificOrderNumber": "ORD-12356",
"createdOn": "2025-03-12T16:07:07.135Z",
"uuid": "6a8e071a-4ee0-470b-982e-b24ed1d1b90c",
"workspaceId": 693240,
"status": "not_scheduled"
}
]
Description of attributes returned in the response payload:
Fields | Type | Description |
---|---|---|
name | String | Customer name for the order |
locations | Location object | Address and coordinates of the delivery address. If the lat/lng was adjusted on the Routific UI, this will fetch the latest pin location. |
phone | String | Phone number of the customer |
String | Email of the customer | |
duration | Number | Expected time spend at location. This is the input, not the actual time spent. For actual durations, you can Fetch route timelines. |
load | Number | A number used to account for how much of a route's capacity is utilized by the order |
instructions | String | Delivery instructions for the order, such buzzer number, etc. |
timeWindows | TimeWindow object | A time range within which the order must of serviced. |
createdOn | String | DateTime field of when the order was created in Routific's system |
workspaceId | Integer | The ID of the workspace associated with the order. |
uuid | String | An internal ID used to identify an order within Routific's system |
customerOrderNumber | String | The external ID or customer order number. |
routificOrderNumber | String | The internal Routific order number (as displayed in the UI). |
status | String | The current status of the order. Possible values: not_scheduled, scheduled, delivered, missed. |