Stay up to date on the latest product updates, customer stories, and industry news from Redpoint. Opt-in and select the topics you'd like to learn more about!
Redpoint Interaction v7.x Documentation

RPI v7.8 release notes

Overview

Available August 31, 2026

Redpoint Interaction (RPI) v7.8.20260828.906 (Client Download) introduces the following enhancements:

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).

YAML
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

serviceAccount

Service-account key file (serviceAccountEmail plus a mounted key).

workloadIdentity

Keyless, via the pod's GCP Workload Identity (Application Default Credentials). No key file is mounted.

YAML
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.

YAML
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.

YAML
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.

YAML
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.

YAML
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.

YAML
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

  1. Remove redpointAI.VectorSearchProfile and redpointAI.VectorSearchConfig if present.

  2. Check for silent breaks: rename the LuxSci SendRequestCount cap to maxConcurrentApiRequestsPerAccount, and stop setting InternalCache__StatePersistence__Provider: DefaultCache (removed from the provider enum - use FileSystem or AzureBlobStorage). Both are ignored rather than rejected if left in place.

  3. 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.

  4. Apply the upgrade with your existing helm upgrade command and overrides file.

Next Steps

Use the Helm Assistant Web UI Reference and Chat tabs to browse configuration and ask questions.