You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/connections/destinations/destination-filters.md
+20-19Lines changed: 20 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,20 +20,21 @@ Common use cases for destination filters include:
20
20
21
21
### Limitations
22
22
23
-
Keep the following limitations in mind when you use Destination Filters:
23
+
Keep the following limitations in mind when you use destination filters:
24
24
25
-
- Segment applies Destination Filters one at a time in the order that they appear in your workspace.
26
-
- You can't apply Destination Filters to Warehouses or S3 destinations.
25
+
- Segment applies destination filters one at a time in the order that they appear in your workspace.
26
+
- You can't apply destination filters to Warehouses or S3 destinations.
27
27
- Each filter can only apply to one source-destination pair.
28
28
-*(For device-mode)* Destination filters don't apply to items that are added to the payload server-side such as IP addresses.
29
29
-*(For device-mode)* Destination filters don't filter on native events that the destination SDK collects. Instead, you can use the load option to conditionally load relevant bundled JavaScript on the page. See the docs for [load options](/docs/connections/sources/catalog/libraries/website/javascript/#load-options).
30
+
-*(For device-mode)* Destination filters don't filter some fields that are collected by the destination SDK outside of Segment such as `page.url` and `page.referrer`.
30
31
-*(For web device-mode)* Destination filters for web device-mode only supports the Analytics.js 2.0 source. You need to enable device mode destination filters for your Analytics.js source. To do this, go to your Javascript source and navigate to **Settings > Analytics.js** and turn the toggle on for **Destination Filters**.
31
32
32
33
[Contact Segment](https://segment.com/help/contact/){:target="_blank"} if these limitations impact your use case.
33
34
34
35
## Create a destination filter
35
36
36
-
To create a Destination Filter:
37
+
To create a destination filter:
37
38
1. Go to **Connections > Destinations** and select your destination.
38
39
2. Click on the **Filters** tab of your destination.
39
40
3. Click **+ New Filter**.
@@ -45,9 +46,9 @@ To create a Destination Filter:
45
46
46
47
## Destination filters API
47
48
48
-
The Destination Filters API provides more power than Segment's dashboard Destination Filters settings. With the API, you can create complex filters that are conditionally applied using Segment's [Filter Query Language (FQL)](/docs/api/config-api/fql/).
49
+
The destination filters API provides more power than Segment's dashboard destination filters settings. With the API, you can create complex filters that are conditionally applied using Segment's [Filter Query Language (FQL)](/docs/api/config-api/fql/).
49
50
50
-
The Destination Filters API offers four different filter types:
51
+
The destination filters API offers four different filter types:
@@ -60,7 +61,7 @@ To learn more, read Segment's [Destination Filters API docs](https://docs.segmen
60
61
61
62
## Examples
62
63
63
-
The following examples illustrate common Destinations Filters use cases:
64
+
The following examples illustrate common destinations filters use cases:
64
65
*[PII management](#pii-management)
65
66
*[Control event volume](#control-event-volume)
66
67
*[Cleaner data](#cleaner-data)
@@ -72,7 +73,7 @@ The following examples illustrate common Destinations Filters use cases:
72
73
73
74
Example: Remove email addresses from `context` and `properties`:
74
75
75
-
Property-level allowlisting is available with Segment's API. Using Destination Filters, you can configure a rule that removes email addresses from `context` and `properties`. As a result, Segment only sends traits without PII to the destination.
76
+
Property-level allowlisting is available with Segment's API. Using destination filters, you can configure a rule that removes email addresses from `context` and `properties`. As a result, Segment only sends traits without PII to the destination.
@@ -101,31 +102,31 @@ In the example below, the rule prevents an event from sending if `Order Complete
101
102
102
103
### Sample a percentage of events
103
104
104
-
Using the [Destination Filters API](https://docs.segmentapis.com/tag/Destination-Filters){:target="_blank"}, you can create a rule to randomly sample video heartbeat events.
105
+
Using the [destination filters API](https://docs.segmentapis.com/tag/Destination-Filters){:target="_blank"}, you can create a rule to randomly sample video heartbeat events.
105
106
106
107
### Drop events
107
108
108
-
[Watch this Destination Filters walkthrough](https://www.youtube.com/watch?v=47dhAF1Hoco){:target="_blank"} to learn how to use event names to filter events sent to destinations.
109
+
[Watch this destination filters walkthrough](https://www.youtube.com/watch?v=47dhAF1Hoco){:target="_blank"} to learn how to use event names to filter events sent to destinations.
109
110
110
111
## Important notes
111
112
112
113
#### Conflicting settings
113
114
114
-
Some destinations offer settings that also allow you to filter data. For example, the Facebook App Events destination allows you to map `Screen` events to `Track` events. Because Destination Filters are evaluated and applied _before_ the Destination settings are applied, they can conflict with your settings.
115
+
Some destinations offer settings that also allow you to filter data. For example, the Facebook App Events destination allows you to map `Screen` events to `Track` events. Because destination filters are evaluated and applied _before_ the destination settings are applied, they can conflict with your settings.
115
116
116
-
For example, if you have a Destination Filter that filters Track events _and_ you have the **Use Screen Events as Track Events** setting enabled, `Track` events drop, but `Screen` events still process. The destination settings transform it into a `Track` event - *after* the filters.
117
+
For example, if you have a destination filter that filters Track events _and_ you have the **Use Screen Events as Track Events** setting enabled, `Track` events drop, but `Screen` events still process. The destination settings transform it into a `Track` event - *after* the filters.
117
118
118
119
#### Error handling
119
120
120
-
Segment makes effort to ensure that Destination Filters can handle unexpected situations. For example, if you use the `contains()` FQL function on the `null` field, Segment returns `false` instead of returning an error. If Segment can't infer your intent, Segment logs an internal error and drops the event. Segment defaults to this behavior to prevent sensitive information, like a PII filter, from getting through.
121
+
Segment makes effort to ensure that destination filters can handle unexpected situations. For example, if you use the `contains()` FQL function on the `null` field, Segment returns `false` instead of returning an error. If Segment can't infer your intent, Segment logs an internal error and drops the event. Segment defaults to this behavior to prevent sensitive information, like a PII filter, from getting through.
121
122
122
123
Errors aren't exposed in your Destination's Event Deliverability tab. For help diagnosing missing destination filter events, [contact Segment](https://segment.com/help/contact/){:target="_blank"}.
123
124
124
125
## FAQs
125
126
126
-
#### How do Destination Filters work with array properties?
127
+
#### How do destination filters work with array properties?
127
128
128
-
Destination Filters can filter properties out of objects nested in an array. For example, you can filter out the `price` property of every object in an array at `properties.products`. You can also filter out an entire array from the payload. However, you can't drop nested objects in an array or filter properties out of a single object in an array.
129
+
Destination filters can filter properties out of objects nested in an array. For example, you can filter out the `price` property of every object in an array at `properties.products`. You can also filter out an entire array from the payload. However, you can't drop nested objects in an array or filter properties out of a single object in an array.
129
130
130
131
To block a specific property from all of the objects within a properties array, set the filter using the following the format: `<propertyType>.<arrayName>.<arrayElementLabel>`.
131
132
@@ -141,7 +142,7 @@ Segment supports 10 filters per destination. If you need help consolidating filt
141
142
142
143
#### Can I set multiple `Only Send` destination filters?
143
144
144
-
Segment evaluates multiple `Only Send` filters against each other and resolves Destination Filters in order. If multiple `Only Send` filters conflict with each other, Segment won't send information downstream.
145
+
Segment evaluates multiple `Only Send` filters against each other and resolves destination filters in order. If multiple `Only Send` filters conflict with each other, Segment won't send information downstream.
145
146
146
147
#### How many properties can I view in the filter dropdown?
147
148
@@ -155,14 +156,14 @@ To filter out events from warehouses, use Selective Sync.
155
156
156
157
Generally, only Track calls have *name* properties, which correspond to the *event* field in an event.
157
158
158
-
#### How can I find out when new Destination Filters have been added or removed?
159
+
#### How can I find out when new destination filters have been added or removed?
159
160
160
-
The Activity Feed shows the action, date, and user who performed the action when a Destination Filter is created, modified, enabled, disabled, or deleted. You can also subscribe to notifications for any of these changes in the **Activity Feed** settings page.
161
+
The Activity Feed shows the action, date, and user who performed the action when a destination filter is created, modified, enabled, disabled, or deleted. You can also subscribe to notifications for any of these changes in the **Activity Feed** settings page.
161
162
162
163
#### Why am I getting a permissions denied error when I try to save a filter?
163
164
164
165
You must have write access to save and edit filters. Read permission access only allows viewing and testing access.
165
166
166
167
#### How can I test my filter?
167
168
168
-
Use the Destination Filter tester during setup to verify that you're filtering out the right events. Filtered events show up on the schema page but aren't counted in event deliverability graphs.
169
+
Use the destination filter tester during setup to verify that you're filtering out the right events. Filtered events show up on the schema page but aren't counted in event deliverability graphs.
0 commit comments