User guide

RMM Integrations

Looking for what it does rather than how to use it? Read the RMM Integrations overview .

Audience: MSP administrators connecting remote monitoring and management tools. Scope: ConnectWise Automate, Zabbix, ConnectWise ScreenConnect and Azure Resource Manager — discovery, alerting, remote actions and monitoring settings.


What it is

Solidlio connects to your RMM and monitoring tools, imports the devices they manage as assets, ingests their alerts, and — for Automate and ScreenConnect — lets technicians act on a machine without leaving the ticket.

Four providers ship. Datto RMM and NinjaOne appear in the catalogue as Coming Soon and cannot be connected; there is no implementation behind them.

What it is — reference table
ProviderWhat it gives you
ConnectWise AutomateDevice inventory, software, drives, patches, alerts, live remote actions
ZabbixHost discovery, alert ingestion, maintenance-window push
ScreenConnectAccess sessions → assets (company → customer placement), online status, remote control, commands with output, wake, message, lock, support sessions
Azure Resource ManagerCloud resource inventory, decommission detection, cost ingestion

Concepts

Concepts — reference table
ConceptWhat it is
IntegrationOne connection to one RMM server, holding encrypted credentials.
IntegrationMappingPairs an RMM device id with a Solidlio asset, scoped to that integration.
Client / group mappingAutomate clients or groups → Solidlio organizations. Decides which tenant a device lands in.
Host-group mappingZabbix host groups → Solidlio organizations, with per-host overrides.
Company mappingScreenConnect “Company” custom-property values → Solidlio organizations (+ default site), with per-session overrides and a site property → site mapping.
Remote support sessionOne attended session a technician started, provider-agnostic. Records who opened it, the ticket, the join link and whether the customer was emailed.
AssetMonitoringPer-asset, per-source monitoring state: status, last check, and collected metrics.
MonitoringAlertOne alert, tenant-pinned, deduplicated per source and external id.
MonitoringConfigPer-organization monitoring settings, including the Automate alert cadence.

Roles and permissions

Config and hosts are floored because they return server URLs, client ids and unmapped inventory. Alerts and status are left open because they are statements about the caller’s own machines and are what the customer portal renders.


Walkthrough — ConnectWise Automate

  1. Gather credentials — your Automate server URL, the Partner Client ID GUID from the ConnectWise Developer portal, and an Automate login. This is not an OAuth2 client id/secret pair.
  2. Connect — Integrations → ConnectWise Automate (MSP portal).
  3. Map clients to organizations — each Automate client, or group, to a Solidlio organization. Unmapped devices are never invented into a tenant.
  4. Choose what syncs — computers, software, services, drives, patches, groups, clients and locations each have a toggle, and computer, software and full-sync cadences are settable.
  5. Watch alerts become tickets — alerts are ingested on a schedule, deduplicated onto an already-open ticket where one exists, and suppressed during a maintenance window.

Automate is an MSP-portal integration. The organization portal redirects to it rather than offering a second, non-functional copy.

Remote actions

From an asset or a ticket, a technician can run a command or script, reboot, or shut down a machine. Every action requires organization administrator and writes an audit record.


Walkthrough — Zabbix

  1. Connect — server URL and an API token. Solidlio detects your Zabbix version and uses the Bearer header on 6.4+ (the auth body property was removed in 7.2) or the legacy transport below that, recovering automatically if it guesses wrong.
  2. Map host groups — Zabbix host groups to Solidlio organizations, with per-host overrides where a group spans customers.
  3. Enable syncs — host and alert syncs each have their own toggle and interval. A connection made through the API rather than the wizard is now scheduled with sensible defaults rather than silently doing nothing.
  4. Optionally add the inbound webhook — for push alerting rather than polling. The secret is shown when minted or rotated.
  5. Maintenance windows — a maintenance window scheduled in Change Management is pushed to Zabbix so alerts are suppressed for its duration.

Walkthrough — ScreenConnect and Azure

ScreenConnect — Integrations → ConnectWise ScreenConnect (MSP or organization portal).

  1. Prepare a host user on the ScreenConnect server with no two-factor prompt, in a role scoped to the session groups you want imported, then enter the server URL (the root, https:// only) and that user’s login.

The role needs ViewSessionGroup and nothing else to import machines and keep their status current. Add the rest only for the features you want:

Walkthrough — ScreenConnect and Azure — reference table
PermissionNeeded for
ViewSessionGroupRequired. Importing machines and all reported detail.
EditSessionOnly if “Write asset id back to ScreenConnect” is on.
RunCommandOutsideSessionRemote commands, including Lock.
CreateSupportSessionStarting attended sessions from a ticket.
DeleteSessionEnding those sessions from Solidlio.

Not required, and worth leaving off: Administer, ReinstallSession, UninstallSession, TransferFiles, ViewSessionGuestScreenshot and the PAM permissions. Withholding Reinstall and Uninstall means nothing Solidlio sends can reinstall or remove an agent.

Technicians join sessions with their own ScreenConnect logins, so their roles need JoinSession (and HostSessionWithoutConsent if you connect to unattended machines without prompting). The service account does not. Solidlio signs in once, reads the Access sessions, schedules the session sync (every 15 minutes by default) and runs it immediately.

  1. Map companies (MSP only). ScreenConnect keeps each session’s customer in its first custom property, labelled Company — the field session groups are built on. Every distinct value becomes a row on the Companies tab; point it at the Solidlio customer and its machines import as assets. Machines under an unmapped company are held back; an organization-scoped install skips this step because every session lands in the organization itself.
  2. Place at sites (optional). A company can carry a default site. If a second custom property holds a site or office name (CustomProperty2 is Site in the default layout), choose it in Settings and map each value on the Sites tab. A per-machine site override on the Machines tab outranks both; a site owned by a different customer is always refused.
  3. Machines shows every session, where it landed, and lets you pin one machine to another customer or exclude it. Sessions that disappear from ScreenConnect retire their asset (only when nothing else monitors it).
  4. Settings — which custom properties to read, a default customer for sessions with no company, the session group to list, the sync interval, and an opt-in that writes each asset’s Solidlio id back into the session’s CustomProperty8.

Imported machines carry hostname and domain, private IP and MAC, OS name and version, CPU model and core count, RAM, the logged-on user, and last contact/activity/boot times — plus an online/offline AssetMonitoring row refreshed on every sync. All of it comes from the session list, so ViewSessionGroup is the only permission behind it.

ScreenConnect does not collect manufacturer, model, serial number or disk capacity, so those stay empty from this source. Solidlio derives the manufacturer from the MAC address where it can; a machine also monitored by Automate or Zabbix is matched to the same asset and gets the rest from there. Remote control, commands (with the guest’s output), wake, lock, on-screen message and ad-hoc support sessions are available from the asset list, the asset detail page and the ticket detail page. Launch URLs are restricted to sessions your integration actually knows about, and every remote action is audited. A machine that is also monitored by Automate or Zabbix is matched by serial, MAC or hostname and shares one asset.

Azure Resource Manager — connect by granting admin consent to Solidlio’s Entra application against your tenant. Resources are imported as assets, refreshed on change, and marked decommissioned when they disappear. Cost Management data is ingested separately.


6a. Remote support from a ticket

Any connected remote-control tool can be driven from a ticket. ScreenConnect is the first, but the feature is provider-agnostic: the panel renders whatever tool is connected, and a second tool needs no change to the ticket page.

It appears only when a remote-control tool is actually connected and its credentials are readable.

  1. Start session. The customer’s name and address are pre-filled from the ticket’s requester, so the usual case is one click. Change them for a different contact, pick the tool when more than one is connected, or clear the email tick-box to mint a link without sending it.
  2. The customer is emailed the join link — the session name, the link and, where the tool issues one, the join code. The panel says which of two things happened: the link was emailed, or the session started and the email failed. The second offers Resend email, and the link is always copyable.
  3. Manage your sessions. The panel lists the sessions you opened on this ticket, with Copy link, Join (opens your console, audited), Resend email and End.

Session time is recorded automatically

Every session records three separate measures, because they answer different questions and conflating them is how a customer gets billed for a session somebody left open:

Session time is recorded automatically — reference table
MeasureWhat it is
Engaged timeFrom the moment you first joined to the end. The only one offered for time logging.
Open timeWall clock, from creation to end. A fact about the session, not about work.
Tool-reportedWhat the remote tool itself says was connected, where it can report it. A cross-check.

While a session is open the panel shows a live counter. When you end it, the recorded times appear with a Log to #ticket button, pre-filled with the engaged time rounded up to the minute, with a billable tick-box. The minutes are editable before you log them — the number is a starting point, not a verdict.

Solidlio never creates the time entry on its own. It also declines to suggest one at all when the number would be misleading, and says why:

  • you never joined, so there is no work to bill;
  • the session expired instead of being ended, so its clock is an artefact of being forgotten;
  • it ran for more than four hours, which needs a human to check first;
  • the session is not linked to a ticket.

Logging is recorded against the session, so the same session cannot be billed twice.

A technician sees only their own sessions. That is enforced by the server, not the screen: every session records the technician who opened it, and the listing filters on it. Acting on someone else’s session returns “not found”. An MSP administrator can request the team-wide view, which is the only way to see another technician’s sessions.

Sessions still open after 24 hours are marked expired so the list stays readable. Ending a session terminates it at the provider; if the tool cannot be reached, the session is still closed locally and the reason is shown.


Troubleshooting

Troubleshooting — reference table
What you seeCause
Automate connect fails immediatelyMissing partner Client ID. Solidlio refuses to connect without one.
Automate asks for a client secretYou are reading stale documentation — the real auth is Client ID + username/password.
Zabbix connects but nothing syncsEnable the host and alert syncs; a connection with no sync config schedules nothing.
Zabbix alerts land on the wrong assetTwo Zabbix servers mapped into one organization. Host ids collide; mappings now disambiguate.
ScreenConnect says “incomplete credentials”Fixed. This affected every real install; reconnect if it persists.
ScreenConnect connects but imports no machinesNo company is mapped (MSP) — see the Companies tab — or the sessions have an empty Company property. Set a default customer in Settings to import those.
ScreenConnect lists no sessionsThe host user cannot see the catch-all session group (“All Machines”). Give it the Host role, or name a group it can see in Settings → Session group.
ScreenConnect “Lock” does nothingLock is sent as a command (ScreenConnect has no lock event); the machine must be online and the command runs as SYSTEM, so it disconnects the console session.
No Remote support panel on a ticketNo remote-control tool is connected, or its credentials cannot be read. Check Integrations.
A technician cannot see a colleague’s sessionWorking as designed. Ask an MSP administrator, who can see the team-wide view.
Azure VM shows no CPU or storageFixed. Re-run a sync to populate.
Azure resources all land in the MSP’s own orgExpected — see limits below.
A sync shows “Unknown error”Fixed; the real message is now recorded.
Sync history shows a successful run that failedFixed for Azure; failures are now recorded as failures and retried.

Limits and known behaviour

  • Datto RMM and NinjaOne are not implemented. They cannot be connected.
  • Azure has no subscription-to-client mapping. Unlike Zabbix host groups and Automate clients, every Azure resource lands in the connecting organization. An MSP cannot yet attribute Azure resources to individual clients.
  • Automate stores total storage across all volumes, with the primary volume’s type. Per-volume detail is available live on the device page, not on the asset.
  • ScreenConnect has no alerting of its own; it contributes online/offline state and remote actions. Alert rules still come from Automate or Zabbix.
  • ScreenConnect reports no manufacturer, model or serial number by itself (serial only if the server populates it). Make and brand are derived from the MAC address where possible; a machine also seen by Automate or Zabbix gets the rest from there.
  • RMM and monitoring integrations are not plan-gated — every tier includes them.

Questions this guide did not answer?

Ask us. You will get a reply from someone who uses the product every day.

Book a demo Contact us

A walkthrough focused on the IT work you manage.