From 8e085dd928bb92fc536a82d2e14d422bdab3026e Mon Sep 17 00:00:00 2001 From: Varadarajan V <109586712+varadarajan-tw@users.noreply.github.com> Date: Mon, 28 Jul 2025 10:59:32 +0530 Subject: [PATCH 01/28] Facebook Custom Audiences update --- .../index.md | 40 ++++++++++++++++--- 1 file changed, 34 insertions(+), 6 deletions(-) diff --git a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md index 5fbf9c529f..0a47ba69e1 100644 --- a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md +++ b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md @@ -16,22 +16,23 @@ hide_action: Deliver effective Facebook Ads campaigns by defining and syncing [custom audiences](https://developers.facebook.com/docs/marketing-api/audiences/guides/custom-audiences){:target="_blank”} to power ad suppression, acquisition (using lookalikes), retargeting, and more. -This destination sends audiences, or lists of users, from your data warehouse to Facebook Custom Audiences using Reverse ETL. Syncs can add or remove users from your Facebook Custom Audiences as records are created, updated, or deleted in your warehouse. - -> info "This destination only supports Reverse ETL sources" -> This destination only supports [Reverse ETL sources](/docs/connections/reverse-etl/#what-warehouse-data-sources-does-segment-support). To connect Facebook Custom Audiences to Twilio Engage, use the [Facebook Custom Audiences](/docs/connections/destinations/catalog/personas-facebook-custom-audiences/) destination. +This destination sends audiences, or lists of users, to Facebook Custom Audiences. You can connect this destination to Reverse ETL sources to sync data from your warehouse, or to Engage Audiences to sync computed audiences. ## Getting started ### Prerequisites -- A Reverse ETL source already set up. If you don't yet have a Reverse ETL source, follow the instructions in Segment's [Reverse ETL documentation](/docs/connections/reverse-etl/#getting-started). Segment recommends setting an [External ID](#sync-audience) as the primary key for your Reverse ETL model, as you'll need an External ID to remove users from your custom audiences. + +- A source already set up: + - For Reverse ETL: If you don't yet have a Reverse ETL source, follow the instructions in Segment's [Reverse ETL documentation](/docs/connections/reverse-etl/#getting-started). Segment recommends setting an [External ID](#sync-audience) as the primary key for your Reverse ETL model, as you'll need an External ID to remove users from your custom audiences. + - For Engage Audiences: An [Engage Audience](/docs/engage/audiences/) configured which you can connect to this destination. - A Facebook account with [ads_management](https://developers.facebook.com/docs/permissions#ads_management){:target="_blank”} permissions for the target Facebook Ad Account(s). The Facebook Ad Account(s) must also be associated with a [Facebook Business Account](https://www.facebook.com/business/help/407323696966570?id=649869995454285){:target="_blank”}. - Ensure that the user connecting to the destination using OAuth has at least an *Advertiser* or *Admin* role on the ad account. To manage permissions and roles for an ad account, reference [Facebook's documentation](https://www.facebook.com/business/help/186007118118684?id=829106167281625){:target="_blank"}. ### Connect to Facebook Custom Audiences + 1. From your Segment app, navigate to **Catalog > Destinations** and search for "Facebook Custom Audiences (Actions)". 2. Select the Facebook Custom Audiences (Actions) destination and click **Add destination**. -3. Select the Reverse ETL source you'd like to connect to your Facebook Custom Audiences (Actions) Destination and click **Next**. +3. Select the source you'd like to connect to your Facebook Custom Audiences (Actions) Destination and click **Next**. 4. Enter a name for your destination and click **Create destination**. 5. Navigate to your destination's settings page and click **Connect to...** to authenticate with Facebook. 6. Return to the Segment app and enter your Advertiser Account ID. See Facebook's [Find your Facebook ad account ID number](https://www.facebook.com/business/help/1492627900875762){:target="_blank”} documentation for more information. @@ -123,6 +124,33 @@ Segment automatically hashes any of the following fields that are not already SH * Gender +## Additional Traits Matching + +> info "" +> This feature is in Public Preview and usage is subject to the terms contained in the [First Access and Beta Preview Terms](https://segment.com/legal/first-access-beta-preview/){:target="_blank"}. For access, contact your CSM or email Segment at [friends@segment.com](mailto:friends@segment.com). + +Previously, Segment only sent email and mobile IDs to Facebook. A new beta feature can send an expanded list of identifiers or traits to Facebook, so that Facebook can try to use these additional data points to match to their user profiles. If you have this feature enabled and implemented any of these traits in your Segment tracking, the Facebook Custom Audiences (Actions) can send this data to Facebook. Segment can now also sync multiple emails if the profile contains more than one. Additionally as part of this feature, Segment hashes fields before sending them downstream to Facebook, if required. (See the table below for hashing requirements.) Note that the trait data implemented in your Segment tracking must match the naming convention and format specified in the table below, otherwise Segment can't send it to Facebook. + +> success "" +> Visit Segment's [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) to learn more. + + +| **Name** | **Trait Key formats supported** | **Facebook Keys** | **FB Hashing Required** | **FB Guidelines** | +| Email | email | EMAIL | Yes (Segment does the hashing for you. In case you are *already* hashing emails, emails will get sent to Facebook double-hashed. Facebook will still match on double-hashed emails, but this is *not* recommended.) | Trim leading, trail whitespace, and convert all characters to lowercase. | +| Mobile ID | mobile_id | MADID | No | Use all lowercase, keep hyphens. | +| First Name | first_name
firstname
firstName
first | FN | Yes | Use `a`-`z` only. Lowercase only, no punctuation. Special characters in UTF8 format. | +| Last Name | last_name
lastname
lastName
last | LN | Yes | Use `a`-`z` only. Lowercase only, no punctuation. Special characters in UTF8 format. | +| Phone | phone
phone_number
phonenumber
phoneNumber | PHONE (+12023095976) | Yes | Remove symbols, letters, and any leading zeroes. You should prefix the country code if `COUNTRY` field is not specified. | +| Gender | gender
gen | GEN | Yes | Use these values: `m` for male and `f` for female. | +| Birth Year | birth_year | DOBY | Yes | Use the YYYY format from 1900 to current year. | +| Birth Month | birth_month | DOBM | Yes | Use the MM format: `01` to `12`. | +| Birth Day | birthday
birth_day
date_of_birth
DOB
dateOfBirth | DOBD | Yes | Use the DD format: `01` to `31`. | +| State | state
address_state | ST | Yes | Use the 2-character ANSI abbreviation code, lowercase. Normalize states outside U.S. in lowercase, no punctuation, no special characters, no white space. | +| City | city
address_city | CT | Yes | Use `a`-`z` only. Lowercase only, no punctuation, no special characters, no white space. | +| Zipcode | zip
zip_code
zipCode | ZIP | Yes | Use lowercase, no white space. Use only the first 5 digits for U.S. Use Area/District/Sector format for the UK. | +| Country | country_code
countryCode | COUNTRY | Yes | Use 2-letter country codes (lowercase) in ISO 3166-1 alpha-2. | + + ## FAQs and troubleshooting ### Audience not creating and/or existing audience list not populating From 3006aea1631394b563c0a094b8fc0e29bf69494e Mon Sep 17 00:00:00 2001 From: Varadarajan V <109586712+varadarajan-tw@users.noreply.github.com> Date: Mon, 28 Jul 2025 11:08:06 +0530 Subject: [PATCH 02/28] Trait encrihment updates --- .../index.md | 25 +------------------ .../index.md | 8 +----- 2 files changed, 2 insertions(+), 31 deletions(-) diff --git a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md index 0a47ba69e1..d44547c6e5 100644 --- a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md +++ b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md @@ -126,30 +126,7 @@ Segment automatically hashes any of the following fields that are not already SH ## Additional Traits Matching -> info "" -> This feature is in Public Preview and usage is subject to the terms contained in the [First Access and Beta Preview Terms](https://segment.com/legal/first-access-beta-preview/){:target="_blank"}. For access, contact your CSM or email Segment at [friends@segment.com](mailto:friends@segment.com). - -Previously, Segment only sent email and mobile IDs to Facebook. A new beta feature can send an expanded list of identifiers or traits to Facebook, so that Facebook can try to use these additional data points to match to their user profiles. If you have this feature enabled and implemented any of these traits in your Segment tracking, the Facebook Custom Audiences (Actions) can send this data to Facebook. Segment can now also sync multiple emails if the profile contains more than one. Additionally as part of this feature, Segment hashes fields before sending them downstream to Facebook, if required. (See the table below for hashing requirements.) Note that the trait data implemented in your Segment tracking must match the naming convention and format specified in the table below, otherwise Segment can't send it to Facebook. - -> success "" -> Visit Segment's [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) to learn more. - - -| **Name** | **Trait Key formats supported** | **Facebook Keys** | **FB Hashing Required** | **FB Guidelines** | -| Email | email | EMAIL | Yes (Segment does the hashing for you. In case you are *already* hashing emails, emails will get sent to Facebook double-hashed. Facebook will still match on double-hashed emails, but this is *not* recommended.) | Trim leading, trail whitespace, and convert all characters to lowercase. | -| Mobile ID | mobile_id | MADID | No | Use all lowercase, keep hyphens. | -| First Name | first_name
firstname
firstName
first | FN | Yes | Use `a`-`z` only. Lowercase only, no punctuation. Special characters in UTF8 format. | -| Last Name | last_name
lastname
lastName
last | LN | Yes | Use `a`-`z` only. Lowercase only, no punctuation. Special characters in UTF8 format. | -| Phone | phone
phone_number
phonenumber
phoneNumber | PHONE (+12023095976) | Yes | Remove symbols, letters, and any leading zeroes. You should prefix the country code if `COUNTRY` field is not specified. | -| Gender | gender
gen | GEN | Yes | Use these values: `m` for male and `f` for female. | -| Birth Year | birth_year | DOBY | Yes | Use the YYYY format from 1900 to current year. | -| Birth Month | birth_month | DOBM | Yes | Use the MM format: `01` to `12`. | -| Birth Day | birthday
birth_day
date_of_birth
DOB
dateOfBirth | DOBD | Yes | Use the DD format: `01` to `31`. | -| State | state
address_state | ST | Yes | Use the 2-character ANSI abbreviation code, lowercase. Normalize states outside U.S. in lowercase, no punctuation, no special characters, no white space. | -| City | city
address_city | CT | Yes | Use `a`-`z` only. Lowercase only, no punctuation, no special characters, no white space. | -| Zipcode | zip
zip_code
zipCode | ZIP | Yes | Use lowercase, no white space. Use only the first 5 digits for U.S. Use Area/District/Sector format for the UK. | -| Country | country_code
countryCode | COUNTRY | Yes | Use 2-letter country codes (lowercase) in ISO 3166-1 alpha-2. | - +Segment [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) allows you to send an expanded list of identifiers or traits to Facebook, so that Facebook can try to use these additional data points to match to their user profiles. If you have this feature enabled and implemented any of these traits in your Segment tracking, the Facebook Custom Audiences (Actions) can send this data to Facebook. Segment can now also sync multiple emails if the profile contains more than one. Additionally as part of this feature, Segment hashes fields before sending them downstream to Facebook, if required as described in [Hashing](#hashing)section. ## FAQs and troubleshooting diff --git a/src/connections/destinations/catalog/personas-facebook-custom-audiences/index.md b/src/connections/destinations/catalog/personas-facebook-custom-audiences/index.md index c778b278e7..a795b65e6d 100644 --- a/src/connections/destinations/catalog/personas-facebook-custom-audiences/index.md +++ b/src/connections/destinations/catalog/personas-facebook-custom-audiences/index.md @@ -107,13 +107,7 @@ Once created, the audience should be available in Facebook in ten minutes unless ## Additional Traits Matching -> info "" -> This feature is in Public Preview and usage is subject to the terms contained in the [First Access and Beta Preview Terms](https://segment.com/legal/first-access-beta-preview/){:target="_blank"}{:target="_blank"}. For access, contact your CSM or email Segment at [friends@segment.com](mailto:friends@segment.com). - -Previously, Segment only sent email and mobile IDs to Facebook. A new beta feature can send an expanded list of identifiers or traits to Facebook, so that Facebook can try to use these additional data points to match to their user profiles. If you have this feature enabled and implemented any of these traits in your Segment tracking, Engage can send this data to Facebook. Segment can now also sync multiple emails if the profile contains more than one. Additionally as part of this feature, Segment hashes fields before sending them downstream to Facebook, if required. (See the table below for hashing requirements.) Note that the trait data implemented in your Segment tracking must match the naming convention and format specified in the table below, otherwise Segment can't send it to Facebook. - -> success "" -> Visit Segment's [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) to learn more. +[Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) allows you to send an expanded list of identifiers or traits to Facebook, so that Facebook can try to use these additional data points to match to their user profiles. If you have this feature enabled and implemented any of these traits in your Segment tracking, Engage can send this data to Facebook. Segment can now also sync multiple emails if the profile contains more than one. Additionally as part of this feature, Segment hashes fields before sending them downstream to Facebook, if required. (See the table below for hashing requirements.) Note that the trait data implemented in your Segment tracking must match the naming convention and format specified in the table below, otherwise Segment can't send it to Facebook. | **Name** | **Trait Key formats supported** | **Facebook Keys** | **FB Hashing Required** | **FB Guidelines** | From 4b6134c6e53d38b9b66b873a3515d1682f21f8b3 Mon Sep 17 00:00:00 2001 From: motasem-userpilot Date: Mon, 28 Jul 2025 15:56:18 +0300 Subject: [PATCH 03/28] Userpilot mobile destination --- .../catalog/userpilot-mobile/index.md | 83 +++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 src/connections/destinations/catalog/userpilot-mobile/index.md diff --git a/src/connections/destinations/catalog/userpilot-mobile/index.md b/src/connections/destinations/catalog/userpilot-mobile/index.md new file mode 100644 index 0000000000..6f33df12b3 --- /dev/null +++ b/src/connections/destinations/catalog/userpilot-mobile/index.md @@ -0,0 +1,83 @@ +--- +title: Userpilot Mobile (Device Mode) Destination +--- + +Userpilot helps product teams deliver personalized in-app experiences to increase growth metrics at every stage of the user journey. When you integrate Userpilot with Segment, you can send your Segment events to Userpilot, allowing you to create more personalized experiences for your users across the product lifecycle. + +[Userpilot](https://www.userpilot.com/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners){:target="_blank"} provides in-app guidance, product tours, and contextual onboarding experiences to help teams activate users and drive feature adoption. + +This destination is maintained by Userpilot. For any issues with the destination, [contact the Userpilot Support team](mailto:support@userpilot.com). + +## Getting started + +1. From your workspace's [Destination catalog page](https://app.segment.com/goto-my-workspace/destinations/catalog){:target="_blank"}, search for "Userpilot Mobile (Device Mode)". +2. Select **Userpilot Mobile** and click **Add Destination**. +3. Select an existing Source to connect to Userpilot. +4. Go to the [Userpilot installation dashboard](https://run.userpilot.io/installation){:target="_blank"}, and copy your **App Token**. +5. Enter the **App Token** in the Userpilot destination settings in Segment. + +## Supported methods + +Userpilot supports the following methods, as specified in the [Segment Spec](/docs/connections/spec). + +### Identify + +Send [Identify](/docs/connections/spec/identify) calls to associate a user with traits. These are used for segmentation, personalization, and lifecycle targeting. + +```swift +analytics.identify(userId: "", traits: [ + "email": "john.doe@example.com", + "name": "John Doe", + "plan": "Pro", + "createdAt": "2023-08-01T00:00:00Z" +]) +``` + +Calling `identify` from `Segment` will trigger the `userpilot.identify`. Segment recommends passing as much data as possible to get the most out of Userpilot. + +Data passed in an Identify call can be organized under different categories. +* Properties about the user such as `plan` or `userRole` to help targeting a specifc segment +* Properties to personalize the content of the Userpilot experiences, such as `name` or `company` +* Properties to target users based on their lifecycle, such as `createdAt`, which allows you to target newly created accounts or accounts that have yet to achieve a certain feature in the user lifecyle + +These appear within the Userpilot user dashboard and power audience segmentation and targeting. + + +### Group +Send [Group](/docs/connections/spec/group) calls to associate users with an account, organization, or project. + +```swift +analytics.group(groupId: "", traits: [ + "companyName": "Acme Inc.", + "subscriptionTier": "Enterprise" +]) +``` + +Segment sends Group calls to Userpilot as a `userpilot.identify` update with company-level traits, allowing you to use company metadata in targeting logic. + + +### Screen +Send [Screen](/docs/connections/spec/screen) calls to track navigation or screen changes in mobile apps. + +```swift +analytics.screen(title: "Home") +``` + +Segment sends Screen calls to Userpilot as a `userpilot.screen` event. This allows Userpilot to: +* Trigger relevant experiences configured for specific pages/screens. +* Check for ongoing experiences already running. + + +### Track + +Send [Track](/docs/connections/spec/track) calls to log user actions or custom events. + +```swift +analytics.track(name: "Button Clicked", properties: [ + "buttonColor": "green" +]) +``` + +Segment sends Track calls to Userpilot as `userpilot.track`. These custom events can be used to: +* Trigger specific experiences (e.g., a Caroucel or Survey) +* Monitor user behavior for analytics or lifecycle targeting \ No newline at end of file From 8f81a2c5d773cb7351f6eb843720ba23f8e5e6eb Mon Sep 17 00:00:00 2001 From: wilwong-twilio <109997887+wilwong-twilio@users.noreply.github.com> Date: Wed, 30 Jul 2025 09:18:19 -0700 Subject: [PATCH 04/28] Update index.md --- src/engage/audiences/index.md | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/engage/audiences/index.md b/src/engage/audiences/index.md index 8b23b00bdb..3b1300dc35 100644 --- a/src/engage/audiences/index.md +++ b/src/engage/audiences/index.md @@ -109,6 +109,18 @@ Dynamic Property references give you more flexibility over funnel audiences. Ins ![Using dynamic property references with an Audience funnel](/docs/engage/images/dynamic_property_audiences1.png) +### Audience previews +After configuring your audience definition, use the **Preview** button to review your audience setup. It shows the total number of profiles that match your criteria and a sample list of those profiles, helping you confirm the audience is correct before launching campaigns. Previews are only available if your audience uses historical data, displaying the current size based on past data. To learn more about the Include Historical Data option, see here https://segment.com/docs/engage/audiences/#how-does-the-historical-data-flag-work. The audience will grow as new profiles meet your criteria. Click any profile in the sample list to view a detailed side sheet with their attributes, making it easy to verify membership. This feature simplifies campaign planning and ensures your audience targets the right profiles. + +#### Identifier breakdown +To check how profiles in your audience are identified, first click **Preview** to view your audience configuration. In the Preview results, navigate to the **Insights** tab (next to the **Users** tab) to see a breakdown of the percentage of profiles associated with each external_id in the audience. These are the default IDs that Segment includes in the Identity resolution configuration. Segment displays the percentage of the audience with each identifier, which you can use to verify the audience size and profiles are correct. The update of identifier breakdowns on profiles doesn't occur in real time. + +> info "" +> The Identifier Breakdown doesn't show custom IDs included in the Identity resolution configuration unless those IDs are explicitly selected through [ID sync](/docs/engage/trait-activation/id-sync/). By default, Segment only displays external IDs in the breakdown. + +#### Audience overlap +To check how your audience intersects with others in your Segment space, first click **Preview** to view your audience configuration. In the Preview results, navigate to the **Insights** tab (next to the **Users** tab). In the Insights tab, select an existing audience from the dropdown menu and click **Compute overlap** to see the number of shared profiles. This feature optimizes campaign targeting by identifying redundant audiences and refining segmentation. + ### Account-level audiences If you have a B2B business, you might want to build an Audience of accounts. You can use both account-level traits that you've sent through the [Group](/docs/connections/spec/group) call, or user-level traits and events. For example, you might want to re-engage a list of at-risk accounts defined as companies which are on a business tier plan and where none of the users in that account have logged in recently. When incorporating user-level events or traits, you can specify `None of the users`, `Any users`, or `All users`. @@ -398,13 +410,6 @@ Note the following limits for the CSV downloader: > warning "" > You can't add account traits and identifiers using the CSV downloader with account level audiences. This is because every row listed in the CSV file is a user, and since account traits and identifiers only exist on accounts, they wouldn't exist as a user's custom trait and appear on the CSV. -## Identifier Breakdown - -The audience summary is a breakdown of the percentages of external_ids of users in the audience. These are the default IDs that Segment includes in the Identity resolution configuration. Segment displays the percentage of the audience with each identifier, which you can use to verify the audience size and profiles are correct. The update of identifier breakdowns on profiles doesn't occur in real time. - -> info "" -> The Identifier Breakdown doesn't show custom IDs included in the Identity resolution configuration unless those IDs are explicitly selected through [ID sync](/docs/engage/trait-activation/id-sync/). By default, Segment only displays external IDs in the breakdown. - ## FAQ ### Why do I get a different user count when I use `$` on a field?** From 576fc6c4cbffc75e23c67e5ab0441c795d88f72d Mon Sep 17 00:00:00 2001 From: wilwong-twilio <109997887+wilwong-twilio@users.noreply.github.com> Date: Wed, 30 Jul 2025 09:23:31 -0700 Subject: [PATCH 05/28] Update index.md --- src/engage/audiences/index.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/engage/audiences/index.md b/src/engage/audiences/index.md index 3b1300dc35..410dd88d2a 100644 --- a/src/engage/audiences/index.md +++ b/src/engage/audiences/index.md @@ -112,6 +112,9 @@ Dynamic Property references give you more flexibility over funnel audiences. Ins ### Audience previews After configuring your audience definition, use the **Preview** button to review your audience setup. It shows the total number of profiles that match your criteria and a sample list of those profiles, helping you confirm the audience is correct before launching campaigns. Previews are only available if your audience uses historical data, displaying the current size based on past data. To learn more about the Include Historical Data option, see here https://segment.com/docs/engage/audiences/#how-does-the-historical-data-flag-work. The audience will grow as new profiles meet your criteria. Click any profile in the sample list to view a detailed side sheet with their attributes, making it easy to verify membership. This feature simplifies campaign planning and ensures your audience targets the right profiles. +> info "" +> Audience preview membership is calculated using data that may be slightly delayed from real-time processing, which can lead to temporary discrepancies between the preview results and the profile information shown in the profile side sheet or via the Profile API. + #### Identifier breakdown To check how profiles in your audience are identified, first click **Preview** to view your audience configuration. In the Preview results, navigate to the **Insights** tab (next to the **Users** tab) to see a breakdown of the percentage of profiles associated with each external_id in the audience. These are the default IDs that Segment includes in the Identity resolution configuration. Segment displays the percentage of the audience with each identifier, which you can use to verify the audience size and profiles are correct. The update of identifier breakdowns on profiles doesn't occur in real time. From 7b659ca14c9137866a8a44ef4ced298fc0ef6c80 Mon Sep 17 00:00:00 2001 From: motasem-userpilot Date: Thu, 31 Jul 2025 09:37:09 +0300 Subject: [PATCH 06/28] =?UTF-8?q?=F0=9F=93=9D=20Update=20index.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../catalog/userpilot-mobile/index.md | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/src/connections/destinations/catalog/userpilot-mobile/index.md b/src/connections/destinations/catalog/userpilot-mobile/index.md index 6f33df12b3..068b5d1b7f 100644 --- a/src/connections/destinations/catalog/userpilot-mobile/index.md +++ b/src/connections/destinations/catalog/userpilot-mobile/index.md @@ -2,15 +2,15 @@ title: Userpilot Mobile (Device Mode) Destination --- -Userpilot helps product teams deliver personalized in-app experiences to increase growth metrics at every stage of the user journey. When you integrate Userpilot with Segment, you can send your Segment events to Userpilot, allowing you to create more personalized experiences for your users across the product lifecycle. +Userpilot helps product teams deliver personalized in-app experiences to increase growth metrics at every stage of the user journey. When you integrate Userpilot with Segment, you can send your Segment events to Userpilot, enabling you to create more personalized experiences for your users across the product lifecycle. [Userpilot](https://www.userpilot.com/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners){:target="_blank"} provides in-app guidance, product tours, and contextual onboarding experiences to help teams activate users and drive feature adoption. -This destination is maintained by Userpilot. For any issues with the destination, [contact the Userpilot Support team](mailto:support@userpilot.com). +Userpilot maintains this destination. For any issues with the destination, [contact the Userpilot Support team](mailto:support@userpilot.com). ## Getting started -1. From your workspace's [Destination catalog page](https://app.segment.com/goto-my-workspace/destinations/catalog){:target="_blank"}, search for "Userpilot Mobile (Device Mode)". +1. From your workspace's [Destination catalog page](https://app.segment.com/goto-my-workspace/destinations/catalog){:target="_blank"}, search for *Userpilot Mobile (Device Mode)*. 2. Select **Userpilot Mobile** and click **Add Destination**. 3. Select an existing Source to connect to Userpilot. 4. Go to the [Userpilot installation dashboard](https://run.userpilot.io/installation){:target="_blank"}, and copy your **App Token**. @@ -29,19 +29,18 @@ analytics.identify(userId: "", traits: [ "email": "john.doe@example.com", "name": "John Doe", "plan": "Pro", - "createdAt": "2023-08-01T00:00:00Z" + "createdAt": "2019-10-17" ]) ``` -Calling `identify` from `Segment` will trigger the `userpilot.identify`. Segment recommends passing as much data as possible to get the most out of Userpilot. +Calling Identify from Segment triggers `userpilot.identify`. Segment recommends passing as much data as possible to get the most out of Userpilot. -Data passed in an Identify call can be organized under different categories. -* Properties about the user such as `plan` or `userRole` to help targeting a specifc segment +Data passed in an Identify call can be organized under these different categories: +* Properties about the user such as `plan` or `userRole` help target a specific segment * Properties to personalize the content of the Userpilot experiences, such as `name` or `company` -* Properties to target users based on their lifecycle, such as `createdAt`, which allows you to target newly created accounts or accounts that have yet to achieve a certain feature in the user lifecyle - -These appear within the Userpilot user dashboard and power audience segmentation and targeting. +* Properties to target users based on their lifecycle, such as `createdAt`, which allows you to target newly created accounts or accounts that have yet to achieve a certain feature in the user lifecycle +These appear within Userpilot's user dashboard and power audience segmentation and targeting. ### Group Send [Group](/docs/connections/spec/group) calls to associate users with an account, organization, or project. @@ -53,7 +52,7 @@ analytics.group(groupId: "", traits: [ ]) ``` -Segment sends Group calls to Userpilot as a `userpilot.identify` update with company-level traits, allowing you to use company metadata in targeting logic. +Calling Group from Segment triggers `userpilot.identify` with company-level traits, allowing you to use company metadata in targeting logic. ### Screen @@ -63,7 +62,7 @@ Send [Screen](/docs/connections/spec/screen) calls to track navigation or screen analytics.screen(title: "Home") ``` -Segment sends Screen calls to Userpilot as a `userpilot.screen` event. This allows Userpilot to: +Calling Screen from Segment triggers `userpilot.screen` event. This allows Userpilot to: * Trigger relevant experiences configured for specific pages/screens. * Check for ongoing experiences already running. @@ -73,11 +72,12 @@ Segment sends Screen calls to Userpilot as a `userpilot.screen` event. This allo Send [Track](/docs/connections/spec/track) calls to log user actions or custom events. ```swift -analytics.track(name: "Button Clicked", properties: [ - "buttonColor": "green" +analytics.track(name: "Added to Cart", properties: [ + "itemId" : "sku_456", + "price" : 29.99 ]) ``` -Segment sends Track calls to Userpilot as `userpilot.track`. These custom events can be used to: -* Trigger specific experiences (e.g., a Caroucel or Survey) +Calling Track from Segment triggers `userpilot.track`. These custom events can be used to: +* Trigger specific experiences (for example, a Carousel or Survey) * Monitor user behavior for analytics or lifecycle targeting \ No newline at end of file From 729e3aac4d10dad9f795595abe9f3121dbeb6952 Mon Sep 17 00:00:00 2001 From: Arnav Dev Date: Thu, 31 Jul 2025 20:36:19 +0530 Subject: [PATCH 07/28] fix: add empty array check to defaultValue --- src/_includes/content/destination-footer.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_includes/content/destination-footer.md b/src/_includes/content/destination-footer.md index 8c5e0c3864..13fd3de1fe 100644 --- a/src/_includes/content/destination-footer.md +++ b/src/_includes/content/destination-footer.md @@ -36,7 +36,7 @@ Segment lets you change these destination settings from the Segment app without {% unless item.deprecated == true %} {{item.label}}{% if item.required == true %}
(required){%endif%} -{{item.type}}{% if item.defaultValue != null and item.defaultValue != "" and item.defaultValue != '{}'%}, defaults to {%if item.type == "array" %}{{item.defaultValue | join: ", " }}{%elsif item.type == "string"%}{{item.defaultValue}} {%elsif item.type == "boolean" %} {{item.defaultValue | upcase }} {%else%} {{item.defaultValue}}{%endif%}.

{%else%}. {% endif %}{{item.description}} +{{item.type}}{% if item.defaultValue != null and item.defaultValue != "" and item.defaultValue != '{}' and item.defaultValue != '[]'%}, defaults to {%if item.type == "array" %}{{item.defaultValue | join: ", " }}{%elsif item.type == "string"%}{{item.defaultValue}} {%elsif item.type == "boolean" %} {{item.defaultValue | upcase }} {%else%} {{item.defaultValue}}{%endif%}.

{%else%}. {% endif %}{{item.description}} From b2cded3123f60cdb23887c78c63b6f243a9b2204 Mon Sep 17 00:00:00 2001 From: forstisabella <92472883+forstisabella@users.noreply.github.com> Date: Fri, 1 Aug 2025 15:14:24 -0400 Subject: [PATCH 08/28] fixedit --- src/_includes/content/destination-footer.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_includes/content/destination-footer.md b/src/_includes/content/destination-footer.md index 13fd3de1fe..c54bd3ed9a 100644 --- a/src/_includes/content/destination-footer.md +++ b/src/_includes/content/destination-footer.md @@ -36,7 +36,7 @@ Segment lets you change these destination settings from the Segment app without {% unless item.deprecated == true %} {{item.label}}{% if item.required == true %}
(required){%endif%} -{{item.type}}{% if item.defaultValue != null and item.defaultValue != "" and item.defaultValue != '{}' and item.defaultValue != '[]'%}, defaults to {%if item.type == "array" %}{{item.defaultValue | join: ", " }}{%elsif item.type == "string"%}{{item.defaultValue}} {%elsif item.type == "boolean" %} {{item.defaultValue | upcase }} {%else%} {{item.defaultValue}}{%endif%}.

{%else%}. {% endif %}{{item.description}} +{{ item.type }}{% unless item.defaultValue != nil and item.defaultValue != "" and item.defaultValue.size != 0 %}, has no default value.

{% else %}, defaults to {% if item.type == "array" %}{{ item.defaultValue | join: ", " }}{% elsif item.type == "string" %}{{ item.defaultValue }}{% elsif item.type == "boolean" %}{{ item.defaultValue | upcase }}{% endif %}.

{% endunless %}{{ item.description }} From 1b30ccc96b2cdfcbe4dea1b0e5d5317946f21027 Mon Sep 17 00:00:00 2001 From: Varadarajan V <109586712+varadarajan-tw@users.noreply.github.com> Date: Mon, 4 Aug 2025 12:04:54 +0530 Subject: [PATCH 09/28] Update src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md Co-authored-by: forstisabella <92472883+forstisabella@users.noreply.github.com> --- .../catalog/actions-facebook-custom-audiences/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md index d44547c6e5..a98cd4cb26 100644 --- a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md +++ b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md @@ -22,9 +22,9 @@ This destination sends audiences, or lists of users, to Facebook Custom Audience ### Prerequisites -- A source already set up: +- A source already set up. - For Reverse ETL: If you don't yet have a Reverse ETL source, follow the instructions in Segment's [Reverse ETL documentation](/docs/connections/reverse-etl/#getting-started). Segment recommends setting an [External ID](#sync-audience) as the primary key for your Reverse ETL model, as you'll need an External ID to remove users from your custom audiences. - - For Engage Audiences: An [Engage Audience](/docs/engage/audiences/) configured which you can connect to this destination. + - For Engage Audiences: An [Engage Audience](/docs/engage/audiences/) that you can connect to this destination. - A Facebook account with [ads_management](https://developers.facebook.com/docs/permissions#ads_management){:target="_blank”} permissions for the target Facebook Ad Account(s). The Facebook Ad Account(s) must also be associated with a [Facebook Business Account](https://www.facebook.com/business/help/407323696966570?id=649869995454285){:target="_blank”}. - Ensure that the user connecting to the destination using OAuth has at least an *Advertiser* or *Admin* role on the ad account. To manage permissions and roles for an ad account, reference [Facebook's documentation](https://www.facebook.com/business/help/186007118118684?id=829106167281625){:target="_blank"}. From 42b788497100cb1a2b9c832e0085e6056b68125a Mon Sep 17 00:00:00 2001 From: Varadarajan V <109586712+varadarajan-tw@users.noreply.github.com> Date: Mon, 4 Aug 2025 12:05:01 +0530 Subject: [PATCH 10/28] Update src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md Co-authored-by: forstisabella <92472883+forstisabella@users.noreply.github.com> --- .../catalog/actions-facebook-custom-audiences/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md index a98cd4cb26..2e1995979b 100644 --- a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md +++ b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md @@ -124,7 +124,7 @@ Segment automatically hashes any of the following fields that are not already SH * Gender -## Additional Traits Matching +## Additional trait matching Segment [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) allows you to send an expanded list of identifiers or traits to Facebook, so that Facebook can try to use these additional data points to match to their user profiles. If you have this feature enabled and implemented any of these traits in your Segment tracking, the Facebook Custom Audiences (Actions) can send this data to Facebook. Segment can now also sync multiple emails if the profile contains more than one. Additionally as part of this feature, Segment hashes fields before sending them downstream to Facebook, if required as described in [Hashing](#hashing)section. From ef0002a630b61c60ff78744259877ea870a502fe Mon Sep 17 00:00:00 2001 From: Varadarajan V <109586712+varadarajan-tw@users.noreply.github.com> Date: Mon, 4 Aug 2025 12:05:06 +0530 Subject: [PATCH 11/28] Update src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md Co-authored-by: forstisabella <92472883+forstisabella@users.noreply.github.com> --- .../catalog/actions-facebook-custom-audiences/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md index 2e1995979b..204e20c776 100644 --- a/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md +++ b/src/connections/destinations/catalog/actions-facebook-custom-audiences/index.md @@ -126,7 +126,7 @@ Segment automatically hashes any of the following fields that are not already SH ## Additional trait matching -Segment [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) allows you to send an expanded list of identifiers or traits to Facebook, so that Facebook can try to use these additional data points to match to their user profiles. If you have this feature enabled and implemented any of these traits in your Segment tracking, the Facebook Custom Audiences (Actions) can send this data to Facebook. Segment can now also sync multiple emails if the profile contains more than one. Additionally as part of this feature, Segment hashes fields before sending them downstream to Facebook, if required as described in [Hashing](#hashing)section. +Segment [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) allows you to send an expanded list of identifiers or traits to Facebook so that Facebook can try to use these additional data points to match to their user profiles. If you have this feature enabled and implemented any of these traits in your Segment tracking, the Facebook Custom Audiences (Actions) destination can send this data to Facebook. Segment can now also sync multiple emails if the profile contains more than one. Additionally as part of this feature, Segment hashes fields before sending them downstream to Facebook as described in the [Hashing](#hashing) section. ## FAQs and troubleshooting From 7da05d298483533b8d6fe3b34071304cb1ce8cbf Mon Sep 17 00:00:00 2001 From: motasem-userpilot Date: Mon, 4 Aug 2025 15:09:46 +0300 Subject: [PATCH 12/28] =?UTF-8?q?=F0=9F=93=9D=20Add=20Segment=20Destinatio?= =?UTF-8?q?n=20ID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/connections/destinations/catalog/userpilot-mobile/index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/src/connections/destinations/catalog/userpilot-mobile/index.md b/src/connections/destinations/catalog/userpilot-mobile/index.md index 068b5d1b7f..2b80633eb0 100644 --- a/src/connections/destinations/catalog/userpilot-mobile/index.md +++ b/src/connections/destinations/catalog/userpilot-mobile/index.md @@ -1,5 +1,6 @@ --- title: Userpilot Mobile (Device Mode) Destination +id: 68207e064c022255721ec2d3 --- Userpilot helps product teams deliver personalized in-app experiences to increase growth metrics at every stage of the user journey. When you integrate Userpilot with Segment, you can send your Segment events to Userpilot, enabling you to create more personalized experiences for your users across the product lifecycle. From ae9624031ee8a28f76120364d4cb586f83c7aab9 Mon Sep 17 00:00:00 2001 From: Joe Ayoub Date: Tue, 5 Aug 2025 10:26:46 +0100 Subject: [PATCH 13/28] Supporting RCS channel for Twilio Messaging Destination --- .../destinations/catalog/actions-twilio-messaging/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connections/destinations/catalog/actions-twilio-messaging/index.md b/src/connections/destinations/catalog/actions-twilio-messaging/index.md index 53f111b07a..a90746de5d 100644 --- a/src/connections/destinations/catalog/actions-twilio-messaging/index.md +++ b/src/connections/destinations/catalog/actions-twilio-messaging/index.md @@ -93,7 +93,7 @@ To configure the mapping: | Field | Description | Notes | | ------------------------- | --------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Channel** | Choose which channel to send the message on. | Options: SMS, MMS, and WhatsApp. | +| **Channel** | Choose which channel to send the message on. | Options: SMS, MMS, WhatsApp and RCS. If selecting RCS, ensure that RCS is enabled in your Twilio account. | | **Sender Type** | Pick how you want to send the message. | Options: Phone number or Messaging Service. Phone numbers must be approved in Twilio. | | **Content Template Type** | Select the type of content template. | Options include Inline or templates you’ve built in Twilio. Segment only shows templates that match your selected Channel and Template Type. | | **To Phone Number** | Enter the recipient’s phone number. | Must be in [E.164 format](https://www.twilio.com/docs/glossary/what-e164){:target="_blank"}. | From f2e9f57cb8711b10db7d85745450f146f1871638 Mon Sep 17 00:00:00 2001 From: Sharon Adewusi Date: Tue, 5 Aug 2025 13:39:31 +0100 Subject: [PATCH 14/28] comma added --- .../destinations/catalog/actions-twilio-messaging/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/connections/destinations/catalog/actions-twilio-messaging/index.md b/src/connections/destinations/catalog/actions-twilio-messaging/index.md index a90746de5d..282a97366d 100644 --- a/src/connections/destinations/catalog/actions-twilio-messaging/index.md +++ b/src/connections/destinations/catalog/actions-twilio-messaging/index.md @@ -93,7 +93,7 @@ To configure the mapping: | Field | Description | Notes | | ------------------------- | --------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Channel** | Choose which channel to send the message on. | Options: SMS, MMS, WhatsApp and RCS. If selecting RCS, ensure that RCS is enabled in your Twilio account. | +| **Channel** | Choose which channel to send the message on. | Options: SMS, MMS, WhatsApp, and RCS. If selecting RCS, ensure that RCS is enabled in your Twilio account. | | **Sender Type** | Pick how you want to send the message. | Options: Phone number or Messaging Service. Phone numbers must be approved in Twilio. | | **Content Template Type** | Select the type of content template. | Options include Inline or templates you’ve built in Twilio. Segment only shows templates that match your selected Channel and Template Type. | | **To Phone Number** | Enter the recipient’s phone number. | Must be in [E.164 format](https://www.twilio.com/docs/glossary/what-e164){:target="_blank"}. | @@ -182,4 +182,4 @@ Here are a few things to keep in mind when using the Twilio Messaging destinatio - **Phone numbers must be approved**. Any phone number you use to send messages must be approved in your Twilio account and support the channel you’re sending on. - **Message logs and errors**. If a message fails to send, you can view details in your Twilio Console message logs. Common issues include invalid phone number formats or missing required template fields. -Understanding these details will help you set up your messaging flows smoothly and avoid unexpected errors. \ No newline at end of file +Understanding these details will help you set up your messaging flows smoothly and avoid unexpected errors. From c8081f0bacd6e45a82f132801c89b3ee735bad6c Mon Sep 17 00:00:00 2001 From: Joe Ayoub Date: Tue, 5 Aug 2025 16:03:13 +0100 Subject: [PATCH 15/28] New Destination - Nextdoor --- .../catalog/actions-nextdoor-capi/index.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/connections/destinations/catalog/actions-nextdoor-capi/index.md diff --git a/src/connections/destinations/catalog/actions-nextdoor-capi/index.md b/src/connections/destinations/catalog/actions-nextdoor-capi/index.md new file mode 100644 index 0000000000..9996dbaf67 --- /dev/null +++ b/src/connections/destinations/catalog/actions-nextdoor-capi/index.md @@ -0,0 +1,26 @@ +--- +title: Nextdoor Conversions API Destination +--- + +{% include content/plan-grid.md name="actions" %} + +[Nextdoor Conversion API](https://yourintegration.com/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners){:target="_blank”} allows advertisers to track and send conversion events directly to the platform. This API provides a programmatic way to record and attribute conversions, enabling advertisers to measure the effectiveness of their advertising campaigns. + +This destination is maintained by Nextdoor. For any issues with the destination, [contact their Support team](mailto:ads-api@nextdoor.com). + +## Getting started + +1. From your workspace's [Destination catalog page](https://app.segment.com/goto-my-workspace/destinations/catalog){:target="_blank”} search for "Nextdoor". +2. Select Nextdoor Conversions API and click **Add Destination**. +3. Select an existing Source to connect to Nextdoor Conversions API. +4. Go to the [Nextdoor Ads Manager](https://ads.nextdoor.com/v2/manage/api){:target="_blank"}, then find and copy the **API key**, **Nextdoor Advertiser ID** and **Nextdoor Pixel Id** values. If these values are not visible in the Ads Manager, you may need to contact your Nextdoor Account Manager to ensure that your Nextdoor account has been whitelisted for the (Ads API) functionality. +5. Enter the **API key**, **Nextdoor Advertiser ID** and **Nextdoor Pixel Id** values in the Nextdoor Conversions API destination settings in Segment. +6. In the Mappings tab, configure the Actions to send data to Nextdoor Conversions API. +7. Enable the Destination and Actions. +8. See [Nextdoor's documentation](https://developer.nextdoor.com/reference/conversion-api){:target="_blank”} for additional instructions. + +{% include components/actions-fields.html %} + +## Nextdoor Browser Plugin Action +When the **Nextdoor Conversions API** destination receives website data from a Segment JavaScript source, the **Nextdoor Browser Plugin** automatically grabs the **Nextdoor click ID** / **ndclid** from the querystirng in the page URL, and passes it to the **Send Conversion** Action. Supplying the **ndclid** boosts attribution accuracy and is strongly recommended for website tracking. The plugin is enabled by default as soon as the destination is created. + From 9f87520ee0f8e09045b00a766ea16ae9b3f688de Mon Sep 17 00:00:00 2001 From: Motasem Date: Wed, 6 Aug 2025 09:09:24 +0300 Subject: [PATCH 16/28] Update index.md Co-authored-by: stayseesong <83784848+stayseesong@users.noreply.github.com> --- src/connections/destinations/catalog/userpilot-mobile/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connections/destinations/catalog/userpilot-mobile/index.md b/src/connections/destinations/catalog/userpilot-mobile/index.md index 2b80633eb0..f661459c67 100644 --- a/src/connections/destinations/catalog/userpilot-mobile/index.md +++ b/src/connections/destinations/catalog/userpilot-mobile/index.md @@ -1,5 +1,5 @@ --- -title: Userpilot Mobile (Device Mode) Destination +title: Userpilot Mobile Device Mode Destination id: 68207e064c022255721ec2d3 --- From c8572d0c0d5366caba7e9ebc162013564b6f9bf0 Mon Sep 17 00:00:00 2001 From: wilwong-twilio <109997887+wilwong-twilio@users.noreply.github.com> Date: Wed, 6 Aug 2025 10:50:21 -0700 Subject: [PATCH 17/28] Update actions.md --- src/connections/destinations/actions.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/connections/destinations/actions.md b/src/connections/destinations/actions.md index 207bcc18f7..8132257e7c 100644 --- a/src/connections/destinations/actions.md +++ b/src/connections/destinations/actions.md @@ -350,7 +350,7 @@ This example converts an email address to lowercase and removes extra whitespace {% endraw %} ``` -Input: `event.properties.email` = "user@example.com" +Input: `event.properties.email` = " User@Example.com " Output: user@example.com @@ -378,9 +378,9 @@ This example formats a phone number by removing non-digit characters, adding a c {% endraw %} ``` -Input: `event.properties.phone` = "(123) 456-7890" +Input: `event.properties.phone` = "(234) 567-8901" -Output: +11234567890 +Output: +12345678901 Explanation: * The `assign` tag stores the cleaned phone number after applying `strip` and `remove` filters to eliminate whitespace and non-digit characters (for example, `-`, `(`, `)`). From e4f822b3b02ee1c8cdf5abe7c918e0a1f6201974 Mon Sep 17 00:00:00 2001 From: wilwong-twilio <109997887+wilwong-twilio@users.noreply.github.com> Date: Wed, 6 Aug 2025 11:13:45 -0700 Subject: [PATCH 18/28] Update src/engage/audiences/index.md Co-authored-by: stayseesong <83784848+stayseesong@users.noreply.github.com> --- src/engage/audiences/index.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/engage/audiences/index.md b/src/engage/audiences/index.md index 410dd88d2a..8f7bb165d8 100644 --- a/src/engage/audiences/index.md +++ b/src/engage/audiences/index.md @@ -110,19 +110,19 @@ Dynamic Property references give you more flexibility over funnel audiences. Ins ![Using dynamic property references with an Audience funnel](/docs/engage/images/dynamic_property_audiences1.png) ### Audience previews -After configuring your audience definition, use the **Preview** button to review your audience setup. It shows the total number of profiles that match your criteria and a sample list of those profiles, helping you confirm the audience is correct before launching campaigns. Previews are only available if your audience uses historical data, displaying the current size based on past data. To learn more about the Include Historical Data option, see here https://segment.com/docs/engage/audiences/#how-does-the-historical-data-flag-work. The audience will grow as new profiles meet your criteria. Click any profile in the sample list to view a detailed side sheet with their attributes, making it easy to verify membership. This feature simplifies campaign planning and ensures your audience targets the right profiles. +After configuring your audience definition, click the **Preview** button to review your audience setup. It shows the total number of profiles that match your criteria and a sample list of those profiles, helping you confirm the audience is correct before launching campaigns. Previews are only available if your audience uses historical data, displaying the current size based on past data. Learn more about the [Include Historical Data option](/docs/engage/audiences/#how-does-the-historical-data-flag-work). The audience grows as new profiles meet your criteria. Click any profile in the sample list to view a detailed side sheet with their attributes, making it easy to verify membership. This feature simplifies campaign planning and ensures your audience targets the right profiles. > info "" -> Audience preview membership is calculated using data that may be slightly delayed from real-time processing, which can lead to temporary discrepancies between the preview results and the profile information shown in the profile side sheet or via the Profile API. +> The audience preview membership is calculated using data that may be slightly delayed from real-time processing, which can lead to temporary discrepancies between the preview results and the profile information shown in the profile side sheet or via the Profile API. #### Identifier breakdown -To check how profiles in your audience are identified, first click **Preview** to view your audience configuration. In the Preview results, navigate to the **Insights** tab (next to the **Users** tab) to see a breakdown of the percentage of profiles associated with each external_id in the audience. These are the default IDs that Segment includes in the Identity resolution configuration. Segment displays the percentage of the audience with each identifier, which you can use to verify the audience size and profiles are correct. The update of identifier breakdowns on profiles doesn't occur in real time. +To check how profiles in your audience are identified, you can view them in the identifier breakdown. Click **Preview** to view your audience configuration. In the Preview results, navigate to the **Insights** tab to see a breakdown of the percentage of profiles associated with each external_id in the audience. These are the default IDs that Segment includes in the Identity resolution configuration. Segment displays the percentage of the audience with each identifier, which you can use to verify the audience size and profiles are correct. The identifier breakdowns on profiles doesn't update in real time. > info "" > The Identifier Breakdown doesn't show custom IDs included in the Identity resolution configuration unless those IDs are explicitly selected through [ID sync](/docs/engage/trait-activation/id-sync/). By default, Segment only displays external IDs in the breakdown. #### Audience overlap -To check how your audience intersects with others in your Segment space, first click **Preview** to view your audience configuration. In the Preview results, navigate to the **Insights** tab (next to the **Users** tab). In the Insights tab, select an existing audience from the dropdown menu and click **Compute overlap** to see the number of shared profiles. This feature optimizes campaign targeting by identifying redundant audiences and refining segmentation. +To check how your audience intersects with others in your Segment space, click **Preview** to view your audience configuration. In the Preview results, navigate to the **Insights** tab where you can select an existing audience from the dropdown menu and click **Compute overlap** to see the number of shared profiles. This feature optimizes campaign targeting by identifying redundant audiences and refining segmentation. ### Account-level audiences From 2e7fadc2a126292079a2e0a6c5a65d3d61e92edd Mon Sep 17 00:00:00 2001 From: Sharon Adewusi Date: Wed, 6 Aug 2025 19:41:34 +0100 Subject: [PATCH 19/28] Clarifying how Page events are sent to Optimizely --- src/connections/destinations/catalog/optimizely-web/index.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/connections/destinations/catalog/optimizely-web/index.md b/src/connections/destinations/catalog/optimizely-web/index.md index db6ffc7eef..fadb1ba94e 100644 --- a/src/connections/destinations/catalog/optimizely-web/index.md +++ b/src/connections/destinations/catalog/optimizely-web/index.md @@ -64,13 +64,14 @@ Segment also handles the following mapping: ### Page -Segment maps `page` calls to its own `track` events. For example, invoking `analytics.page('Page Viewed')` using Segment's API maps the event to a `analytics.track('Page Viewed')` event. Segment maps the `track` event to other downstream destinations like a regular Segment `track` event. +Segment maps `page` calls to its own `track` events. When you call `analytics.page('')`, Segment automatically converts it into a track call with the formatted event name `Viewed Page`. For example, `analytics.page('Home');` becomes `analytics.track('Viewed Home Page');`. This event is then forwarded to Optimizely as a custom event named `Viewed Home Page`. + +Segment maps the `page` event to other downstream destinations like a regular Segment `page` event. ### Experiment Listeners Upon activation of an Optimizely experiment, an “Experiment Viewed” Track event is sent to Segment. The event includes Optimizely experiment metadata which is sent whenever the Optimizely [`campaignDecided` listener](https://docs.developers.optimizely.com/web/docs/add-listener#section-campaign-decided){:target="_blank"} is activated. - > info "Activating a Web experiment sends 'Experiment Viewed' Track events to Segment" > When you activate an Optimizely Web experiment, Optimizely automatically sends an "Experiment Viewed" Track event to Segment. This makes the Optimizely Web integration act as both a Destination and a Source, because the Track calls enrich and send Experiment Decisions and Exposure event data to Segment, which you can then send to other platforms. From 892539f0bf9ab99a9cbf104c2adb74626588a4c4 Mon Sep 17 00:00:00 2001 From: stayseesong Date: Wed, 6 Aug 2025 11:54:15 -0700 Subject: [PATCH 20/28] Add Data Graph YT Video --- src/unify/data-graph/index.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/unify/data-graph/index.md b/src/unify/data-graph/index.md index bd83ad0497..b080e6b6d1 100644 --- a/src/unify/data-graph/index.md +++ b/src/unify/data-graph/index.md @@ -25,6 +25,10 @@ To use the Data Graph, you need the following: > info "" > To define entity relationships, you need to enable Linked Audiences. Contact your Customer Success Manager to get access to Linked Audiences. +## Overview + + + ## Step 1: Set up Data Graph permissions in your data warehouse > warning "" From 51c760a7f65272b2fb73cd44b52364fe23a0174a Mon Sep 17 00:00:00 2001 From: pwseg Date: Wed, 6 Aug 2025 21:10:52 -0700 Subject: [PATCH 21/28] update rule creation steps --- src/connections/auto-instrumentation/configuration.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/connections/auto-instrumentation/configuration.md b/src/connections/auto-instrumentation/configuration.md index 1f5af89c19..996ba498b8 100644 --- a/src/connections/auto-instrumentation/configuration.md +++ b/src/connections/auto-instrumentation/configuration.md @@ -23,8 +23,8 @@ After you set up the Signals SDK to capture the signals you want to target, you ### Getting started with rule creation -1. In your Segment workspace, go to to **Connections > Auto-Instrumentation** and click on a source. -2. Click **Create Rules**. +1. In your Segment workspace, go to **Sources** and select a source. +2. Open the **Event Builder**, then click **Create Rules**. > info "Where's the Event Builder tab?" > The Event Builder tab only appears after you've installed the Auto-Instrumentation snippet in your site or app. If you don’t see the tab, double check your implementation or reach out to your Segment CSM. From 117a42b8d603b627a6a98fb1d58583b73420fc7e Mon Sep 17 00:00:00 2001 From: pwseg Date: Wed, 6 Aug 2025 21:22:17 -0700 Subject: [PATCH 22/28] comment some stuff out --- .../auto-instrumentation/configuration.md | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/src/connections/auto-instrumentation/configuration.md b/src/connections/auto-instrumentation/configuration.md index 996ba498b8..2b6a005be3 100644 --- a/src/connections/auto-instrumentation/configuration.md +++ b/src/connections/auto-instrumentation/configuration.md @@ -31,7 +31,22 @@ After you set up the Signals SDK to capture the signals you want to target, you ### Using the Rules Editor -The Rules Editor is where you define rules that transform raw signal data into analytics events. In the editor, you write functions that convert signals into events and then call them in the `processSignal()` function. +The Rules Editor is where you define rules that transform raw signal data into analytics events. Using the dropdown-based editor, you can: + +- Combine multiple signals into a single event (for example, a click followed by a navigation) +- Set conditions to control when events should be triggered +- Assign custom event names + +#### Adding event properties + +You can enrich your events by adding properties based on signal metadata. For example: + +- Capture `product.price` in your **Add to Cart** event +- Add a boolean field like `couponApplied` to your **Order Completed** event + +These properties are sent alongside your event, giving your team deeper insights without requiring any manual instrumentation. + + + + ## Example rule implementations -You can use the Signals data definitions on this page to create tracking rules. +You can use Signals to create tracking rules using the event builder. ### Example: Identify users From 9f8ae164674b62c8a53f13d9d2d87118071ca6ab Mon Sep 17 00:00:00 2001 From: pwseg Date: Wed, 6 Aug 2025 21:32:06 -0700 Subject: [PATCH 23/28] add some screenshots + comment out some code [netlify-build] --- .../auto-instrumentation/configuration.md | 17 +++++++++++++++-- .../signals_identify_event.png | Bin 0 -> 108246 bytes .../signals_track_event.png | Bin 0 -> 109461 bytes 3 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 src/connections/auto-instrumentation/signals_identify_event.png create mode 100644 src/connections/auto-instrumentation/signals_track_event.png diff --git a/src/connections/auto-instrumentation/configuration.md b/src/connections/auto-instrumentation/configuration.md index 2b6a005be3..3c04586a4c 100644 --- a/src/connections/auto-instrumentation/configuration.md +++ b/src/connections/auto-instrumentation/configuration.md @@ -236,6 +236,14 @@ You can use Signals to create tracking rules using the event builder. ### Example: Identify users +The following screenshot shows an Identify event rule that combines a button click with a successful network response to extract user data and trigger an identify call. + +![Identify event rule combining UI and network triggers](images/signals_identify_event.png) + + + + ### Example: Track `Add to Cart` events -This rule shows how you could implement the core ordering events from [the e-commerce Spec](/docs/connections/spec/ecommerce/v2/#core-ordering-overview): +This rule implements a core ordering event from [the e-commerce Spec](/docs/connections/spec/ecommerce/v2/#core-ordering-overview). It shows a Track event triggered by a button click and a network response, with product details from the response mapped to event properties. + +![Track event rule for Add to Cart using button click and network response](images/signals_track_event.png) + + \ No newline at end of file diff --git a/src/connections/auto-instrumentation/signals_identify_event.png b/src/connections/auto-instrumentation/signals_identify_event.png new file mode 100644 index 0000000000000000000000000000000000000000..43dd9a163b2e3ade365e5db6613614256ebba2c4 GIT binary patch literal 108246 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 literal 0 HcmV?d00001 diff --git a/src/connections/auto-instrumentation/signals_track_event.png b/src/connections/auto-instrumentation/signals_track_event.png new file mode 100644 index 0000000000000000000000000000000000000000..58c1f69ccf31d656f8ff80ef0889ab2cf496b4aa GIT binary patch literal 109461 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 literal 0 HcmV?d00001 From 5f5666dba9e792c610d1ef9abe96c395981b1db2 Mon Sep 17 00:00:00 2001 From: pwseg <86626706+pwseg@users.noreply.github.com> Date: Wed, 6 Aug 2025 21:37:44 -0700 Subject: [PATCH 24/28] update front matter --- .../destinations/catalog/actions-nextdoor-capi/index.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/connections/destinations/catalog/actions-nextdoor-capi/index.md b/src/connections/destinations/catalog/actions-nextdoor-capi/index.md index 9996dbaf67..6d0fe4b922 100644 --- a/src/connections/destinations/catalog/actions-nextdoor-capi/index.md +++ b/src/connections/destinations/catalog/actions-nextdoor-capi/index.md @@ -1,5 +1,7 @@ --- title: Nextdoor Conversions API Destination +id: 66cc76e29693c9e5591bf029 +beta: true --- {% include content/plan-grid.md name="actions" %} @@ -23,4 +25,3 @@ This destination is maintained by Nextdoor. For any issues with the destination, ## Nextdoor Browser Plugin Action When the **Nextdoor Conversions API** destination receives website data from a Segment JavaScript source, the **Nextdoor Browser Plugin** automatically grabs the **Nextdoor click ID** / **ndclid** from the querystirng in the page URL, and passes it to the **Send Conversion** Action. Supplying the **ndclid** boosts attribution accuracy and is strongly recommended for website tracking. The plugin is enabled by default as soon as the destination is created. - From 9608a594ade0281d3100fed32fdfb086cdf4e167 Mon Sep 17 00:00:00 2001 From: pwseg Date: Wed, 6 Aug 2025 21:59:13 -0700 Subject: [PATCH 25/28] move screenshots to right folder [netlify-build] --- .../{ => images}/signals_identify_event.png | Bin .../{ => images}/signals_track_event.png | Bin 2 files changed, 0 insertions(+), 0 deletions(-) rename src/connections/auto-instrumentation/{ => images}/signals_identify_event.png (100%) rename src/connections/auto-instrumentation/{ => images}/signals_track_event.png (100%) diff --git a/src/connections/auto-instrumentation/signals_identify_event.png b/src/connections/auto-instrumentation/images/signals_identify_event.png similarity index 100% rename from src/connections/auto-instrumentation/signals_identify_event.png rename to src/connections/auto-instrumentation/images/signals_identify_event.png diff --git a/src/connections/auto-instrumentation/signals_track_event.png b/src/connections/auto-instrumentation/images/signals_track_event.png similarity index 100% rename from src/connections/auto-instrumentation/signals_track_event.png rename to src/connections/auto-instrumentation/images/signals_track_event.png From fae3f4766788235aba7dbe78dc5549385a8a8416 Mon Sep 17 00:00:00 2001 From: Sharon Adewusi Date: Thu, 7 Aug 2025 14:23:28 +0100 Subject: [PATCH 26/28] Update src/connections/destinations/catalog/optimizely-web/index.md Co-authored-by: pwseg <86626706+pwseg@users.noreply.github.com> --- src/connections/destinations/catalog/optimizely-web/index.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/connections/destinations/catalog/optimizely-web/index.md b/src/connections/destinations/catalog/optimizely-web/index.md index fadb1ba94e..8525f4e1a6 100644 --- a/src/connections/destinations/catalog/optimizely-web/index.md +++ b/src/connections/destinations/catalog/optimizely-web/index.md @@ -64,7 +64,9 @@ Segment also handles the following mapping: ### Page -Segment maps `page` calls to its own `track` events. When you call `analytics.page('')`, Segment automatically converts it into a track call with the formatted event name `Viewed Page`. For example, `analytics.page('Home');` becomes `analytics.track('Viewed Home Page');`. This event is then forwarded to Optimizely as a custom event named `Viewed Home Page`. +Segment maps Page calls to it `track` events. When you call `analytics.page('')`, Segment automatically converts it into a Track call with the formatted event name `Viewed Page`. For example, `analytics.page('Home');` becomes `analytics.track('Viewed Home Page');`. + +This event is then forwarded to Optimizely as a custom event named `Viewed Home Page`. To capture this event in Optimizely, you’ll need to define a Custom Event with the matching API name. Segment maps the `page` event to other downstream destinations like a regular Segment `page` event. From aa5d6e3e70ae1efbe83527e59588856be8d45259 Mon Sep 17 00:00:00 2001 From: Sharon Adewusi Date: Thu, 7 Aug 2025 14:24:36 +0100 Subject: [PATCH 27/28] Got rid of last sentence --- src/connections/destinations/catalog/optimizely-web/index.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/connections/destinations/catalog/optimizely-web/index.md b/src/connections/destinations/catalog/optimizely-web/index.md index 8525f4e1a6..c203028a89 100644 --- a/src/connections/destinations/catalog/optimizely-web/index.md +++ b/src/connections/destinations/catalog/optimizely-web/index.md @@ -64,12 +64,10 @@ Segment also handles the following mapping: ### Page -Segment maps Page calls to it `track` events. When you call `analytics.page('')`, Segment automatically converts it into a Track call with the formatted event name `Viewed Page`. For example, `analytics.page('Home');` becomes `analytics.track('Viewed Home Page');`. +Segment maps Page calls to its `track` events. When you call `analytics.page('')`, Segment automatically converts it into a Track call with the formatted event name `Viewed Page`. For example, `analytics.page('Home');` becomes `analytics.track('Viewed Home Page');`. This event is then forwarded to Optimizely as a custom event named `Viewed Home Page`. To capture this event in Optimizely, you’ll need to define a Custom Event with the matching API name. -Segment maps the `page` event to other downstream destinations like a regular Segment `page` event. - ### Experiment Listeners Upon activation of an Optimizely experiment, an “Experiment Viewed” Track event is sent to Segment. The event includes Optimizely experiment metadata which is sent whenever the Optimizely [`campaignDecided` listener](https://docs.developers.optimizely.com/web/docs/add-listener#section-campaign-decided){:target="_blank"} is activated. From d4fd0de26e0054018d5997a3d43befbb1297b78a Mon Sep 17 00:00:00 2001 From: pwseg Date: Thu, 7 Aug 2025 12:08:58 -0700 Subject: [PATCH 28/28] catalog update + script fixes 7 august 2025 --- scripts/catalog/updateSources.js | 2 +- scripts/catalog/utilities.js | 14 +- src/_data/catalog/destination_categories.yml | 2 +- src/_data/catalog/destinations.yml | 636 +++++++++---------- src/_data/catalog/destinations_private.yml | 2 +- src/_data/catalog/source_categories.yml | 2 +- src/_data/catalog/sources.yml | 2 +- 7 files changed, 316 insertions(+), 344 deletions(-) diff --git a/scripts/catalog/updateSources.js b/scripts/catalog/updateSources.js index f873d19274..73ad28293d 100644 --- a/scripts/catalog/updateSources.js +++ b/scripts/catalog/updateSources.js @@ -33,7 +33,7 @@ const updateSources = async () => { while (nextPageToken !== undefined) { const res = await getCatalog(`${PAPI_URL}/catalog/sources/`, nextPageToken); sources = sources.concat(res.data.sourcesCatalog); - nextPageToken = res.data.pagination.next; + nextPageToken = res.data.pagination?.next; } // Sort the sources alphabetically diff --git a/scripts/catalog/utilities.js b/scripts/catalog/utilities.js index dd24bcd0ff..56cac1cb89 100644 --- a/scripts/catalog/utilities.js +++ b/scripts/catalog/utilities.js @@ -47,17 +47,19 @@ const getCatalog = async (url, page_token = "MA==") => { 'Content-Type': 'application/json', 'Authorization': `Bearer ${process.env.PAPI_TOKEN}` }, - data: { - "pagination": { - "count": 200, - "cursor": page_token - } + params: { + "pagination.count": 200, + "pagination.cursor": page_token } }); return res.data; } catch (error) { - console.log("Something went wrong with the request to the Public API.\nIf you're updating a private destination, ensure the ID is correct."); + console.log("Something went wrong with the request to the Public API."); + console.log("Error:", error.message); + console.log("Status:", error.response?.status); + console.log("Data:", error.response?.data); + throw error; } }; diff --git a/src/_data/catalog/destination_categories.yml b/src/_data/catalog/destination_categories.yml index 22e3877200..7409d6643e 100644 --- a/src/_data/catalog/destination_categories.yml +++ b/src/_data/catalog/destination_categories.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# destination categories last updated 2025-07-31 +# destination categories last updated 2025-08-07 items: - display_name: A/B Testing slug: a-b-testing diff --git a/src/_data/catalog/destinations.yml b/src/_data/catalog/destinations.yml index 9b363008b5..abca4d3216 100644 --- a/src/_data/catalog/destinations.yml +++ b/src/_data/catalog/destinations.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# destination data last updated 2025-07-31 +# destination data last updated 2025-08-07 items: - id: 637e8d185e2dec264895ea89 display_name: 1Flow @@ -25626,7 +25626,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: fDR8sk8ZPuCEHpjDyFgozW + - id: d6U9V5NCdv8jAFPguJ2JDx sortOrder: 0 fieldKey: external_id label: External User ID @@ -25640,7 +25640,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5RJmpB58hzw4um4jgjHR1B + - id: bV1e7HbkD1hANYUwZuaPbV sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -25654,7 +25654,7 @@ items: choices: null dynamic: false allowNull: false - - id: cu5jYWXnPpw6FiZ9wX1cFP + - id: 2rZPnRtmYHYV7qnCYq8vZ1 sortOrder: 2 fieldKey: braze_id label: Braze User Identifier @@ -25668,7 +25668,7 @@ items: choices: null dynamic: false allowNull: true - - id: jwzZpd94LxxvwoYokBJ5x + - id: 8ZzHLWwzdSLf7ztL7od2tv sortOrder: 3 fieldKey: country label: Country @@ -25682,7 +25682,7 @@ items: choices: null dynamic: false allowNull: true - - id: kpYhLzP5v48mSmtJ8YJZcb + - id: tLGkmSJM5c3i1rLwGPKRow sortOrder: 4 fieldKey: current_location label: Current Location @@ -25699,7 +25699,7 @@ items: choices: null dynamic: false allowNull: true - - id: p8XB3sFptXjrWBJ3QQJ44m + - id: o7WkwA172aBrkAtUFHfo5g sortOrder: 5 fieldKey: date_of_first_session label: Date of First Session @@ -25711,7 +25711,7 @@ items: choices: null dynamic: false allowNull: true - - id: tfTrTjru2F4uY8XdjzMwiW + - id: 2rYh1yA9KRY9jtDjForngD sortOrder: 6 fieldKey: date_of_last_session label: Date of Last Session @@ -25723,7 +25723,7 @@ items: choices: null dynamic: false allowNull: true - - id: ga1WyMfE8dhXFBZGD4wJ8q + - id: wqrUAkfTUqSV5YpwTWmhQm sortOrder: 7 fieldKey: dob label: Date of Birth @@ -25735,7 +25735,7 @@ items: choices: null dynamic: false allowNull: true - - id: 9vFRhBFwWjtTe686tvTTye + - id: jgZb4hQWWbs8VuqJNJuu5Z sortOrder: 8 fieldKey: email label: Email @@ -25749,7 +25749,7 @@ items: choices: null dynamic: false allowNull: true - - id: uwHYEgL4SZvo2bh4pUv5N + - id: 7Dr7SqHTiXF3q1pBgdmmJL sortOrder: 9 fieldKey: email_subscribe label: Email Subscribe @@ -25764,7 +25764,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5KRPPZ1zFq7TWQvW22PDNX + - id: dAJqmfsKyiD4YCNde5HA4R sortOrder: 10 fieldKey: email_open_tracking_disabled label: Email Open Tracking Disabled @@ -25778,7 +25778,7 @@ items: choices: null dynamic: false allowNull: false - - id: gqeqcDr1ZMLFbKo6PvsdTD + - id: ez85vajfsoTFSbz1JUP6kN sortOrder: 11 fieldKey: email_click_tracking_disabled label: Email Click Tracking Disabled @@ -25792,7 +25792,7 @@ items: choices: null dynamic: false allowNull: false - - id: dWbRdjBmHuQahVfpp2kbU1 + - id: e9d46hJuTpwUXV9YC1xVjU sortOrder: 12 fieldKey: facebook label: Facebook Attribution Data @@ -25806,7 +25806,7 @@ items: choices: null dynamic: false allowNull: false - - id: djKX1f82FMmWQmVP6QmXeg + - id: JvrMWrPRySguU9t7BybrK sortOrder: 13 fieldKey: first_name label: First Name @@ -25820,7 +25820,7 @@ items: choices: null dynamic: false allowNull: true - - id: 4eGUV9jTtwD6BjU4qGytBu + - id: b1z5yryqMTcgeQzDpJKnfr sortOrder: 14 fieldKey: gender label: Gender @@ -25836,7 +25836,7 @@ items: choices: null dynamic: false allowNull: true - - id: 57daPPzryAhNN7cB1u5SAY + - id: 6wyeaPKXa2HQzG7tkY5p8V sortOrder: 15 fieldKey: home_city label: Home City @@ -25850,7 +25850,7 @@ items: choices: null dynamic: false allowNull: true - - id: rAQMHaiMEZwqML5uLic2hY + - id: k1x7wpDEsBAniDvabnkse2 sortOrder: 16 fieldKey: image_url label: Image URL @@ -25864,7 +25864,7 @@ items: choices: null dynamic: false allowNull: true - - id: cnPSX6jz1RWzazXFcwEufd + - id: 7bAVx4SQPsGke2xYaaNx2o sortOrder: 17 fieldKey: language label: Language @@ -25876,7 +25876,7 @@ items: choices: null dynamic: false allowNull: true - - id: gE2RcHsq5GBtDzAobjWzic + - id: nY2Gc9jCCzhcQJcr76Vdgz sortOrder: 18 fieldKey: last_name label: Last Name @@ -25890,7 +25890,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4SjCpfFqvTcPcgP1ADvB4L + - id: pzosm73dVCe5Kzw2SEv4xy sortOrder: 19 fieldKey: marked_email_as_spam_at label: Marked Email as Spam At @@ -25902,7 +25902,7 @@ items: choices: null dynamic: false allowNull: true - - id: mKzJu2395MQjio8deZxU2W + - id: vbiMQx2wHq7bMMyFFp2sHh sortOrder: 20 fieldKey: phone label: Phone Number @@ -25916,7 +25916,7 @@ items: choices: null dynamic: false allowNull: true - - id: hHdCpmvY8TpYt2Tr61yd2q + - id: vezYSDUs6gw6yvXkpp8CMb sortOrder: 21 fieldKey: push_subscribe label: Push Subscribe @@ -25931,7 +25931,7 @@ items: choices: null dynamic: false allowNull: false - - id: xiDqAeeRr1LqYabp17WciD + - id: f1PzdBqhkfrqtfszB6CZmk sortOrder: 22 fieldKey: push_tokens label: Push Tokens @@ -25948,7 +25948,7 @@ items: choices: null dynamic: false allowNull: false - - id: 939rX9rNsPzToLou8v32Fi + - id: 9VYsVJLuNHXWfGxwx6rBwE sortOrder: 23 fieldKey: time_zone label: Time zone @@ -25963,7 +25963,7 @@ items: choices: null dynamic: false allowNull: false - - id: d63HrHJUBm5ANC1W8x7qPD + - id: 94v1ahzVgXfUbv9AFQBH8S sortOrder: 24 fieldKey: twitter label: Twitter Attribution Data @@ -25978,7 +25978,7 @@ items: choices: null dynamic: false allowNull: false - - id: aW3XkeWTRZx5VippFvdnRk + - id: kN39V8o8wr72JsRVLVaoPu sortOrder: 25 fieldKey: custom_attributes label: Custom Attributes @@ -25992,7 +25992,7 @@ items: choices: null dynamic: false allowNull: false - - id: pEtpN2Hb2vkA8Q8xRZ1BEP + - id: vvZq7hgFqoNZYb9E4Brbcc sortOrder: 26 fieldKey: _update_existing_only label: Update Existing Only @@ -26007,7 +26007,7 @@ items: choices: null dynamic: false allowNull: false - - id: deNbLhqaVWQ3a5ekv2Dgjr + - id: uPNDHHnwLN8SHiqB1QX8Ja sortOrder: 27 fieldKey: enable_batching label: Batch Data to Braze @@ -26030,7 +26030,7 @@ items: hidden: false defaultTrigger: type = "track" and event != "Order Completed" fields: - - id: hrPz9vH7A3YkY4MRK8BZVJ + - id: idN8BsUUQpAsPMeik6Qo82 sortOrder: 0 fieldKey: external_id label: External User ID @@ -26044,7 +26044,7 @@ items: choices: null dynamic: false allowNull: false - - id: pkkSSueQLUhwMNeKHJyqWm + - id: 24HWtfrrPYB6ZZun6jLH3b sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -26058,7 +26058,7 @@ items: choices: null dynamic: false allowNull: false - - id: vBJnn5mz3hNu55TfrA5FVw + - id: ehoVCzYtQWaaPDwxaXeCVZ sortOrder: 2 fieldKey: email label: Email @@ -26078,7 +26078,7 @@ items: choices: null dynamic: false allowNull: false - - id: fh8McJPhdVkZ7M1GjPQnjq + - id: ww3z1tqiauUyFEGXigGTQ7 sortOrder: 3 fieldKey: braze_id label: Braze User Identifier @@ -26092,7 +26092,7 @@ items: choices: null dynamic: false allowNull: true - - id: mvefY6PdaWM3CrxHwZkuR6 + - id: bfSZdcMpNftETUKPp9pmcF sortOrder: 4 fieldKey: name label: Event Name @@ -26106,7 +26106,7 @@ items: choices: null dynamic: false allowNull: false - - id: jFGB75TdxH1midEQnvCNtB + - id: oUxzSYWEHAdAipLXaDnJpU sortOrder: 5 fieldKey: time label: Time @@ -26120,7 +26120,7 @@ items: choices: null dynamic: false allowNull: false - - id: qy1WJxzc3uSCPUiDrMMwZS + - id: 9WPvGDKLhKMLU4VGEx5Umi sortOrder: 6 fieldKey: properties label: Event Properties @@ -26134,7 +26134,7 @@ items: choices: null dynamic: false allowNull: false - - id: 2kskmcKBRxNct89Nr21iZA + - id: pUiv8Kv5orKaqXDuXmgLbM sortOrder: 7 fieldKey: _update_existing_only label: Update Existing Only @@ -26149,7 +26149,7 @@ items: choices: null dynamic: false allowNull: false - - id: r1qeUDq9S5yQv8Bq3raCyt + - id: oQLxQU8Mo7rtKygwJ8HxHe sortOrder: 8 fieldKey: enable_batching label: Batch Data to Braze @@ -26172,7 +26172,7 @@ items: hidden: false defaultTrigger: event = "Order Completed" fields: - - id: 6dz2NH94u6YHzeqgdnYfKf + - id: hLbB39Duo6LaXwfZxyjaGn sortOrder: 0 fieldKey: external_id label: External User ID @@ -26186,7 +26186,7 @@ items: choices: null dynamic: false allowNull: false - - id: ogekSoMUqWKsis21mVdSwG + - id: n9Hhv3SXjQXpcU8K1gNiia sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -26200,7 +26200,7 @@ items: choices: null dynamic: false allowNull: false - - id: cZn4F9NYmrHKW8dezN41Rd + - id: soQABmoy5PfkpVSMowdxQu sortOrder: 2 fieldKey: email label: Email @@ -26214,7 +26214,7 @@ items: choices: null dynamic: false allowNull: false - - id: oSYr6JRDq8Lzbh8cbezbso + - id: uXxxYK3WayNvCyYEv2Q6wX sortOrder: 3 fieldKey: braze_id label: Braze User Identifier @@ -26228,7 +26228,7 @@ items: choices: null dynamic: false allowNull: true - - id: tzcURC4EbRDPsK2V6U8s5R + - id: 9b5knhrzhnDo1CqSYDLUjQ sortOrder: 4 fieldKey: time label: Time @@ -26242,7 +26242,7 @@ items: choices: null dynamic: false allowNull: false - - id: 8G7P2UkSm2HNmyMyeGWV4k + - id: fXrm6134DMqhCk2FnoHPL6 sortOrder: 5 fieldKey: products label: Products @@ -26256,7 +26256,7 @@ items: choices: null dynamic: false allowNull: false - - id: 9i4fK4YwETdw9pd9nGRw36 + - id: 33vVRBawSmNvJkBQk6fcDr sortOrder: 6 fieldKey: properties label: Event Properties @@ -26270,7 +26270,7 @@ items: choices: null dynamic: false allowNull: false - - id: 6ETQi1B982NFyz9T3D58Bd + - id: rJAx1FYFhqYQ54azvswWdc sortOrder: 7 fieldKey: _update_existing_only label: Update Existing Only @@ -26285,7 +26285,7 @@ items: choices: null dynamic: false allowNull: false - - id: gtNdLnuNQVuqRfeeuvwb83 + - id: 78161xeH8FqDD8opHQrvf6 sortOrder: 8 fieldKey: enable_batching label: Batch Data to Braze @@ -26322,7 +26322,7 @@ items: hidden: false defaultTrigger: null fields: - - id: 4yze3B4RebQRNy5t249sdN + - id: 3cb7MT8xNiV1z5hf9gNHFw sortOrder: 0 fieldKey: external_id label: External ID @@ -26334,7 +26334,7 @@ items: choices: null dynamic: false allowNull: false - - id: khtVtUBsXZ3dXD7uNAdyT9 + - id: 2RTduyrFf1V7x5pQUe7ikT sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -26348,7 +26348,7 @@ items: choices: null dynamic: false allowNull: false - - id: vzWebkoqo9wNospgS2ft3v + - id: gNXa6LNDdJHaSH3akcUEGC sortOrder: 2 fieldKey: merge_behavior label: Merge Behavior @@ -26377,7 +26377,7 @@ items: hidden: false defaultTrigger: event = "Create Alias" fields: - - id: iKDENKBGFN17vQk527V39 + - id: rUeLDv9qHRURadsrkd3Yk3 sortOrder: 0 fieldKey: external_id label: External ID @@ -26389,7 +26389,7 @@ items: choices: null dynamic: false allowNull: true - - id: 8oXLyuZuAvbhFWC4FkQvT + - id: aERBzxvLdeaeQKHSMgJTPj sortOrder: 1 fieldKey: alias_name label: Alias Name @@ -26401,7 +26401,7 @@ items: choices: null dynamic: false allowNull: false - - id: s1DvRj3mZTRTG9nnYbeCxk + - id: bkFACPB6x98Lie1Fda7fk6 sortOrder: 2 fieldKey: alias_label label: Alias Label @@ -26421,7 +26421,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: oe3hf8kRGhTDXC51z8yFgG + - id: vYQhBQtBSRwjMrt29DoXgS sortOrder: 0 fieldKey: external_id label: External User ID @@ -26435,7 +26435,7 @@ items: choices: null dynamic: false allowNull: false - - id: 51NMeWJpAvs7eLZDk3vhLQ + - id: hkvGTFjZ6Bax9MAwPRYbGF sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -26449,7 +26449,7 @@ items: choices: null dynamic: false allowNull: false - - id: wJXPFHyq84k21N1SwV533x + - id: ozoRhdaKpah2RrU9PRn12z sortOrder: 2 fieldKey: braze_id label: Braze User Identifier @@ -26463,7 +26463,7 @@ items: choices: null dynamic: false allowNull: true - - id: hbgP26NkcwSYuR92ubBnnY + - id: aMXNyX7ZZErrD2hDjbP1eN sortOrder: 3 fieldKey: country label: Country @@ -26477,7 +26477,7 @@ items: choices: null dynamic: false allowNull: true - - id: uwhpBXucF3BZNN7UBu5o43 + - id: 7Ps9fwccW6fgrn18fQgnCJ sortOrder: 4 fieldKey: current_location label: Current Location @@ -26494,7 +26494,7 @@ items: choices: null dynamic: false allowNull: true - - id: oJ3EoesYT598C1ou5ndKpg + - id: nudus8SaESbh41c6tJF53K sortOrder: 5 fieldKey: date_of_first_session label: Date of First Session @@ -26506,7 +26506,7 @@ items: choices: null dynamic: false allowNull: true - - id: v8pMqaaDuCwHyn94fvGK12 + - id: iSMvPjEud8TQPgUVPbJqBA sortOrder: 6 fieldKey: date_of_last_session label: Date of Last Session @@ -26518,7 +26518,7 @@ items: choices: null dynamic: false allowNull: true - - id: rXMEVupni5zC1VNz7JWwBf + - id: oSvGrukS5sZfPsAoagjN2u sortOrder: 7 fieldKey: dob label: Date of Birth @@ -26530,7 +26530,7 @@ items: choices: null dynamic: false allowNull: true - - id: kCpEhQzeXn4cDbdF9qZpML + - id: pLKmUGw3qQbqKhdrTonXXH sortOrder: 8 fieldKey: email label: Email @@ -26544,7 +26544,7 @@ items: choices: null dynamic: false allowNull: true - - id: 8dbLLfLef3eJTjWF129SpW + - id: 5ygy8zE2bEWNr2UrDLYiQh sortOrder: 9 fieldKey: email_subscribe label: Email Subscribe @@ -26559,7 +26559,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4iZ2iHgrchb8SEAin3ye2u + - id: qCwVXsMutPypW18TJg26u9 sortOrder: 10 fieldKey: email_open_tracking_disabled label: Email Open Tracking Disabled @@ -26573,7 +26573,7 @@ items: choices: null dynamic: false allowNull: false - - id: btZsBGvZbSBXicy8iay7zs + - id: 2WrDnVmaisgqyvyibaxxEZ sortOrder: 11 fieldKey: email_click_tracking_disabled label: Email Click Tracking Disabled @@ -26587,7 +26587,7 @@ items: choices: null dynamic: false allowNull: false - - id: wakkz6XuvZXPipP81QvPx4 + - id: kKjxKnHiJex9RWsaa9rXua sortOrder: 12 fieldKey: facebook label: Facebook Attribution Data @@ -26601,7 +26601,7 @@ items: choices: null dynamic: false allowNull: false - - id: vTTP7xpe4T7rGhvCrXkTE7 + - id: en2thLvfPsCKwPbZJPdxpB sortOrder: 13 fieldKey: first_name label: First Name @@ -26615,7 +26615,7 @@ items: choices: null dynamic: false allowNull: true - - id: ssSsnHKuPSFuQFc1MV17ZD + - id: kwgxXaXX2pwZdNQfPStmdm sortOrder: 14 fieldKey: gender label: Gender @@ -26631,7 +26631,7 @@ items: choices: null dynamic: false allowNull: true - - id: 8L9aku58jMfmPMGfHhbsFw + - id: cmRCpXwoX8vLLbyGteKRM5 sortOrder: 15 fieldKey: home_city label: Home City @@ -26645,7 +26645,7 @@ items: choices: null dynamic: false allowNull: true - - id: xiBU6eUE6uzLDrBZv2jhVB + - id: n5P4heq36hTpPLwXkhzVgN sortOrder: 16 fieldKey: image_url label: Image URL @@ -26659,7 +26659,7 @@ items: choices: null dynamic: false allowNull: true - - id: 3rP2hq85GNyU8U9XgoSZCY + - id: jffmLbBYKzecGNjZtjTE6C sortOrder: 17 fieldKey: language label: Language @@ -26671,7 +26671,7 @@ items: choices: null dynamic: false allowNull: true - - id: iQcmVPWnTKVzvsxAKYj9mj + - id: 4tNPdHXNSqBjqFgk3dFEzt sortOrder: 18 fieldKey: last_name label: Last Name @@ -26685,7 +26685,7 @@ items: choices: null dynamic: false allowNull: false - - id: t3g6HprsnqCh2M3fo9BXRM + - id: gg6m4B64jj32e9pw4J52dQ sortOrder: 19 fieldKey: marked_email_as_spam_at label: Marked Email as Spam At @@ -26697,7 +26697,7 @@ items: choices: null dynamic: false allowNull: true - - id: xmeuVQp8uMCXZXZm9UXMxH + - id: qXu4FwGxWnj4U6hiqwWFsj sortOrder: 20 fieldKey: phone label: Phone Number @@ -26711,7 +26711,7 @@ items: choices: null dynamic: false allowNull: true - - id: rroMN2p5FLuExhzZWuHqtc + - id: gDWuyKzqznWybLTXWtmCHp sortOrder: 21 fieldKey: push_subscribe label: Push Subscribe @@ -26726,7 +26726,7 @@ items: choices: null dynamic: false allowNull: false - - id: kEvbfkKEX1uqhzMWuNwmp2 + - id: phghTGF2vszJUHkcXW6Rsq sortOrder: 22 fieldKey: push_tokens label: Push Tokens @@ -26743,7 +26743,7 @@ items: choices: null dynamic: false allowNull: false - - id: rjGXsxbfqWbr3ZeFHwz27z + - id: mXmb3BWpFxwwaiY4MjyrjV sortOrder: 23 fieldKey: time_zone label: Time zone @@ -26758,7 +26758,7 @@ items: choices: null dynamic: false allowNull: false - - id: u45mgdB6SJ8dqFavPgnbRT + - id: 7NFgwdC3prHZ3ug1ANE6LX sortOrder: 24 fieldKey: twitter label: Twitter Attribution Data @@ -26773,7 +26773,7 @@ items: choices: null dynamic: false allowNull: false - - id: w5XpKj2h7c8cseVPiE2Kfr + - id: cYivVwQyyiSx8mYSPLpi4b sortOrder: 25 fieldKey: custom_attributes label: Custom Attributes @@ -26787,7 +26787,7 @@ items: choices: null dynamic: false allowNull: false - - id: u5Xa38kWR8zMCfDEYn4inB + - id: qtceg6gCbWDQy5UC7EWwNo sortOrder: 26 fieldKey: enable_batching label: Batch Data to Braze @@ -26810,7 +26810,7 @@ items: hidden: false defaultTrigger: type = "track" and event != "Order Completed" fields: - - id: c5QwcdEX6QoGvfR68ZvJAK + - id: rthiwKzEQ7ARfu9x4U2wLK sortOrder: 0 fieldKey: external_id label: External User ID @@ -26824,7 +26824,7 @@ items: choices: null dynamic: false allowNull: false - - id: aV15trPsL3nD8meUQrZYcn + - id: YMoWgcoRgybj21SbzzYFk sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -26838,7 +26838,7 @@ items: choices: null dynamic: false allowNull: false - - id: yxSQtvpEpaBSuCNVCyaLx + - id: 4Cp7tPsoC7mGhq5B6499dY sortOrder: 2 fieldKey: email label: Email @@ -26858,7 +26858,7 @@ items: choices: null dynamic: false allowNull: false - - id: w3rt9rnM9RQLGbxwddWfpq + - id: ch7NvVYP796QrNzgoPy82F sortOrder: 3 fieldKey: braze_id label: Braze User Identifier @@ -26872,7 +26872,7 @@ items: choices: null dynamic: false allowNull: true - - id: 5dnLJugnsTMbysGFrvabaE + - id: w6xo2cAXhzHPrUZ9JVRrxv sortOrder: 4 fieldKey: name label: Event Name @@ -26886,7 +26886,7 @@ items: choices: null dynamic: false allowNull: false - - id: 9ZM31KcgrubTvn73paBiEn + - id: iPimzrFeFt2Qoh25ryk8nv sortOrder: 5 fieldKey: time label: Time @@ -26900,7 +26900,7 @@ items: choices: null dynamic: false allowNull: false - - id: 9BZDbkF514gUW1rFFpgwW7 + - id: 8Uddgxrzh722LQXiouCMqG sortOrder: 6 fieldKey: properties label: Event Properties @@ -26914,7 +26914,7 @@ items: choices: null dynamic: false allowNull: false - - id: r1YAg5cWiqtA5uEKuv9QFN + - id: k9a7HdNHDE5XNAWYCdgQtD sortOrder: 7 fieldKey: enable_batching label: Batch Data to Braze @@ -26939,7 +26939,7 @@ items: hidden: false defaultTrigger: null fields: - - id: pA9P84W33KWLVMeBaMrGvc + - id: f5goLMUFREmXWXhNvh5RSB sortOrder: 0 fieldKey: external_id label: External ID @@ -26951,7 +26951,7 @@ items: choices: null dynamic: false allowNull: false - - id: q2RV1ddCen5DeQrq2zM9CJ + - id: qVzGnW48Gmn1MKRPrXAVmb sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -26965,7 +26965,7 @@ items: choices: null dynamic: false allowNull: false - - id: uSSwiZtKntADfysMTHzLwT + - id: wQpWbuYRBdEzLUZAqkVdQ5 sortOrder: 2 fieldKey: email_to_identify label: Email to Identify @@ -26977,7 +26977,7 @@ items: choices: null dynamic: false allowNull: false - - id: w5gtkhWKoCxSfqngqoiNeG + - id: uPvXF5jWP8bE8gALBkYJcP sortOrder: 3 fieldKey: prioritization label: Prioritization @@ -26991,7 +26991,7 @@ items: choices: null dynamic: false allowNull: false - - id: 36vfotFjwJdrgsFqigq3s9 + - id: i6vzA1zw97cdG1zp8k78P sortOrder: 4 fieldKey: merge_behavior label: Merge Behavior @@ -27020,7 +27020,7 @@ items: hidden: false defaultTrigger: event = "Create Alias" fields: - - id: hn9sGteqXqBRngR2DLmBf6 + - id: dE5a3kB3ycWpojEr5hZcsv sortOrder: 0 fieldKey: external_id label: External ID @@ -27032,7 +27032,7 @@ items: choices: null dynamic: false allowNull: true - - id: nJsA2ACXiwnMj2EeV5yjG6 + - id: tL3uUBXRBatN3GJDESFRrd sortOrder: 1 fieldKey: alias_name label: Alias Name @@ -27044,7 +27044,7 @@ items: choices: null dynamic: false allowNull: false - - id: f1GfS5BFT1scHVFbxhcjZL + - id: qK4jMUW9XPjb1mHBpvVGbX sortOrder: 2 fieldKey: alias_label label: Alias Label @@ -27064,7 +27064,7 @@ items: hidden: false defaultTrigger: event = "Order Completed" fields: - - id: ixMtCebbqNKfv1aGCtME4K + - id: aFsksKW75QBQ9CWEGBi3rd sortOrder: 0 fieldKey: external_id label: External User ID @@ -27078,7 +27078,7 @@ items: choices: null dynamic: false allowNull: false - - id: ruCU35Wqs8T4PevS4ZmU5V + - id: rryo9XMY3fXDuNzmW9afWk sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -27092,7 +27092,7 @@ items: choices: null dynamic: false allowNull: false - - id: uzZDPa7uFWQpH1pLh3XsMz + - id: qSZi8KpozddwH6GURYKSu3 sortOrder: 2 fieldKey: email label: Email @@ -27106,7 +27106,7 @@ items: choices: null dynamic: false allowNull: false - - id: iEEVn7biQdecud9SGoYvhp + - id: 8r9JQ1a5WPe9qWSRCpL7Ne sortOrder: 3 fieldKey: braze_id label: Braze User Identifier @@ -27120,7 +27120,7 @@ items: choices: null dynamic: false allowNull: true - - id: cKNB3NGqDqEjnbSb8pP3Qy + - id: pxpZyTEJQNcsnH53o5m3ti sortOrder: 4 fieldKey: time label: Time @@ -27134,7 +27134,7 @@ items: choices: null dynamic: false allowNull: false - - id: mGzGN6fp6K2d46va9kBL + - id: qE31XkHNWKFhhk2Y2Q4arA sortOrder: 5 fieldKey: products label: Products @@ -27148,7 +27148,7 @@ items: choices: null dynamic: false allowNull: false - - id: WPEzRmRkZCNpmp6TdP8rf + - id: 4tDCwW3haMo5Hs6BiTUVDB sortOrder: 6 fieldKey: properties label: Event Properties @@ -27162,7 +27162,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4ah6KWaND1oo82BTLggE6z + - id: ppMvu9zhoYdzRxLyKbyWKo sortOrder: 7 fieldKey: enable_batching label: Batch Data to Braze @@ -27185,7 +27185,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: sPTCuHRcJCeAnecUuVqf2r + - id: oErXBStj5XSh4wqnfD2veM sortOrder: 0 fieldKey: campaign_id label: Campaign ID @@ -27199,7 +27199,7 @@ items: choices: null dynamic: true allowNull: false - - id: dEHae358DEQhGmePgivDR3 + - id: 7RRN8kdi2q5PiBaZbfrQgb sortOrder: 1 fieldKey: send_id label: Send ID @@ -27213,7 +27213,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5NhPCujCPP7txQ5WpPCFGS + - id: qa7eF838Acuj3Np8SKjsHm sortOrder: 2 fieldKey: trigger_properties label: Trigger Properties @@ -27230,7 +27230,7 @@ items: choices: null dynamic: false allowNull: false - - id: 2oemWzNaa6oZaqVhxbPwPN + - id: 2VJW9dMurzseZkz2KCUAbX sortOrder: 3 fieldKey: broadcast label: Broadcast @@ -27245,7 +27245,7 @@ items: choices: null dynamic: false allowNull: false - - id: 84pncUPkpAegESBR3Em9nE + - id: ayF1yjAmCX6J1vq4cSpbko sortOrder: 4 fieldKey: attachments label: Attachments @@ -27257,7 +27257,7 @@ items: choices: null dynamic: false allowNull: false - - id: bddJKZzjdJz4tmW3bzVN3N + - id: pZtua926qke3JYoXrNxVeR sortOrder: 5 fieldKey: recipients label: Recipients @@ -27271,7 +27271,7 @@ items: choices: null dynamic: false allowNull: false - - id: ew1gYTSzqreFsASGNodNpo + - id: 4iFQKh3Vq1uSUR3rgxb1Uv sortOrder: 6 fieldKey: prioritization label: Prioritization @@ -27285,7 +27285,7 @@ items: choices: null dynamic: false allowNull: false - - id: 9ULKQQi91KHGaDwAUjrcZn + - id: bii8tTP4Y3rYj43XSYwrxD sortOrder: 7 fieldKey: audience label: Audience @@ -27307,7 +27307,7 @@ items: hidden: false defaultTrigger: null fields: - - id: bPkKYCKGeSfiFSqPANm25m + - id: mgtEZymc551vRbskTtALxC sortOrder: 0 fieldKey: item label: Catalog item to upsert @@ -27322,7 +27322,7 @@ items: choices: null dynamic: true allowNull: false - - id: wD8HrbEBhG1oYSnAK17wpx + - id: vjdGoeS7pSAoDx7eGJ7nYH sortOrder: 1 fieldKey: item_id label: Item ID @@ -27336,7 +27336,7 @@ items: choices: null dynamic: false allowNull: false - - id: cSe2bHd9wSLF41wLBEWvAo + - id: 96qitbsPikhayWg5YcNsZR sortOrder: 2 fieldKey: enable_batching label: Batch Data to Braze? @@ -27349,7 +27349,7 @@ items: choices: null dynamic: false allowNull: false - - id: uKkyRXx83KMULmRcUA2JBU + - id: 9Ef1hYUCZpegvfWvEUFq1m sortOrder: 4 fieldKey: operation label: Operation @@ -27365,7 +27365,7 @@ items: value: select dynamic: false allowNull: false - - id: whMhv8Xne4y4MwRdzFs87E + - id: dByxzCbtHR7KFBwQUNYx99 sortOrder: 5 fieldKey: selected_catalog_name label: Catalog Name @@ -27377,7 +27377,7 @@ items: choices: null dynamic: true allowNull: false - - id: oopajGWsU8s53yYzVZ6ACF + - id: a3TRBGw1kYC3Teg5GMprQT sortOrder: 6 fieldKey: created_catalog_name label: Catalog Name @@ -27391,7 +27391,7 @@ items: choices: null dynamic: false allowNull: false - - id: hnB1vZZKnwRmmkuy5RSkEC + - id: qb19tg6p3NLAQH52h3azpP sortOrder: 7 fieldKey: description label: Catalog Description @@ -27403,7 +27403,7 @@ items: choices: null dynamic: false allowNull: false - - id: jUZc1QZuEQXLG5xWjkDFGP + - id: igpkUuGk6CSgYh4jf3ETmK sortOrder: 8 fieldKey: columns label: Catalog Fields @@ -27417,7 +27417,7 @@ items: choices: null dynamic: false allowNull: false - - id: cGqJWefruj1dQHLfZDjJpn + - id: gYfYKohnE3K3Tu6vWhRsEx sortOrder: 9 fieldKey: onMappingSave label: Select or Create a Catalog @@ -27440,7 +27440,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: oiGEFgrdhJA3v32F4zTkeK + - id: sANpexRqwJKtK5qrBJ89yK sortOrder: 0 fieldKey: canvas_id label: Canvas ID @@ -27454,7 +27454,7 @@ items: choices: null dynamic: true allowNull: false - - id: wxRm1RbcZysJpqUBF3C9zA + - id: n5r68PyiJbww5YkYvLCX9J sortOrder: 1 fieldKey: canvas_entry_properties label: Canvas Entry Properties @@ -27471,7 +27471,7 @@ items: choices: null dynamic: false allowNull: false - - id: bEuxY3oC6xbNHVeCdNXeYv + - id: hWGwLz1WZzrr656L1JxJky sortOrder: 2 fieldKey: broadcast label: Broadcast @@ -27485,7 +27485,7 @@ items: choices: null dynamic: false allowNull: false - - id: cn4tUKL6RL5DVizmrEL6Zy + - id: sxnHQfxhf83vXTu53hsQJq sortOrder: 3 fieldKey: recipients label: Recipients @@ -27499,7 +27499,7 @@ items: choices: null dynamic: false allowNull: false - - id: q6ZN3k9SeiLdRncgf15KCC + - id: qoNQUgA7i1cJEtgC8VT8yv sortOrder: 4 fieldKey: prioritization label: Prioritization @@ -27513,7 +27513,7 @@ items: choices: null dynamic: false allowNull: false - - id: oEKGVECL2P4CyyxwQiXAfb + - id: iJYrS4Ne2hEdr97t53L8ZX sortOrder: 5 fieldKey: audience label: Audience @@ -27528,6 +27528,25 @@ items: dynamic: false allowNull: false presets: + - actionId: vE7Gf9yobj2gTuMBhwmg7g + name: Order Completed Calls + fields: + external_id: + '@path': $.userId + email: + '@path': $.traits.email + braze_id: + '@path': $.properties.braze_id + time: + '@path': $.receivedAt + products: + '@path': $.properties.products + properties: + '@path': $.properties + _update_existing_only: false + enable_batching: true + batch_size: 75 + trigger: event = "Order Completed" - actionId: 2P24zUSAL8BUpyGYNGmD7M name: Identify Calls fields: @@ -27587,25 +27606,6 @@ items: enable_batching: true batch_size: 75 trigger: type = "track" and event != "Order Completed" - - actionId: vE7Gf9yobj2gTuMBhwmg7g - name: Order Completed Calls - fields: - external_id: - '@path': $.userId - email: - '@path': $.traits.email - braze_id: - '@path': $.properties.braze_id - time: - '@path': $.receivedAt - products: - '@path': $.properties.products - properties: - '@path': $.properties - _update_existing_only: false - enable_batching: true - batch_size: 75 - trigger: event = "Order Completed" partnerOwned: false - id: 63872c01c0c112b9b4d75412 display_name: Braze Cohorts @@ -36336,9 +36336,9 @@ items: - Email Marketing - Marketing Automation logo: - url: https://cdn-devcenter.segment.com/7746b31d-bf00-4b09-95a5-458a79412b96.svg + url: https://cdn-devcenter.segment.com/87486058-b0a1-4b93-9409-b861d1cc8bfc.svg mark: - url: https://cdn-devcenter.segment.com/8c6dbc6d-a068-470f-8dea-fbf5e018d664.svg + url: https://cdn-devcenter.segment.com/e60f5bb8-f7c4-4ccd-a3ed-c1f076790a99.svg methods: track: true identify: true @@ -78083,7 +78083,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: psH3mh5nGaAqwqWZiHoV2v + - id: jKha8vcFKRDa3n9zQi25Zi sortOrder: 0 fieldKey: email label: Email @@ -78099,7 +78099,7 @@ items: choices: null dynamic: false allowNull: false - - id: uNvP8gTtWLWVndf3QwQzMh + - id: eVj9ANPjfTjbcrbhSjJYEY sortOrder: 1 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -78111,7 +78111,7 @@ items: choices: null dynamic: false allowNull: false - - id: kxooop3Pg9YhLAVMPgYBvm + - id: uM85Hdwk5juCsGFkq2Yvvp sortOrder: 2 fieldKey: phone_number label: Phone Number @@ -78128,7 +78128,7 @@ items: choices: null dynamic: false allowNull: false - - id: 35q8tEiCNoBMvepabdEaVX + - id: rDBZEaRvguF28NHupzggwA sortOrder: 3 fieldKey: country_code label: Country Code @@ -78637,7 +78637,7 @@ items: value: ZW dynamic: false allowNull: false - - id: dk37MtDtFtWiNoggxk5Vc2 + - id: k5RCVGhmz9wtUNPPue3td6 sortOrder: 4 fieldKey: external_id label: External ID @@ -78652,7 +78652,7 @@ items: choices: null dynamic: false allowNull: false - - id: 8gRvQcfxfzhnoZWShcA6yd + - id: 42Jphn41tdDvLxQiRWofrM sortOrder: 5 fieldKey: first_name label: First Name @@ -78666,7 +78666,7 @@ items: choices: null dynamic: false allowNull: false - - id: dCmEt1X7wMz2ukUna4KpEJ + - id: jjubA5imQBfP1GPYzGUgs8 sortOrder: 6 fieldKey: last_name label: Last Name @@ -78680,7 +78680,7 @@ items: choices: null dynamic: false allowNull: false - - id: Ro6yGr6wuKkdXqAEcWjvo + - id: wA5WHfF1Fc1oyn8WKW1GLu sortOrder: 7 fieldKey: organization label: Organization @@ -78696,7 +78696,7 @@ items: choices: null dynamic: false allowNull: false - - id: suMaaUMa4Kwm35RZWDvEwt + - id: RToTARLQ3t1chPyC9LaM9 sortOrder: 8 fieldKey: title label: Title @@ -78710,7 +78710,7 @@ items: choices: null dynamic: false allowNull: false - - id: 7c5U6XkNRByVMVq33oZ2Gf + - id: kfNKgMBD9oeXpSJztd9Car sortOrder: 9 fieldKey: image label: Image @@ -78724,7 +78724,7 @@ items: choices: null dynamic: false allowNull: false - - id: tFRSoTGqf9TD1QuD5sF5sF + - id: do48pYZ88HqgEFseJ99TEq sortOrder: 10 fieldKey: location label: Location @@ -78747,7 +78747,7 @@ items: choices: null dynamic: false allowNull: false - - id: vjhd3L4RSTFFComPMh5VeY + - id: kYtihbzKHarCS9QNKpJepU sortOrder: 11 fieldKey: properties label: Properties @@ -78763,7 +78763,7 @@ items: choices: null dynamic: false allowNull: false - - id: uzgDUrkW7c9PMWwXcL6KBs + - id: qVxSUH2EK7P7Xpr9aCzw8A sortOrder: 12 fieldKey: list_id label: List @@ -78775,7 +78775,7 @@ items: choices: null dynamic: true allowNull: false - - id: tEmhC8a9Fr6oVACBFTLbzs + - id: a722YHhX8juoHuGSu15L5C sortOrder: 16 fieldKey: list_identifier label: Existing List ID @@ -78789,7 +78789,7 @@ items: choices: null dynamic: true allowNull: false - - id: nX89QpMzLSo88HHCv4Q2tw + - id: vUkG5NYrHA5uzhMRNEq7W3 sortOrder: 17 fieldKey: list_name label: Name of list to create @@ -78801,7 +78801,7 @@ items: choices: null dynamic: false allowNull: false - - id: 3eaF1RdjF5s8R4sVfYDAkn + - id: kgUtwivBuvVEWaCA556yMK sortOrder: 18 fieldKey: retlOnMappingSave label: Connect to a static list in Klaviyo @@ -78824,7 +78824,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: 9moGkbvWYP5nGFkH1tjcic + - id: jzboicyJyfDdzFvP4a76UW sortOrder: 0 fieldKey: profile label: Profile @@ -78836,7 +78836,7 @@ items: choices: null dynamic: false allowNull: false - - id: bdjTtMLr7Cqkfm71NqTnzr + - id: uoaGhss7yL8arFZTZUQq5P sortOrder: 1 fieldKey: properties label: Properties @@ -78850,7 +78850,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4UkG5cGttRUPM2dH9Gh8U9 + - id: tdT7NBhxPkmSW4AKWq4mQh sortOrder: 2 fieldKey: time label: Time @@ -78869,7 +78869,7 @@ items: choices: null dynamic: false allowNull: false - - id: vLzteKEPs9rE1f583KKnjK + - id: 2GXC9cmfftBemffwB93vSd sortOrder: 3 fieldKey: value label: Value @@ -78883,7 +78883,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4b7a1uN2PZmpQV4pQ6jUoe + - id: picLsVjnYVVhV87iLC7tyu sortOrder: 4 fieldKey: unique_id label: Unique ID @@ -78903,7 +78903,7 @@ items: choices: null dynamic: false allowNull: false - - id: o6CeLsPKRN6msCYPEHcBh3 + - id: e8e4ewmWnX2D71v9uHbn7c sortOrder: 5 fieldKey: products label: Products @@ -78915,7 +78915,7 @@ items: choices: null dynamic: false allowNull: false - - id: t9X2DNPFnTMsoTVCkmfns9 + - id: fyB74sfELzhUdqDQjd2UEn sortOrder: 6 fieldKey: event_name label: Event Name @@ -78930,7 +78930,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4wcMU2stCNrszts8rftx2A + - id: fSomoGsssVnTEuFQ3vFdCq sortOrder: 7 fieldKey: product_event_name label: Product Event Name @@ -78954,7 +78954,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: sPYKJuaUJKEnY5uWVTWM6M + - id: hQRtitfxoKDSps5kfTvXeD sortOrder: 0 fieldKey: profile label: Profile @@ -78966,7 +78966,7 @@ items: choices: null dynamic: false allowNull: false - - id: jfrmdPFCKrfY9VErnzsKSU + - id: oF1pmSb1FEaq25odehpBLN sortOrder: 1 fieldKey: metric_name label: Metric Name @@ -78980,7 +78980,7 @@ items: choices: null dynamic: false allowNull: false - - id: njcSX553MqzbSY3J1Wueb9 + - id: nAWvCVjEb2rcw9E6zMhWv sortOrder: 2 fieldKey: properties label: Properties @@ -78994,7 +78994,7 @@ items: choices: null dynamic: false allowNull: false - - id: jUwNb8rpAat4XWgskYhep8 + - id: iPPQNuDhavA3gCixpuqn6c sortOrder: 3 fieldKey: time label: Time @@ -79013,7 +79013,7 @@ items: choices: null dynamic: false allowNull: false - - id: 9fC4qD3zpm6fnfVnCWU3R5 + - id: icVF8Jy2iLVokVeHQWZMsu sortOrder: 4 fieldKey: value label: Value @@ -79027,7 +79027,7 @@ items: choices: null dynamic: false allowNull: false - - id: cnULPG6z3o4qKLCiFmxPrM + - id: kvuYYrR1PCo1EWzvBzhin5 sortOrder: 5 fieldKey: unique_id label: Unique ID @@ -79047,7 +79047,7 @@ items: choices: null dynamic: false allowNull: false - - id: siz1crCeGz2yg3twoA9MPx + - id: wM6FSo6466vTxDQzDtgbbu sortOrder: 6 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -79068,7 +79068,7 @@ items: hidden: false defaultTrigger: event = "Audience Exited" fields: - - id: x9fpYFcsF325YUEGYVoenV + - id: h7sZWgKBkZ9CBHonSDoD5H sortOrder: 0 fieldKey: email label: Email @@ -79082,7 +79082,7 @@ items: choices: null dynamic: false allowNull: false - - id: nXH8cyTuCZy534BuoD1n7A + - id: 6vNrzjwTGxbjFmfX7Pfppd sortOrder: 1 fieldKey: external_id label: External ID @@ -79096,7 +79096,7 @@ items: choices: null dynamic: false allowNull: false - - id: CvkstHgJ1iD1Y62ow9bzU + - id: nhFXvFsDFHAqvFmeAtsfFA sortOrder: 3 fieldKey: phone_number label: Phone Number @@ -79113,7 +79113,7 @@ items: choices: null dynamic: false allowNull: false - - id: inEA1R6m8UdPzCZACbeMP6 + - id: 6fuvuXhGHBkw2FPDuG8Xk3 sortOrder: 4 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -79126,7 +79126,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5mBQXywjGJL53bYubSdAqo + - id: nhCURcc4GfuBcMJxYxixuB sortOrder: 5 fieldKey: country_code label: Country Code @@ -79643,7 +79643,7 @@ items: hidden: false defaultTrigger: event = "Audience Entered" fields: - - id: jyXQzqg1DVL5pEECEESdRA + - id: onU7GeoiNCd52UARGkDyDB sortOrder: 0 fieldKey: email label: Email @@ -79657,7 +79657,7 @@ items: choices: null dynamic: false allowNull: false - - id: gZWgAU6GaN9Fak1LgsMaJ2 + - id: tygpoevD79Se4ZbPbPNYcH sortOrder: 1 fieldKey: phone_number label: Phone Number @@ -79674,7 +79674,7 @@ items: choices: null dynamic: false allowNull: false - - id: gj3NwR52jCcsJDgRZ7aYsS + - id: 72gwqYNbjeJ1H5rtFaVuun sortOrder: 3 fieldKey: external_id label: External ID @@ -79688,7 +79688,7 @@ items: choices: null dynamic: false allowNull: false - - id: kyHGe67xXVg8EjoJ1QqBy4 + - id: 4wsCLSQDm2KgeE7VCF4tvo sortOrder: 4 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -79701,7 +79701,7 @@ items: choices: null dynamic: false allowNull: false - - id: kMwDvyCVr3mu8UdrWaWtN5 + - id: rJy7boyHwXompfnZV8G9Hc sortOrder: 6 fieldKey: first_name label: First Name @@ -79715,7 +79715,7 @@ items: choices: null dynamic: false allowNull: false - - id: 6WwCmmoDfoMQuzMfWKc5RW + - id: 7dPy7P4Tcin6V89hs2gdTK sortOrder: 7 fieldKey: last_name label: Last Name @@ -79729,7 +79729,7 @@ items: choices: null dynamic: false allowNull: false - - id: hKNGiEHVhRfrco66unJd4P + - id: wgYifTnXFQ52cTn8bopDg4 sortOrder: 8 fieldKey: image label: Image @@ -79743,7 +79743,7 @@ items: choices: null dynamic: false allowNull: false - - id: veBjTr3FuQBsvhfDxewYbG + - id: qbfRewkzR8WaNsuMVSNBDt sortOrder: 9 fieldKey: title label: Title @@ -79757,7 +79757,7 @@ items: choices: null dynamic: false allowNull: false - - id: rp9tx4jTiQNekY7CFhbb2T + - id: 9tevcp8Cyg58PPQWgLg4eD sortOrder: 10 fieldKey: organization label: Organization @@ -79773,7 +79773,7 @@ items: choices: null dynamic: false allowNull: false - - id: xqvi4yshvVuB6heW1JsTPB + - id: pv6WUuiZ8dFk4iSdMnKqaq sortOrder: 11 fieldKey: location label: Location @@ -79796,7 +79796,7 @@ items: choices: null dynamic: false allowNull: false - - id: fUoXCyhoNcxXusuRFP3eMG + - id: dEz5yjaHp3KmYyohguNSN sortOrder: 12 fieldKey: properties label: Properties @@ -79812,7 +79812,7 @@ items: choices: null dynamic: false allowNull: false - - id: bSXvNCrYBXPwwgTe3BCP52 + - id: fhjFshzF6BtBFhom9rh8EH sortOrder: 13 fieldKey: country_code label: Country Code @@ -80329,7 +80329,7 @@ items: hidden: false defaultTrigger: type = "Identify" fields: - - id: 4sWoGT8o1n4g77pcNpzpZP + - id: mueRLFHBZDCTiJQCuKhbTk sortOrder: 0 fieldKey: email label: Email @@ -80343,7 +80343,7 @@ items: choices: null dynamic: false allowNull: false - - id: vZ1aFhZvdxYuYZUmK8x4zv + - id: oPFrX45tL4gxjpe931epL5 sortOrder: 1 fieldKey: external_id label: External ID @@ -80358,7 +80358,7 @@ items: choices: null dynamic: false allowNull: false - - id: pv3rbsFAq7bizxS4VLcQ9Z + - id: 3CPn9s4EE8YAvXicVMrHwx sortOrder: 2 fieldKey: list_id label: List @@ -80370,7 +80370,7 @@ items: choices: null dynamic: true allowNull: false - - id: tJQMM3azsUayz6CrQRYdpr + - id: 74EWaMoEjoUG848uMJq5RS sortOrder: 3 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -80383,7 +80383,7 @@ items: choices: null dynamic: false allowNull: false - - id: g1sMigCrMJiF9vwf9358Ci + - id: vNopxHtN4798izPSemYMiA sortOrder: 5 fieldKey: phone_number label: Phone Number @@ -80400,7 +80400,7 @@ items: choices: null dynamic: false allowNull: false - - id: 6zocEtQMgGMVLQHAovfxot + - id: 3LafQaH7znBAeNFekFPJmu sortOrder: 6 fieldKey: country_code label: Country Code @@ -80917,7 +80917,7 @@ items: hidden: false defaultTrigger: type = "track" and event = "User Subscribed" fields: - - id: 7Lar8JXJ9pqGz1bqGnRuLP + - id: kshdhHhjf66iZw53JP4jCa sortOrder: 0 fieldKey: email label: Email @@ -80939,7 +80939,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5SCMBHSAC1qHbRrsZ3QoMz + - id: qST8R3nTF2imwr3M6V9bm5 sortOrder: 1 fieldKey: phone_number label: Phone Number @@ -80961,7 +80961,7 @@ items: choices: null dynamic: false allowNull: false - - id: vM25UXsXAbTxgZGCqFoMaE + - id: j2Ky8UfaGisDWjaEVRCNig sortOrder: 2 fieldKey: country_code label: Country Code @@ -81470,7 +81470,7 @@ items: value: ZW dynamic: false allowNull: false - - id: 8jeFGWenYFriWVqYQ8NwTL + - id: faYe8qvEVa8eyCJWJnZCvL sortOrder: 3 fieldKey: list_id label: List Id @@ -81485,7 +81485,7 @@ items: choices: null dynamic: true allowNull: false - - id: cHA3mg1dSX1i7fv83koNNV + - id: 3YGr8GYmsN5hQ4QZLyGM1j sortOrder: 4 fieldKey: custom_source label: Custom Source ($source) @@ -81502,8 +81502,24 @@ items: choices: null dynamic: false allowNull: false - - id: 8yQvzPCPXZyKqjxPGDGg31 + - id: v3aZwzQrSUh6r9hKQp5Kzo sortOrder: 5 + fieldKey: historical_import + label: Historical Import + type: BOOLEAN + description: >- + When set to true, the profile will be subscribed as a historical import. + This is useful for importing existing profiles into Klaviyo without + sending them an email or SMS. + placeholder: '' + defaultValue: false + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: qDpwA9fftnuZEfpy5JzhmK + sortOrder: 6 fieldKey: consented_at label: Consented At type: DATETIME @@ -81516,8 +81532,8 @@ items: choices: null dynamic: false allowNull: false - - id: jfASe8xP3kzqBAMhMs5pxo - sortOrder: 6 + - id: oKrpoLtsxh7mAGfiW8UKym + sortOrder: 7 fieldKey: enable_batching label: Batch Data to Klaviyo type: BOOLEAN @@ -81536,7 +81552,7 @@ items: hidden: false defaultTrigger: type = "track" and event = "User Unsubscribed" fields: - - id: b16sEJ8ZsjUQvSiWSWp6yV + - id: tYGkLpEwhTPBWsJKNx8Su6 sortOrder: 0 fieldKey: email label: Email @@ -81558,7 +81574,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4EnwEPyEAGLgx7bKg3yVXY + - id: 5mFaagb3XRFKNr5pzcm2b4 sortOrder: 1 fieldKey: phone_number label: Phone Number @@ -81580,7 +81596,7 @@ items: choices: null dynamic: false allowNull: false - - id: r1DajHGgYEerWaEmrth9h4 + - id: krpYAFsuUWomwmc7RnqKNK sortOrder: 2 fieldKey: country_code label: Country Code @@ -82089,7 +82105,7 @@ items: value: ZW dynamic: false allowNull: false - - id: qFhhdiJNjbuB1UEAvLdFDK + - id: xzrkuef5bwxbyPG5RxLGgP sortOrder: 3 fieldKey: list_id label: List Id @@ -82103,7 +82119,7 @@ items: choices: null dynamic: true allowNull: false - - id: beWdRFWtxv4uapfJxwzMXb + - id: fCnmfYh5uz1FN8wpdaQSVd sortOrder: 4 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -84633,7 +84649,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: p4STQ2Bktmjj7oKxWteodJ + - id: bG7p4gBRVor9W2cpNgVo7Y sortOrder: 0 fieldKey: event_name label: Event Name @@ -84651,7 +84667,7 @@ items: dynamic: false allowNull: false hidden: false - - id: fFnr29VLAnibybNLqyDRQd + - id: sTck5gv4rpr4Ytb54bsgcd sortOrder: 1 fieldKey: event_type label: Event Type @@ -84666,7 +84682,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 2ihu6ZrRmBD9rumCBVyqA1 + - id: tPZqRnyrpcZCFam1fjAQK sortOrder: 2 fieldKey: segment_user_id label: User ID @@ -84681,7 +84697,7 @@ items: dynamic: false allowNull: false hidden: false - - id: qbcYhPevV9fUPShAA7uTLL + - id: pXxJb1AjJcQshzJq1hLeXc sortOrder: 3 fieldKey: livelike_profile_id label: LiveLike User Profile ID @@ -84696,7 +84712,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 8NkPzSCvjBdg41isbWZDb2 + - id: ssAmWCqsKUP7xQM9Wg4xFV sortOrder: 5 fieldKey: custom_id label: Custom ID @@ -84716,7 +84732,7 @@ items: dynamic: false allowNull: false hidden: false - - id: t8V2yA4ZcTaCMDpdwfY2sX + - id: mLpype1QecLqkwtAnoUyc4 sortOrder: 6 fieldKey: timestamp label: Timestamp @@ -84734,7 +84750,7 @@ items: dynamic: false allowNull: false hidden: false - - id: cLkyfDHuRpYuLpNrmHoKpP + - id: jE7VA9DydShkYwQPcC8SYg sortOrder: 7 fieldKey: properties label: Event Properties @@ -84759,7 +84775,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: ahGL5iZiqgyD8KVKQSk9AL + - id: 7CwiWQFxVRE4NtZPWPMxCi sortOrder: 0 fieldKey: audience_id label: Segment Audience ID @@ -84773,7 +84789,7 @@ items: choices: null dynamic: false allowNull: false - - id: amsVBCYihJQTusBp2pZscs + - id: hpRmg1vQNDkz9CdjT24Cx4 sortOrder: 1 fieldKey: audience_name label: Segment Audience Name @@ -84787,7 +84803,7 @@ items: choices: null dynamic: false allowNull: false - - id: u3KQPMHZrBmZGL3ePxEpS8 + - id: eo7oYaA4PuKtRpvZ44qBBm sortOrder: 2 fieldKey: action label: Action @@ -84802,7 +84818,7 @@ items: choices: null dynamic: false allowNull: false - - id: cDLfYtf62K1SKnQjzwqSKA + - id: dpPHyShfG1wdFitCfiMVH7 sortOrder: 3 fieldKey: timestamp label: Timestamp @@ -84816,29 +84832,36 @@ items: choices: null dynamic: false allowNull: false - - id: xu2Zi43oXiLq2hXTSerVDK - sortOrder: 5 - fieldKey: traits_or_properties_hidden - label: Traits or Properties hidden + - id: ikpcPk2Yd7Um1gGANMeywK + sortOrder: 4 + fieldKey: additional_user_traits + label: Additional user traits type: OBJECT - description: >- - Hidden field used to figure out if user is added or removed from an - Engage Audience + description: Used for trait values to send to Livelike. placeholder: '' defaultValue: - '@if': - exists: - '@path': $.traits - then: - '@path': $.traits - else: - '@path': $.properties + livelike_profile_id: + '@if': + exists: + '@path': $.traits.livelike_profile_id + then: + '@path': $.traits.livelike_profile_id + else: + '@path': $.properties.livelike_profile_id + email: + '@if': + exists: + '@path': $.traits.email + then: + '@path': $.traits.email + else: + '@path': $.properties.email required: false multiple: false choices: null dynamic: false allowNull: false - - id: rd3ND6ENeRQ58uDM5ZVgCi + - id: 4YHwpQJjX9dHU3RhYmXBAq sortOrder: 6 fieldKey: user_id label: User ID @@ -84852,26 +84875,29 @@ items: choices: null dynamic: false allowNull: false - - id: 92HbHyN84LBFpD6G7ekoYS + - id: xjXtFJhkSWunszHXcMUF3Q sortOrder: 7 - fieldKey: batch_size - label: Batch Size - type: NUMBER - description: The number of records to process in each batch. Default is 100. + fieldKey: enable_batching + label: Enable Batching + type: BOOLEAN + description: >- + Enable batching for this action. If enabled, the action will process + records in batches. placeholder: '' - defaultValue: 100 + defaultValue: true required: false multiple: false choices: null dynamic: false allowNull: false - - id: nMtDZnTRVhjnBgyGLFo2t1 + - id: 8LgVSFPCm5NHonkJF3uSPH sortOrder: 8 - fieldKey: enable_batching - label: Enable Batching? - type: BOOLEAN - description: When enabled, Segment will send events in batches. - defaultValue: false + fieldKey: batch_size + label: Batch Size + type: NUMBER + description: The number of records to process in each batch. Default is 100. + placeholder: '' + defaultValue: 100 required: false multiple: false choices: null @@ -84879,7 +84905,7 @@ items: allowNull: false presets: - actionId: hi6egKehiHEcn789ZZvs18 - name: Screen Calls + name: Page Calls fields: event_name: '@if': @@ -84903,7 +84929,7 @@ items: '@path': $.timestamp properties: '@path': $.properties - trigger: type = "screen" + trigger: type = "page" - actionId: hi6egKehiHEcn789ZZvs18 name: Track User Actions fields: @@ -84925,7 +84951,7 @@ items: '@path': $.properties trigger: type = "track" - actionId: hi6egKehiHEcn789ZZvs18 - name: Page Calls + name: Screen Calls fields: event_name: '@if': @@ -84949,7 +84975,7 @@ items: '@path': $.timestamp properties: '@path': $.properties - trigger: type = "page" + trigger: type = "screen" partnerOwned: true - id: 644ad6c6c4a87a3290450602 display_name: LiveRamp Audiences @@ -85013,7 +85039,7 @@ items: hidden: false defaultTrigger: event = "Audience Entered" fields: - - id: bcMzgzKBnTLzKgq78s4uCd + - id: k3mhDicSXuifyaW5XtxiTQ sortOrder: 0 fieldKey: sftp_username label: Username @@ -85026,7 +85052,7 @@ items: dynamic: false allowNull: false hidden: false - - id: qicLr2aFxyGNGL9h6u4tva + - id: 6oUUAu7AFbrt9aafbsgGu4 sortOrder: 1 fieldKey: sftp_password label: Password @@ -85039,7 +85065,7 @@ items: dynamic: false allowNull: false hidden: false - - id: fns8XJUPQ1w3YbwKxM9nFp + - id: mJ3cmGfEBmMr8rR42XD6FG sortOrder: 2 fieldKey: sftp_folder_path label: Folder Path @@ -85056,7 +85082,7 @@ items: dynamic: false allowNull: false hidden: false - - id: jBusi4jwj3nQr95rXHqogQ + - id: t1ZZ7wxaWn5z7dzVfppPgy sortOrder: 3 fieldKey: audience_key label: LiveRamp Audience Key @@ -85075,7 +85101,7 @@ items: dynamic: false allowNull: false hidden: false - - id: n2etQ1gt5FdeJvncw7XSd3 + - id: twV2vtaLtG2niwaQv6UMsS sortOrder: 4 fieldKey: identifier_data label: Identifier Data @@ -85088,7 +85114,7 @@ items: dynamic: false allowNull: false hidden: false - - id: jtdtwXHabf8WvHBup9fFTw + - id: jEiuGaTjfAZzCpiWVc83jY sortOrder: 5 fieldKey: unhashed_identifier_data label: Hashable Identifier Data @@ -85104,7 +85130,7 @@ items: dynamic: false allowNull: false hidden: false - - id: udMiBRFdqAEy7dwZ8jtNFD + - id: sRRXcW5KjridwppD1kHk6n sortOrder: 6 fieldKey: delimiter label: Delimeter @@ -85118,7 +85144,7 @@ items: dynamic: false allowNull: false hidden: false - - id: baKrghP4w9G4xYhtJ9sMuN + - id: 6JYHxJ7e176ZCaNQD3BsPT sortOrder: 7 fieldKey: filename label: Filename @@ -85143,7 +85169,7 @@ items: hidden: false defaultTrigger: event = "Audience Entered" fields: - - id: jVyeyS3iBPaxuq6dErmaoB + - id: 2MUCKviAJMGWWS8k3kk2uJ sortOrder: 0 fieldKey: s3_aws_access_key label: AWS Access Key ID @@ -85156,7 +85182,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 2tNwMzSiKWg8PjXshtPEuL + - id: 2WiwXFCGvuGAnL73BTWkbX sortOrder: 1 fieldKey: s3_aws_secret_key label: AWS Secret Access Key @@ -85169,7 +85195,7 @@ items: dynamic: false allowNull: false hidden: false - - id: giyTt6vJbq8PEKUD9Gq7dH + - id: 5dAHm9m3eu8WAHpqgUqEyX sortOrder: 2 fieldKey: s3_aws_bucket_name label: AWS Bucket Name @@ -85182,7 +85208,7 @@ items: dynamic: false allowNull: false hidden: false - - id: b1gMoLUqSYnP2hVbEKv1rw + - id: 8gCdxXCFkJ2gTrtQnvyvAP sortOrder: 3 fieldKey: s3_aws_region label: AWS Region (S3 only) @@ -85195,7 +85221,7 @@ items: dynamic: false allowNull: false hidden: false - - id: eSEWsjFxKDfhoiUwL1TQe4 + - id: vUjtXhYp55e7bd6qxkTg3p sortOrder: 4 fieldKey: audience_key label: LiveRamp Audience Key @@ -85214,7 +85240,7 @@ items: dynamic: false allowNull: false hidden: false - - id: isW2cPNRpVdij1ajDHjjpq + - id: wEpEMcgx6BEWNrSFYwfJZo sortOrder: 5 fieldKey: identifier_data label: Identifier Data @@ -85227,7 +85253,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 5zNgqeHT4164w5wsfBF9cj + - id: hhdh14b4ZFcbArNz5p9Pyi sortOrder: 6 fieldKey: unhashed_identifier_data label: Hashable Identifier Data @@ -85243,7 +85269,7 @@ items: dynamic: false allowNull: false hidden: false - - id: pqSU2vN4u2yqrsQUF4tK5o + - id: qUnMU8eixADgi755nunvZe sortOrder: 7 fieldKey: delimiter label: Delimeter @@ -85257,7 +85283,7 @@ items: dynamic: false allowNull: false hidden: false - - id: qtVPusxF4wmZCfBRFMBvXL + - id: ahneRYCYP7CEvm3v3UFyCu sortOrder: 8 fieldKey: filename label: Filename @@ -85274,7 +85300,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 3aaHsfmUByergYzSRd9CeY + - id: 4PLfCV1ZEbBaX2591KYqYq sortOrder: 11 fieldKey: s3_aws_bucket_path label: AWS Bucket Path [optional] @@ -125020,21 +125046,7 @@ items: hidden: false defaultTrigger: event = "Audience Entered" fields: - - id: 2paiXUn1PV2MRu4qUrY1UD - sortOrder: 0 - fieldKey: external_id - label: External Audience ID - type: STRING - description: The CRM Data ID for The Trade Desk Segment. - placeholder: '' - defaultValue: - '@path': $.context.personas.external_audience_id - required: false - multiple: false - choices: null - dynamic: false - allowNull: false - - id: agE9DjGQKgQLy4L9imtVEc + - id: uukqUY4RBjHJe5fUF6KFvZ sortOrder: 1 fieldKey: pii_type label: PII Type @@ -125050,7 +125062,7 @@ items: value: EmailHashedUnifiedId2 dynamic: false allowNull: false - - id: pz8AT8GNgzPUtF3Jco9rQu + - id: 9eb2ZZXEU3AjyiWxVCF6jJ sortOrder: 2 fieldKey: email label: User Email @@ -125064,48 +125076,6 @@ items: choices: null dynamic: false allowNull: false - - id: fdvcMzzjcVgmq69uNY4AgG - sortOrder: 3 - fieldKey: enable_batching - label: Enable Batching - type: BOOLEAN - description: Enable batching of requests to The Trade Desk CRM Segment. - placeholder: '' - defaultValue: true - required: false - multiple: false - choices: null - dynamic: false - allowNull: false - - id: dAXAehsYk6RQk6QiADHbh5 - sortOrder: 4 - fieldKey: event_name - label: Event Name - type: STRING - description: The name of the current Segment event. - placeholder: '' - defaultValue: - '@path': $.event - required: false - multiple: false - choices: null - dynamic: false - allowNull: false - - id: cVTM3kQumtRnJhyd1adti7 - sortOrder: 5 - fieldKey: batch_size - label: Batch Size - type: NUMBER - description: >- - Maximum number of events to include in each batch. Actual batch sizes - may be lower. - placeholder: '' - defaultValue: 100000 - required: false - multiple: false - choices: null - dynamic: false - allowNull: false presets: [] partnerOwned: false - id: 63d2e550fb90f1632ed8820a diff --git a/src/_data/catalog/destinations_private.yml b/src/_data/catalog/destinations_private.yml index 29047ce6b1..92373c66b0 100644 --- a/src/_data/catalog/destinations_private.yml +++ b/src/_data/catalog/destinations_private.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# destination data last updated 2025-07-31 +# destination data last updated 2025-08-07 items: - id: 54521fd925e721e32a72eee1 display_name: Pardot diff --git a/src/_data/catalog/source_categories.yml b/src/_data/catalog/source_categories.yml index 4037c85ab7..8cf1a9732d 100644 --- a/src/_data/catalog/source_categories.yml +++ b/src/_data/catalog/source_categories.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# source categories last updated 2025-07-31 +# source categories last updated 2025-08-07 items: - display_name: A/B testing slug: a-b-testing diff --git a/src/_data/catalog/sources.yml b/src/_data/catalog/sources.yml index 8bcc064b0d..cc64150a18 100644 --- a/src/_data/catalog/sources.yml +++ b/src/_data/catalog/sources.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# sources last updated 2025-07-31 +# sources last updated 2025-08-07 items: - id: 8HWbgPTt3k display_name: .NET