Skip to content

Conversation

@chriswickhamOF
Copy link

Why are you making this change? (required)

Your reason here...

Related PRs, issues, or features (optional)

  • N/A

Feature release date (optional)

  • N/A

Contributor checklist

  • I confirm that my PR meets the following:
    • I signed the Contribution License Agreement (CLA).
    • My style and voice follow the Braze Style Guide.
    • My content contains correct spelling and grammar.
    • All links are working correctly.
    • If I renamed or moved a file or directory, I set up URL redirects for each file.
    • If I updated or replaced an image, I did not remove the original image file from the repository. (For more information, see Updating an image).
    • If my PR is related to a paid SKU, third party, SMS, AI, or privacy, I have received written approval from Braze Legal.

Submitting for review

If your PR meets the above requirements, select Ready for review, then add a reviewer:

  • Non-Braze contributors: Tag @braze-inc/docs-team in a comment below.
  • Braze employees: Have any relevant subject matter experts (like engineers or product managers) review your work first, then add the tech writer assigned to your specific vertical. If you're not sure which tech writer to add, you can add braze-inc/docs-team instead.

Thanks for contributing! We look forward to reading your work.

Making updates to the About page
Updated the language for clarity and added structured steps for setting up Decisioning Studio Pro agents.
Revised the content for clarity and conciseness, emphasizing the importance of customer context and audience definition for Decisioning Studio agents. Updated instructions for audience configuration and customer data submission.
Correct formatting and add a closing tab for the Other Cloud Solutions section. Clarify options for custom audience builds.
Added images and clarified re-eligibility for API Triggered Campaigns.
Removed raw code blocks for CTA and SMS messages and added images for push and SMS campaign examples.
Updated examples and images for email campaign optimization in Decisioning Studio documentation.
Clarify wording regarding custom engineering work and agent delivery of recommendation file.
Updated the description of AI Decisioning Pro and changed the wording for closing the loop.
Removed a call-to-action link and adjusted formatting.
Added clarification about engagement and activation data in the activations asset section.
@github-actions github-actions bot requested a review from ats-91 December 15, 2025 21:46
@github-actions
Copy link
Contributor

🤖 Automated Reviewer Assignment: I have automatically added reviewers based on the following:

  • ⚖️ @ats-91 - PR diff contains privacy/legal/GDPR-related content


Go to **Settings** > **API Keys**, then create a new key with the following permissions:

{% multi_lang_include decisioning_studio/api_key_permissions.md %}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't figure out where to find the source of this table, so I'm going to make some notes about the API permissions here:

  • The list in this table is the list needed for DS Go, and is even a bit out of date for that (we don't need /users/export/segment permissions anymore)
  • I don't understand what the row "Only if using external ids" is accomplishing - I think maybe that was supposed to be in the Required col of the /users/export/segment row, but as stated above, we don't need that row at all anymore because we have the internal export functionality
  • The rest of the permissions are specific to DS Go. For Pro, it depends on what activation methodology you are using. If we want to focus on API Triggered campaigns, see the specific list in our confluence docs


### Step 2: Set up API-triggered campaigns

Set up an API-triggered campaign for each base template with API trigger properties for all optimized dimensions.
Copy link

@kristinabrantley kristinabrantley Dec 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I noted this in your original google doc - but I'd be careful of using the terminology "base template" here, since "templates" are actually a thing in the Braze product, and they are NOT necessarily what we are referring to here (i.e., we don't want people to think that they need to create a template in Braze AND a campaign; you can use a template when creating a campaign, but you don't have to). I'd suggest using language like "base creative".


Set up an API-triggered campaign for each base template with API trigger properties for all optimized dimensions.

A base template is any template that the Decisioning Agent might use for orchestrating messages. A Decisioning Agent might have 1 base template and multiple, in which case choosing the right base template for each customer will be one of the decisions the agent personalizes.
Copy link

@kristinabrantley kristinabrantley Dec 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this should be "or", right?

Suggested change
A base template is any template that the Decisioning Agent might use for orchestrating messages. A Decisioning Agent might have 1 base template and multiple, in which case choosing the right base template for each customer will be one of the decisions the agent personalizes.
A base template is any template that the Decisioning Agent might use for orchestrating messages. A Decisioning Agent might have 1 base template or multiple, in which case choosing the right base template for each customer will be one of the decisions the agent personalizes.

It might be worth saying that this could result in one or more campaigns per channel. For channels where the creative can be vastly different and not all handled via dynamic content (like email), you will likely need one campaign per base creative. But for channels like SMS/Push, you really only need one campaign for the entire channel, because all of the content can be easily passed through the API call (you have these in the examples, but I'm just expanding here in case you want to add any additional detail - totally up to you - I can be a bit verbose when I write things, and maybe simpler is better for now).


#### Example #1: Email Campaign

Suppose the Decisioning Studio agent is optimizing an email campaign. This might be configured like this:
Copy link

@kristinabrantley kristinabrantley Dec 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd suggesting tying this back to "base creatives" - since you need to create a campaign for each

Suggested change
Suppose the Decisioning Studio agent is optimizing an email campaign. This might be configured like this:
Suppose the Decisioning Studio agent is optimizing an email campaign. One of your base creatives might be configured like this:


![Decisioning Pro Diagram]({% image_buster /assets/img/decisioning_studio/decisioning_studio_braze_email_example_2.png %})

#### Example #2: Push campaign

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we think it's clear enough to the reader that all of these examples could potentially exist in the same use case?

E.g., you are optimizing a multichannel first purchase journey - and this is how the various messages in that journey are configured for DS

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We may want to remove this section for now – Stephen & EMs are working on some standardization here and it's probably best to wait until he's done so we can do this section right from the start.


Decisioning Studio also supports native integrations with SFMC and Klaviyo. For SFMC, for example, Decisioning Studio triggers API events into a journey with data required to populate dynamic elements.

For detailed steps to configure an agent that uses either of these customer engagement platforms, following the [SFMC instructions]({{site.baseurl}}/user_guide/brazeai/decisioning_studio/decisioning_studio_go/configure_sfmc/) or [Klaivyo instructions]({{site.baseurl}}/user_guide/brazeai/decisioning_studio/decisioning_studio_go/configure_klaviyo/)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
For detailed steps to configure an agent that uses either of these customer engagement platforms, following the [SFMC instructions]({{site.baseurl}}/user_guide/brazeai/decisioning_studio/decisioning_studio_go/configure_sfmc/) or [Klaivyo instructions]({{site.baseurl}}/user_guide/brazeai/decisioning_studio/decisioning_studio_go/configure_klaviyo/)
For detailed steps to configure an agent that uses either of these customer engagement platforms, follow the [SFMC instructions]({{site.baseurl}}/user_guide/brazeai/decisioning_studio/decisioning_studio_go/configure_sfmc/) or [Klaivyo instructions]({{site.baseurl}}/user_guide/brazeai/decisioning_studio/decisioning_studio_go/configure_klaviyo/)


Decisioning Studio can integrate with any customer engagement platform. However, this may require some custom engineering work from your team, since Decisioning Studio cannot trigger communications directly.

In this scenario, the agent will deliver a "recommendation file." This file contains rows for each customer, with columns that indicate all of the personalized decisions for that customer.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the image, it says "Decisions file" but here we say "recommendation file" - suggest aligning on what you want to call it (when I made that slide, I had shifted toward calling it a "decisions" file - because we are a "decisioning" product, so it made better sense. And also, because it sounds less optional than "recommendations")


![Decisioning Pro Diagram]({% image_buster /assets/img/decisioning_studio/decisioning_studio_custom_example_2.png %})

Might be used to optimze an email campaign that looks like the following:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Might be used to optimze an email campaign that looks like the following:
Might be used to optimize an email campaign that looks like the following:


## If another Customer Engagement Platform

Decisioning Studio can integrate with any customer engagement platform. However, this may require some custom engineering work from your team, since Decisioning Studio cannot trigger communications directly.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You might want to be a little more direct here and just say "This will require custom engineering work."


## If another Customer Engagement Platform

Decisioning Studio can integrate with any customer engagement platform. However, this may require some custom engineering work, if Decisioning Studio cannot trigger communications directly.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could consider putting this in a "Disclaimer" box


#### 3. Configure orchestration

You will connect Braze or a non-Braze Marketing Automation Platform that will carry turn the Agent’s decisions into action
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF should we consider referring to other platforms as Marketing Automation Platforms or Customer Engagement Platforms?

3. The fewer constraints on your agents, the better. Constraints should be designed to respect business rules while freeing agent-led experimentation as much as possible.

{% alert important %}
This guide explains the most common integration patterns. Information Security will still need to vet all connection points and Solutions Consultants will be available to assist with implementation.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF I would suggest rephrasing the "assist with implementation" part to emphasize that while we can advise on certain aspects related to integration architecture, ultimately the customer technical teams are the ones who know their environment best. Outside of advising, there are additional considerations on our end wrt additional configuration paths we can take, but any action is limited to subsystems and environments managed by Braze.


## If Customer Engagement Platform is SFMC or Klaviyo

Decisioning Studio also supports native integrations with SFMC and Klaviyo. For SFMC, for example, Decisioning Studio triggers API events into a journey with data required to populate dynamic elements.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF given that we're providing an example for SFMC, should we give one for Klaviyo as well?

| Requirements | Why? |
|-------------|------|
| Each record contains a unique customer identifier that is consistent with all data assets | Decisioning Studio needs to be able track the individual customer journey from recommendation, through activation, to conversion. |
| Each record has an associated timestamp. | Understanding the time between communication and sequence of customer actions is extremely important for model training and metric calculation. |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF I know we've used agent throughout the docs - should we replace model with agent in this instance as well?


## Step 2: Send additional customer data to Decisioning Studio

In order to effectively personalize customer engagement, agents need to understand as much as possible about your customers. This data should be sent along with the audience definition, and all data should map onto a single customer identifier field.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF see my previous comments on customer vs. user - we should align the language across the docs


The following customer data assets are important to consider:

* **[Required]** Conversions – needed to train AI models and calculate the success metric. Should include the value of each conversion (e.g., revenue) if relevant. This is especially important for establishing the self-learning feedback loop for agents. For more information on how to properly validate, consider the [Close the AI Decisioning Loop]({{site.baseurl}}/user_guide/brazeai/decisioning_studio/decisioning_studio_pro/create_feedback_loop/) section.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF should we refer to Decisioning Studio AI models as agents here as well?


### Best practices

* Customer data should have descriptive column names
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF I don't know if this is the right spot to call it, but ideally our customers should also share a data dictionary describing all the data we are ingesting from their subsystems


If there is customer data that you would want to use for Decisioning Studio that is not currently stored in the Customer Profile or Custom Attributes, the recommended approach is to use [Braze Cloud Data Ingestion]({{site.baseurl}}/user_guide/data/unification/cloud_ingestion) to ingest data from other sources.

CDI supports any of direct integrations, including:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF I assume this was supposed to be [...] supports any of the following direct integrations:?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF also, maybe instead of hardcoding the name of the platforms, why not instead link to the official Braze docs page for CDI? that way we don't need to manually update this page whenever a new integration source is added to CDI


### Setting up an SFMC app package

To use Salesforce Marketing Cloud for BrazeAI Decisioning Studio™ Go, you must set up an app package in Salesforce Marketing Cloud.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chriswickhamOF we should update this line so that it references an installed app package - that's the official name of the credentials object.

…o_pro/configure_orchestration.md

Co-authored-by: kristinabrantley <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants