v6
OpenAPI 3.1.02026-08-0331136162.2 KBUpdate a work order by external ID
Update an existing work order using your own work-order identifier (external_work_order_id) instead of the EliseAI work order ID.
The request body must include EliseAI property_id; the pair (property_id, external_work_order_id) identifies the work order. The external ID is the identifier your system supplied when the work order was created through this API. Only the update fields included in the request body are changed; omitted fields are left unchanged. Status transitions are validated the same way as the update-by-ID endpoint; Completed and Closed work orders are terminal and cannot be modified.
Updates through this endpoint are saved in EliseAI only. They are not automatically forwarded to other systems through a PMS push or work_order_event webhook. Treat the API response as the acknowledgement for the write.
Path parameters
Your work-order identifier supplied when the work order was created
Your work-order identifier supplied when the work order was created
Request body
Example request
{
"property_id": "12345"
}Response
Successful Response
Example response
{
"id": "12345",
"external_id": "WO-12345",
"property_id": "12345",
"unit_id": "98765",
"unit_number": "318E",
"type": "Resident",
"issue_id": "plumbing/leak",
"category": "Plumbing",
"status": "NotStarted",
"priority": "Medium",
"description": "Leaking faucet in kitchen",
"permission_to_enter": "pending",
"access_instructions": "Dog in unit, please knock loudly",
"preferred_time_windows": {
"timezone": "America/New_York",
"rules": [
{
"type": "weekly",
"days_of_week": [
"MON",
"WED"
],
"start_time": "09:00",
"end_time": "12:00"
}
]
},
"created_at": "2026-03-24T12:00:00Z",
"updated_at": "2026-03-24T12:00:00Z",
"created_by": "Resident"
}