Recurring work orders

Get a recurring work order

Fetches one recurring work order — the schedule itself, not the work orders it has raised. Requires the work_orders:read permission.

GET
https://services.magicdoor.com/maintenance/company-portal/work-orders/recurring/{recurringWorkOrderId}

Authorization

Authorizationstringrequired
Bearer token — Send your API token in the Authorization header as Bearer <token>. Requests without a valid token are rejected with 401 Unauthorized.

Path parameters

recurringWorkOrderIdstringrequired

The recurring work order to act on. A Snowflake id, sent as a decimal string.

example: 1838400938471029248

Response

200 · The recurring work order.

idstringrequired

The recurring work order.

portfolioIdstringrequired

The portfolio the property sits in. Worked out from the property, not sent by you.

propertyIdstringrequired

The property the work is on.

unitIdstring

The unit the work is on. Absent when the schedule covers the whole property.

leaseIdstring

The lease the work is tied to. Absent when it is not tied to one.

vendorobject

The vendor the generated work orders go to, in the same shape as Get a vendor. Absent when no vendor is set.

locationobject

Where the work happens, looked up from the property and unit at read time.

assignedPropertyManagerIdstring

The property manager put on each generated work order. Absent when nobody is assigned.

titlestring

The title each generated work order gets. MagicDoor writes one from the description when you do not supply it.

descriptionstringrequired

What the recurring job is.

internalDescriptionstring

Notes for staff only, never shown to the tenant or the vendor. Absent when there are none.

urgencyenum<string>required

The urgency each generated work order gets.

urgenthighmediumlownone
permissionToEnterbooleanrequired

Whether someone may enter the unit when the tenant is not home.

frequencyenum<string>required

How often the job repeats, before interval is applied.

dailyweeklymonthlyyearly
intervalintegerrequired

How many of those periods sit between occurrences. 2 with weekly means every other week.

weekdaysenum<string>[]required

Which days of the week an occurrence falls on. Only used by a weekly schedule; an empty array otherwise.

sundaymondaytuesdaywednesdaythursdayfridaysaturday
workSessionTemplatesobject[]required

The visits booked into each occurrence. An empty array means the generated work order carries a due date but no booked visit.

startsFromstring · daterequired

The date the first occurrence falls on. MagicDoor moves the date you sent forward to the first date the pattern actually allows, so this can differ from what you sent.

endsOnstring · date

The date the schedule stops. Absent when it runs forever.

nextDueDatestring · daterequired

The date of the next occurrence still to be raised.

lastCreatedOnstring · date-time

When a work order was last raised from this schedule, in the company's timezone and without an offset. Absent when none has been.

activebooleanrequired

Whether the schedule is still raising work orders.

createdstring · date-timerequired

When the schedule was set up, in the company's timezone and without an offset.

401 · The request carried no valid access token.

403 · The token is not a property manager token, or it lacks the `work_orders:read` permission.

404 · No such recurring work order, or it belongs to another company.