Real-Time Journeys
Learn how to set up and launch real-time journeys to engage users instantly based on live event data
In this guide, weβll walk through how to set up a real-time journey. Real-time journeys enable dynamic, event-driven engagement based on live data.
Prerequisites
Before you begin, make sure you have:
- Apache Kafka for event streaming (learn more here). Support for SQS and Pub/Sub will be added in the future.
- SendGrid or Salesforce Marketing Cloud (SFMC) for email marketing (currently, these are the only real-time destinations supported).
- Real-time events enabled in your org. If you donβt see this, contact your GrowthLoop rep to enable it.
Step 1: Configure a Real-Time Source Connection
- Log into GrowthLoop and go to the Organization page.
- Open the Source Connections tab and click New Source Connection.
- In the modal, select Kafka.
- Fill out the required details for the event queue connection:
Field Name | Required | Description | Example | Notes |
---|---|---|---|---|
Name | β Yes | A unique name to identify this Kafka connection. | ProductionKafkaCluster , OrdersEventBroker | Must be unique across connections. Used for display and reference. |
Description | β No | Add context about the connection. | Kafka cluster for production events | Helpful for documentation/debugging. |
Bootstrap Servers | β Yes | Comma-separated list of broker addresses. | kafka-1.company.com:9092,kafka-2.company.com:9092 | At least one must be reachable. |
Topic Name | β Yes | Kafka topic the consumer will subscribe to. | user-signups , order.created | Must already exist in the cluster. |
Group ID | β No | Consumer group ID. | signup-event-workers | Auto-generated if left blank. |
Security Protocol | β Yes | Defines communication/security protocol. | β | Common: PLAINTEXT , SSL , SASL_SSL . |
Mechanism | β οΈ Conditional | Required if using SASL. | PLAIN , SCRAM-SHA-256 | Must match Kafka server config. |
Username | β οΈ Conditional | SASL username. | β | Provided by Kafka admin. |
Password | β οΈ Conditional | SASL password. | β | Keep secure. |
- Click Create. A test connection will run, and if successful, your new source connection will be saved.
Success
Youβve successfully configured a real-time source connection!
Step 2: Create a Real-Time Event
- In the side menu, go to Datasets and select the Realtime Events tab.
- Click New Realtime Event.
- Fill out the event registration form:
Field Name | Required | Description |
---|---|---|
Event Source | β Yes | Select the real-time source connection (e.g., ProductionKafkaCluster ). |
Event Name | β Yes | A human-readable label for this event (e.g., UserSignup , OrderPlaced ). |
Path to Event | β Yes | Field path in the Kafka message to inspect (supports dot notation, e.g., user.status.type ). |
Event Value | β Yes | Value in the field above that triggers the event (e.g., signup ). Messages without this value are ignored. |
Register Event Schema | β Yes | JSON Schema describing the event payload for validation and field extraction. |
- Click Save.
Success
Youβve successfully created a real-time event!
Step 3: Add the Real-Time Event to a Dataset Group
- Switch to the Dataset Group tab.
- Select your Dataset Group, then open the Realtime Events tab.
- Click Add Realtime Event.
- In the modal, select the event you created.
- Map the real-time field to your datasetβs primary key.
Step 4: Create a Real-Time Journey
- In the side menu, go to Journeys and click New Journey.
- In setup, choose Realtime Journey as the type.
- Select the Dataset Group with your registered event.
- From Select Realtime Event, choose your event.
- Configure the rest of the journey and click Continue. Youβll see a real-time entry node appear on the canvas with a lightning icon.
- Next, drag a Criteria node onto the canvas and filter users by event fields (e.g., event type, attributes).
- Then, drag a Destination node and choose a real-time destination (SendGrid or SFMC).
Note
The fields available in real-time destination node are sourced from the real-time event message schema and can be used for email recipient selection and template personalization.
- Click Publish to activate the journey.
Success
Youβve successfully created a real-time journey!
Need help?
If you run into issues with Real-Time Journeys, reach out to us at [email protected].
Updated about 19 hours ago