Scheduled Maintenance
Learn how to use Scheduled Maintenance workflows.
Overview
Drivly’s Scheduled Maintenance API simplifies the complex process of managing vehicle maintenance services, offering a straightforward solution for obtaining quotes and placing orders.
Workflows
The Scheduled Maintenance API facilitates two primary functions, Quote Maintenance
and Order Maintenance
for all scheduled maintenance types.
Quote Maintenance
Obtain accurate quotes for scheduled maintenance services and repairs.
Order Maintenance
Place orders for scheduled maintenance services, ensuring vehicles are quickly brought up to your standards.
Typical Progression
Lets go over the typical progression of a maintenance service order. While these steps are typical, there may be issues, delays, or other factors that can affect the progression of your service order.
If any problems arise, the service order’s status will be updated to either delayed
or canceled
, and you will be notified of the issue via email and webhook.
After work has started
We’ll switch the status to in-progress
as an indication that work has started. During this time,
our team may find further issues that they can fix. You can configure the service to
pre-authorize a certain amount for these additional services. However, due to the nature of the work,
you must authorize ahead of time.
An issue is found
While working on the vehicle, its possible that our team may find issues such as a worn-out belt or a leaky hose.
Depending on your configuration, we may automatically authorize a certain amount to fix these issues. If the amount is above the pre-authorized amount, we will notify you that the issue is present, but wont act on it until you request a maintenance order.
Work is completed
Once the service is completed, the service order will be updated to reflect the status of the service.
After work is completed, the service order will be updated to include the status of the service, moving from in-progress
to completed
.
Webhooks
service.created
- This event is triggered when a service order is created, providing you with the details of the order:
{
"event": "service.created",
"type": "scheduled-maintenance",
"data": {
"id": "order_mkJ7cEOnb3YcAf",
"status": "pending", // pending, in-progress, completed, delayed, canceled
"estimatedTime": "2024-01-01T12:00:00Z",
// There is no checkout / receipt link for scheduled maintenance
"total": 190,
"items": [
{
"service": "scheduled-maintenance",
"price": 50,
"name": "Oil Change",
"description": "oil-change",
"quantity": 1
},
{
"service": "scheduled-maintenance",
"price": 25,
"name": "Tire Rotation",
"description": "tire-rotation",
"quantity": 4
},
{
"service": "scheduled-maintenance",
"price": 10,
"name": "Brake Inspection",
"description": "brake-inspection",
"quantity": 4
}
],
"history": [
// An Array to show the keys changed and when
{
"status": "pending",
"paid": true,
"time": "2024-01-01T12:00:00Z"
}
]
}
}
service.updated
- This event is triggered when a service order is updated, providing you with the updated details of the order:
service.completed
- This event is triggered when a service order is completed, providing you with the final details of the order:
{
"event": "service.completed",
"type": "scheduled-maintenance",
"data": {
"id": "order_cuRxvZfmcgAchV",
"status": "completed",
"estimatedTime": null,
"total": 375,
"items": [
{
"service": "scheduled-maintenance",
"price": 50,
"name": "Oil Change",
"description": "oil-change",
"quantity": 1
},
{
"service": "scheduled-maintenance",
"price": 25,
"name": "Tire Rotation",
"description": "tire-rotation",
"quantity": 4
},
{
"service": "scheduled-maintenance",
"price": 10,
"name": "Brake Inspection",
"description": "brake-inspection",
"quantity": 4
},
{
"service": "scheduled-maintenance",
"price": 100,
"name": "Worn Belt",
"description": "worn-belt",
"quantity": 1
},
{
"service": "scheduled-maintenance",
"price": 25,
"name": "Leaky Hose",
"description": "leaky-hose",
"quantity": 1
},
{
"service": "scheduled-maintenance",
"price": 60,
"name": "Faulty Sensor",
"description": "faulty-sensor",
"quantity": 1
}
],
"history": [
{
"status": "pending",
"paid": true,
"time": "2024-01-01T12:00:00Z"
},
{
"status": "in-progress",
"time": "2024-01-02T12:00:00Z"
},
{
"status": "completed",
"time": "2024-01-03T12:00:00Z"
}
]
}
}
Next Steps
Ready to get started with Scheduled Maintenance API?