Overview
Available August 31, 2026
Redpoint Interaction (RPI) v7.8.20260828.906 (Client Download) introduces the following enhancements:
-
Major enhancements: high-impact changes introduced in RPI in v7.8.
-
Connector enhancements: changes made to connectors in RPI v7.8.
-
Other enhancements: other features added in RPI v7.8.
-
Upgrade considerations: things to consider when upgrading to RPI v7.8.
Major enhancements
Global control group
Global control groups allow you to create a group of records that are held out of an audience as a control. You can create one when configuring an audience definition by choosing a selection rule or setting a volume of records to be included in the group. Learn more about this feature by reading the release notes below, the linked documentation in each sub-section, as well as the comprehensive guide to Using global control groups.
Audience Definitions: Details
When creating an Audience Definition, you can now give it a global control group, which creates a holdout group at each final output. You can set the control group using a selection rule to designate specific records to the control group, or you can set the volume of records using a percentage or an absolute count. (User story: 21998)
Audience Designer
If you’ve assigned a Global Control Group to the Audience Definition when creating an audience, you’ll see these properties in the Audience Designer:
-
Audience properties
-
If an Audience definition with a Global Control Group is selected, there will be a checkbox to disable control groups.
-
Global Control Group details are shown when you select Show Definition Details.
-
(User story: 21998)
Interaction Designer
The Interaction Designer now behaves as follows:
-
If an audience's (batch or interactive) definition is configured to use a global control group, the audience activity will show the control mini-icon. Any fulfillment activities (other than Controls) that are downstream from the audience will display the same icon.
-
Any metadata overrides are written to the control groups in addition to relevant outputs.
-
After you run the interaction, in test or production mode, you’ll see yellow bubbles appear above the batch or interactive activity and the fulfillment activities. The bubble on the fulfillment activity will show as [output count] + [control group count].
-
Control group records are not subject to fulfillment, but they are written to offer history.
(User story: 21998)
Results window
-
Audience
-
The control group count is listed as a separate line item on the results tab.
-
The control group's metadata values are copied from corresponding outputs.
-
-
Fulfillment Activity
-
Control group is shown as its own segment in the pie chart on the Results tab.
-
-
Audience Waterfall Report
-
Global Control Group details are shown as their own line item in the report.
-
(User story: 21998)
Offer History
RPI shows the control group members in Offer History as follows:
-
ChannelName= “Control” -
OfferName= “NA” -
OfferChannelSubName= “Control Group”
(User story: 21998)
Interaction Designer: Split and rejoin activities
When creating a workflow, you can now change the input source on an activity, split a workflow into multiple paths and rejoin them further downstream at a single activity, and loop a contact back into an earlier activity for reprocessing. These options are available for specific types of activities in the Interaction Designer. Learn more about this feature by reading the release notes below, the linked documentation in each sub-section, as well as the comprehensive guide to Interaction Designer split and rejoin activities.
Configuration panel: Input source
The inputs tab now contains the input source field, which allows the activity to take its input population from an activity other than the activity that is immediately upstream.
The inputs tab now contains the input source field, which allows the activity to take its input population from an activity other than the activity that is immediately upstream. This field is only available on an activity positioned downstream from a fulfillment activity (for example, an Offer, Export, Data Transfer, or Data Process); it does not appear on an activity placed directly downstream of a Batch Audience or Interactive Activity.
This section is available for the following activity types:
-
Batch Audience
-
Interactive Activity
Supports multiple input sources; learn more in the Split and rejoin section. -
Data Process
-
Data Transfer
-
Control
-
Export
-
Offer
-
Decision Offer
(User story: 21740)
Configuration panel: Split and rejoin
You can now split a workflow into multiple paths and rejoin them further downstream at a single activity. You can also loop a contact back into an earlier activity for reprocessing (for example, waiting and re-evaluating a contact through the same path more than once) using the same functionality. The Results Window for interactive activities now also shows per-iteration counts and total passes when this functionality is in use. Refer to Split and rejoin configuration, below, for an important one-time step you need to take. (User story: 21738)
Drag and drop
You can now drag and drop to reorder on Suppression and Split blocks with more than one item. You can also select multiple items and move them together on both Suppression and Split blocks. (User story 26302)
Placeholder attributes
When an export template contains a flag attribute, and the value of that attribute is determined by a selection rule that contains a criterion based on a placeholder attribute, when the export template is used in export activity or data extract offer execution in an interaction workflow, the value of the flag attribute is determined using the placeholder value specified at the upstream audience. (User story: 26251)
Connector enhancements
External content providers
Contentful
Changes to Contentful ECP media are now picked up by RPI when:
-
The context of usage is refreshed in Embedded items
-
The file is reopened
(User story: 23339)
Email providers
LuxSci
A new property is available in the LuxSci channel configuration on the Channel Specific tab: Skip without failure at missing body content. When checked, any record with missing body content is skipped, and processing continues for the remaining records with valid body content. Skipped records do not trigger an activity failure or create a recovery folder entry. (User story: 26160)
Cheetah Digital
If you enter a Sender Email in the Offer Designer when sending an offer through Cheetah Digital (formerly known as Marigold), the email address in the Sender Email (Offer Designer) will override the email address in the Sender profile address field in the channel configuration settings. (User story: 25946)
Other enhancements
Home page
Status indicators
Status indicators are now visible on the Home page to cluster admin users. These indicators appear in the top right corner when there is an issue, and advise on the following:
-
System Services
-
Maintenance mode
-
Diagnostics
(User story: 27153)
Functional permissions
Operations
The new functional permission “Operations - Execution Services - Manage Enabled Status” allows users to manage execution services enabled status within Operations. (User story: 25555)
Interaction
The new functional permission "Interaction - Save" allows users to save interactions. When upgrading to v7.8, every user group with "Interaction - Build" is automatically granted "Interaction - Save". However, user groups with "Interaction - Design" but without "Interaction - Save" will be unable to save. (User story: 25372)
Preferences
Alerts
You can now subscribe to the following alerts:
-
"Execution Services - Enabled Status changed" will alert you when the enabled status is changed in Execution services. (User story: 25557)
-
“Excessive Logging Activity” will alert you when error log messages per minute exceed the configured threshold. There’s also a corresponding system configuration setting and system task. (User story: 25354)
Configuration
Channels
For email channels, there is a new property on the General tab that allows you to set the default offer purpose to either Marketing or Operational. This allows you to use the same default every time, rather than having to manually set the purpose in offer properties. (User story: 25553)
Audience Definitions - Metadata
-
Non-required value-list based metadata attributes now support a “<blank value>” option. When selected, string metadata is persisted as a blank string; other data types are persisted as NULL. (User story: 26163)
-
If a metadata attribute is created from a database value list and is the data type “String”, you can now choose from the dropdown OR manually enter a value in Audience Metadata. (User story: 25683)
SQL Database Definitions
You can now add a Standard Selection Rule as a “Global Contact Rule” for a SQL Database Definition. Global Contact Rules are added as an AND to any Basic Selection Rule created on that SQL Database Definition. (User story: 26335)
System Configuration
There’s a new system configuration setting in the Environment group, ExcessiveLoggingThreshold, which you can use to control how many error log messages per minute occur before an excessive logging alert is fired. The default is 100. This setting corresponds with a new alert and system task. (User story: 25354)
Attribute Lists
On the Attribute List configuration page, there is a new button on the toolbar for “Usage”, which allows you to view and export a report listing the contexts of attribute list usage. (User story: 25741)
Tenant
Cluster admins can now execute database connectivity tests while in maintenance mode. (User story: 23457)
Value Lists
When configuring a database value lists, two new fields are available:
-
Sort column: this optional column allows you to choose a database column (based on the source table) to sort the list values by.
-
Sort direction: only available if you add a sort column. You can choose Ascending or Descending.
(User story: 26085)
User Groups
When creating or editing a user group, you can now set the application timeout at the group level. This controls how long users can be inactive while logged into RPI without being automatically logged out. User groups are automatically given the default, which is 30 minutes. (User story: 25350)
Audience Designer
Multi-filter block
The following buttons are now shown inline on the multi-filter block in the Audience Designer when at least one selection rule is present:
-
Open Latest Version
-
Pop out into its own Window
-
View Insights…
-
Clear
This button display matches the options for the single filter block. (User story: 25355)
Offer Designer
Properties - Purpose
In Properties, the Purpose field now has the default value “Use channel default”. You can change the default purpose by going to Configuration > Channels. Choose an email channel, and on the General tab, use the Default offer purpose dropdown. (User story: 25553)
Interaction Designer
Offer execution
When an interaction contains an offer with a channel that has been disabled, the following message is displayed: “[Offer name] The channel [Channel name] is disabled so cannot be used in an interaction.” If you proceed with running the interaction, the offer execution will fail.
Offer execution will also fail for interactions containing:
-
Queue activities
-
Single and multi-instance recurring workflows, when the offer channel is disabled after the initial run of the interaction
-
Offers downstream of interactive activities, when the offer channel is disabled after the initial run of the interaction
This applies for interactions in test or production mode. (User story: 25326)
Export Activity
On the General tab of the configuration panel of Export Activities, there’s a new checkbox for “Write offer history”. This box is checked by default. When unchecked, Export Activities are not written to offer history. (User story: 26214)
Activities - Advanced tab
The checkbox on the Advanced tab has been relabeled to “Inherit outputs from parent audience activity” (from “Inherit outputs from ancestor activity”), which more correctly describes the function of the checkbox. (User story: 26430)
Activities: Batch Audience and Interactive Activity
If you change the audience on a Batch Audience or Interactive Activity after initially setting the inputs in downstream activities, and the audience you changed it to doesn’t expose output(s) with name(s) matching the selection, a warning dialog will appear. The dialog states “Changing the audience may have reset inputs at downstream activities. Please validate your inputs before executing”. (User story: 26413)
Operations
Execution Services
On the Execution Services tab, when you change Enabled Status settings and select Save, an “Are You Sure?” warning appears with the following message: “Changing these settings will control whether workflows, client jobs, and tasks are allowed to run on the execution service. Disabling any of these will prevent new executions of that type from starting. Are you sure you want to apply these changes?”. Choosing “Yes” will apply the changes, choosing “No” abandons the changes. (User story: 25556)
System tasks
There is a new system task “Excessive logging monitor”, which checks every minute to ensure that the number of error logs per minute does not exceed the set threshold.
System tasks are shown in the client under Operations > System tasks, which only appears if you have the OperationsSystemTasks permission and are a cluster admin.
The monitor also requires InternalAddress to be configured on Execution Service, Queue Reader, and Node Manager in order to access the /metrics endpoints.
There is a corresponding alert and system configuration setting as well. (User story: 25354)
Upgrade considerations
This section provides information about important changes to RPI v7.8 that may impact your upgrade. In addition to reviewing the contents here, also refer to the Upgrading to RPI v7.8 topic.
Client machine requirements
RPI v7.8 now runs with Microsoft .NET v10. Refer to Client machine requirements for additional information. (User story: 26185)
Split and Rejoin configuration
At each RPI tenant installation, you need to run Config > Audience Definitions > Validate once; this adds the IterationNumber column necessary for the split and rejoin functionality.
Helm chart updates
This section covers upgrading an existing RPI v7.7 Helm deployment to v7.8.
These details are also provided in the GitHub migration readme.
If you're deploying RPI for the first time, see the Greenfield Installation guide instead.
RPI v7.8 is an additive release. It introduces Google Cloud data-plane support (Cloud SQL and BigQuery) and new Realtime API and Interaction API configuration. Existing v7.7 overrides continue to work unchanged (see the checklist below).
|
Area |
Change |
|---|---|
|
Google Cloud SQL |
Passwordless IAM connectivity via the Cloud SQL Auth Proxy |
|
BigQuery |
Data-warehouse support with keyless Workload Identity |
|
Realtime API |
Expanded geolocation, identity, profile/ML processing, integration, and operational configuration |
|
Interaction API |
Expanded auth/security, logging, integration, and operational configuration |
|
Queue Reader |
Expanded logging, integration, distributed-processing, and operational configuration |
Google Cloud SQL (PostgreSQL) with IAM authentication
RPI can connect to a Google Cloud SQL for PostgreSQL instance using passwordless IAM authentication through the Cloud SQL Auth Proxy, which runs as a sidecar. With autoIamAuthn enabled, pods connect over loopback using the IAM database user and no stored password. This path is SDK secrets mode only (secretsManagement.provider: sdk).
databases:
operational:
provider: postgresql
databaseSchema: dbo
cloudSqlProxy:
enabled: true
connectionName: my-project:us-central1:my-instance
autoIamAuthn: true
privateIp: true
Refer to Google Cloud SQL (IAM) for the full setup, including the required Workload Identity binding.
BigQuery data warehouse with keyless Workload Identity
The chart renders an ODBC DSN ConfigMap for the Simba BigQuery driver when databases.datawarehouse.bigquery.enabled is true, with one DSN per connection. Each connection chooses how it authenticates:
|
credentialsType |
Authentication |
|---|---|
|
|
Service-account key file ( |
|
|
Keyless, via the pod's GCP Workload Identity (Application Default Credentials). No key file is mounted. |
databases:
datawarehouse:
bigquery:
enabled: true
connections:
- name: gbq-tenant1
projectId: my-google-project
credentialsType: workloadIdentity
OAuthMechanism: 3
Realtime API: expanded configuration
Expanded configuration support for geolocation, identity resolution, visitor and profile processing, logging, integrations, and operational settings, including geolocation and IP-lookup, identity and profile-merge controls, Redpoint ML scoring, file output, SMTP, and service host settings.
realtimeapi:
geolocation:
enabled: true
provider: Azure
weatherUnits: imperial
RedPointMLServiceAddress: "https://<your-ml-service>" # address of the Redpoint ML scoring service
RedPointMLClientID: "<client-id>" # client identifier for the ML service
Interaction API: expanded configuration
Expanded configuration support for authentication/security, logging, integrations, and operational settings, including password policies, account lockout, token lifetimes, logging providers, Azure services, and client service credentials.
interactionapi:
passwordPolicy:
requiredLength: 12
requireDigit: true
requireUppercase: true
requireLowercase: true
requireNonAlphanumeric: true
Queue Reader: expanded configuration
Expanded configuration support for logging, integrations, distributed processing, and operational settings, including logging providers (New Relic, Loggly), NLP, SMTP, file output, operational database retry, and the chart-managed internal cache and queue for distributed processing.
queuereader:
# Operational database retry
operationalDatabase:
maxRetryCount: 12
maxRetryDelay: "00:01:00"
# Distributed processing: deploys the chart-managed Redis and RabbitMQ
realtimeConfiguration:
isDistributed: true
Per-tenant Realtime API address override
The cluster-wide Realtime API address can be overridden per client (tenant). Each entry pairs a client GUID with the Realtime API base address for that client; the override is consumed by the Interaction API and Execution Service. Requires realtimeapi.multitenant: true.
realtimeapi:
multitenant: true
clientAddressOverrides:
- clientId: <client-guid>
address: https://realtimeapi-tenant1.example.com
LuxSci send throughput controls
Two independent concurrency caps for large LuxSci sends on the Execution Service: a per-account API rate guard and the per-activity send parallelism.
executionservice:
jobExecution:
luxSci:
maxConcurrentApiRequestsPerAccount: 5 # per-account LuxSci API rate guard
maxDegreeOfParallelism: 10 # concurrent sends within an activity
Removed in RPI v7.8
RedpointAI vector search values
redpointAI.VectorSearchProfile and redpointAI.VectorSearchConfig have been removed. RPI now creates the search index, vector profile, and algorithm dynamically at runtime, so these values are no longer needed. See Redpoint AI.
Internal cache OpsDB failover
InternalCache__BackupToOpsDBInterval and InternalCache__FailOnPrimaryDataLoss have been removed - OpsDB-backed cache failover was removed in 7.8. Remove them from your overrides if set (Execution Service and Queue Reader).
Swagger on the Interaction API
The Interaction API no longer emits EnableSwagger. The setting remains valid and unchanged for the Integration API.
LuxSci SendRequestCount renamed
Plugins__LuxSci__SendRequestCount was renamed to Plugins__LuxSci__MaxConcurrentApiRequestsPerAccount. The old key binds to nothing and is silently ignored, so update any override that sets it.
Upgrade Checklist
-
Remove
redpointAI.VectorSearchProfileandredpointAI.VectorSearchConfigif present. -
Check for silent breaks: rename the LuxSci
SendRequestCountcap tomaxConcurrentApiRequestsPerAccount, and stop settingInternalCache__StatePersistence__Provider: DefaultCache(removed from the provider enum - useFileSystemorAzureBlobStorage). Both are ignored rather than rejected if left in place. -
Review the new optional features (Cloud SQL IAM, BigQuery, Realtime geolocation, Interaction API password policy, per-tenant Realtime API address, LuxSci throughput) and adopt as needed. All are opt-in and default off.
-
Apply the upgrade with your existing
helm upgradecommand and overrides file.
Next Steps
Use the Helm Assistant Web UI Reference and Chat tabs to browse configuration and ask questions.