post https://api.helloextend.com/service-orders//update-repair
As a servicer, you will be able to post events whenever an action occurs on the service order. These events are intended to be as flexible as possible in order to fit a variety of different workflows.
Event types
Based on the service type (repair_onsite
or repair_depot
), you will be able to send us the following events:
Events For Depot Repair Service Orders:
product_received
product_delivered
product_diagnosed
repair_eta
repair_started
repair_completed
Events For Onsite Repair Service Orders:
part_management
appointment_scheduling
customer_contact
batched
resolved
Important notes about events
- Any event name that is not listed above is valid. These will simply be referred to as
other
events. - Events do not need to occur in any specific order and not all events for the service type need to be sent. The order is above is the recommended order.
- It is highly recommended that the
repair_completed
andresolved
events are used when the service has been completed
- It is highly recommended that the
- The recommended request bodies will be given below for each event, but any request can contain any data for any event and all fields are optional except for the event name
- The only restrictions are around field types and only being able to use events for your service order's service type (
other
is allowed for both service types) - Any event can contain an optional
notes
field - Dates should be sent in timestamp format
- The service order must have been accepted and cannot be closed
Request bodies for each event
Depot Repair
product_received
{
event: 'product_received'
receivedBy: string
receptionDate: number
}
product_delivered
{
event: 'product_delivered'
deliveredTo: string
deliveredDate: number
}
product_diagnosed
{
event: 'product_diagnosed'
diagnosedBy: string
diagnosticExplanation: string
diagnosticCompletedAt: number
}
repair_eta
{
event: 'repair_eta'
estimatedRepairCompletionAt: number
isDelayed: boolean
delayReason: string
}
repair_started
{
event: 'repair_started'
repairStartedAt: number
}
repair_completed
{
event: 'repair_completed'
repairCompletedAt: number
}
Onsite Repair
part_management
{
event: 'part_management'
partManagementEventType: string
}
appointment_scheduling
{
event: 'appointment_scheduling'
appointmentEventType: string
appointmentDate: number
}
customer_contact
{
event: 'customer_contact'
customerContactEventType: string
method: string
contactTimestamp: number
appointmentTimestamps: number[]
}
batched
{
event: 'batched'
availabilityWindows: number[]
}
resolved
{
event: 'resolved'
resolutionType: string
reason: string
}
Other
{
event: 'custom_event_name_here'
eventDate: number
metadata: Object
}