Connectors
Connectors are the bridge between your RCS agent and external data. They allow your agent to fetch information, send data, and perform computations during a conversation flow, so your messages can be dynamic, personalized, and context-aware.
There are two types of connectors: API Connectors and Native Connectors.
API connectors
API connectors call external HTTP APIs to fetch or send data. You configure a connector with a base URL, authentication, and a set of operations (endpoints), then reference those operations from your messages.
- Define the base URL, authentication type, and default headers
- Add operations representing the API endpoints you want to call (e.g.
GET /orders/:orderId) - Create authentication credentials (OAuth 2.0, API Key, Bearer Token, etc.)
- Reference the connector and operation from any message
API connectors must be created and configured before they can be used in messages.
Learn more about API connectors
Native connectors
Native connectors are built-in data functions that run directly on the platform, no setup required.
- Math - arithmetic, rounding, min/max, random numbers
- String - concatenation, splitting, case conversion, find/replace
- Date - formatting, parsing, date math, comparisons
- List - filtering, sorting, pagination, aggregation
- Lodash - deep object access, merging, deduplication
- Catalog - CSV-based product lookups and proximity search
- Amazon Location Service - geocoding and reverse geocoding
Native Connectors are available immediately. Simply select one in your message and choose an operation.
Learn more about native connectors
How connectors work in a message
Both connector types are used as operations on a message. Here's what happens when a message with operations is processed:
- Operations run first — Each operation calls a connector, and the result is stored under a key you choose (the "context key"). For example, calling an order API might store the result as
data.order. - Operations chain — If a Message has multiple operations, they run sequentially. The second operation can use results from the first — e.g. fetch an order, then format the delivery date.
- Template renders — After all operations complete, the Message's template renders. It has access to everything stored in
data, plusparams,input, anduservariables. See Template Variables for the full list.
Example
A Message that looks up an order and sends the status:
Operations:
- Call
order-serviceconnector →get-orderoperation → store result asdata.order - Call
Datenative connector →formatoperation → formatdata.order.deliveryDate→ store asdata.formattedDate
Template:
Your order #{{ data.order.id }} is {{ data.order.status }}.
Estimated delivery: {{ data.formattedDate }}.The user sees: "Your order #1234 is shipped. Estimated delivery: April 2, 2026."
Updated 11 days ago