Skip to main content

Multi-Location Feature

Updated over 3 weeks ago

โš ๏ธ Important Notice

This is an advanced Level C feature requiring development experience. Do not proceed without technical expertise and the ability to build custom integrations.

What Is Multi-Location?

The multi-location feature allows a single AI Employee to handle multiple business locations with location-specific configurations. Instead of creating separate AI Employees for each location, you maintain one AI Employee that dynamically switches between location-specific data based on the conversation context.

Step-by-Step Setup Guide

Step 1: Enable the Multi-Location Feature

  1. Navigate to Attributes.

  2. Toggle "Show Hidden" to reveal hidden attributes.

  3. Search for "Agent - Multi-Location Feature."

  4. Set the value to True.

  5. Click Save and Publish All.

Step 2: Configure Business Locations

  1. Search for "Business Locations" (hidden attribute).

  2. Add your locations in this format:
    โ€‹

    Hell's Kitchen
    +1 234 567 9992
    637 10th Ave, New York, NY 10024, USA

    East Village
    +1 992 123 1112
    10 Broadway Street, New York, NY 11273, USA

    Snow Village
    +1 156 126 2221
    5 Cresent Street, Texas, 11273, USA

  3. Also add these same locations to the "Business Address" attribute for conversational awareness.

  4. Click Save and Publish All.

Step 3: Verify Location Indexes

  1. After publishing, refresh the page.

  2. Check the "Dynamic (LLM or non-LLM-based) - Business Locations Indexes" attribute.

  3. You should see auto-generated indexes like:
    โ€‹

    ["default", "east_village", "snow_village"]

Note: "default" corresponds to your first location (Hell's Kitchen in this example).

Step 4: Configure Booking Integration

Currently, only the "Booking" attributes support the multi-location feature, primarily:

  • Booking - Check Availability - Schema

  • Booking - Check Availability - Validation Schema

These schema can be used to send location-specific data to a third-party integration.

Basic Example

Let's set up a basic example where we want to send data to a webhook (including the specific location) after a user asks about availability.

  1. Change "Booking - Check Availability - Type" to "endpoint."

  2. Add your webhook URL to "Booking - Check Availability - Link (URL)."

  3. Configure the schema for each location within the "Booking - Check Availability - Schema" attribute.

Example schema:

{
"default": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "User's preferred date for the appointment in format YYYY-MM-DD"
},
"time": {
"type": "string",
"description": "User's preferred time for the appointment in format HH:MM"
},
"location": {
"type": "string",
"const": "Hell's Kitchen"
}
},
"required": ["date", "time", "location"]
},
"east_village": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "User's preferred date for the appointment in format YYYY-MM-DD"
},
"time": {
"type": "string",
"description": "User's preferred time for the appointment in format HH:MM"
},
"location": {
"type": "string",
"const": "East Village"
}
},
"required": ["date", "time", "location"]
},
"snow_village": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "User's preferred date for the appointment in format YYYY-MM-DD"
},
"time": {
"type": "string",
"description": "User's preferred time for the appointment in format HH:MM"
},
"location": {
"type": "string",
"const": "Snow Village"
}
},
"required": ["date", "time", "location"]
}
}

How It Works in Practice

When a user mentions a specific location in conversation, the AI Employee:

  1. Identifies which location is being discussed.

  2. Uses that location's specific schema.

  3. Sends location-specific data to your webhook.

Example webhook payload when the user asks about booking availability at Snow Village:

{
"date": "2025-09-25",
"time": "17:00",
"location": "Snow Village"
}

Integration Requirements

Your webhook/integration must:

  • Accept location-specific identifiers.

  • Route requests to appropriate CRM/booking systems.

  • Handle different location codes or parameters.

  • Process location-specific business logic.

Current Limitations

Supported Features:

  • Direct CRM/PMS booking integration.

  • Check availability with location routing.

  • Location-specific booking parameters.

  • Up to 50-100 locations (with proper configuration).

Remember: This feature requires custom integration development. It's not a plug-and-play solution and requires technical expertise to implement properly. Contact us at [email protected] if you need assistance setting this up.

Did this answer your question?