User guide

Integrations Platform

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

Audience: MSP and organization administrators connecting third-party systems, and platform administrators curating the integration catalogue. Scope: the integration catalogue and setup wizard, outbound webhooks, API keys, entity mapping, sync control, and the guide library.


What it is

The integrations platform is the shared machinery every Solidlio connector runs on: a catalogue of available providers, a setup wizard that collects and encrypts credentials, a mapping layer that pairs external records with Solidlio records, a sync controller, and an outbound webhook system for pushing Solidlio events to your own tools.

This guide covers the substrate. Individual providers — QuickBooks, Microsoft 365, GLPI, Zabbix, ConnectWise Automate, Azure — have their own guides.


Concepts

ConceptWhat it is
IntegrationDefinitionOne catalogue row per provider: name, category, scope, setup fields, availability.
IntegrationOne live connection, owned by an organization, holding encrypted credentials.
IntegrationMappingPairs an external record id with a Solidlio record, per integration and entity type.
IntegrationSyncLogOne row per sync run: counts, duration, status, errors.
WebhookAn outbound HTTP destination you own, subscribed to a set of Solidlio events.
WebhookDeliveryOne attempt to deliver one event, with the response and a retry control.
API keyA scoped credential your systems present to Solidlio to call the API. See section 6.
GuideA linked how-to document (e.g. a Scribe recording) attached to tickets or services.

Availability and scope

A provider appears in your catalogue only if its scope matches your portal. A provider marked Coming Soon, or one with no implementation behind it, is shown disabled and cannot be set up — the server refuses before any credential is stored. Scope is enforced on reads and on writes alike, so you cannot reach an MSP-only provider from the organization portal by calling the API directly.


Roles and permissions

ActionMinimum role
Browse the catalogueAny signed-in user
Set up, configure or disconnectorganization administrator
Map entities, trigger syncsorganization administrator
Create and manage webhooksorganization administrator
View webhooks and delivery historyorganization administrator
Create and manage API keysorganization administrator
Curate the platform catalogueplatform administrator

Walkthrough — connecting a provider

  1. Open the catalogue — MSP portal: Integrations. Org portal: Integrations. Providers you cannot use are not listed; providers not yet built are shown disabled.
  2. Read the About page — what the integration does, what it will sync, and which credentials you need to gather first.
  3. Run the setup wizard — enter credentials. They are encrypted with AES-256 before storage and never displayed again.
  4. Test the connection — the wizard calls the provider live before saving.
  5. Map entities — pair external records (clients, groups, subscriptions, host groups) with Solidlio organizations, assets or products. Suggestions are name-matched; accept individually or in bulk. You may only map records your own account owns or manages.
  6. Sync — trigger a sync from the wizard or the integration’s detail page. Sync history records each run with counts and any per-record errors.

Walkthrough — outbound webhooks

Use webhooks to push Solidlio events into your own systems.

  1. Go to Settings → Webhooks in your portal.
  2. New webhook — enter the destination URL and choose the events to subscribe to.
  3. Copy the signing secret. It is shown once, at creation. If you lose it, regenerate — which also shows the new secret once, and immediately invalidates the old one.
  4. Verify signatures on your side. Each delivery carries an signature signature computed over {timestamp}.{payload} using your secret.
  5. Check deliveries — open a webhook to see each attempt, its response, and a retry control.

Destination URLs are validated when saved and re-validated at delivery time, including a re-check of the resolved address on the delivery connection itself — so a hostname cannot be repointed at an internal address between validation and request. Private, reserved, loopback, link-local and cloud-metadata addresses are refused.


API keys — what they do and do not do

You can mint scoped API keys with expiry, deactivate them and revoke them. Keys are hashed with one-way hash; the plaintext is shown once, at creation.

Keys authenticate API calls. Present the key on either header:

What a key can do

RuleBehaviour
IdentityThe key acts as the person who minted it, in the key’s own organization, at that person’s membership role. A key can never out-rank its creator.
RevocationDeactivating the key, letting it expire, deactivating its owner, or removing the owner from the key’s organization all stop it working.
PlanThe account’s plan must grant apiAccess. On READ_ONLY the key may only use GET/HEAD/OPTIONS; a write answers 403.
ScopesEach request needs <resource>:read or <resource>:write for the resource it targets, derived from the path and the HTTP method.
PortalsA key is not a browser session in any portal, so routes behind a requirePortal() guard are not reachable with one.

Resources that share a scope: comments and ticket-queues are under tickets; payments, credit-notes and quotes under invoices; tasks and milestones under projects; organizations under contacts.

Errors

ResponseCause
401 Invalid, expired or revoked API keyUnknown, deactivated, expired, or owner lost access
403 This account's plan does not include API accessThe plan does not grant apiAccess
403 This plan's API access is read-only…READ_ONLY plan, non-safe method
403 API key is missing the required scope: tickets:writeKey does not hold the scope the request needs

Operational notes

  • Failed resolutions are never cached.
  • lastUsedAt is updated on each resolution. Key usage is in gateway request logs; key lifecycle (create/revoke/rotate) is in the audit log.

Configuration reference

SettingWhat it doesIf unset
Provider credentialsAuthenticates the connection; encrypted at restSetup cannot complete
Entity mappingsRoutes external records to the right Solidlio tenantRecords land in the connecting org
Webhook eventsWhich events a destination receivesAt least one is required
Webhook secretSigns every deliveryGenerated automatically
API key scopesWhat a key would be permitted to doAt least one is required
API key expiryWhen a key stops workingNo expiry

Troubleshooting

What you seeCause
A provider is missing from the catalogueIts scope does not match your portal — e.g. an MSP-only provider viewed from the org portal.
A provider is shown but the button is disabledIt is on the roadmap. There is no implementation to connect to.
Setup returns “not available”Same cause, reached via the API rather than the tile.
Mapping rejectedThe record you mapped to belongs to an organization your account does not own or manage.
Webhook never firesCheck delivery history. A destination that fails validation at delivery time is not called.
Webhook signature does not verifySign {timestamp}.{payload}, not the payload alone, and use the current secret.
Lost the webhook secretRegenerate. The old secret stops working immediately.
An API key does not authenticateExpected — see section 6.
Sync reports zero recordsSome providers declare no syncable entity types; check the provider’s own guide.

Limits and known behaviour

  • API keys authenticate API calls (§6). A key cannot reach a path that is not mapped to a scope resource, and it is not a portal session, so routes behind a requirePortal() guard are not reachable with one.
  • Guides can be created, linked and deleted, but not edited in the UI.
  • A generic per-integration sync interval is not offered; each provider’s cadence is set in that provider’s own settings.
  • Personal (user-level) calendar connections are managed in calendar settings, not in the integration catalogue.
  • To change them, re-run setup.

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 30-minute walkthrough against your own workflow. No slides.