> ## Documentation Index
> Fetch the complete documentation index at: https://docs.voxworks.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Connecting Rex

> Connect your Rex CRM account to Voxworks with your Rex login so your voice agents can check availability and book appointments into Rex calendars.

## Overview

Rex is a CRM integration. Connecting it links your Rex account to your Voxworks team so the [Book Calendar Appointment | Pro](/tools/calendar/rex) tool can check calendar availability, create appointments against your Rex calendars, and attach those appointments to Rex contact records during a call. The Rex card in the app carries a **CRM** badge and the description "Fetch live CRM data at call start and sync call results back to Rex".

Unlike most integrations, Rex does not use an API key or an OAuth redirect. It uses a **session login**: you enter your Rex email and password once, Voxworks verifies them live against Rex, then encrypts and stores them and keeps the connection alive automatically from that point on.

Until Rex (or another calendar provider) is connected, the calendar booking tool does not appear in the script editor's tool picker at all — connecting is the prerequisite before any Rex booking can be configured.

<Note>
  Integrations are typically built out for specific clients, so the full functionality of Rex's interface might not be available. If your team needs additional features from this integration, contact the Voxworks team directly to discuss what can be added.
</Note>

***

## Connecting Rex to Voxworks

1. In the sidebar under **Admin**, open **Integrations**.
2. In the **Available Integrations** section, find the **Rex** card and click **Connect**.
3. The **Connect Rex** dialog opens: "Enter your Rex login credentials. We'll verify them and securely store them."
4. Fill in both fields and click **Connect**.

| Field        | Required | Description                                                 |
| ------------ | -------- | ----------------------------------------------------------- |
| Rex Email    | Yes      | The email address you use to sign in to Rex.                |
| Rex Password | Yes      | The matching Rex password. The field is masked as you type. |

The **Connect** button stays disabled until both fields are filled in. A note in the dialog confirms how the credentials are handled: "Your credentials are verified on connect, then encrypted and stored. We re-authenticate automatically when the session token expires."

When you click **Connect**, Voxworks performs a real sign-in to Rex with the details you entered. If Rex rejects them, the connection is not saved and an error is shown — correct the email or password and try again. On success, the Rex card moves to the **Connected Integrations** section with a green **Connected** badge, and the card's footer shows how many tools the connection makes available.

<Note>
  Use a Rex account that can see the calendars you want the assistant to book into. Appointments created on calls are made by this account, so a shared or dedicated Rex user keeps them easy to identify.
</Note>

***

## How the connection stays authenticated

Rex issues short-lived session tokens rather than permanent keys. Voxworks handles this for you:

* **At connect time**, your credentials are exchanged for a session token. The credentials and the token are both encrypted before they are stored — neither is ever displayed again.
* **When the token nears expiry**, Voxworks signs in to Rex again with your stored credentials and mints a fresh token automatically. This happens behind the scenes; there is nothing to renew, rotate, or re-enter.

The one thing automatic re-authentication cannot survive is a password change. If you change your Rex password, the stored credentials stop working, and availability checks and bookings on calls will start failing. To fix it, open the connected Rex card's settings, **Disconnect**, then **Connect** again with the updated login.

***

## What connecting unlocks

Once Rex shows as **Connected**:

* **Book Calendar Appointment | Pro** appears in the tool picker when you edit a script step. The picker hides integration-bound tools until their provider is connected.
* With Rex as the provider, the tool adds Rex-specific fields alongside its shared settings — most notably a required **contact\_id** (string, e.g. `998877`) identifying the Rex contact the appointment is attached to, and a required **title** (string, e.g. `Property appraisal`). Both accept a literal value or a variable — type `/` in the field to insert one. Optional fields cover the calendar, staff, duration, location, and business hours; the full field-by-field reference lives on the [Rex booking tool page](/tools/calendar/rex).
* If your team has more than one calendar provider connected, a provider select appears in the tool's configuration panel so you can choose Rex explicitly.

Successful bookings are written to `{{calendar.*}}` variables your flow can speak or send — for example `{{calendar.booking_time_spoken}}` (string, e.g. `10:30 AM on Tuesday the 22nd of July`) and `{{calendar.booking_id}}` (string, e.g. `bkg_01HZXW`). The settings shared by every calendar provider (availability window, SMS confirmation, timezone check) are on the [calendar tools overview](/tools/calendar/overview).

***

## Team-level calendar defaults

Two Rex-specific fields can be left blank on a script step and fall back to a default configured against your team's Rex connection, so every script on the team can book into the same calendar with the same staff without repeating the setup:

| Setting      | Falls back to                                                                |
| ------------ | ---------------------------------------------------------------------------- |
| calendar\_id | The team's default Rex calendar                                              |
| user\_ids    | The team's default Rex staff, checked for availability and added to bookings |

**contact\_id** and **title** are always required on the script step itself — each booking needs its own contact and appointment title, so neither has a team-wide default. If **duration\_minutes** is left blank, the appointment defaults to 30 minutes.

These team-level defaults have no configuration screen in the app. Speak to the Voxworks team to set or change them.

***

## Managing or removing the connection

Click the gear icon on the connected Rex card to open **Integration Settings**:

* **Status** — a **Connected** badge plus an **API Key** badge showing the authentication type. If the connection has failed, an **Error** badge appears here and on the card, with the error message, and the card offers a **Reconnect** button that reopens the connect dialog directly.
* **Connection Details** — when the connection was made and a masked view of the stored secret. Your login details are never displayed again after connecting.
* **Available Tools** — how many tools this connection enables.

To remove the connection, click **Disconnect** in Integration Settings. The **Disconnect Rex?** dialog warns that disconnecting will stop active workflows using the integration, remove access to Rex features from your AI agents, and delete the stored authentication tokens. Any script step still configured with the Rex booking tool will fail to book until you reconnect. You can reconnect at any time by entering your Rex login again.

***

## Next Steps

* [Book Calendar Appointment — Rex](/tools/calendar/rex) — the booking tool's Rex fields, behaviour, and the variables it writes.
* [Calendar tools overview](/tools/calendar/overview) — settings shared by every calendar provider, from availability windows to SMS confirmations.
* [Integrations overview](/integrations/overview) — how integration connections work across your team.
* [Creating a script](/scripts/creating-a-script) — build the script that puts the booking tool to work.
