Work orders

List work orders for the schedule board

Returns work orders for a calendar view, with their booked visits. Unlike the other lists it defaults to live work orders only — send active=false explicitly if you want the deactivated ones. There is no paging. Requires the work_orders:read permission.

GET
https://services.magicdoor.com/maintenance/company-portal/work-orders/schedule

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.

Query parameters

portfolioIdsstring[]

Only work orders in these portfolios. Repeat the parameter for more than one.

propertyIdsstring[]

Only work orders on these properties.

unitIdsstring[]

Only work orders on these units.

leaseIdsstring[]

Only work orders tied to these leases.

vendorIdsstring[]

Only work orders assigned to these vendors.

maintenanceRequestIdsstring[]

Only work orders raised from these maintenance requests.

recurringWorkOrderIdsstring[]

Only work orders raised by these recurring work orders.

statusenum<string>[]

Only work orders in these states. Repeat the parameter for more than one.

closedpendinginProgresscompletedcancelled
referencestring

Only the work order with this reference number.

searchTextstring

Free-text search across the work order.

activeboolean

true returns only live work orders; false only deactivated ones.

hasGroupChatboolean

true returns only work orders that already have a group chat.

hasVendorboolean

true returns only work orders with a vendor assigned; false only those still unassigned.

isScheduledboolean

true returns only work orders with at least one visit booked; false only those with none.

closedAfterstring · date-time

Only work orders closed on or after this moment.

scheduledTime.startstring · date-time

Only work orders with a visit booked on or after this moment.

scheduledTime.endstring · date-time

Only work orders with a visit booked on or before this moment.

Response

200 · The matching work orders, each carrying its `sessions`.

itemsobject[]required

The work orders. There is no count and no pagination envelope on this one.

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.