Create New Company

Set up a new company to manage conversations and integrations

This name must be unique among your companies
Optional description to help identify the company

Select Company

Choose which company you want to work with

Border Connector

Multi-channel AI assistant for companies

Manager Login

Don't have an account? Sign up

Manager Registration

This will be your login email

Already have an account? Login

RealityBorder Logo

Configuration

Company Information

Manage your company's basic details and contact info

Calendar

Timezone and scheduling settings

Company timezone for calendar and scheduling
Never: no question. Always: ask before every availability/booking (confirmation still updates last-confirmed time). Other values: ask if never confirmed, or if last confirmation was longer ago than that many days.

Advanced Settings

Advanced configuration and dangerous operations

Delete Company

Once you delete a company, there is no going back. Please be certain.

Phone Settings

Configure phone numbers and call behavior

Comma-separated phone numbers (for WhatsApp/SMS)
Automatic call disconnection timeout in seconds after inactivity. Default: 60 seconds. Set to 0 to disable automatic disconnection.

AI Agent

Configure AI models and assistant behavior

Prompts

Leave empty to use default AI behavior. This prompt will be added to all your conversations.
Custom instruction for the initial greeting when answering phone calls (applies to phone, WhatsApp voice, and VoIP calls). Leave empty to disable initial greeting - the AI will wait for the caller to speak first.

Smart Features

When enabled, the orchestrator reviews and validates function/MCP calls before execution (for both voice calls and text messages). When disabled, function calls are executed directly without validation. Default: enabled.
When enabled, the AI can detect voicemail/IVR systems (beep tones, automated menus, fax machines) and automatically disconnect calls. When disabled, voicemail detection is not available. Default: enabled.
When enabled, interruptions are validated using transcription deltas to filter out background noise, coughs, and filler sounds. When disabled, interruptions trigger immediately on speech detection.

AI Models

Configure AI models and reasoning settings for different tasks.

Choose between speed (Realtime) or advanced model support (STT-TTS)

Text

Primary AI model for text conversations
Reasoning effort for AI model (low, medium, high)
Model used for other speech-to-text tasks
Model used for other text-to-speech tasks

Realtime

AI model used for real-time conversations
Model used for transcribing audio in real-time calls

STT-TTS

AI model used for STT-TTS voice calls
Reasoning effort for STT-TTS voice calls
Model used for speech-to-text in STT-TTS mode
Model used for text-to-speech in STT-TTS mode
Wait time after user stops speaking (default: 1000ms)
Minimum sound length to be processed (default: 100ms)

Orchestrator

AI model used by the Orchestrator agent (defaults to AI Model if not set)
Reasoning effort for the Orchestrator agent (defaults to Reasoning Effort if not set)
Max tokens for function-orchestrator decisions (default 400). Higher values reduce truncation risk.

Voice & Interaction

Configure how the agent speaks and detects user speech.

Voice used for AI speech synthesis
Default language for audio transcription (ISO 639-1 code)
Specific accent for the agent (leave empty for none)
Audio noise reduction settings
Sensitivity of turn detection (how quickly AI responds)
Method for detecting when a user stops speaking

Tools Configuration

Manage MCP tools and function call validation

MCP Configuration

When enabled, the orchestrator reviews and validates function/MCP calls before execution (for both voice calls and text messages). When disabled, function calls are executed directly without validation. Default: enabled.

MCP Allowed Tools

Select which MCP tools this company is allowed to use. If none are selected, the global default list will be used.

Leave all unchecked to use the global MCP tools configuration.

Gmail Integration

Connect Gmail accounts and configure email filters

Gmail Integration

Connect Gmail accounts to receive and respond to emails automatically via OAuth.

Loading connected accounts...

Email Filter Settings

Configure which automated emails should be filtered out and not answered.

Filter emails from mailer-daemon@, postmaster@, and bounce messages (default: enabled)
Filter emails from noreply@, security-noreply@, and other automated sender patterns (default: enabled)
Filter emails with Auto-Submitted, Precedence: bulk, or mailing list headers (default: disabled)
Additional domains to filter (e.g., linkedin.com, amazon.com). Leave empty to use default list only.
Additional email patterns to filter (e.g., noreply@, security-noreply@). Leave empty to use default patterns only.
When enabled, the orchestrator AI analyzes each email and can decide not to reply. Useful for filtering automated emails that pass the rule-based filters above. (default: disabled)

WhatsApp Configuration

Manage WhatsApp Business API and templates

WhatsApp Business API Configuration

Configure WhatsApp Business API credentials for your company.

Meta for Developers - Use cases - Configuration - Verify token
Meta Business Suite - Settings - Users - System Users - Permanent access token of 'Connector-RealityBorder'
Meta Business Suite - Settings - Apps - ID
Meta Business Suite - Settings - Business Info - Business Porfolio ID
Meta Business Suite - Settings - Accounts - WhatsApp accounts - ID

No phone numbers configured. Click "Add Phone Number" to add one.

Configure multiple WhatsApp phone numbers for your company

WhatsApp Message Templates

View your approved WhatsApp message templates. Templates are managed in Meta Business Manager and cannot be modified here.

Loading templates...

No templates found or WhatsApp is not configured.

API Key & Endpoints

Use your API key to authenticate requests. Keep it secret.

Your API Key

This key is unique to your company and is generated when the company is created. Include it in the Authorization header or as X-API-Key when calling the API.

Select a company to see your API key.

Available Endpoints

Base URL

https://connector.realityborder.com

Authentication

Send your API key in one of these ways:

  • Query parameter: ?api_key=YOUR_API_KEY
  • Header: Authorization: Bearer YOUR_API_KEY
  • Header: X-API-Key: YOUR_API_KEY
GET

1. Get WhatsApp Numbers

Returns the connected/validated WhatsApp numbers for your company.

Endpoint URL

GET https://connector.realityborder.com/api/whatsapp/numbers?api_key=YOUR_API_KEY

cURL Example

curl -X GET "https://connector.realityborder.com/api/whatsapp/numbers?api_key=YOUR_API_KEY"

Returns:

{"success": true, "data": {"whatsapp_numbers": [...]}}

Each WhatsApp number includes: phone_number_id, display_phone_number, verified_name, is_active, verification_status

GET

2. Get Phone Numbers

Returns the phone numbers (phones field) for your company.

Endpoint URL

GET https://connector.realityborder.com/api/phones?api_key=YOUR_API_KEY

cURL Example

curl -X GET "https://connector.realityborder.com/api/phones?api_key=YOUR_API_KEY"

Returns:

{"success": true, "data": {"phones": [...]}}

Array of phone number strings. Empty array if no phones configured.

GET

3. Get Email Addresses

Returns the email addresses (emails field) for your company.

Endpoint URL

GET https://connector.realityborder.com/api/emails?api_key=YOUR_API_KEY

cURL Example

curl -X GET "https://connector.realityborder.com/api/emails?api_key=YOUR_API_KEY"

Returns:

{"success": true, "data": {"emails": [...]}}

Array of email address strings. Empty array if no emails configured.

POST

4. Make Outbound Call

Initiate an outbound call from an authorized phone number to a destination number. The origin phone must be in your company's phones list.

Endpoint URL

POST https://connector.realityborder.com/api/calls/outbound?api_key=YOUR_API_KEY

Request Body

{"from": "origin_phone_number", "to": "destination_phone_number", "call_objective": "What the AI should talk about"}

cURL Example

curl -X POST "https://connector.realityborder.com/api/calls/outbound?api_key=YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"from": "+1234567890", "to": "+0987654321", "call_objective": "Ask for their availability for a meeting"}'

Returns:

{"success": true, "data": {...}}

Returns 403 if the origin phone is not in your company's phones list. Returns 400 if from/to are missing.

POST + WebSocket

5. Create Inbound Call (VoIP)

To handle an inbound voice call with the AI, use two steps: (1) notify the connector via the VoIP webhook, then (2) connect your media server (e.g. Asterisk) to the real-time voice stream WebSocket. The called number must be one of your company's phones so the connector can identify the company.

Step 1 — Webhook (notify call started)

POST to the webhook when a call arrives. This endpoint is protected with a Connector API key (configure on your PBX/media server).

POST https://connector.realityborder.com/api/voip/webhook

Auth: send the key as x-connector-api-key or as a Bearer token in Authorization.

Headers: x-connector-api-key: YOUR_CONNECTOR_API_KEY # or Authorization: Bearer YOUR_CONNECTOR_API_KEY

Request Body (JSON)

{ "callId": "unique-call-id", "callerPhone": "+1234567890", "callerName": "Optional caller name", "b_number": "+34987654321", "event": "connect", "websocketUrl": "wss://connector.realityborder.com/api/real-time-voice-stream?callId=..." }

cURL Example

curl -X POST "https://connector.realityborder.com/api/voip/webhook" \ -H "Content-Type: application/json" \ -H "x-connector-api-key: YOUR_CONNECTOR_API_KEY" \ -d '{ "callId": "unique-call-id", "callerPhone": "+1234567890", "b_number": "+34987654321", "event": "connect", "websocketUrl": "wss://connector.realityborder.com/api/real-time-voice-stream?callId=unique-call-id&aNumberE164=CALLER_E164&bNumberE164=CALLED_E164" }'

callId — unique ID for this call. callerPhone / caller_number — caller's number. b_number — called number (must be in your company's phones; used to find the company). companyId — optional; if omitted, company is resolved from b_number. event — use "connect" for new call. websocketUrl — required; use the real-time stream URL, e.g. wss://connector.realityborder.com/api/real-time-voice-stream?callId=...&aNumberE164=...&bNumberE164=.... The webhook responds with 200 immediately; call handling continues asynchronously.

Step 2 — Real-time voice stream (audio)

Your media server (e.g. Asterisk) must open a WebSocket to the connector to send and receive audio. Use the same callId and numbers so the connector can attach the connection to the session created by the webhook.

wss://connector.realityborder.com/api/real-time-voice-stream?callId=UNIQUE_CALL_ID&aNumberE164=CALLER_E164&bNumberE164=CALLED_E164

Query params: callId — same as in the webhook. aNumberE164 — caller number (E.164, without leading +). bNumberE164 — called number (E.164). The connector matches this WebSocket to the session and bridges audio to the AI. Callers must be authorized for the company (e.g. allowed list or balance); otherwise the call is rejected.

Summary

1) POST https://connector.realityborder.com/api/voip/webhook with your Connector API key, call details, and event: "connect". 2) Open wss://connector.realityborder.com/api/real-time-voice-stream with the same callId and number params so audio is bridged. Use event: "terminate" in the webhook when the call ends (optional).

POST

6. Send WhatsApp Template

Send a WhatsApp template message to a recipient. The phone number ID must be authorized for your company.

Endpoint URL

POST https://connector.realityborder.com/api/whatsapp/template?api_key=YOUR_API_KEY

Request Body

{ "phone_number_id": "YOUR_PHONE_NUMBER_ID", "to": "recipient_phone_number", "template_name": "hello_world", "language_code": "es", "components": [] }

cURL Example

curl -X POST "https://connector.realityborder.com/api/whatsapp/template?api_key=YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "phone_number_id": "123456789", "to": "+1234567890", "template_name": "hello_world", "language_code": "es" }'

Returns:

{"success": true, "data": {...}}

Returns 403 if the phone number ID is not authorized. Returns 400 if required fields are missing or Meta API returns an error.

📝 Note

All endpoints return empty arrays (not errors) when no data is available. Responses use 200 for success; 401 for invalid/missing API key; 400 for bad requests; 403 for unauthorized phone numbers; 500 for server errors.

Company Management

Manage your companies and create new ones

Loading companies...

Usage Statistics

Track model usage and costs across all your companies and conversations

Daily Cost Trend

Usage by Company

Total usage per company. Click a row to see model breakdown.

Company / Model / Type Date Text Audio Est. Cost
Input Output Input Output

Usage by Conversation

Detailed usage per conversation.

Conversation / Model / Type Date Text Audio Est. Cost
Input Output Input Output

Calendar

Manage your events and availability across your connected calendars.

No Calendar Connected

Connect your Google Calendar to view and manage events

January 2026

Local

Syncing with Google Calendar...

Sun
Mon
Tue
Wed
Thu
Fri
Sat

Events for