Skip to main content

Integrations

Integrations connect Speechlytics to the systems where calls are recorded or reviewed. They remove manual uploads and can return completed insights to the originating platform.

IntegrationDirectionWhat it does
Microsoft TeamsInboundImports recorded Teams meetings for selected users.
AircallInbound + write-backImports call recordings and posts the call summary back to Aircall as a comment.
FrontSpinInboundImports dialer recordings.
3CXInboundImports recordings from your 3CX recording archive when calls end, matching each reported call to its archived file.
HubSpotOutboundLogs calls, their recordings and summaries on the HubSpot CRM timeline, associated with the contact matched by phone number.
SFTP importsInboundCollects recordings from your SFTP server every hour.
Account webhookOutboundPosts call results to your own endpoint.

How integrations are enabled​

Provider integrations are enabled in two steps:

  1. Entitlement. Speechlytics grants the integration to your account.
  2. Configuration. The integration is configured with your provider credentials, saved, and switched on. It stays off until it is explicitly enabled, so saving credentials never starts importing by surprise.

Each integration shows a status of Not configured, Disabled or Enabled, when it last synchronized, and the last error if a synchronization failed.

Share credentials only through the approved secure channel. Do not place secrets in support tickets, documentation, source control or client-side code.

Inbound recording flow​

Inbound integrations combine immediate event delivery with an hourly synchronization:

  • Each integration has its own webhook URL, shown in its configuration once saved, in the form https://<api-host>/api/v1/webhooks/<provider>/<integration-id>, where <provider> is aircall, frontspin or threecx. You register it in the provider. Microsoft Teams subscriptions are registered automatically.
  • Events are verified with the integration's webhook secret before anything is imported: Aircall and FrontSpin sign each event, 3CX sends the secret itself, and Teams echoes it back as the subscription's client state. Events for an integration that is switched off, or no longer granted to the account, are acknowledged and ignored.
  • The hourly synchronization catches events that were delayed or missed. It looks back from the last successful synchronization (or 24 hours for a new integration).
  • The provider's call or recording id (for 3CX, the recording's file name) is stored as the call's External Id and prevents duplicates, whichever path imported it first.
  • Every call delivered by a provider event, and every hourly synchronization, is recorded in the account's audit log.

An imported recording behaves like any other call: it uses the account's pre-processing, welcome-message removal, sensitive-content protection, keywords, summaries, analytics, custom questions and agent attribution, and it counts against the account's minutes.

Outbound flow​

Outbound integrations run automatically as Speechlytics reports on each call:

  • Aircall-sourced calls get their summary posted back to Aircall as a comment, once a summary exists. This is best-effort.
  • With HubSpot enabled, the call is logged in HubSpot once. HubSpot failures are retried and recorded as the integration's last error.

Outbound failures never block the call itself.

Troubleshooting​

When reporting an integration problem, provide the provider name, approximate call time, external call id, account name, and whether the call exists in the provider.

SymptomUseful checks
A recording did not arriveConfirm the provider completed the call and made the recording available. Check the integration is Enabled and has no last error.
A call arrived lateImmediate delivery failed and the hourly synchronization recovered it. Check the webhook is registered in the provider.
A call appears twiceConfirm the provider did not assign different recording ids to the same conversation.
Nothing is imported after setupThe integration was saved but not switched on, or the account's minutes are exhausted.
Calls arrive without an agentThe provider did not send agent details for that call.