Skip to main content

Integrations

Connect your CRM, calendar, and tools.

9 min read

FinnAI works best when it's connected to the systems you already use — your CRM, your calendar, your phone provider, your team's chat. This page walks through each one with the assumption that you've never set up an integration before in your life.

You don't need all of these. Most users start with just a calendar (so the Finn can book appointments) and maybe a CRM. Add others when you have a specific need.

All connections are reversible. You can disconnect anything at any time from the same screen you used to connect it. The platform never holds your data hostage.


Where to find integrations

Sidebar → Settings → Integrations.

You'll see a tile for each available integration with a label showing its status: Not connected, Connected, or Needs attention. Click any tile to set up or manage.


CRMs

A CRM is where you keep your customer/contact records. Connecting your CRM lets you:

  1. Pull contacts in so you don't have to upload CSVs manually.
  2. Push call outcomes back so your sales team sees what happened on each call without leaving their CRM.

HubSpot

The setup is mostly point-and-click. Plan for 10 minutes.

  1. Settings → Integrations → HubSpot → Connect.
  2. You'll be redirected to HubSpot. Log in (if you're not already) and click Authorize.
  3. You'll come back to FinnAI with a green "Connected" badge.
  4. Now decide what you want to import. Click Choose Lists. Tick the HubSpot lists you want to use as audiences.
  5. Set a sync schedule — every 15 minutes is a good default for active campaigns; daily is fine for slower-moving lists.
  6. Map fields — tell FinnAI which HubSpot property is the name, which is the phone, which is the country code. Optional: map extra properties to custom fields so the Finn can use them mid-call.

That's it. Your HubSpot lists now show up as audiences in FinnAI.

To make call outcomes write back to HubSpot, enable Outcome Sync during setup (or any time later in the same screen). Each completed call becomes a HubSpot engagement; post-call analysis fields become property updates.

Salesforce

Same general flow as HubSpot. A few Salesforce-specific notes:

  • You can connect Production or Sandbox. The setup flow asks which.
  • Permission requirements — you need a user with "API Enabled" and "Read/Write" on Leads, Contacts, and (if using) Custom Objects. Most CRM admins can do this.
  • Custom objects supported. If your sales process uses a custom object (e.g. "Opportunity Owner Calls"), you can map to that instead of standard Lead/Contact.

Pipedrive

Pipedrive uses an API token instead of OAuth.

  1. In Pipedrive: Settings → Personal preferences → API → Generate token.
  2. Paste the token into FinnAI → Settings → Integrations → Pipedrive.
  3. Continue the rest of the setup as with HubSpot.

"My CRM isn't listed"

Use the Webhook integration (further down this page) to push call outcomes anywhere you can receive HTTP requests. Or use a tool like Zapier/Make to bridge — see the Zapier section below.


Calendar — for booking appointments

If you want your Finn to book appointments, you need a calendar connected.

Google Calendar

  1. Settings → Integrations → Google Calendar → Connect.
  2. Log into Google and grant calendar permissions.
  3. Choose which calendar to book into. Most people have several — pick the right one.
  4. Set availability rules:
    • Working hours — when bookings are allowed
    • Buffer between events — minimum gap between consecutive appointments (e.g. 10 min)
    • Max events per day — optional safety cap
  5. Save.

Now in any Finn, you can add a "Book Calendar" task or workflow action and it'll use this calendar.

Microsoft Outlook / Microsoft 365

Same as Google. Authorize via Microsoft, pick a calendar, set availability.

Calendly / Cal.com

These work differently — they don't allow direct booking via API in the way Google/Outlook do. Instead, the Finn says "I'll send you a booking link" and a SMS/email goes out with the URL.

This works but feels less natural than direct booking. If you have a choice, connect Google or Outlook directly instead.


Phone providers — if you're bringing your own number

If you already have a phone number with another provider (Twilio, Vonage, your office PBX), you can keep using it through FinnAI.

See Phone Numbers → Bringing your own number for the full guide.

Supported providers: Twilio, Plivo, Bandwidth, Vonage, and generic SIP-compliant carriers.


Webhooks — for sending data to your own systems

A webhook is a URL on your end that FinnAI sends data to when something happens (a call finished, a deployment ended, etc).

Useful when:

  • You want every completed call to flow into your data warehouse for custom analytics
  • You want to trigger a Slack message or email when something specific happens
  • Your CRM or business app isn't natively supported, but you can receive HTTP requests
  • You want to use Zapier/Make/n8n to automate downstream actions

Setting up a webhook

  1. Settings → Integrations → Webhooks → Add Endpoint.
  2. Enter the URL FinnAI should send to.
  3. Choose which events to subscribe to:
    • Call started — fires the moment a call begins
    • Call completed — fires when a call ends (transcript ready but not yet analyzed)
    • Call analyzed — fires when post-call analysis is done (most useful for downstream automation)
    • Deployment launched — fires when a deployment goes live
    • Deployment completed — fires when a deployment ends, with aggregate metrics
  4. Save. FinnAI shows you a signing secret — copy it somewhere safe (you'll only see it once).
  5. Verify the signing secret on your endpoint to confirm requests are really from FinnAI.

What the data looks like

Each event sends JSON to your URL. A call.analyzed event roughly looks like:

{
  "event": "call.analyzed",
  "call": {
    "id": "call_abc123",
    "deployment_id": "deploy_xyz",
    "started_at": "2026-06-15T10:30:00Z",
    "duration_seconds": 142,
    "contact": { "name": "Alice Chen", "phone_number": "+15551234567" },
    "transcript": [ ...turn-by-turn... ],
    "post_call_analysis": {
      "appointment_booked": true,
      "appointment_time": "2026-06-22 14:00"
    },
    "sentiment": "positive"
  }
}

Full schema is in our developer reference at api.hirefinn.ai/docs.

When webhooks don't work

If FinnAI can't reach your endpoint (DNS error, timeout, 5xx response), it retries with backoff for up to 24 hours. Every failed delivery shows in Settings → Integrations → Webhooks → Delivery Log with the error message — useful for debugging.

Webhooks during a call (live data lookup)

There's a different kind of webhook: one your Finn calls during a conversation to look up live data.

Example: a customer calls about their order. The Finn needs to know the order status, but that lives in your system, not in FinnAI. The Finn calls your /lookup endpoint with the customer's phone number, your endpoint returns { "order_status": "shipped", "tracking": "1Z..."}, and the Finn uses that in its response: "Your order shipped yesterday — tracking number ends in..."

To set this up: in your Finn's Workflow, add an Action → Webhook node. Configure the URL and what to send. The response becomes available as workflow variables.


REST API — for programmatic control

Some teams want to control FinnAI from their own code — launch deployments programmatically, pull call data into custom dashboards, etc.

Settings → Integrations → API Keys → Generate New Key. Copy and store the key safely.

Then use the API:

POST https://api.hirefinn.ai/v1/deployments
Authorization: Bearer your_api_key

{
  "finn_id": "finn_abc",
  "audience_id": "aud_xyz",
  "from_number": "+15551234567"
}

We have official SDKs for Node, Python, Go, and Ruby. Full reference at api.hirefinn.ai/docs.

If you're not a developer and this section sounds scary: you don't need it. The dashboard does everything the API does. The API is just for teams that want to script things.


Slack — get notified in your team chat

Useful for ops awareness — "deployment X finished, here are the numbers" — without forcing everyone to log into FinnAI.

  1. Settings → Integrations → Slack → Add to Workspace.
  2. Authorize in Slack.
  3. Pick a channel for notifications.
  4. Choose what to notify about:
    • Deployment launched
    • Deployment completed (with summary stats)
    • Deployment failed
    • Daily morning summary
    • Threshold alerts (e.g. "success rate dropped below X")

You can connect multiple channels — different teams might want different notification types.


Zapier / Make / n8n

For no-code automation, use the Webhook integration above as the trigger source in your favorite automation tool.

We're also working on a native Zapier app — apply for early access via Settings → Integrations → Zapier.


SSO (Enterprise)

Single Sign-On lets your team log in with their existing corporate identity (Okta, Azure AD, Google Workspace, etc) instead of separate FinnAI passwords.

Available on Enterprise plans.

  • SAML 2.0 — works with all major identity providers.
  • SCIM — automated user provisioning. When you add someone to the right group in your IdP, they automatically get a FinnAI account. When you remove them, they lose access.

Setup is configured under Settings → Security → SSO. Most companies' IT teams have done this before — the flow is standard.


Compliance & data residency

Not really an integration, but worth knowing:

  • GDPR — fully supported. Right-to-delete, export, EU data residency.
  • HIPAA — Enterprise only, with signed BAA.
  • SOC 2 Type II — current. Audit reports available under NDA.
  • Data residency — choose US, EU, or India region at account creation. (Can't be moved later without manual migration — pick carefully at signup.)

More at hirefinn.ai/platform/security.


Common questions

Q: Can I sync between multiple CRMs at once? A: Yes. Each CRM connection is independent. Different audiences can sync from different CRMs.

Q: My webhook is firing but my system isn't getting the data. A: Check Settings → Integrations → Webhooks → Delivery Log for the error. Most common: SSL cert issue, IP block, or your endpoint returning non-200.

Q: I disconnected my CRM by mistake. Did I lose data? A: No. Disconnecting just stops future syncs. All existing audience data, call history, etc remains. Reconnect when ready.

Q: Can I use the API and the dashboard for the same account? A: Yes. Many teams use the API for automation and the dashboard for manual operations. Both reflect the same underlying state.


Next

Was this page helpful?

Still stuck or have feedback?

Email support@hirefinn.ai or use the chat bubble in the bottom-right corner — it's a Finn that knows the Academy cold.