From ed7e6ddffee14b9beae43eb240b96a850ee871d5 Mon Sep 17 00:00:00 2001 From: joeynmq <37472597+joeynmq@users.noreply.github.com> Date: Fri, 24 Jan 2025 15:58:57 +0800 Subject: [PATCH 01/21] Update index.md --- .../destinations/catalog/actions-intercom-cloud/index.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/connections/destinations/catalog/actions-intercom-cloud/index.md b/src/connections/destinations/catalog/actions-intercom-cloud/index.md index b62ec0b0d3..ba5510b643 100644 --- a/src/connections/destinations/catalog/actions-intercom-cloud/index.md +++ b/src/connections/destinations/catalog/actions-intercom-cloud/index.md @@ -47,3 +47,8 @@ If a company is created without an attached user, the company does not appear on ### Why isn’t a user getting attached to a company? When you use the Identify Company action, Segment creates or updates a company's information. In the same action, Segment also attaches the user in your group call to that company. If the user doesn't exist in Intercom when the action runs, Segment creates or updates the company but can't attach the user. Ensure the user is created in Intercom first. + +### Why do I get a 404 Not Found error when sending Track events to Intercom? +A `404 Not Found` error typically occurs when attempting to update a user in Intercom who does not yet exist in the system. This can happen if an Identify event, which includes the corresponding `userId`, was not sent before the Track event that resulted in the `404` error. + +To resolve this, ensure that Identify events are sent **before** Track events to guarantee proper processing and avoid errors. From 889591bcb14fcb46f6bde60bf3572e4ed0cbfc74 Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Fri, 30 May 2025 17:28:29 +0530 Subject: [PATCH 02/21] Update tables.md --- src/unify/profiles-sync/tables.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index a40ddab975..f10f49df2b 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -105,7 +105,9 @@ Profile raw tables contain records of changes to your Segment profiles and Ident With raw tables, you have full control over the materialization of Profiles in your warehouse, as well as increased observibility. -Raw tables contain complete historical data when using historical backfill. +Raw tables contain complete historical data when using historical backfill. + +Note: `Timestamp` column will be empty for backfilled data. This is because reverse engineer historical profile changes from the current state of the profile. ### The id_graph_updates table @@ -296,7 +298,7 @@ If you're not using materialized views for Profile Sync and would like to switch 2. **Request a Full Profiles and Events Backfill** - After enabling the materialized views, you'll need to ensure historical data is populated in the materialized tables. - Write to [friends@segment.com](mailto:friends@segment.com) and request: - - A full **Profiles Backfill** to populate historical profiles data. + - A full **Profiles Backfill** to populate historical profiles data. Materialized views will have nil `Timestamp` for the same reason as Profile events table, discussed above. - An **Events Backfill** to include any relevant historical events, including a date range for Segment to pull data in for the events backfill. 3. **Verify Your Data** From a6972d2b400b8a3dfad7d99436dea28be296d5cc Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Fri, 30 May 2025 17:33:26 +0530 Subject: [PATCH 03/21] Update tables.md --- src/unify/profiles-sync/tables.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index f10f49df2b..62de487d25 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -107,7 +107,7 @@ With raw tables, you have full control over the materialization of Profiles in y Raw tables contain complete historical data when using historical backfill. -Note: `Timestamp` column will be empty for backfilled data. This is because reverse engineer historical profile changes from the current state of the profile. +Note: `Timestamp` column will be empty for backfilled data. This is because reverse engineer historical profile changes from the current state of the profile, and do not have access to the actual event timestamps. ### The id_graph_updates table @@ -298,7 +298,7 @@ If you're not using materialized views for Profile Sync and would like to switch 2. **Request a Full Profiles and Events Backfill** - After enabling the materialized views, you'll need to ensure historical data is populated in the materialized tables. - Write to [friends@segment.com](mailto:friends@segment.com) and request: - - A full **Profiles Backfill** to populate historical profiles data. Materialized views will have nil `Timestamp` for the same reason as Profile events table, discussed above. + - A full **Profiles Backfill** to populate historical profiles data. Materialized views will have nil `Timestamp` for the same reason as in Profile events table, discussed above. - An **Events Backfill** to include any relevant historical events, including a date range for Segment to pull data in for the events backfill. 3. **Verify Your Data** From 8884c7570fb9391c125212b6a95f7081bf37732e Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Fri, 30 May 2025 17:36:25 +0530 Subject: [PATCH 04/21] Update tables.md --- src/unify/profiles-sync/tables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index 62de487d25..6224c42170 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -107,7 +107,7 @@ With raw tables, you have full control over the materialization of Profiles in y Raw tables contain complete historical data when using historical backfill. -Note: `Timestamp` column will be empty for backfilled data. This is because reverse engineer historical profile changes from the current state of the profile, and do not have access to the actual event timestamps. +Note: `Timestamp` column will be empty for backfilled data. This is because we reverse engineer historical profile changes from the current state of the profile, and do not have access to the actual event timestamps. ### The id_graph_updates table From 307d5fc55b667defe158c7dcc59be2a96926406a Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Fri, 30 May 2025 17:37:01 +0530 Subject: [PATCH 05/21] Update tables.md --- src/unify/profiles-sync/tables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index 6224c42170..d1891b5b38 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -107,7 +107,7 @@ With raw tables, you have full control over the materialization of Profiles in y Raw tables contain complete historical data when using historical backfill. -Note: `Timestamp` column will be empty for backfilled data. This is because we reverse engineer historical profile changes from the current state of the profile, and do not have access to the actual event timestamps. +Note: `Timestamp` column will be empty for backfilled data. This is because we reverse engineer historical profile changes from the current state of the profile, and do not have access to the actual change timestamps. ### The id_graph_updates table From 6e7f1bce78c95ce188c6cfec06e25166100595de Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Fri, 30 May 2025 17:37:38 +0530 Subject: [PATCH 06/21] Update tables.md --- src/unify/profiles-sync/tables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index d1891b5b38..5e9e13b114 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -298,7 +298,7 @@ If you're not using materialized views for Profile Sync and would like to switch 2. **Request a Full Profiles and Events Backfill** - After enabling the materialized views, you'll need to ensure historical data is populated in the materialized tables. - Write to [friends@segment.com](mailto:friends@segment.com) and request: - - A full **Profiles Backfill** to populate historical profiles data. Materialized views will have nil `Timestamp` for the same reason as in Profile events table, discussed above. + - A full **Profiles Backfill** to populate historical profiles data. Materialized views will have null `Timestamp` for the same reason as in Profile events table, discussed above. - An **Events Backfill** to include any relevant historical events, including a date range for Segment to pull data in for the events backfill. 3. **Verify Your Data** From e2d6a544441cce8606373c3b1cffb7faa9e03182 Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Fri, 30 May 2025 17:41:57 +0530 Subject: [PATCH 07/21] Update tables.md --- src/unify/profiles-sync/tables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index 5e9e13b114..196ea67af4 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -107,7 +107,7 @@ With raw tables, you have full control over the materialization of Profiles in y Raw tables contain complete historical data when using historical backfill. -Note: `Timestamp` column will be empty for backfilled data. This is because we reverse engineer historical profile changes from the current state of the profile, and do not have access to the actual change timestamps. +Note: `Timestamp` column will be empty for backfilled data. This is because we reverse engineer historical profile changes from the current state of the profile, and do not use the actual change timestamps. ### The id_graph_updates table From 20f63b70a5b439c7b239db669909b21a823f51fa Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Fri, 30 May 2025 17:43:01 +0530 Subject: [PATCH 08/21] Update tables.md --- src/unify/profiles-sync/tables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index 196ea67af4..29ca239bf0 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -107,7 +107,7 @@ With raw tables, you have full control over the materialization of Profiles in y Raw tables contain complete historical data when using historical backfill. -Note: `Timestamp` column will be empty for backfilled data. This is because we reverse engineer historical profile changes from the current state of the profile, and do not use the actual change timestamps. +Note: `Timestamp` column will be empty for backfilled data. This is because we reverse engineer historical profile changes from the current state of the profile, and do not refer to the actual change history. ### The id_graph_updates table From 3a7c60f40b89ce3381d359da8378ee7b7250704b Mon Sep 17 00:00:00 2001 From: Ravi Bansal Date: Tue, 3 Jun 2025 21:57:01 -0700 Subject: [PATCH 09/21] Draft Public Facing Doc for Amazon Conversions API --- .../catalog/amazon-conversions-api/index.md | 164 ++++++++++++++++++ 1 file changed, 164 insertions(+) create mode 100644 src/connections/destinations/catalog/amazon-conversions-api/index.md diff --git a/src/connections/destinations/catalog/amazon-conversions-api/index.md b/src/connections/destinations/catalog/amazon-conversions-api/index.md new file mode 100644 index 0000000000..929e220ebd --- /dev/null +++ b/src/connections/destinations/catalog/amazon-conversions-api/index.md @@ -0,0 +1,164 @@ +--- +title: Amazon Conversions API +id: 683ef14a3f9aac157e3a3446 +hide-personas-partial: true +hide-boilerplate: false +hide-dossier: true +private: false +hidden: false + +--- +The Amazon Conversions API destination is a server-to-server integration with the Amazon Events API. This destination allows advertisers to send real-time or offline conversion events data from Segment directly to Amazon without needing Amazon Ad Tag (AAT) setup. + +This enables advertisers to evaluate the effectiveness of their Amazon marketing campaigns regardless of the location of the conversion and utilize this information to drive campaign optimization. Events API can help strengthen performance and decrease cost per action with more complete attribution, improved data reliability, and better optimized delivery. + +## Benefits of Amazon Conversions API (Actions) + +The Amazon Conversions API destination provides the following benefits: + +- **Simplified setup**. Data mapping for actions-based destinations happens during configuration, which eliminates the need for most settings. +- **Clearer data mapping**. Actions-based destinations enable you to define the mapping between the data Segment receives from your source and the data Segment sends to the Amazon Conversions API. +- **Prebuilt event mappings**. Standard events like `Add to Shopping Cart` and `Checkout` come preconfigured with recommended parameters. +- **Multiple event types**. Support for various conversion event types including purchases, sign-ups, leads, and more. +- **Multi-platform support**. Send events from websites, Android apps, iOS apps, Fire TV, or offline sources. +- **Comprehensive user matching**. Multiple matching keys available including email, phone, name, address, and mobile advertising IDs. +- **Data normalization**. Data is normalized before it's hashed to send to Amazon Conversions. +- **Custom attributes**. Include additional context with event-specific attributes. +- **Consent management**. Built-in support for various privacy frameworks including Amazon consent options, TCF, and GPP. + +## Getting started + +Before connecting to the Amazon Conversions API destination, you must have an [Amazon Advertising account](https://advertising.amazon.com/API/docs/en-us/guides/onboarding/overview){:target="_blank"} and an Advertiser ID. + +To connect the Amazon Conversions API Destination: + +1. From the Segment web app, go to **Connections > Catalog**. +2. Search for **Amazon Conversions Api** in the top right corner. +3. From the search results under **Destinations**, click on **Amazon Conversions Api** destination and then click on **Add destination** +4. Select the source that will send data to Amazon Conversions API and follow the prompts to name your destination. +5. On the **Basic Settings** page, enter: + - Destination name + - **Region** - Select North America (NA), Europe (EU), or Far East (FE) based on your Amazon Advertising account + - **Amazon Advertiser ID** - Your Amazon Advertising Account ID +6. Authenticate via OAuth when prompted. +7. Go to the **Mappings** tab. Prebuilt mappings, like `Checkout`, `Search`, and `Add to Shopping Cart`, include predefined parameters. +8. To create a new mapping: + - Click **New Mapping** and select **Track Conversion**. + - Configure and enable the mapping. +9. Follow the steps in [Customizing mappings](/docs/connections/destinations/actions/#customize-mappings). +10. Toggle **Enable Destination** on, then click **Save Changes**. + +{% include components/actions-fields.html settings="true"%} + +> info "Event Action Source" +> By default, Segment sends all mappings as `website` conversions. To send events from mobile apps, Fire TV, or offline sources, set the Event Action Source in each mapping to the appropriate value: `android`, `ios`, `fire_tv`, or `offline`. + +## Supported event types + +Amazon Conversions API supports the following standard event types: + +| Event Type | Description | +| ---------- | ----------- | +| ADD_TO_SHOPPING_CART | When a user adds an item to their shopping cart | +| APPLICATION | When a user submits an application | +| CHECKOUT | When a user initiates a checkout process | +| CONTACT | When a user submits contact information | +| LEAD | When a user perform an action that initiates a sales lead | +| OFF_AMAZON_PURCHASES | When a user completes a purchase | +| MOBILE_APP_FIRST_START | When a user opens a mobile app for the first time | +| PAGE_VIEW | When a user views a page | +| SEARCH | When a user performs a search | +| SIGN_UP | When a user creates an account | +| SUBSCRIBE | When a user subscribes to a service | +| OTHER | For custom events that don't fit into the standard types | + +## Match keys for user identification + +Amazon requires at least one match key to identify the user associated with each conversion event. The following match keys are supported: + +| Match Key | Description | +| --------- | ----------- | +| email | User's email address (will be hashed) | +| phone | User's phone number (will be hashed) | +| firstName | User's first name (will be hashed) | +| lastName | User's last name (will be hashed) | +| address | User's street address (will be hashed) | +| city | User's city (will be hashed) | +| state | User's state (will be hashed) | +| postalCode | User's postal code (will be hashed) | +| maid | Mobile advertising ID (ADID, IDFA, or FIREADID) | +| rampId | RAMP ID for attribution to traffic events | +| matchId | Custom match ID for the user | + +Segment automatically maps these fields from standard identity traits when available. + +## Consent management + +For EU advertisers and users, Amazon requires consent information to be included with conversion events. The Amazon Conversions API supports several consent mechanisms: + +### Geographic consent (IP Address) + +For basic consent management, include the user's IP address. Segment automatically maps this from the context.ip field when available. + +### Amazon consent format + +Amazon-specific consent format with two primary fields: + +| Consent Field | Description | Values | +| ------------- | ----------- | ------ | +| amznAdStorage | Whether the user has consented to cookie-based tracking | GRANTED, DENIED | +| amznUserData | Whether the user has consented to use personal data for advertising | GRANTED, DENIED | + +### Industry standard consent + +For more comprehensive consent management: + +| Consent Field | Description | +| ------------- | ----------- | +| tcf | Transparency and Consent Framework (TCF) encoded string | +| gpp | Global Privacy Platform (GPP) encoded string | + +## Data processing options + +The Amazon Conversions API supports data processing options to control how events are processed: + +| Option | Description | +| ------ | ----------- | +| LIMITED_DATA_USE | Signals that an event should be processed with limited data use restrictions. Events marked with this option will not be used for advertising purposes. | + +## Custom attributes + +You can include custom attributes with your events to provide additional context. Each custom attribute has: + +- **Name**: Identifier for the attribute (only letters, numbers, and underscores allowed) +- **Data Type**: STRING, NUMBER, or BOOLEAN +- **Value**: The attribute value (maximum 256 characters) + +## FAQ + +#### How does deduplication work? + +Amazon Conversions API uses the `clientDedupeId` field to prevent duplicate events. By default, Segment maps the messageId to this field. For events with the same clientDedupeId, only the latest event will be processed. + +#### What regions are supported? + +Amazon Conversions API supports three regions: +- North America (NA) +- Europe (EU) +- Far East (FE) + +Select the region that corresponds to your Amazon Advertising account. + +#### What are the requirements for OFF_AMAZON_PURCHASES events? + +OFF_AMAZON_PURCHASES events have additional optional fields: +- `currencyCode`: The currency of the purchase in ISO-4217 format (e.g., USD, EUR) +- `unitsSold`: The number of items purchased (defaults to 1 if not provided) + +#### How are PII fields handled? + +Personally identifiable information (PII) fields like email, phone, name, and address are automatically hashed before sending to Amazon. + +#### How can I verify events in Amazon? + +After you start sending events, you should see them in your Amazon Advertising dashboard under conversion tracking reports. Allow some time for the events to be processed and attributed. From 68001207d082da789429d66278f4a1fda85f10f9 Mon Sep 17 00:00:00 2001 From: Ravi Bansal Date: Tue, 3 Jun 2025 22:08:18 -0700 Subject: [PATCH 10/21] correcting the directory name based on updated slug name --- .../index.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/connections/destinations/catalog/{amazon-conversions-api => actions-amazon-conversions-api}/index.md (100%) diff --git a/src/connections/destinations/catalog/amazon-conversions-api/index.md b/src/connections/destinations/catalog/actions-amazon-conversions-api/index.md similarity index 100% rename from src/connections/destinations/catalog/amazon-conversions-api/index.md rename to src/connections/destinations/catalog/actions-amazon-conversions-api/index.md From 40d076082b761c136ba68b524b801604f16b1119 Mon Sep 17 00:00:00 2001 From: Ravi Bansal Date: Fri, 6 Jun 2025 16:54:40 -0700 Subject: [PATCH 11/21] Fixing review comments --- .../actions-amazon-conversions-api/index.md | 42 +++++++++---------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/src/connections/destinations/catalog/actions-amazon-conversions-api/index.md b/src/connections/destinations/catalog/actions-amazon-conversions-api/index.md index 929e220ebd..5732f46bfb 100644 --- a/src/connections/destinations/catalog/actions-amazon-conversions-api/index.md +++ b/src/connections/destinations/catalog/actions-amazon-conversions-api/index.md @@ -1,5 +1,5 @@ --- -title: Amazon Conversions API +title: Amazon Conversions API (Actions) Destination id: 683ef14a3f9aac157e3a3446 hide-personas-partial: true hide-boilerplate: false @@ -8,9 +8,9 @@ private: false hidden: false --- -The Amazon Conversions API destination is a server-to-server integration with the Amazon Events API. This destination allows advertisers to send real-time or offline conversion events data from Segment directly to Amazon without needing Amazon Ad Tag (AAT) setup. +The Amazon Conversions API (Actions) destination is a server-to-server integration with the Amazon Events API. This destination allows advertisers to send real-time or offline conversion events data from Segment directly to Amazon without needing Amazon Ad Tag (AAT) setup. -This enables advertisers to evaluate the effectiveness of their Amazon marketing campaigns regardless of the location of the conversion and utilize this information to drive campaign optimization. Events API can help strengthen performance and decrease cost per action with more complete attribution, improved data reliability, and better optimized delivery. +This enables advertisers to evaluate the effectiveness of their Amazon marketing campaigns regardless of the location of the conversion and utilize this information to drive campaign optimization. The Events API can help strengthen performance and decrease cost per action with more complete attribution, improved data reliability, and better optimized delivery. ## Benefits of Amazon Conversions API (Actions) @@ -21,9 +21,9 @@ The Amazon Conversions API destination provides the following benefits: - **Prebuilt event mappings**. Standard events like `Add to Shopping Cart` and `Checkout` come preconfigured with recommended parameters. - **Multiple event types**. Support for various conversion event types including purchases, sign-ups, leads, and more. - **Multi-platform support**. Send events from websites, Android apps, iOS apps, Fire TV, or offline sources. -- **Comprehensive user matching**. Multiple matching keys available including email, phone, name, address, and mobile advertising IDs. +- **Comprehensive user matching**. Multiple matching keys are available including email, phone, name, address, and mobile advertising IDs. - **Data normalization**. Data is normalized before it's hashed to send to Amazon Conversions. -- **Custom attributes**. Include additional context with event-specific attributes. +- **Custom attributes**. Includes additional context with event-specific attributes. - **Consent management**. Built-in support for various privacy frameworks including Amazon consent options, TCF, and GPP. ## Getting started @@ -34,13 +34,13 @@ To connect the Amazon Conversions API Destination: 1. From the Segment web app, go to **Connections > Catalog**. 2. Search for **Amazon Conversions Api** in the top right corner. -3. From the search results under **Destinations**, click on **Amazon Conversions Api** destination and then click on **Add destination** -4. Select the source that will send data to Amazon Conversions API and follow the prompts to name your destination. +3. From the search results under **Destinations**, select the **Amazon Conversions Api** destination and then click **Add destination** +4. Select the source that will send data to the Amazon Conversions API destination and follow the prompts to name your destination. 5. On the **Basic Settings** page, enter: - Destination name - - **Region** - Select North America (NA), Europe (EU), or Far East (FE) based on your Amazon Advertising account - - **Amazon Advertiser ID** - Your Amazon Advertising Account ID -6. Authenticate via OAuth when prompted. + - **Region:** - Select North America (NA), Europe (EU), or Far East (FE) based on your Amazon Advertising account + - **Amazon Advertiser ID:** - Your Amazon Advertising Account ID +6. Authenticate using OAuth when prompted. 7. Go to the **Mappings** tab. Prebuilt mappings, like `Checkout`, `Search`, and `Add to Shopping Cart`, include predefined parameters. 8. To create a new mapping: - Click **New Mapping** and select **Track Conversion**. @@ -74,18 +74,18 @@ Amazon Conversions API supports the following standard event types: ## Match keys for user identification -Amazon requires at least one match key to identify the user associated with each conversion event. The following match keys are supported: +Amazon requires at least one match key to identify the user associated with each conversion event. Amazon Conversions API supports the following match keys: | Match Key | Description | | --------- | ----------- | -| email | User's email address (will be hashed) | -| phone | User's phone number (will be hashed) | -| firstName | User's first name (will be hashed) | -| lastName | User's last name (will be hashed) | -| address | User's street address (will be hashed) | -| city | User's city (will be hashed) | -| state | User's state (will be hashed) | -| postalCode | User's postal code (will be hashed) | +| email | User's email address (is hashed) | +| phone | User's phone number (is hashed) | +| firstName | User's first name (is hashed) | +| lastName | User's last name (is hashed) | +| address | User's street address (is hashed) | +| city | User's city (is hashed) | +| state | User's state (is hashed) | +| postalCode | User's postal code (is hashed) | | maid | Mobile advertising ID (ADID, IDFA, or FIREADID) | | rampId | RAMP ID for attribution to traffic events | | matchId | Custom match ID for the user | @@ -94,7 +94,7 @@ Segment automatically maps these fields from standard identity traits when avail ## Consent management -For EU advertisers and users, Amazon requires consent information to be included with conversion events. The Amazon Conversions API supports several consent mechanisms: +For EU advertisers and users, Amazon requires consent information to be included with conversion events. The Amazon Conversions API supports several consent mechanisms. ### Geographic consent (IP Address) @@ -124,7 +124,7 @@ The Amazon Conversions API supports data processing options to control how event | Option | Description | | ------ | ----------- | -| LIMITED_DATA_USE | Signals that an event should be processed with limited data use restrictions. Events marked with this option will not be used for advertising purposes. | +| LIMITED_DATA_USE | Signals that an event should be processed with limited data use restrictions. Events marked with this option won't be used for advertising purposes. | ## Custom attributes From ae95ff58efb500b9a3ae24a3fe5e1a7775f43cc3 Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Thu, 12 Jun 2025 19:57:05 +0530 Subject: [PATCH 12/21] Update tables.md --- src/unify/profiles-sync/tables.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index 29ca239bf0..b96ac9aa56 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -107,7 +107,7 @@ With raw tables, you have full control over the materialization of Profiles in y Raw tables contain complete historical data when using historical backfill. -Note: `Timestamp` column will be empty for backfilled data. This is because we reverse engineer historical profile changes from the current state of the profile, and do not refer to the actual change history. +Note: `Timestamp` column will be empty for backfilled data. This is because we infer historical profile changes from the current state of the profile, and do not refer to the actual change history. ### The id_graph_updates table @@ -298,7 +298,7 @@ If you're not using materialized views for Profile Sync and would like to switch 2. **Request a Full Profiles and Events Backfill** - After enabling the materialized views, you'll need to ensure historical data is populated in the materialized tables. - Write to [friends@segment.com](mailto:friends@segment.com) and request: - - A full **Profiles Backfill** to populate historical profiles data. Materialized views will have null `Timestamp` for the same reason as in Profile events table, discussed above. + - A full **Profiles Backfill** to populate historical profiles data. - An **Events Backfill** to include any relevant historical events, including a date range for Segment to pull data in for the events backfill. 3. **Verify Your Data** From 8e8f01c5173bf935b9b88efd1b024120310164aa Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Thu, 12 Jun 2025 19:58:52 +0530 Subject: [PATCH 13/21] Update tables.md --- src/unify/profiles-sync/tables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index b96ac9aa56..c667834d2e 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -107,7 +107,7 @@ With raw tables, you have full control over the materialization of Profiles in y Raw tables contain complete historical data when using historical backfill. -Note: `Timestamp` column will be empty for backfilled data. This is because we infer historical profile changes from the current state of the profile, and do not refer to the actual change history. +Note: `Timestamp` column will be empty for backfilled data. This is because during backfill, we infer historical profile changes from the current state of the profile, and do not refer to the actual change history. ### The id_graph_updates table From f31b8c6990775ff307ee5c2aebb22d6b1969d2c4 Mon Sep 17 00:00:00 2001 From: ksaha873 Date: Fri, 13 Jun 2025 15:45:48 +0530 Subject: [PATCH 14/21] Update src/unify/profiles-sync/tables.md Co-authored-by: Sharon Adewusi --- src/unify/profiles-sync/tables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/unify/profiles-sync/tables.md b/src/unify/profiles-sync/tables.md index c667834d2e..379cdb140b 100644 --- a/src/unify/profiles-sync/tables.md +++ b/src/unify/profiles-sync/tables.md @@ -107,7 +107,7 @@ With raw tables, you have full control over the materialization of Profiles in y Raw tables contain complete historical data when using historical backfill. -Note: `Timestamp` column will be empty for backfilled data. This is because during backfill, we infer historical profile changes from the current state of the profile, and do not refer to the actual change history. +The `Timestamp` column will be empty for backfilled data because, during backfill, historical profile changes are inferred from the current state of the profile and do not reflect the actual change history. ### The id_graph_updates table From eee78c436d9b9ea9b8aa20b0048052e5b4c5363f Mon Sep 17 00:00:00 2001 From: rchinn1 Date: Fri, 13 Jun 2025 15:48:08 -0700 Subject: [PATCH 15/21] Add redirects [netlify-build] --- .../destinations/catalog/actions-reddit-audiences/index.md | 1 + .../destinations/catalog/actions-reddit-conversions-api/index.md | 1 + 2 files changed, 2 insertions(+) diff --git a/src/connections/destinations/catalog/actions-reddit-audiences/index.md b/src/connections/destinations/catalog/actions-reddit-audiences/index.md index 3ba2f1f0d2..a12eac4470 100644 --- a/src/connections/destinations/catalog/actions-reddit-audiences/index.md +++ b/src/connections/destinations/catalog/actions-reddit-audiences/index.md @@ -1,6 +1,7 @@ --- title: Reddit Audiences id: 66f2b0f961bb2128729079bb +redirect_from: '/connections/destinations/catalog/reddit-audiences/' --- {% include content/plan-grid.md name="actions" %} diff --git a/src/connections/destinations/catalog/actions-reddit-conversions-api/index.md b/src/connections/destinations/catalog/actions-reddit-conversions-api/index.md index 0d3af5d7b1..b645afe69d 100644 --- a/src/connections/destinations/catalog/actions-reddit-conversions-api/index.md +++ b/src/connections/destinations/catalog/actions-reddit-conversions-api/index.md @@ -1,6 +1,7 @@ --- title: Reddit Conversions API id: 66cc766ef4b1c152177239a0 +redirect_from: '/connections/destinations/catalog/reddit-conversions-api/' --- {% include content/plan-grid.md name="actions" %} From b3ba611025e22961de85466c23393e9156aa6e79 Mon Sep 17 00:00:00 2001 From: stayseesong <83784848+stayseesong@users.noreply.github.com> Date: Mon, 16 Jun 2025 11:08:59 -0700 Subject: [PATCH 16/21] make private and beta --- .../catalog/actions-amazon-conversions-api/index.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/connections/destinations/catalog/actions-amazon-conversions-api/index.md b/src/connections/destinations/catalog/actions-amazon-conversions-api/index.md index 5732f46bfb..89d415803d 100644 --- a/src/connections/destinations/catalog/actions-amazon-conversions-api/index.md +++ b/src/connections/destinations/catalog/actions-amazon-conversions-api/index.md @@ -4,8 +4,9 @@ id: 683ef14a3f9aac157e3a3446 hide-personas-partial: true hide-boilerplate: false hide-dossier: true -private: false -hidden: false +private: true +hidden: true +beta: true --- The Amazon Conversions API (Actions) destination is a server-to-server integration with the Amazon Events API. This destination allows advertisers to send real-time or offline conversion events data from Segment directly to Amazon without needing Amazon Ad Tag (AAT) setup. From 8d133a6c6f2e99fd7f73b0dca209942bd6ee4a86 Mon Sep 17 00:00:00 2001 From: rchinn1 <93161299+rchinn1@users.noreply.github.com> Date: Wed, 18 Jun 2025 08:27:57 -0700 Subject: [PATCH 17/21] Update src/connections/destinations/catalog/actions-intercom-cloud/index.md --- .../destinations/catalog/actions-intercom-cloud/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connections/destinations/catalog/actions-intercom-cloud/index.md b/src/connections/destinations/catalog/actions-intercom-cloud/index.md index ba5510b643..6b69f194d0 100644 --- a/src/connections/destinations/catalog/actions-intercom-cloud/index.md +++ b/src/connections/destinations/catalog/actions-intercom-cloud/index.md @@ -51,4 +51,4 @@ When you use the Identify Company action, Segment creates or updates a company's ### Why do I get a 404 Not Found error when sending Track events to Intercom? A `404 Not Found` error typically occurs when attempting to update a user in Intercom who does not yet exist in the system. This can happen if an Identify event, which includes the corresponding `userId`, was not sent before the Track event that resulted in the `404` error. -To resolve this, ensure that Identify events are sent **before** Track events to guarantee proper processing and avoid errors. +To resolve this, ensure that Identify events are sent **before** Track events to ensure proper processing and avoid errors. From 5681d58ff1433716a8c16f78da21f5f09422d3a4 Mon Sep 17 00:00:00 2001 From: forstisabella <92472883+forstisabella@users.noreply.github.com> Date: Wed, 18 Jun 2025 15:30:13 -0400 Subject: [PATCH 18/21] init --- src/engage/audiences/index.md | 28 ++++++++++-- src/engage/audiences/linked-audiences.md | 55 ++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 3 deletions(-) diff --git a/src/engage/audiences/index.md b/src/engage/audiences/index.md index 285032c5b4..7867685073 100644 --- a/src/engage/audiences/index.md +++ b/src/engage/audiences/index.md @@ -286,6 +286,9 @@ To access audience alerting, navigate to **Engage > Audiences**, select an audie On the **Alerts** tab, you can create new alerts and view all active alerts for this connection. You can only edit or delete the alerts that you create, unless you have the [Workspace Owner role](/docs/segment-app/iam/roles/). +> info "Deleting alerts created by other users requires Workspace Owner role" +> All users can delete alerts that they created, but only those with [Workspace Owner role](/docs/segment-app/iam/roles/) can delete alerts created by other users. + #### Activation event health spikes or drops You can create an Activation event health spikes or drops alert that notifies you when events sent from your audience to a downstream destination have failures to a destination above a certain threshold. For example, if you set a change percentage of 4% and your destination received 100 events from your audience over the first 24 hours, Segment would notify you the following day if your destination ingested fewer than 96 or more than 104 events. @@ -293,7 +296,7 @@ You can create an Activation event health spikes or drops alert that notifies yo To create an Activation event health spikes or drops alert: 1. From your Segment workspace's home page, navigate to **Engage > Audiences**. 2. Select the Audience you want to create an alert for, select the Alerts tab, and click **Create alert**. -3. On the Create alert sidesheet, select the destination for which you'd like to monitor event health. +3. On the Create alert sidesheet, select the **Activation event health spikes or drops** alert and pick a destination for which you'd like to monitor event health. 4. Enter a percentage threshold to trigger activation event health notifications. 5. Select one or more of the following alert channels: - **Email**: Select this to receive notifications at the provided email address. @@ -305,8 +308,27 @@ To make changes to an Activation event health spikes or drops alert, select the To delete a Activation event health spikes or drops alert, select the icon in the Actions column for the alert and click **Delete**. -> info "Deleting alerts created by other users requires Workspace Owner role" -> All users can delete alerts that they created, but only those with [Workspace Owner role](/docs/segment-app/iam/roles/) can delete alerts created by other users. +#### Audience size change + +You can create an Audience size change alert that notifies you when your audience increases or decreases by a certain threshold. For example, if you set a change percentage of 4% and your destination had 100 members over the first 24 hours, Segment would notify you the following day if your audience had fewer than 96 or more than 104 members. + +> info "Audience size change alerts are currently in Public Beta" +> Audience size change alerts are in public beta, and Segment is actively working on this feature. Some functionality may change before it becomes generally available. During the public beta, Audience size change alerts only support Linked Audiences. + +To create an Audience size change alert: +1. From your Segment workspace's home page, navigate to **Engage > Audiences**. +2. Select the Linked Audience you want to create an alert for, select the Alerts tab, and click **Create alert**. +3. On the Create alert sidesheet, select the **Audience size change alert** and pick a destination for which you'd like to monitor event health. +4. Enter a percentage threshold to trigger audience size change notifications. +5. Select one or more of the following alert channels: + - **Email**: Select this to receive notifications at the provided email address. + - **Slack**: Select this to send alerts to one or more channels in your workspace. You can post messages to your channel with either a [webhook](https://api.slack.com/messaging/webhooks){:target="_blank”} or a [workflow](https://slack.com/help/articles/360041352714-Build-a-workflow--Create-a-workflow-that-starts-outside-of-Slack){:target="_blank”}. + - **In-app**: Select this to receive notifications in the Segment app. To view your notifications, select the bell next to your user icon in the Segment app. +6. Click **Save**. + +To make changes to an Audience size change alert, select the icon in the Actions column for the alert and click **Edit**. + +To delete a Audience size change alert, select the icon in the Actions column for the alert and click **Delete**. ## Access your Audiences using the Profiles API diff --git a/src/engage/audiences/linked-audiences.md b/src/engage/audiences/linked-audiences.md index 2b05ab718f..54baf1c245 100644 --- a/src/engage/audiences/linked-audiences.md +++ b/src/engage/audiences/linked-audiences.md @@ -260,6 +260,61 @@ Linked Audiences have the following steps in Delivery Overview's pipeline view: - **Failed delivery**: Events that Segment _attempted_ to deliver to your destination, but that ultimately _failed_ to be delivered. Failed delivery might indicate an issue with the destination, like invalid credentials, rate limits, or other error statuses received during delivery. - **Successful delivery**: Events that Segment successfully delivered to your destination. You’ll see these events in your downstream integrations. +## Linked Audience Alerts + +You can create alerts related to the performance and throughput of Linked Audience syncs and receive in-app, email, and Slack notifications when event volume fluctuations occur. + +> info "Generate a Slack webhook to receive Slack notifications" +> To receive an alert in a Slack channel, you must first create a Slack webhook. For more information about Slack webhooks, see Slack's [Sending messages using incoming webhooks](https://api.slack.com/messaging/webhooks){:target="_blank”} documentation. + +To access Linked Audience alerting, navigate to **Engage > Audiences**, select a Linked Audience, and click the **Alerts** tab. + +On the **Alerts** tab, you can create new alerts and view all active alerts for this connection. You can only edit or delete the alerts that you create, unless you have the [Workspace Owner role](/docs/segment-app/iam/roles/). + +> info "Deleting alerts created by other users requires Workspace Owner role" +> All users can delete alerts that they created, but only those with [Workspace Owner role](/docs/segment-app/iam/roles/) can delete alerts created by other users. + +#### Activation event health spikes or drops + +You can create an Activation event health spikes or drops alert that notifies you when events sent from your audience to a downstream destination have failures to a destination above a certain threshold. For example, if you set a change percentage of 4% and your destination received 100 events from your audience over the first 24 hours, Segment would notify you the following day if your destination ingested fewer than 96 or more than 104 events. + +To create an Activation event health spikes or drops alert: +1. From your Segment workspace's home page, navigate to **Engage > Audiences**. +2. Select the Audience you want to create an alert for, select the Alerts tab, and click **Create alert**. +3. On the Create alert sidesheet, select the **Activation event health spikes or drops** alert and pick a destination for which you'd like to monitor event health. +4. Enter a percentage threshold to trigger activation event health notifications. +5. Select one or more of the following alert channels: + - **Email**: Select this to receive notifications at the provided email address. + - **Slack**: Select this to send alerts to one or more channels in your workspace. You can post messages to your channel with either a [webhook](https://api.slack.com/messaging/webhooks){:target="_blank”} or a [workflow](https://slack.com/help/articles/360041352714-Build-a-workflow--Create-a-workflow-that-starts-outside-of-Slack){:target="_blank”}. + - **In-app**: Select this to receive notifications in the Segment app. To view your notifications, select the bell next to your user icon in the Segment app. +6. Click **Save**. + +To make changes to an Activation event health spikes or drops alert, select the icon in the Actions column for the alert and click **Edit**. + +To delete a Activation event health spikes or drops alert, select the icon in the Actions column for the alert and click **Delete**. + +#### Audience size change + +You can create an Audience size change alert that notifies you when your audience increases or decreases by a certain threshold. For example, if you set a change percentage of 4% and your destination had 100 members over the first 24 hours, Segment would notify you the following day if your audience had fewer than 96 or more than 104 members. + +> info "Audience size change alerts are currently in Public Beta" +> Audience size change alerts are in public beta, and Segment is actively working on this feature. Some functionality may change before it becomes generally available. + +To create an Audience size change alert: +1. From your Segment workspace's home page, navigate to **Engage > Audiences**. +2. Select the Linked Audience you want to create an alert for, select the Alerts tab, and click **Create alert**. +3. On the Create alert sidesheet, select the **Audience size change alert** and pick a destination for which you'd like to monitor event health. +4. Enter a percentage threshold to trigger audience size change notifications. +5. Select one or more of the following alert channels: + - **Email**: Select this to receive notifications at the provided email address. + - **Slack**: Select this to send alerts to one or more channels in your workspace. You can post messages to your channel with either a [webhook](https://api.slack.com/messaging/webhooks){:target="_blank”} or a [workflow](https://slack.com/help/articles/360041352714-Build-a-workflow--Create-a-workflow-that-starts-outside-of-Slack){:target="_blank”}. + - **In-app**: Select this to receive notifications in the Segment app. To view your notifications, select the bell next to your user icon in the Segment app. +6. Click **Save**. + +To make changes to an Audience size change alert, select the icon in the Actions column for the alert and click **Edit**. + +To delete a Audience size change alert, select the icon in the Actions column for the alert and click **Delete**. + ## Maintaining Linked Audiences You can maintain your Linked Audience by accessing these tabs on the main page of your Linked Audience: From 75aac2f96cef5caeecff02e890196187fbffcf12 Mon Sep 17 00:00:00 2001 From: forstisabella <92472883+forstisabella@users.noreply.github.com> Date: Wed, 18 Jun 2025 16:07:12 -0400 Subject: [PATCH 19/21] add to default alerts page --- src/monitor/alerts/default-alerts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/monitor/alerts/default-alerts.md b/src/monitor/alerts/default-alerts.md index 5d4b7dca16..a652b58d84 100644 --- a/src/monitor/alerts/default-alerts.md +++ b/src/monitor/alerts/default-alerts.md @@ -117,7 +117,7 @@ your identity-resolved profiles to your data warehouse. - **Audience Run Failed**: Segment was unable to compute your Audience. To resolve this error, please [contact Segment support](https://segment.com/help/contact/){:target="_blank”}. > info "Custom Engage alerts" -> During the Monitor public beta, you can configure custom [Activation event health spikes or drops](/docs/engage/audiences/#activation-event-health-spikes-or-drops) alerts, but these alerts won't appear in the Monitor tab. +> During the Monitor public beta, you can configure custom [Activation event health spikes or drops](/docs/engage/audiences/#activation-event-health-spikes-or-drops) and [Audience size change alerts](/docs/engage/audiences/#audience-size-change) alerts, but these alerts won't appear in the Monitor tab. ## Users alerts - **Access Request Created**: A user in your workspace requested access to a resource that they don't currently have permission to view. For more information, see the [Request Access](/docs/segment-app/iam/membership/#request-access) documentation. From 2bc3a255a6861fe9d577c3aa5f924e604c9bc703 Mon Sep 17 00:00:00 2001 From: forstisabella <92472883+forstisabella@users.noreply.github.com> Date: Wed, 18 Jun 2025 16:08:09 -0400 Subject: [PATCH 20/21] fix --- src/monitor/alerts/default-alerts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/monitor/alerts/default-alerts.md b/src/monitor/alerts/default-alerts.md index a652b58d84..5e4ca88392 100644 --- a/src/monitor/alerts/default-alerts.md +++ b/src/monitor/alerts/default-alerts.md @@ -117,7 +117,7 @@ your identity-resolved profiles to your data warehouse. - **Audience Run Failed**: Segment was unable to compute your Audience. To resolve this error, please [contact Segment support](https://segment.com/help/contact/){:target="_blank”}. > info "Custom Engage alerts" -> During the Monitor public beta, you can configure custom [Activation event health spikes or drops](/docs/engage/audiences/#activation-event-health-spikes-or-drops) and [Audience size change alerts](/docs/engage/audiences/#audience-size-change) alerts, but these alerts won't appear in the Monitor tab. +> During the Monitor public beta, you can configure custom [Activation event health spikes or drops](/docs/engage/audiences/#activation-event-health-spikes-or-drops) and [Audience size change](/docs/engage/audiences/#audience-size-change) alerts, but these alerts won't appear in the Monitor tab. ## Users alerts - **Access Request Created**: A user in your workspace requested access to a resource that they don't currently have permission to view. For more information, see the [Request Access](/docs/segment-app/iam/membership/#request-access) documentation. From d1dcbca5c3bc7828707c319822f5d5f6fcb9d918 Mon Sep 17 00:00:00 2001 From: forstisabella <92472883+forstisabella@users.noreply.github.com> Date: Wed, 18 Jun 2025 19:58:26 -0400 Subject: [PATCH 21/21] Update index.md --- src/engage/audiences/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/engage/audiences/index.md b/src/engage/audiences/index.md index 7867685073..86259525b9 100644 --- a/src/engage/audiences/index.md +++ b/src/engage/audiences/index.md @@ -312,8 +312,8 @@ To delete a Activation event health spikes or drops alert, select the icon in th You can create an Audience size change alert that notifies you when your audience increases or decreases by a certain threshold. For example, if you set a change percentage of 4% and your destination had 100 members over the first 24 hours, Segment would notify you the following day if your audience had fewer than 96 or more than 104 members. -> info "Audience size change alerts are currently in Public Beta" -> Audience size change alerts are in public beta, and Segment is actively working on this feature. Some functionality may change before it becomes generally available. During the public beta, Audience size change alerts only support Linked Audiences. +> info "Audience size change alerts currently only support Linked Audiences" +> Audience size change alerts are in public beta, and Segment is actively working on this feature. During the public beta, Audience size change alerts only support Linked Audiences. Some functionality may change before it becomes generally available. To create an Audience size change alert: 1. From your Segment workspace's home page, navigate to **Engage > Audiences**.