The Integrations hub is where you connect third-party services to your Office-X account. Today it offers ElevenLabs (shown in the app as “ElevenAgents”). An AI voice agent that answers your phone and books appointments for you, in natural, real-time conversation, without a caller ever having to touch your website.
Route: Dashboard → Admin → Integrations
Good to know: the Integrations hub itself is visible to every tenant, regardless of plan. ElevenAgents is a CRM capability, though, without CRM on your subscription, the page still opens, but every action on it (saving your API key, picking a number, running setup) fails with “This feature is not available on your current plan.” Connecting it doesn’t cost anything extra through Office-X either way, see Billing below for how ElevenLabs’ own charges work.
Who Can Use This Feature #
Subscriber Admin can always connect, configure, or disconnect ElevenAgents, without needing any specific permission.
Employees need the Manage AI Booking Integrations permission, controlled from Admin → Permission → CRM – Bookings: it’s filed alongside your other Bookings permissions, not under a separate Integrations group. The name is a holdover from when a second provider was offered; today it simply controls access to this page.
This permission can be assigned directly to an employee, or to an entire team at once. See the Permissions Management guide for how to assign permissions.
How This Works, End to End #
Once connected, this feature has two very different people involved:
- You (the Subscriber Admin, or an employee with the right permission). Connect your ElevenLabs account, set up the voice agent, and turn on AI Calling for whichever Booking Services should be phone-bookable.
- The Caller: anyone who dials your AI phone number. They never see Office-X at all; they just talk to the agent like they would a real receptionist.
| Step | You (Admin) | Caller |
|---|---|---|
| 1 | Connect your ElevenLabs API key, pick a phone number, fill in your Company Information, and click Run Setup. | — |
| 2 | Assign your phone number to the agent on ElevenLabs’ own dashboard. This is a one-time manual step; see below for exactly how. | — |
| 3 | Turn on AI Calling for a Booking Service (in CRM → Bookings). | — |
| 4 | — | Someone dials your AI phone number. |
| 5 | — | The agent answers, has a natural conversation about what you offer, checks real availability, and books an appointment on the spot. |
| 6 | The new booking shows up in that service’s Client Responses list, tagged “AI Call,” with a transcript link. You don’t have to do anything to make this happen. | — |
Everything below walks through each of these steps in more detail.
What Callers Can Actually Do #
Once connected, a caller can talk to the agent in natural, real-time conversation, not a rigid phone menu, and:
- Ask what services you offer.
- Check what times are actually available.
- Book an appointment on the spot.
- Cancel an existing booking (by confirming the email address it was booked under).
Good to know: the agent can cancel a booking, but it can’t reschedule one in a single call. A caller who wants a different time needs to cancel and book again (or you can reschedule it for them from the dashboard, same as any other booking).
Every booking made this way behaves like any other Booking response in your CRM. It’s subject to the exact same availability rules, buffers, and daily limits as a booking made through your public web page. The only difference is how it came in, which Office-X tracks for you (see “Call History” below).
Connecting ElevenLabs, Step by Step #
This walkthrough covers all 9 steps needed to get your AI phone agent live, in order. Some steps happen on ElevenLabs’ own dashboard, some happen here in Office-X, and a couple involve both. Each step also explains why it matters, not just what to click.
Step 1: Create an ElevenLabs Account and Grab Your API Key #
On ElevenLabs’ dashboard. Go to ElevenAgents Dashboard.

Sign up at elevenlabs.io, then open your workspace Developers → API Keys and create a key.

On that key’s permission list, set ElevenAgents to Write: This gives Office-X permission to create and manage the AI agent, bookings, phone numbers, and knowledge base. You can also set User to Access if you want Office-X to show your remaining ElevenLabs credit and warn you before it runs out; everything else on the key can stay No Access.

Step 2: Bring Your Own Phone Number #
On ElevenLabs’ dashboard.

ElevenLabs doesn’t sell phone numbers, so you supply one yourself. On ElevenLabs, open Agents Dashboard → Phone Numbers and either connect a Twilio number (simplest: paste your Twilio SID and token) or connect a SIP trunk from any standard provider (Vonage, Telnyx, Plivo, Exotel, Bandwidth, and others all work). This number is billed by your telephony provider directly, not by ElevenLabs and not by Office-X.
Step 3: Connect Your API Key in Office-X #
Here, in Office-X.


Come back to the ElevenAgents page and paste that key into the API Key card, then click Save & Validate. Office-X checks it against ElevenLabs immediately, so if it’s wrong or has been revoked you’ll be told right away instead of finding out later. It’s encrypted before it’s stored, and once saved it’s shown back to you masked (dots, not the real value), with a Replace option if you ever need to swap it. ElevenLabs bills your own account directly for usage from here on, not Office-X.

Step 4: Select Your Phone Number and Save #
Here, in Office-X.

Once your key is connected, the Phone Number card fills in live with the numbers already on your ElevenLabs account (with a Refresh button if you just added one and don’t see it yet). Pick the number from step 2 and click Save Number.

Step 5: Add Your Company Information #
Here, in Office-X.

Fill in the Company Information card: Business Type (required, e.g. “Hair salon, dental clinic, law firm”), Business Description (optional), and Custom Notes (optional, hours, policies, FAQs, anything else worth the agent knowing). This becomes a knowledge base document your agent reads from during calls, so it’s worth being thorough. You can update it any time; it isn’t a one-time step.
Step 6: Run Setup #
Here, in Office-X.


Click Run Setup in the Setup Progress card. This configures everything it can on ElevenLabs’ side for you in one go: it creates a dedicated agent named office-x-booking-<Unique ID>, registers all 5 booking tools securely connected to your Office-X data (see Step 9 for the tool list), writes the agent’s instructions including your business timezone, and attaches your Company Information as the agent’s knowledge base.

One thing it deliberately does not do: assign your phone number to the agent. ElevenLabs has no documented API for that, so it stays a manual step, covered next. Until you do it, calls to your number won’t reach the agent even though setup succeeded.
Step 7: Assign Your Number to the Agent #
On the ElevenLabs dashboard, click “Agent” from the sidebar and select “office-x-booking-unique-id.”

This is what actually routes an incoming call into your agent, and it’s the one step Office-X can’t do for you. On ElevenLabs, open your agent (office-x-booking-<your tenant ID>), then in the left sidebar under Deploy, click Channels, then Telephony, then Add number. Pick your number from the list; it’s already connected from step 2, so it just needs selecting here.

Step 8: Add the Post-Call Webhook and Attach It to Your Agent #
Both.

This is two steps on ElevenLabs’ side: create the webhook, then attach it to this specific agent. On ElevenLabs, under Settings → Webhooks (workspace-level), add a post-call webhook pointing at the URL shown in the Post-Call Webhook card on the Office-X ElevenAgents page. ElevenLabs shows you a signing secret; copy it and paste it into that same card here in Office-X.



Copy it and paste it into that same card here in Office-X.

Then, back on ElevenLabs, open your agent, click Settings in the left sidebar, then the Security tab, scroll to Post-call Webhook, click Select Webhook, and choose the webhook you just created. Make sure Transcript is turned on under Webhook events, then click Publish (top right): every change on this page needs a Publish, or your agent keeps running its old configuration.

This step is optional for bookings themselves to work, but it’s what fills in your AI Call History with transcripts and durations for every call, booked or not.
Step 9: Test the Call and Confirm the Tools #
Last, whenever you’re ready: go to CRM → Bookings, open a Booking Service, and turn on its “AI Calling” option. That’s what actually lets your voice agent take bookings for that specific service; none of the 9 steps above make a service phone-bookable on their own.

First create a New Appointment Schedule from CRM → Bookings, go to the ElevenAgents dashboard, click Preview at the top, and make a test call to check if the booking is created successfully or Call your number and try booking something.


Good to know: if Run Setup partly fails (say, the agent and knowledge base connect fine but one of the booking actions doesn’t), you’ll get a specific message telling you which part failed. Just click Run Setup again to retry only that part, not the whole thing.
A step-by-step checklist on the page tracks your progress (API Key, Phone Number, Company Information, Voice Agent, and at least one AI-enabled Service), so you always know exactly what’s left before callers can actually book with you. Two more things can show up alongside it if something needs your attention:
- Last Error: appears if something failed on ElevenLabs’ side, showing the actual error message so you’re not left guessing.
- Low Account Balance: a reminder to top up your ElevenLabs account before calls start failing. This is checked once a day, not in real time.
Good to know: re-running Setup resets the agent’s voice back to ElevenLabs’ default. If you’d picked a custom voice on ElevenLabs’ own dashboard, you’ll need to re-select it there afterward.
Once connected, the page also shows an Account Overview: your remaining Credits, your ElevenLabs Plan, and a usage bar, pulled directly from your own ElevenLabs account each time you load the page.
Good to know: the Account Overview needs your API key to have “User” access enabled on ElevenLabs’ side. If it doesn’t, the page tells you exactly what to change instead of just showing a blank card.
Billing #
Important: Office-X never adds a charge for this feature. ElevenLabs bills your own ElevenLabs account directly for calls and usage. But your phone number itself is billed separately again, by whichever telephony provider you connected it through (Twilio, or your SIP provider); neither ElevenLabs nor Office-X can release or stop charges for that number. Check ElevenLabs’ own pricing page, and your telephony provider’s, before turning this on.
Call History and Transcripts #
Every AI phone booking shows up in that service’s Client Responses list (CRM → Bookings) with an “AI Call” tag and a View AI transcript link. Following it opens AI Call History (also reachable directly from the Bookings page), which lists every call, Time, Caller, Outcome (Booked / No booking / Abandoned / Error), Duration, and any Linked Booking. Search by phone number or call ID, and filter by Outcome. Expand a row for the full detail, Call ID, Interaction ID, transcript, and a recording link if one’s available.
Good to know: access to Call History and transcripts isn’t controlled by the Integrations permission above, it follows your regular Bookings permissions instead (View All Bookings, or Manage Booking Response For All).
Disconnecting #
Use the Disconnect option on the ElevenAgents page. You’ll be asked to confirm first. The dialog spells out exactly what does and doesn’t happen:

“This stops AI phone booking immediately. Your agent and its booking actions are deleted on ElevenLabs’ side. It does NOT release your phone number: that belongs to your telephony provider (Twilio or your SIP provider), so cancel it there if you no longer want to be charged for it.”
Confirming immediately stops your Office-X account from accepting any further AI calls or bookings, and deletes the voice agent on ElevenLabs’ side. Your Company Information and phone number selection are both kept as-is, so reconnecting later doesn’t mean starting over from scratch.
Disconnecting also does not automatically turn off the “AI Calling” checkbox on any Booking Service. Those checkboxes stay checked, they just won’t do anything useful until you reconnect.
How Integrations Connects to Bookings #
ElevenAgents exists entirely in service of the Bookings module, it’s not a standalone feature on its own. The Integrations hub shows it as “Connected” only once setup is fully complete and at least one Booking Service has its “AI Calling” option turned on. Turning that option on for a service is what actually lets your voice agent take bookings for it, see the Bookings guide for how to set up a Booking Service.
Summary #
Integrations connects your own ElevenLabs account to Office-X so callers can book, check, or cancel appointments over the phone, in natural, real-time conversation, using the same underlying scheduling engine as your web-based Bookings page. Setup can be done by the Subscriber Admin or an employee with the right permission, walks you through a short checklist with clear warnings if something needs attention, and every AI-booked appointment is fully visible in your normal Bookings list, including a transcript and recording of the actual call. So it never feels like a separate, disconnected system.