-
Notifications
You must be signed in to change notification settings - Fork 84
Decisioning studio docs update - adding PRo docs #11398
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
Making updates to the About page
Updated the language for clarity and added structured steps for setting up Decisioning Studio Pro agents.
….com/braze-inc/braze-docs into chris-decisioning-studio-docs-update
….com/braze-inc/braze-docs into chris-decisioning-studio-docs-update
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.
|
🤖 Automated Reviewer Assignment: I have automatically added reviewers based on the following:
|
_docs/_user_guide/brazeai/decisioning_studio/decisioning_studio_pro/configure_orchestration.md
Outdated
Show resolved
Hide resolved
|
|
||
| Go to **Settings** > **API Keys**, then create a new key with the following permissions: | ||
|
|
||
| {% multi_lang_include decisioning_studio/api_key_permissions.md %} |
There was a problem hiding this comment.
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. |
There was a problem hiding this comment.
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. |
There was a problem hiding this comment.
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?
| 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: |
There was a problem hiding this comment.
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
| 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: |
|
|
||
|  | ||
|
|
||
| #### Example #2: Push campaign |
There was a problem hiding this comment.
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
There was a problem hiding this comment.
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/) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 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. |
There was a problem hiding this comment.
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")
|
|
||
|  | ||
|
|
||
| Might be used to optimze an email campaign that looks like the following: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 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. |
There was a problem hiding this comment.
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. |
There was a problem hiding this comment.
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 |
There was a problem hiding this comment.
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. |
There was a problem hiding this comment.
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.
_docs/_user_guide/brazeai/decisioning_studio/decisioning_studio_pro/configure_orchestration.md
Outdated
Show resolved
Hide resolved
|
|
||
| ## 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. |
There was a problem hiding this comment.
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. | |
There was a problem hiding this comment.
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. |
There was a problem hiding this comment.
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. |
There was a problem hiding this comment.
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 |
There was a problem hiding this comment.
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: |
There was a problem hiding this comment.
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:?
There was a problem hiding this comment.
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. |
There was a problem hiding this comment.
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]>
Why are you making this change? (required)
Your reason here...
Related PRs, issues, or features (optional)
Feature release date (optional)
Contributor checklist
Submitting for review
If your PR meets the above requirements, select Ready for review, then add a reviewer:
@braze-inc/docs-teamin a comment below.braze-inc/docs-teaminstead.Thanks for contributing! We look forward to reading your work.