Appearance
MEX v15 OData CMMS Integration
Continual can push escalated actions into your computerised maintenance management system (CMMS) as work orders or requests. When a CMMS record is closed, Continual automatically marks the corresponding action as resolved — closing the loop without manual data entry.
This guide is specifically for the supported MEX v15 OData (Maintenance Expert) integration, which uses the legacy OData v3 API. It does not apply to the separate MEX v15 REST or MEX v16 GraphQL APIs. For the provider-neutral introduction and API compatibility table, see CMMS Integrations.
MEX no longer maintains the v15 OData API and has confirmed that known bugs in it will not be fixed. Continual works around the known issues where possible; the v15 REST and v16 GraphQL integrations are planned separately.
Prerequisites
- Your Continual account must be on the Advanced or Enterprise plan. Contact your customer-success manager to enable CMMS integration on your tenant.
- A dedicated MEX v15 service user with OData permission to read assets and create maintenance records (see below).
- An HTTPS-accessible MEX v15 OData endpoint (plain HTTP is rejected for security).
Creating a Dedicated MEX v15 OData Service User
Create a MEX v15 service user that Continual will authenticate as through OData:
- In MEX v15, go to Administration → Security → Users and click New.
- Set a strong password. Record the username and password — you will enter them in Continual. Continual authenticates with HTTP Basic authentication over HTTPS.
- Grant the user the permissions below, and no others.
- Do not grant administrator rights; limit the account to the operations listed here.
Required Permissions
Continual only ever calls the OData entity sets and function imports in this table. Everything else in MEX v15 OData — purchasing, requisitions, inventory, contractors, security, and reporting — can be denied.
| MEX v15 OData entity set / function | Operations | Needed for |
|---|---|---|
OData service document (/OData.svc) | Read | Verifying the connection |
Assets | Read | Verifying the connection, mapping machines, every escalation |
GetWorkOrderDefaults | Read | Work Order mode only |
WorkOrders | Read, Create, Modify | Creating and monitoring work orders |
GetRequestNumber | Read | Request mode only |
Requests | Read, Create, Modify | Request mode only |
RecordApprovals | Read, Create | Request mode only |
Notes on the less obvious entries:
RecordApprovals(Create) is not optional in Request mode. MEX v15 OData stores a request's approval status in a separate table, and a request created without one is saved but never appears in any MEX v15 OData list. Without this permission, every request escalation will fail. Continual only ever seeds the initial Pending Approval row — it never approves or declines anything.- Modify on
WorkOrders/Requestsis used for one narrow case: appending a note to a record's description when the Continual action behind it is deleted. It never changes a record's status. - If you use Work Order mode only, you can deny
Requests,RecordApprovalsandGetRequestNumberoutright.
Permissions Continual Does Not Need
- No delete rights. Continual never deletes a MEX v15 OData record.
- No closure rights (
CloseWorkOrdersToHistory). MEX v15 OData's closure API is not usable, so Continual never calls it — closure syncs one way only, from MEX v15 OData into Continual. See How Closure Syncs. - No approval rights. Continual reads approval decisions but never makes them.
- No write access to
Assets. Asset lookups are read-only.
Record Authorship
Continual has no MEX v15 OData contact of its own, so records it creates are stamped against MEX v15 OData's default administrator contact (ContactID 1) rather than the service user. The service user does not need to be that contact, but the contact must exist on your instance or record creation will fail.
If you have configured a custom approval path for requests, tell your Continual customer-success manager before going live — Continual seeds the standard Pending Approval status, and a custom path may expect a different starting state.
Configuring The Integration
Step 1 — Set Provider and Endpoint
- In the Continual portal, go to
Settings->Integrations. - Find the factory you want to connect.
- Open the CMMS setup wizard.
- Enter the MEX v15 OData endpoint URL, for example
https://mex.yourcompany.com/MEXApi/odata.
Step 2 — Enter Credentials
Click Set credentials and enter the MEX v15 OData service-user username and password. Continual stores the credentials securely and does not display them again after they are saved.
Step 3 — Choose Record Mode
| Mode | When to use |
|---|---|
| Work Order | Creates a full WorkOrder record; use this when your team uses WOs for corrective maintenance. |
| Request | Creates a Request (lighter-weight) in Pending Approval; use this when operators can only raise requests and a planner promotes them. Requires the RecordApprovals permission above. |
Step 4 — Set Origin Label
The Origin label is added to the start of every work order or request description Continual creates. This makes Continual-originated records easy to recognise in MEX v15 OData without relying on custom fields.
Step 5 — Test the Connection
Click Verify connection. Continual will authenticate with MEX v15 OData and return OK or a structured error. Fix any authentication or network errors before continuing.
Step 6 — Activate
Toggle Active on. The integration is now live for this factory.
Finding the Right Asset ID
Each machine in Continual can have a CMMS Asset Identifier that maps it to an asset in MEX v15 OData.
To find the MEX v15 OData asset ID:
- In MEX v15 OData, go to Assets and locate the machine.
- Copy the numeric Asset ID for the asset record.
In the Continual portal, go to Settings -> Integrations, open the CMMS setup wizard for the factory, and use the Map assets step to assign MEX v15 OData asset IDs to machines. Continual validates that the asset exists when you save.
Only actions for machines with a CMMS Asset Identifier can be escalated.
Escalating an Action
Once integration is active and a machine has an asset identifier:
- Open an action in the portal or mobile app.
- Click or tap Escalate to CMMS in the CMMS Escalation card.
- Continual creates a work order or request in MEX v15 OData and shows its record number. Work orders also show a link to your MEX v15 OData site. Requests show their number without a MEX v15 OData link while they are pending approval; the link appears if MEX v15 OData promotes the request to a work order.
MEX v15 OData has no stable per-record URL, so CMMS links open your MEX v15 OData site rather than a specific record. Find the record in MEX v15 OData using the number shown in Continual or on the action timeline.
The work order or request description includes, on separate lines: the origin label followed by the action title, the action description, and a link back to the Continual action.
How Closure Syncs
Continual checks MEX v15 OData for closure updates approximately every five minutes. When the MEX v15 OData record transitions to Closed, Continual automatically resolves the corresponding action. An Escalation closed from CMMS event appears on the action timeline.
Work Order Mode
The work order Continual created is the record it watches. Closing it in MEX v15 OData resolves the action. Cancelling the work order in MEX v15 OData also resolves the action — a cancelled work order means the work will not happen, so the escalation is done.
Request Mode
Requests have a two-stage lifecycle, and Continual follows both stages:
- The request is raised in Pending Approval. While it sits there, the action stays open and shows the request number without a MEX v15 OData link.
- When a planner approves the request, MEX v15 OData promotes it into a work order. Continual notices, records an
Escalation promoted to work orderevent containing the work order number on the action timeline, and from then on watches the work order — the request itself never closes. A CMMS link also appears and opens your MEX v15 OData site. - Closing that work order resolves the action.
A request cancelled or declined in MEX v15 OData also resolves the escalation, since no work will follow it. (A declined request is detected from its MEX v15 OData approval record — the request itself is left untouched when it is declined.)
If You Resolve The Action In Continual First
Closure sync is one-way for MEX v15 OData: from MEX v15 OData into Continual, not the other way.
If you resolve an action in Continual before the MEX v15 OData record is closed, Continual closes its own escalation and records an Escalation closed from Continual event on the action timeline — but the MEX v15 OData record stays open, and someone needs to close it in MEX v15 OData. Closure sync is not sent from Continual back to MEX v15 OData.
Resolve the action in MEX v15 OData first wherever you can — that direction closes the loop automatically.
Sync Latency
Closure sync latency depends on the polling cadence, which defaults to 5 minutes. Expect up to 5 minutes between closing a record in MEX v15 OData and seeing the action resolve in Continual.
Troubleshooting
"I get an authentication error"
- Verify the MEX v15 OData service-user credentials are correct.
- Use Verify connection in the CMMS setup wizard to check the current credentials.
- Ensure the MEX v15 OData endpoint is HTTPS and reachable from the internet (or from Continual's servers if you use a private link).
"Asset not found"
- The CMMS Asset Identifier on the machine does not match an active asset in MEX v15 OData.
- Check the identifier in MEX v15 OData: confirm the exact numeric Asset ID.
- If the asset is archived in MEX v15 OData, unarchive it or use an active replacement.
"Closure didn't sync — how long does it take?"
Allow up to five minutes. If the action is still open after ten minutes:
- Confirm the MEX v15 OData record is in the Closed history state, not only marked completed.
- Open
Settings->Integrationsand use Verify connection. - Confirm that the action timeline shows the expected MEX v15 OData record number.
- Email Continual Support with the factory, action, MEX v15 OData record number, and time it was closed. Do not include the service-user password.
"What happens if I delete an action with an open work order?"
If an action with an open CMMS escalation is deleted, Continual:
- Marks the escalation as orphaned.
- Annotates the MEX v15 OData work order with a note identifying the deleted action.
The work order is not automatically closed — a team member should close it manually in MEX v15 OData.
Expected Result
After activation and asset mapping, an eligible action can be escalated once, displays its MEX v15 OData record number in Continual, and records promotion or closure updates on the action timeline.