From f14f9a7a975b8337e1edff729e6c52a4ce53c221 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Tue, 19 Mar 2024 20:21:42 -0400
Subject: [PATCH 01/23] init consent in retl docs
---
.../consent-management/consent-retl.md | 38 +++++++++++++++++++
1 file changed, 38 insertions(+)
create mode 100644 src/privacy/consent-management/consent-retl.md
diff --git a/src/privacy/consent-management/consent-retl.md b/src/privacy/consent-management/consent-retl.md
new file mode 100644
index 0000000000..b196de69a3
--- /dev/null
+++ b/src/privacy/consent-management/consent-retl.md
@@ -0,0 +1,38 @@
+---
+title: Consent in Reverse ETL
+plan: consent-management
+related:
+ - "/privacy/consent-management/"
+ - "/privacy/consent-management/configure-consent-management/"
+ - "/privacy/consent-management/consent-in-segment-connections/"
+ - "/privacy/consent-management/consent-in-unify"
+---
+
+With Consent Management in RETL, you can enforce your end-users' consent preferences that are captured by your consent management platform (CMP) and stored in your warehouse.
+
+You can enforce consent stored in warehouse data using one of the following methods:
+- **Filter the model based on consent preferences**: Filtering the data based on consent preferences is only possible for users who set up a model after they configured Consent Management in Segment. This method also limits how you can use your warehouse data, as the model can't be used for multiple use cases where consent flows to destinations mapped to multiple categories
+- **Configure consent using the procedure outlined below**: Find a name for this procedure, provide limitations, etc.
+
+### Prerequisites
+- A way of capturing end-user consent
+- End-user consent stored in a warehouse that [Segment supports for RETL](/docs/connections/reverse-etl/#step-1-add-a-source)
+
+
+### Step 1: Create consent categories in the Segment app
+
+> info "Limited availability of destinations"
+> AWS S3, RETL, and Engage destinations do not enforce consent preferences.
+
+1. From the [Segment homepage](https://app.segment.com/goto-my-workspace/){:target="_blank”}, select the Privacy tab and click **Consent Management**.
+2. On the Consent management page, click **Create categories**.
+3. Confirm that you have completed the required prerequisites, and click **Next**.
+4. On the Create consent categories page, add the following information to the category form:
+ - **Category name**: Enter a name that describes your use case for the data sent to this destination. This field only accepts category names that are 20 characters or less.
+ - **Category ID**: In OneTrust, this is a string of up to five alphanumeric characters, but other CMPs may have a different format. This field is case sensitive.
+ - **Mapped destinations**: Select one or more of your destinations to map to this category. Category mappings apply to all instances of a destination.
+
**Optional**: Click **Add category** to create another category.
+5. Once you've finished setting up your category or categories, click **Save**.
+
+> warning "Segment recommends mapping all destinations to a category"
+> Segment assumes all destinations without a mapping do not require user consent and will receive all events containing a consent object. If a destination is mapped to multiple categories, a user must consent to all categories for data to flow to the destination.
\ No newline at end of file
From 7030e329083e9b9f142884903a149ff18fd14d69 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Tue, 19 Mar 2024 20:22:29 -0400
Subject: [PATCH 02/23] rmv retl from callout of unsupported dests
---
src/privacy/consent-management/consent-retl.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/privacy/consent-management/consent-retl.md b/src/privacy/consent-management/consent-retl.md
index b196de69a3..5dead73660 100644
--- a/src/privacy/consent-management/consent-retl.md
+++ b/src/privacy/consent-management/consent-retl.md
@@ -22,7 +22,7 @@ You can enforce consent stored in warehouse data using one of the following meth
### Step 1: Create consent categories in the Segment app
> info "Limited availability of destinations"
-> AWS S3, RETL, and Engage destinations do not enforce consent preferences.
+> AWS S3 and Engage destinations do not enforce consent preferences.
1. From the [Segment homepage](https://app.segment.com/goto-my-workspace/){:target="_blank”}, select the Privacy tab and click **Consent Management**.
2. On the Consent management page, click **Create categories**.
From 4ea94d9c5420670835180e4165e25ef0990aa7ad Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Mon, 29 Apr 2024 12:55:17 -0400
Subject: [PATCH 03/23] add consent in retl, consent faq
---
.../configure-consent-management.md | 2 +-
src/privacy/consent-management/consent-faq.md | 28 ++++++
.../consent-management/consent-in-retl.md | 92 +++++++++++++++++++
.../consent-in-segment-connections.md | 2 +-
.../consent-management/consent-retl.md | 38 --------
5 files changed, 122 insertions(+), 40 deletions(-)
create mode 100644 src/privacy/consent-management/consent-faq.md
create mode 100644 src/privacy/consent-management/consent-in-retl.md
delete mode 100644 src/privacy/consent-management/consent-retl.md
diff --git a/src/privacy/consent-management/configure-consent-management.md b/src/privacy/consent-management/configure-consent-management.md
index 6772b76261..bd6fa62cdc 100644
--- a/src/privacy/consent-management/configure-consent-management.md
+++ b/src/privacy/consent-management/configure-consent-management.md
@@ -53,7 +53,7 @@ Segment provides a OneTrust wrapper for the following sources:
- **Swift**: Please follow the instructions from the README in the [@segment-integrations/analytics-swift-consent](https://github.com/segment-integrations/analytics-swift-consent#segment-consent-management){:target="_blank"} repository.
-If you'd like to integrate with any other CMP, Segment requires you to build your own wrapper or use any mechanism provided it meets the above requirements of data and event generation.
+If you'd like to integrate with any other CMP, Segment requires you to build your own wrapper or use any mechanism provided it meets the above requirements of data and event generation. To get started building your own wrapper, follow the instructions in the [@segment/analytics-consent-tools](https://github.com/segmentio/analytics-next/tree/master/packages/consent/consent-tools){:target="_blank"} repository.
> warning "Consent Management is not backwards compatible with Segment's legacy iOS and Android libraries"
> If you are using one of Segment's legacy mobile libraries (iOS or Android,) you will need to upgrade to [Swift](/docs/connections/sources/catalog/libraries/mobile/apple/migration/) or [Kotlin](/docs/connections/sources/catalog/libraries/mobile/kotlin-android/migration/) before using Consent Management.
diff --git a/src/privacy/consent-management/consent-faq.md b/src/privacy/consent-management/consent-faq.md
new file mode 100644
index 0000000000..ce2adec27a
--- /dev/null
+++ b/src/privacy/consent-management/consent-faq.md
@@ -0,0 +1,28 @@
+---
+title: Frequently Asked Questions
+plan: consent-management
+---
+
+## Is Segment's Consent Manager part of Consent Management?
+
+No. Segment's deprecated [open-source Consent Manager](https://github.com/segmentio/consent-manager){:target="_blank”}, which captures end user consent, is not part of Segment's Consent Management product, which focuses only on enforcing end user consent.
+
+Segment recommends moving from the deprecated consent-manager to a commercial alternative, like [OneTrust](https://www.onetrust.com/){:target="_blank”}.
+
+## What destinations support consent enforcement?
+
+All event streams destinations, with the exception of AWS S3 and Engage destinations, support consent enforcement.
+
+## Can I share current end user consent preferences with my destinations?
+
+You can use the [Destination Actions framework](/docs/connections/destinations/actions/) to share the current status of your end-users' consent with your Actions destinations.
+
+For more information, see the [Sharing consent with Actions destinations](/docs/privacy/consent-management/consent-in-unify/#sharing-consent-with-actions-destinations) documentation.
+
+## Can I use a Consent Management Platform (CMP) other than OneTrust to collect consent from my end users?
+
+Yes, you can use any commercially available CMP or custom solution to collect consent from your end users. If you use a CMP other than OneTrust, you must generate your own wrapper or other mechanism to add the following objects to the events collected from your sources:
+- Includes the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) on every event
+- Generates the [Segment Consent Preference Updated](/docs/privacy/consent-management/consent-in-unify/#segment-consent-preference-updated-event) event every time a user provides or updates their consent preferences. This event must contain their anonymousId or userId.
+
+Segment provides guidance about creating your own wrapper in the [@segment/analytics-consent-tools](https://github.com/segmentio/analytics-next/tree/master/packages/consent/consent-tools){:target="_blank"} GitHub repository.
\ No newline at end of file
diff --git a/src/privacy/consent-management/consent-in-retl.md b/src/privacy/consent-management/consent-in-retl.md
new file mode 100644
index 0000000000..37ab0fa6db
--- /dev/null
+++ b/src/privacy/consent-management/consent-in-retl.md
@@ -0,0 +1,92 @@
+---
+title: Consent in Reverse ETL
+plan: consent-management
+related:
+ - "/privacy/consent-management/"
+ - "/privacy/consent-management/configure-consent-management/"
+ - "/privacy/consent-management/consent-in-segment-connections/"
+ - "/privacy/consent-management/consent-in-unify"
+---
+
+With Consent Management in RETL, you can enforce your end-users' consent preferences that are captured by your consent management platform (CMP) and stored in your warehouse.
+
+You can enforce consent stored in warehouse data using one of the following methods:
+- **Filter the model based on consent preferences**: Filtering the data based on consent preferences is only possible for users who set up a model after they configured Consent Management in Segment. This method also limits how you can use your warehouse data, as the model can't be used for multiple use cases where consent flows to destinations mapped to multiple categories.
+- **Build a mapping that identifies consent categories**: If you are setting up Reverse ETL or updating your mapping, you can update your mapping to identify the columns that store information about end user consent preferences and enforce these preferences in Segment's downstream destinations.
+
+## Prerequisites
+> info "Consent management edit and update capabilities limited to Workspace Owners"
+> Only users with the Workspace Owner role are able to create, edit, and disable consent categories. All other users have read-only access to Consent Management features.
+
+Before you can enforce consent stored in your warehouse, take the following steps:
+- **Set up your third-party consent management tool and create consent categories**. Take note of your consent categories and the key or ID associated with each category.
+- **Know how your company uses each destination**. You need to know which destinations to map to each category.
+- **End-user consent stored in a warehouse that [Segment supports for RETL](/docs/connections/reverse-etl/#step-1-add-a-source)**. Segment supports Reverse ETL capabilities in Azure, BigQuery, Databricks, Postgres, Snowflake, and Redshift data warehouses. Other data warehouses are not supported.
+
+## Step 1: Create consent categories in the Segment app
+
+> info "Limited availability of destinations"
+> Reverse ETL supports the destinations in the [Reverse ETL catalog](/docs/connections/reverse-etl/reverse-etl-catalog/), [Segment Profiles](), and Segment Connections.
+
+1. From the [Segment homepage](https://app.segment.com/goto-my-workspace/){:target="_blank”}, select the Privacy tab and click **Consent Management**.
+2. On the Consent management page, click **Create categories**.
+3. Confirm that you have completed the required prerequisites, and click **Next**.
+4. On the Create consent categories page, add the following information to the category form:
+ - **Category name**: Enter a name that describes your use case for the data sent to this destination. This field only accepts category names that are 20 characters or less.
+ - **Category ID**: In OneTrust, this is a string of up to five alphanumeric characters, but other CMPs may have a different format. This field is case sensitive.
+ - **Mapped destinations**: Select one or more of your Reverse ETL destinations to map to this category. Category mappings apply to all instances of a destination.
+
**Optional**: Click **Add category** to create another category.
+5. Once you've finished setting up your category or categories, click **Save**.
+
+> warning "Segment recommends mapping all Reverse ETL destinations to a category"
+> Segment assumes all destinations without a mapping do not require user consent and will receive all events containing a consent object. If a destination is mapped to multiple categories, a user must consent to all categories for data to flow to the destination.
+
+## Step 2: Identify consent columns
+
+After you set up consent categories in the Segment app, you must identify the columns in your data warehouse that store end user consent by creating a *model*, or SQL query that defines the set of data you want to synchronize to your Reverse ETL destinations. When building your RETL data model, Segment recommends storing consent in `true`, `false`, or `conflict` format and mapping only one consent category to each column.
+
+> error "Creating a data mapping that does not include information about consent preferences results in no consent enforcement"
+> If you create consent categories in your workspace but fail to identify columns that contain consent preferences in your data mapping, events will flow to all destinations in your workspace regardless of end user consent preferences.
+
+To add your first model:
+1. Navigate to Connections > Sources and select the Reverse ETL tab. Select your source and click **Add Model**.
+2. Click **SQL Editor** as your modeling method.
+3. Enter the SQL query that’ll define your model. Your model is used to map data to your Reverse ETL destinations.
+4. Choose a column to use as the unique identifier for each record in the Unique Identifier column field.
+ The Unique Identifier should be a column with unique values per record to ensure checkpointing works as expected. It can be a primary key. This column is used to detect new, updated, and deleted records.
+5. Click **Preview** to see a preview of the results of your SQL query. The data from the preview is extracted from the first 10 records of your warehouse.
+6. Click **Next**.
+7. Enter your Model Name.
+8. Click **Create Model**.
+
+To edit a model:
+1. Navigate to Connections > Sources and select the Reverse ETL tab. Select your source and click **Add Model**.
+
+
+
+> info "Consent categories in the Segment app must match consent columns identified in your data warehouse before continuing"
+> If you create consent categories in the Segment app but fail to identify a column for each category you created in Segment, you will not be able to proceed until you enable a destination mapped to a consent category not identified in the data model.
+
+## Step 3: Send events to your downstream destinations
+
+After you set up categories in the Segment app and create a RETL mapping that extracts consent information, you can send events to your downstream destinations.
+
+
+
+
+## Validate your consent mapping
+
+You can validate that you successfully created your consent mapping in Segment Connections, Segment Profiles, and supported Reverse ETL Action destinations using the following methods:
+
+### Segment Connections
+Open the Source Debugger for your Reverse ETL source and confirm that the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) appears on every event and that the consent object has the categories you mapped in [Step 2: Identify consent columns](#step-2-identify-consent-columns).
+
+### Segment Profiles
+Open the [Profile Explorer](/docs/unify/#profile-explorer) and verify that your profiles contain the [Segment Consent Preference Updated](/docs/privacy/consent-management/consent-in-unify/#segment-consent-preference-updated-event) event.
+
+### Supported Reverse ETL Actions destinations
+Segment automatically filters out data belonging to users who have not consented to the category that a supported Actions destination is mapped to.
+
+To verify that this is working as intended, open [Delivery Overview](/docs/connections/delivery-overview) for a [supported Actions destination](/docs/connections/reverse-etl/reverse-etl-catalog/) and view some of the events that were successfully delivered to the destination. The events in your destination should only belong to users that consented to send data to the category that your supported Actions destination belongs to.
+
+
\ No newline at end of file
diff --git a/src/privacy/consent-management/consent-in-segment-connections.md b/src/privacy/consent-management/consent-in-segment-connections.md
index b59f9b8fa5..72be57cac6 100644
--- a/src/privacy/consent-management/consent-in-segment-connections.md
+++ b/src/privacy/consent-management/consent-in-segment-connections.md
@@ -76,4 +76,4 @@ If there is a category configured in Segment (`functional`) that is not mapped i
## Content observability
-Events discarded due to consent preferences appear in [Delivery Overview](/docs/connections/delivery-overview/) at the "Filtered at destination" step with the discard reason *Filtered by end user consent*.
+Events discarded due to consent preferences appear in [Delivery Overview](/docs/connections/delivery-overview/) at the "Filtered at destination" step with the discard reason *Filtered by end user consent*.
\ No newline at end of file
diff --git a/src/privacy/consent-management/consent-retl.md b/src/privacy/consent-management/consent-retl.md
deleted file mode 100644
index 5dead73660..0000000000
--- a/src/privacy/consent-management/consent-retl.md
+++ /dev/null
@@ -1,38 +0,0 @@
----
-title: Consent in Reverse ETL
-plan: consent-management
-related:
- - "/privacy/consent-management/"
- - "/privacy/consent-management/configure-consent-management/"
- - "/privacy/consent-management/consent-in-segment-connections/"
- - "/privacy/consent-management/consent-in-unify"
----
-
-With Consent Management in RETL, you can enforce your end-users' consent preferences that are captured by your consent management platform (CMP) and stored in your warehouse.
-
-You can enforce consent stored in warehouse data using one of the following methods:
-- **Filter the model based on consent preferences**: Filtering the data based on consent preferences is only possible for users who set up a model after they configured Consent Management in Segment. This method also limits how you can use your warehouse data, as the model can't be used for multiple use cases where consent flows to destinations mapped to multiple categories
-- **Configure consent using the procedure outlined below**: Find a name for this procedure, provide limitations, etc.
-
-### Prerequisites
-- A way of capturing end-user consent
-- End-user consent stored in a warehouse that [Segment supports for RETL](/docs/connections/reverse-etl/#step-1-add-a-source)
-
-
-### Step 1: Create consent categories in the Segment app
-
-> info "Limited availability of destinations"
-> AWS S3 and Engage destinations do not enforce consent preferences.
-
-1. From the [Segment homepage](https://app.segment.com/goto-my-workspace/){:target="_blank”}, select the Privacy tab and click **Consent Management**.
-2. On the Consent management page, click **Create categories**.
-3. Confirm that you have completed the required prerequisites, and click **Next**.
-4. On the Create consent categories page, add the following information to the category form:
- - **Category name**: Enter a name that describes your use case for the data sent to this destination. This field only accepts category names that are 20 characters or less.
- - **Category ID**: In OneTrust, this is a string of up to five alphanumeric characters, but other CMPs may have a different format. This field is case sensitive.
- - **Mapped destinations**: Select one or more of your destinations to map to this category. Category mappings apply to all instances of a destination.
-
**Optional**: Click **Add category** to create another category.
-5. Once you've finished setting up your category or categories, click **Save**.
-
-> warning "Segment recommends mapping all destinations to a category"
-> Segment assumes all destinations without a mapping do not require user consent and will receive all events containing a consent object. If a destination is mapped to multiple categories, a user must consent to all categories for data to flow to the destination.
\ No newline at end of file
From db078724ac1e0cd24d4a1493bef17fef3d097131 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Mon, 29 Apr 2024 16:24:22 -0400
Subject: [PATCH 04/23] yml
---
src/_data/sidenav/main.yml | 4 ++++
.../consent-management/configure-consent-management.md | 4 ----
src/privacy/consent-management/consent-in-retl.md | 9 +--------
.../consent-management/consent-in-segment-connections.md | 4 ----
src/privacy/consent-management/consent-in-unify.md | 4 ----
5 files changed, 5 insertions(+), 20 deletions(-)
diff --git a/src/_data/sidenav/main.yml b/src/_data/sidenav/main.yml
index b99c85da4f..8e58c8c592 100644
--- a/src/_data/sidenav/main.yml
+++ b/src/_data/sidenav/main.yml
@@ -526,6 +526,10 @@ sections:
title: Configure Consent Management
- path: /privacy/consent-management/consent-in-unify/
title: Consent in Unify
+ - path: /privacy/consent-management/consent-in-retl/
+ title: Consent in Reverse ETL
+ - path: /privacy/consent-management/consent-faq/
+ title: Consent FAQs
- path: /privacy/account-deletion
title: Account & Data Deletion
- path: /privacy/hipaa-eligible-segment
diff --git a/src/privacy/consent-management/configure-consent-management.md b/src/privacy/consent-management/configure-consent-management.md
index bd6fa62cdc..a41a134b05 100644
--- a/src/privacy/consent-management/configure-consent-management.md
+++ b/src/privacy/consent-management/configure-consent-management.md
@@ -1,10 +1,6 @@
---
title: Configure Consent Management
plan: consent-management
-related:
- - "/privacy/consent-management/"
- - "/privacy/consent-management/consent-in-segment-connections/"
- - "/privacy/consent-management/consent-in-unify/"
redirect_from: "/privacy/configure-consent-management"
---
diff --git a/src/privacy/consent-management/consent-in-retl.md b/src/privacy/consent-management/consent-in-retl.md
index 37ab0fa6db..d7e947d986 100644
--- a/src/privacy/consent-management/consent-in-retl.md
+++ b/src/privacy/consent-management/consent-in-retl.md
@@ -1,11 +1,6 @@
---
title: Consent in Reverse ETL
plan: consent-management
-related:
- - "/privacy/consent-management/"
- - "/privacy/consent-management/configure-consent-management/"
- - "/privacy/consent-management/consent-in-segment-connections/"
- - "/privacy/consent-management/consent-in-unify"
---
With Consent Management in RETL, you can enforce your end-users' consent preferences that are captured by your consent management platform (CMP) and stored in your warehouse.
@@ -87,6 +82,4 @@ Open the [Profile Explorer](/docs/unify/#profile-explorer) and verify that your
### Supported Reverse ETL Actions destinations
Segment automatically filters out data belonging to users who have not consented to the category that a supported Actions destination is mapped to.
-To verify that this is working as intended, open [Delivery Overview](/docs/connections/delivery-overview) for a [supported Actions destination](/docs/connections/reverse-etl/reverse-etl-catalog/) and view some of the events that were successfully delivered to the destination. The events in your destination should only belong to users that consented to send data to the category that your supported Actions destination belongs to.
-
-
\ No newline at end of file
+To verify that this is working as intended, open [Delivery Overview](/docs/connections/delivery-overview) for a [supported Actions destination](/docs/connections/reverse-etl/reverse-etl-catalog/) and view some of the events that were successfully delivered to the destination. The events in your destination should only come from users that consented to send data to the category that your supported Actions destination belongs to.
\ No newline at end of file
diff --git a/src/privacy/consent-management/consent-in-segment-connections.md b/src/privacy/consent-management/consent-in-segment-connections.md
index 72be57cac6..38cfac523f 100644
--- a/src/privacy/consent-management/consent-in-segment-connections.md
+++ b/src/privacy/consent-management/consent-in-segment-connections.md
@@ -1,10 +1,6 @@
---
title: Consent in Segment Connections
plan: consent-management
-related:
- - "/privacy/consent-management/"
- - "/privacy/consent-management/configure-consent-management/"
- - "/privacy/consent-management/consent-in-unify/"
redirect_from: "/privacy/consent-in-segment-connections"
---
diff --git a/src/privacy/consent-management/consent-in-unify.md b/src/privacy/consent-management/consent-in-unify.md
index 6ec7b835e9..17a6e3b2f7 100644
--- a/src/privacy/consent-management/consent-in-unify.md
+++ b/src/privacy/consent-management/consent-in-unify.md
@@ -1,10 +1,6 @@
---
title: Consent in Unify
plan: consent-management
-related:
- - "/privacy/consent-management/"
- - "/privacy/consent-management/configure-consent-management/"
- - "/privacy/consent-management/consent-in-segment-connections/"
redirect_from: "/privacy/consent-in-unify"
---
From a0e628aaab04150b9a6bb57e441924118c48f648 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Wed, 1 May 2024 14:20:49 -0400
Subject: [PATCH 05/23] only support one way of setting up
---
.../consent-management/consent-in-retl.md | 22 ++++++++++++-------
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/src/privacy/consent-management/consent-in-retl.md b/src/privacy/consent-management/consent-in-retl.md
index d7e947d986..1fd45cfb37 100644
--- a/src/privacy/consent-management/consent-in-retl.md
+++ b/src/privacy/consent-management/consent-in-retl.md
@@ -5,11 +5,13 @@ plan: consent-management
With Consent Management in RETL, you can enforce your end-users' consent preferences that are captured by your consent management platform (CMP) and stored in your warehouse.
-You can enforce consent stored in warehouse data using one of the following methods:
-- **Filter the model based on consent preferences**: Filtering the data based on consent preferences is only possible for users who set up a model after they configured Consent Management in Segment. This method also limits how you can use your warehouse data, as the model can't be used for multiple use cases where consent flows to destinations mapped to multiple categories.
-- **Build a mapping that identifies consent categories**: If you are setting up Reverse ETL or updating your mapping, you can update your mapping to identify the columns that store information about end user consent preferences and enforce these preferences in Segment's downstream destinations.
+To enforce consent stored in your warehouse, build a Reverse ETL mapping that identifies consent categories. You can create a new mapping or update your mapping to identify the columns that store information about end user consent preferences and then enforce these preferences in [Reverse ETL-supported Actions destinations](/docs/connections/reverse-etl/reverse-etl-catalog/) and the [Segment Connections destination](/docs/connections/destinations/catalog/actions-segment/).
+
+> info "Consent in Reverse ETL supports RETL destinations and Segment Connections"
+> At this time, Consent in Reverse ETL does not support enforcing consent in the Segment Profiles destination. To enforce consent data in your Classic Segment destinations, use the [Segment Connections destination](/docs/connections/destinations/catalog/actions-segment/).
## Prerequisites
+
> info "Consent management edit and update capabilities limited to Workspace Owners"
> Only users with the Workspace Owner role are able to create, edit, and disable consent categories. All other users have read-only access to Consent Management features.
@@ -21,7 +23,7 @@ Before you can enforce consent stored in your warehouse, take the following step
## Step 1: Create consent categories in the Segment app
> info "Limited availability of destinations"
-> Reverse ETL supports the destinations in the [Reverse ETL catalog](/docs/connections/reverse-etl/reverse-etl-catalog/), [Segment Profiles](), and Segment Connections.
+> Reverse ETL supports the destinations in the [Reverse ETL catalog](/docs/connections/reverse-etl/reverse-etl-catalog/) and Segment Connections.
1. From the [Segment homepage](https://app.segment.com/goto-my-workspace/){:target="_blank”}, select the Privacy tab and click **Consent Management**.
2. On the Consent management page, click **Create categories**.
@@ -38,7 +40,7 @@ Before you can enforce consent stored in your warehouse, take the following step
## Step 2: Identify consent columns
-After you set up consent categories in the Segment app, you must identify the columns in your data warehouse that store end user consent by creating a *model*, or SQL query that defines the set of data you want to synchronize to your Reverse ETL destinations. When building your RETL data model, Segment recommends storing consent in `true`, `false`, or `conflict` format and mapping only one consent category to each column.
+After you set up consent categories in the Segment app, you must identify the columns in your data warehouse that store end user consent by creating a *model*, or SQL query that defines the set of data you want to synchronize to your Reverse ETL destinations. When building your RETL data model, Segment recommends storing consent as a boolean of either `true` or `false` and mapping only one consent category to each column.
> error "Creating a data mapping that does not include information about consent preferences results in no consent enforcement"
> If you create consent categories in your workspace but fail to identify columns that contain consent preferences in your data mapping, events will flow to all destinations in your workspace regardless of end user consent preferences.
@@ -66,6 +68,8 @@ To edit a model:
After you set up categories in the Segment app and create a RETL mapping that extracts consent information, you can send events to your downstream destinations.
+> info "Consent in Reverse ETL supports RETL destinations and Segment Connections"
+> At this time, Consent in Reverse ETL does not support enforcing consent in the [Segment Profiles destination](/docs/connections/destinations/catalog/actions-segment-profiles/).
@@ -76,10 +80,12 @@ You can validate that you successfully created your consent mapping in Segment C
### Segment Connections
Open the Source Debugger for your Reverse ETL source and confirm that the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) appears on every event and that the consent object has the categories you mapped in [Step 2: Identify consent columns](#step-2-identify-consent-columns).
-### Segment Profiles
-Open the [Profile Explorer](/docs/unify/#profile-explorer) and verify that your profiles contain the [Segment Consent Preference Updated](/docs/privacy/consent-management/consent-in-unify/#segment-consent-preference-updated-event) event.
+
### Supported Reverse ETL Actions destinations
Segment automatically filters out data belonging to users who have not consented to the category that a supported Actions destination is mapped to.
-To verify that this is working as intended, open [Delivery Overview](/docs/connections/delivery-overview) for a [supported Actions destination](/docs/connections/reverse-etl/reverse-etl-catalog/) and view some of the events that were successfully delivered to the destination. The events in your destination should only come from users that consented to send data to the category that your supported Actions destination belongs to.
\ No newline at end of file
+
+
+To verify that this is working as intended, open [Delivery Overview](/docs/connections/delivery-overview) for a supported Actions destination and view some of the events that were successfully delivered to the destination. The events in your destination should only come from users that consented to send data to the category that your supported Actions destination belongs to.
\ No newline at end of file
From 60cfb9e7380473aa5bbc154b21a89b37e2841de1 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Thu, 2 May 2024 14:04:52 -0400
Subject: [PATCH 06/23] remove misc consent items
---
src/_data/sidenav/main.yml | 2 --
src/privacy/consent-management/consent-faq.md | 28 -------------------
2 files changed, 30 deletions(-)
delete mode 100644 src/privacy/consent-management/consent-faq.md
diff --git a/src/_data/sidenav/main.yml b/src/_data/sidenav/main.yml
index 8e58c8c592..4bae044097 100644
--- a/src/_data/sidenav/main.yml
+++ b/src/_data/sidenav/main.yml
@@ -528,8 +528,6 @@ sections:
title: Consent in Unify
- path: /privacy/consent-management/consent-in-retl/
title: Consent in Reverse ETL
- - path: /privacy/consent-management/consent-faq/
- title: Consent FAQs
- path: /privacy/account-deletion
title: Account & Data Deletion
- path: /privacy/hipaa-eligible-segment
diff --git a/src/privacy/consent-management/consent-faq.md b/src/privacy/consent-management/consent-faq.md
deleted file mode 100644
index ce2adec27a..0000000000
--- a/src/privacy/consent-management/consent-faq.md
+++ /dev/null
@@ -1,28 +0,0 @@
----
-title: Frequently Asked Questions
-plan: consent-management
----
-
-## Is Segment's Consent Manager part of Consent Management?
-
-No. Segment's deprecated [open-source Consent Manager](https://github.com/segmentio/consent-manager){:target="_blank”}, which captures end user consent, is not part of Segment's Consent Management product, which focuses only on enforcing end user consent.
-
-Segment recommends moving from the deprecated consent-manager to a commercial alternative, like [OneTrust](https://www.onetrust.com/){:target="_blank”}.
-
-## What destinations support consent enforcement?
-
-All event streams destinations, with the exception of AWS S3 and Engage destinations, support consent enforcement.
-
-## Can I share current end user consent preferences with my destinations?
-
-You can use the [Destination Actions framework](/docs/connections/destinations/actions/) to share the current status of your end-users' consent with your Actions destinations.
-
-For more information, see the [Sharing consent with Actions destinations](/docs/privacy/consent-management/consent-in-unify/#sharing-consent-with-actions-destinations) documentation.
-
-## Can I use a Consent Management Platform (CMP) other than OneTrust to collect consent from my end users?
-
-Yes, you can use any commercially available CMP or custom solution to collect consent from your end users. If you use a CMP other than OneTrust, you must generate your own wrapper or other mechanism to add the following objects to the events collected from your sources:
-- Includes the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) on every event
-- Generates the [Segment Consent Preference Updated](/docs/privacy/consent-management/consent-in-unify/#segment-consent-preference-updated-event) event every time a user provides or updates their consent preferences. This event must contain their anonymousId or userId.
-
-Segment provides guidance about creating your own wrapper in the [@segment/analytics-consent-tools](https://github.com/segmentio/analytics-next/tree/master/packages/consent/consent-tools){:target="_blank"} GitHub repository.
\ No newline at end of file
From f78b8039ee5ffb4c9ebbb3ece4ec0634a59bf192 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Thu, 2 May 2024 14:10:10 -0400
Subject: [PATCH 07/23] rmv more misc items
---
src/privacy/consent-management/configure-consent-management.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/privacy/consent-management/configure-consent-management.md b/src/privacy/consent-management/configure-consent-management.md
index a41a134b05..3876763f56 100644
--- a/src/privacy/consent-management/configure-consent-management.md
+++ b/src/privacy/consent-management/configure-consent-management.md
@@ -49,7 +49,7 @@ Segment provides a OneTrust wrapper for the following sources:
- **Swift**: Please follow the instructions from the README in the [@segment-integrations/analytics-swift-consent](https://github.com/segment-integrations/analytics-swift-consent#segment-consent-management){:target="_blank"} repository.
-If you'd like to integrate with any other CMP, Segment requires you to build your own wrapper or use any mechanism provided it meets the above requirements of data and event generation. To get started building your own wrapper, follow the instructions in the [@segment/analytics-consent-tools](https://github.com/segmentio/analytics-next/tree/master/packages/consent/consent-tools){:target="_blank"} repository.
+If you'd like to integrate with any other CMP, Segment requires you to build your own wrapper or use any mechanism provided it meets the above requirements of data and event generation.
> warning "Consent Management is not backwards compatible with Segment's legacy iOS and Android libraries"
> If you are using one of Segment's legacy mobile libraries (iOS or Android,) you will need to upgrade to [Swift](/docs/connections/sources/catalog/libraries/mobile/apple/migration/) or [Kotlin](/docs/connections/sources/catalog/libraries/mobile/kotlin-android/migration/) before using Consent Management.
From 2c40b39e04cdd93abee4568096ab6cb53771ebfb Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Tue, 7 May 2024 13:12:14 -0400
Subject: [PATCH 08/23] Update consent-in-retl.md
---
src/privacy/consent-management/consent-in-retl.md | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/privacy/consent-management/consent-in-retl.md b/src/privacy/consent-management/consent-in-retl.md
index 1fd45cfb37..833a7779f4 100644
--- a/src/privacy/consent-management/consent-in-retl.md
+++ b/src/privacy/consent-management/consent-in-retl.md
@@ -42,6 +42,8 @@ Before you can enforce consent stored in your warehouse, take the following step
After you set up consent categories in the Segment app, you must identify the columns in your data warehouse that store end user consent by creating a *model*, or SQL query that defines the set of data you want to synchronize to your Reverse ETL destinations. When building your RETL data model, Segment recommends storing consent as a boolean of either `true` or `false` and mapping only one consent category to each column.
+
+
> error "Creating a data mapping that does not include information about consent preferences results in no consent enforcement"
> If you create consent categories in your workspace but fail to identify columns that contain consent preferences in your data mapping, events will flow to all destinations in your workspace regardless of end user consent preferences.
From 619462d43d103fa8cdaaf25a0a5594196a525f30 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Thu, 30 May 2024 19:13:53 -0400
Subject: [PATCH 09/23] complete first pass
---
.../configure-consent-management.md | 2 +-
.../consent-management/consent-in-retl.md | 42 +++++++++----------
src/privacy/consent-management/index.md | 4 --
3 files changed, 21 insertions(+), 27 deletions(-)
diff --git a/src/privacy/consent-management/configure-consent-management.md b/src/privacy/consent-management/configure-consent-management.md
index 8304811959..b2d0dd8c3a 100644
--- a/src/privacy/consent-management/configure-consent-management.md
+++ b/src/privacy/consent-management/configure-consent-management.md
@@ -22,7 +22,7 @@ Before you can configure consent in Segment, take the following steps:
## Step 1: Create consent categories in the Segment app
> info "Limited availability of destinations"
-> AWS S3, RETL, and Engage destinations do not enforce consent preferences.
+> AWS S3 and Engage destinations do not enforce consent preferences.
1. From the [Segment homepage](https://app.segment.com/goto-my-workspace/){:target="_blank”}, select the Privacy tab and click **Consent Management**.
2. On the Consent management page, click **Create categories**.
diff --git a/src/privacy/consent-management/consent-in-retl.md b/src/privacy/consent-management/consent-in-retl.md
index 833a7779f4..2d29bb2df6 100644
--- a/src/privacy/consent-management/consent-in-retl.md
+++ b/src/privacy/consent-management/consent-in-retl.md
@@ -3,7 +3,7 @@ title: Consent in Reverse ETL
plan: consent-management
---
-With Consent Management in RETL, you can enforce your end-users' consent preferences that are captured by your consent management platform (CMP) and stored in your warehouse.
+With Consent in RETL, you can enforce your end-users' consent preferences that are captured by your consent management platform (CMP) and stored in your warehouse.
To enforce consent stored in your warehouse, build a Reverse ETL mapping that identifies consent categories. You can create a new mapping or update your mapping to identify the columns that store information about end user consent preferences and then enforce these preferences in [Reverse ETL-supported Actions destinations](/docs/connections/reverse-etl/reverse-etl-catalog/) and the [Segment Connections destination](/docs/connections/destinations/catalog/actions-segment/).
@@ -23,7 +23,7 @@ Before you can enforce consent stored in your warehouse, take the following step
## Step 1: Create consent categories in the Segment app
> info "Limited availability of destinations"
-> Reverse ETL supports the destinations in the [Reverse ETL catalog](/docs/connections/reverse-etl/reverse-etl-catalog/) and Segment Connections.
+> Reverse ETL supports the Actions destinations in the [Reverse ETL catalog](/docs/connections/reverse-etl/reverse-etl-catalog/) and [Segment Connections](/docs/connections/destinations/catalog/actions-segment/).
1. From the [Segment homepage](https://app.segment.com/goto-my-workspace/){:target="_blank”}, select the Privacy tab and click **Consent Management**.
2. On the Consent management page, click **Create categories**.
@@ -40,12 +40,10 @@ Before you can enforce consent stored in your warehouse, take the following step
## Step 2: Identify consent columns
-After you set up consent categories in the Segment app, you must identify the columns in your data warehouse that store end user consent by creating a *model*, or SQL query that defines the set of data you want to synchronize to your Reverse ETL destinations. When building your RETL data model, Segment recommends storing consent as a boolean of either `true` or `false` and mapping only one consent category to each column.
+After you set up consent categories in the Segment app, you must identify the columns in your data warehouse that store end user consent by creating a *model*, or SQL query that defines the set of data you want to synchronize to your Reverse ETL destinations. When building your RETL data model, Segment recommends that you store consent as a boolean `true` or `false` value and map one consent category to one column.
-
-
-> error "Creating a data mapping that does not include information about consent preferences results in no consent enforcement"
-> If you create consent categories in your workspace but fail to identify columns that contain consent preferences in your data mapping, events will flow to all destinations in your workspace regardless of end user consent preferences.
+> error "Creating a data model that does not include information about consent preferences results in no consent enforcement"
+> If you create consent categories in your workspace but fail to identify columns that contain consent preferences in your data model, events flow to all destinations in your workspace regardless of end user consent preferences.
To add your first model:
1. Navigate to Connections > Sources and select the Reverse ETL tab. Select your source and click **Add Model**.
@@ -57,37 +55,37 @@ To add your first model:
6. Click **Next**.
7. Enter your Model Name.
8. Click **Create Model**.
-
-To edit a model:
-1. Navigate to Connections > Sources and select the Reverse ETL tab. Select your source and click **Add Model**.
-
-
+ _(Optional): You can opt
> info "Consent categories in the Segment app must match consent columns identified in your data warehouse before continuing"
> If you create consent categories in the Segment app but fail to identify a column for each category you created in Segment, you will not be able to proceed until you enable a destination mapped to a consent category not identified in the data model.
-## Step 3: Send events to your downstream destinations
+## Step 3: Events flow to your downstream destinations
-After you set up categories in the Segment app and create a RETL mapping that extracts consent information, you can send events to your downstream destinations.
+After you set up categories in the Segment app and create a RETL model that extracts consent information, events begin to flow to your downstream destinations.
> info "Consent in Reverse ETL supports RETL destinations and Segment Connections"
> At this time, Consent in Reverse ETL does not support enforcing consent in the [Segment Profiles destination](/docs/connections/destinations/catalog/actions-segment-profiles/).
-
+### Segment Connections destination
+
+Segment automatically adds the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) to every event that's routed downstream to your Segment Connections destination. [Consent enforcement in Connections](/docs/privacy/consent-management/consent-in-segment-connections/) validates that only consenting data flows downstream to any classic Segment destinations connected to your Segment Connections instance.
+
+### Reverse ETL Actions destinations
+
+Segment automatically filters out data from users who have not consented to the category mapped to your destination.
## Validate your consent mapping
-You can validate that you successfully created your consent mapping in Segment Connections, Segment Profiles, and supported Reverse ETL Action destinations using the following methods:
+You can validate that you successfully created your consent mapping in Segment Connections or supported Reverse ETL Actions destinations using the following methods:
-### Segment Connections
+### Segment Connections destination
Open the Source Debugger for your Reverse ETL source and confirm that the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) appears on every event and that the consent object has the categories you mapped in [Step 2: Identify consent columns](#step-2-identify-consent-columns).
-### Supported Reverse ETL Actions destinations
-Segment automatically filters out data belonging to users who have not consented to the category that a supported Actions destination is mapped to.
-
-
+### Reverse ETL Actions destinations
+Segment automatically filters out data from users who have not consented to the category mapped to your destination.
-To verify that this is working as intended, open [Delivery Overview](/docs/connections/delivery-overview) for a supported Actions destination and view some of the events that were successfully delivered to the destination. The events in your destination should only come from users that consented to send data to the category that your supported Actions destination belongs to.
\ No newline at end of file
+To verify that this behavior is working as intended, open [Delivery Overview](/docs/connections/delivery-overview) for a RETL-supported Actions destination and view some of the events that were successfully delivered to the destination. The events in your destination should only come from users that consented to send data to the category that your supported Actions destination belongs to.
\ No newline at end of file
diff --git a/src/privacy/consent-management/index.md b/src/privacy/consent-management/index.md
index f5c6d32417..7f8c3698e2 100644
--- a/src/privacy/consent-management/index.md
+++ b/src/privacy/consent-management/index.md
@@ -1,10 +1,6 @@
---
title: Consent Management Overview
plan: consent-management
-related:
- - "/privacy/consent-management/configure-consent-management/"
- - "/privacy/consent-management/consent-in-segment-connections/"
- - "/privacy/consent-management/consent-in-unify/"
---
When an end user visits your web or mobile app, they set **consent preferences**, or make decisions about the types of data they want you to collect, use, and share. These consent preferences are typically presented as a set list of categories that describe how your company intends to use that data. Some common categories include personalization, advertising, and site performance.
From 685fdb86f7cc418d9430e63c91693da961913e67 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Fri, 31 May 2024 11:50:50 -0400
Subject: [PATCH 10/23] [netlify-build]
---
src/privacy/consent-management/consent-in-retl.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/privacy/consent-management/consent-in-retl.md b/src/privacy/consent-management/consent-in-retl.md
index 2d29bb2df6..d48f3d2782 100644
--- a/src/privacy/consent-management/consent-in-retl.md
+++ b/src/privacy/consent-management/consent-in-retl.md
@@ -8,7 +8,7 @@ With Consent in RETL, you can enforce your end-users' consent preferences that a
To enforce consent stored in your warehouse, build a Reverse ETL mapping that identifies consent categories. You can create a new mapping or update your mapping to identify the columns that store information about end user consent preferences and then enforce these preferences in [Reverse ETL-supported Actions destinations](/docs/connections/reverse-etl/reverse-etl-catalog/) and the [Segment Connections destination](/docs/connections/destinations/catalog/actions-segment/).
> info "Consent in Reverse ETL supports RETL destinations and Segment Connections"
-> At this time, Consent in Reverse ETL does not support enforcing consent in the Segment Profiles destination. To enforce consent data in your Classic Segment destinations, use the [Segment Connections destination](/docs/connections/destinations/catalog/actions-segment/).
+> At this time, Consent in Reverse ETL does not support enforcing consent in the Segment Profiles destination. To enforce consent data in your classic Segment destinations, use the [Segment Connections destination](/docs/connections/destinations/catalog/actions-segment/).
## Prerequisites
From 76e58fa6f03ad9ff0c09c9b76bf2e601fe381742 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Mon, 3 Jun 2024 11:17:59 -0400
Subject: [PATCH 11/23] add note to retl page
---
src/connections/reverse-etl/index.md | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/connections/reverse-etl/index.md b/src/connections/reverse-etl/index.md
index c14713f627..cf63bb96f8 100644
--- a/src/connections/reverse-etl/index.md
+++ b/src/connections/reverse-etl/index.md
@@ -26,8 +26,8 @@ Follow these 4 steps to set up Reverse ETL and learn what each component is abou
3. [Add a destination](#step-3-add-a-destination)
4. [Create mappings](#step-4-create-mappings)
-> info ""
-> The UI navigation and interface will look different from what's presented in the docs until Reverse ETL rolls out to all users for GA.
+> info "Enforce consent preferences stored in your warehouse with Consent Management
+> Use Consent Management to enforce your end users' consent preferences across your downstream Reverse ETL supported destinations. See the [Consent in Reverse ETL documentation](/docs/privacy/consent-management/consent-in-retl/) for more information.
### Step 1: Add a source
A source is where your data originates from. Traditionally in Segment, a [source](/docs/connections/sources/#what-is-a-source) is a website, server library, mobile SDK, or cloud application which can send data into Segment. In Reverse ETL, your data warehouse is the source.
@@ -92,7 +92,7 @@ To add your first destination:
After you’ve added a destination, you can create mappings from your warehouse to the destination. Mappings enable you to map the data you extract from your warehouse to the fields in your destination.
To create a mapping:
-1. Navigate to **Conections > Destinations** and select the **Reverse ETL** tab.
+1. Navigate to **Connections > Destinations** and select the **Reverse ETL** tab.
2. Select the destination that you want to create a mapping for.
3. Click **Add Mapping**.
4. Select the model to sync from.
From 3b997aec9b5e0f92f5b0ebafa36f1a1f5893c1c8 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Mon, 3 Jun 2024 12:48:32 -0400
Subject: [PATCH 12/23] [netlify-build]
---
src/connections/reverse-etl/index.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/connections/reverse-etl/index.md b/src/connections/reverse-etl/index.md
index cf63bb96f8..73bbf2ec1c 100644
--- a/src/connections/reverse-etl/index.md
+++ b/src/connections/reverse-etl/index.md
@@ -29,6 +29,7 @@ Follow these 4 steps to set up Reverse ETL and learn what each component is abou
> info "Enforce consent preferences stored in your warehouse with Consent Management
> Use Consent Management to enforce your end users' consent preferences across your downstream Reverse ETL supported destinations. See the [Consent in Reverse ETL documentation](/docs/privacy/consent-management/consent-in-retl/) for more information.
+
### Step 1: Add a source
A source is where your data originates from. Traditionally in Segment, a [source](/docs/connections/sources/#what-is-a-source) is a website, server library, mobile SDK, or cloud application which can send data into Segment. In Reverse ETL, your data warehouse is the source.
From 85c7aea66ec399dbc487baa77b21eff10bc43e3e Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Mon, 3 Jun 2024 12:56:23 -0400
Subject: [PATCH 13/23] [netlify-build]
---
src/connections/reverse-etl/index.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/connections/reverse-etl/index.md b/src/connections/reverse-etl/index.md
index 73bbf2ec1c..64562fcf78 100644
--- a/src/connections/reverse-etl/index.md
+++ b/src/connections/reverse-etl/index.md
@@ -26,7 +26,7 @@ Follow these 4 steps to set up Reverse ETL and learn what each component is abou
3. [Add a destination](#step-3-add-a-destination)
4. [Create mappings](#step-4-create-mappings)
-> info "Enforce consent preferences stored in your warehouse with Consent Management
+> info "Enforce consent preferences stored in your warehouse with Consent Management"
> Use Consent Management to enforce your end users' consent preferences across your downstream Reverse ETL supported destinations. See the [Consent in Reverse ETL documentation](/docs/privacy/consent-management/consent-in-retl/) for more information.
From 4038e83fcd71d425a0fd2d800c739d47051d5876 Mon Sep 17 00:00:00 2001
From: forstisabella <92472883+forstisabella@users.noreply.github.com>
Date: Mon, 3 Jun 2024 15:45:47 -0400
Subject: [PATCH 14/23] Add destinations procedure, "RETL" qa
---
.../consent-management/consent-in-retl.md | 60 +++++++++++++------
1 file changed, 43 insertions(+), 17 deletions(-)
diff --git a/src/privacy/consent-management/consent-in-retl.md b/src/privacy/consent-management/consent-in-retl.md
index d48f3d2782..9d1d2ba790 100644
--- a/src/privacy/consent-management/consent-in-retl.md
+++ b/src/privacy/consent-management/consent-in-retl.md
@@ -3,11 +3,11 @@ title: Consent in Reverse ETL
plan: consent-management
---
-With Consent in RETL, you can enforce your end-users' consent preferences that are captured by your consent management platform (CMP) and stored in your warehouse.
+With Consent Management in Reverse ETL, you can enforce your end-users' consent preferences that are captured by your consent management platform (CMP) and stored in your warehouse.
To enforce consent stored in your warehouse, build a Reverse ETL mapping that identifies consent categories. You can create a new mapping or update your mapping to identify the columns that store information about end user consent preferences and then enforce these preferences in [Reverse ETL-supported Actions destinations](/docs/connections/reverse-etl/reverse-etl-catalog/) and the [Segment Connections destination](/docs/connections/destinations/catalog/actions-segment/).
-> info "Consent in Reverse ETL supports RETL destinations and Segment Connections"
+> info "Consent in Reverse ETL supports Reverse ETL-supported Actions destinations and Segment Connections"
> At this time, Consent in Reverse ETL does not support enforcing consent in the Segment Profiles destination. To enforce consent data in your classic Segment destinations, use the [Segment Connections destination](/docs/connections/destinations/catalog/actions-segment/).
## Prerequisites
@@ -18,7 +18,7 @@ To enforce consent stored in your warehouse, build a Reverse ETL mapping that id
Before you can enforce consent stored in your warehouse, take the following steps:
- **Set up your third-party consent management tool and create consent categories**. Take note of your consent categories and the key or ID associated with each category.
- **Know how your company uses each destination**. You need to know which destinations to map to each category.
-- **End-user consent stored in a warehouse that [Segment supports for RETL](/docs/connections/reverse-etl/#step-1-add-a-source)**. Segment supports Reverse ETL capabilities in Azure, BigQuery, Databricks, Postgres, Snowflake, and Redshift data warehouses. Other data warehouses are not supported.
+- **End-user consent stored in a warehouse that [Segment supports for Reverse ETL](/docs/connections/reverse-etl/#step-1-add-a-source)**. Segment supports Reverse ETL capabilities in Azure, BigQuery, Databricks, Postgres, Snowflake, and Redshift data warehouses. Other data warehouses are not supported.
## Step 1: Create consent categories in the Segment app
@@ -38,9 +38,11 @@ Before you can enforce consent stored in your warehouse, take the following step
> warning "Segment recommends mapping all Reverse ETL destinations to a category"
> Segment assumes all destinations without a mapping do not require user consent and will receive all events containing a consent object. If a destination is mapped to multiple categories, a user must consent to all categories for data to flow to the destination.
+To edit or disable consent categories, view the [Configure Consent Management](/docs/privacy/consent-management/configure-consent-management/) documentation.
+
## Step 2: Identify consent columns
-After you set up consent categories in the Segment app, you must identify the columns in your data warehouse that store end user consent by creating a *model*, or SQL query that defines the set of data you want to synchronize to your Reverse ETL destinations. When building your RETL data model, Segment recommends that you store consent as a boolean `true` or `false` value and map one consent category to one column.
+After you set up consent categories in the Segment app, you must identify the columns in your data warehouse that store end user consent by creating a *model*, or SQL query that defines the set of data you want to synchronize to your Reverse ETL destinations. When building your data model, Segment recommends that you store consent as a boolean `true` or `false` value and map one consent category to one column.
> error "Creating a data model that does not include information about consent preferences results in no consent enforcement"
> If you create consent categories in your workspace but fail to identify columns that contain consent preferences in your data model, events flow to all destinations in your workspace regardless of end user consent preferences.
@@ -55,31 +57,55 @@ To add your first model:
6. Click **Next**.
7. Enter your Model Name.
8. Click **Create Model**.
- _(Optional): You can opt
+ _(Optional)_: You can opt to map data from your model to your destination using Reverse ETL mappings. For more information, see the [Reverse ETL: Create mappings](/docs/connections/reverse-etl/#step-4-create-mappings) documentation.
+
+To edit an existing Reverse ETL model:
+1. Navigate to **Connections > Destinations** and select the **Reverse ETL** tab.
+2. Select the source and the model you want to edit.
+3. Select the **Query Builder** tab to edit your query. When you've finished making changes, click **Save Query**.
+ _(Optional)_: You can select the **Settings** tab and click **Consent settings** to verify that the consent categories in your model match the consent categories you configured in your workspace.
+
+You can either create a model with each consent category represented in its own column, or one single blob column that you parse out into individual consent categories. The following sample model maps a consent category to each column in your database:
+
+``` sql
+select
+ USERID,
+ Ads,
+ CAST(CONSENT_OBJ:consent.cookie.Personalization as Boolean) as Personalization,
+ CAST(CONSENT_OBJ:consent.cookie.Analytics as Boolean) as Analytics,
+ city,
+ email,
+ distinctid
+from CONSENT_PREFERENCES;
+```
> info "Consent categories in the Segment app must match consent columns identified in your data warehouse before continuing"
> If you create consent categories in the Segment app but fail to identify a column for each category you created in Segment, you will not be able to proceed until you enable a destination mapped to a consent category not identified in the data model.
-## Step 3: Events flow to your downstream destinations
-
-After you set up categories in the Segment app and create a RETL model that extracts consent information, events begin to flow to your downstream destinations.
-
-> info "Consent in Reverse ETL supports RETL destinations and Segment Connections"
-> At this time, Consent in Reverse ETL does not support enforcing consent in the [Segment Profiles destination](/docs/connections/destinations/catalog/actions-segment-profiles/).
+## Step 3: Connect your downstream destinations
-### Segment Connections destination
-
-Segment automatically adds the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) to every event that's routed downstream to your Segment Connections destination. [Consent enforcement in Connections](/docs/privacy/consent-management/consent-in-segment-connections/) validates that only consenting data flows downstream to any classic Segment destinations connected to your Segment Connections instance.
+After you set up categories in the Segment app and create a SQL model that extracts consent information, connect your downstream destinations to complete the consent enforcement process.
-### Reverse ETL Actions destinations
+> info "Consent in Reverse ETL supports Reverse ETL-supported Actions destinations and Segment Connections"
+> At this time, Consent in Reverse ETL does not support enforcing consent in the Segment Profiles destination. To enforce consent data in your classic Segment destinations, use the [Segment Connections destination](/docs/connections/destinations/catalog/actions-segment/).
-Segment automatically filters out data from users who have not consented to the category mapped to your destination.
+To add your first destination:
+1. Navigate to **Connections > Destinations** and select the **Reverse ETL** tab.
+2. Click **Add Reverse ETL destination**.
+3. Select the destination you want to connect to and click **Configure**.
+4. Select the Reverse ETL source you want to connect the destination to.
+5. Enter the **Destination name** and click **Create Destination**.
+6. Enter the required information on the **Settings** tab of the destination.
+7. Navigate to the destination settings tab and enable the destination. If the destination is disabled, then Segment won't be able to start a sync.
## Validate your consent mapping
-You can validate that you successfully created your consent mapping in Segment Connections or supported Reverse ETL Actions destinations using the following methods:
+You can validate that you successfully created your consent mapping in Segment Connections or supported Reverse ETL Actions destinations using the following methods.
### Segment Connections destination
+
+Segment automatically adds the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) to every event that's routed downstream to your Segment Connections destination. [Consent enforcement in Connections](/docs/privacy/consent-management/consent-in-segment-connections/) validates that only consenting data flows downstream to any classic Segment destinations connected to your Segment Connections instance.
+
Open the Source Debugger for your Reverse ETL source and confirm that the [consent object](/docs/privacy/consent-management/consent-in-segment-connections/#consent-object) appears on every event and that the consent object has the categories you mapped in [Step 2: Identify consent columns](#step-2-identify-consent-columns).