Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions src/_data/sidenav/strat.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,27 @@ sections:
title: Facebook Ads Cloud Source
- path: /connections/sources/catalog/cloud-apps/facebook-lead-ads
title: Facebook Lead Ads Cloud Source

- slug: google
section_title: Google Integrations
section:
- path: /connections/sources/catalog/libraries/mobile/android
title: Segment Android mobile source library
- path: /connections/destinations/catalog/firebase
title: Google Firebase (mobile analytics) destintation
- path: /connections/destinations/catalog/google-analytics
title: Google Analytics destintation
- path: /connections/destinations/catalog/google-tag-manager
title: Google Tag Manager destintation
- path: /connections/destinations/catalog/doubleclick-floodlight
title: DoubleClick Floodlight destintation
- path: /connections/destinations/catalog/personas-display-video-360
title: 'Using Personas with Google DV360 (Beta)'
- path: /connections/destinations/catalog/google-ads-classic
title: 'Google Ads (Classic) destintation'
- path: /connections/destinations/catalog/google-ads-gtag
title: 'Google Ads (Gtag) destintation'
- path: /connections/destinations/catalog/google-cloud-function
title: Google Cloud Function destintation
- path: /connections/destinations/catalog/google-cloud-pubsub
title: Google Cloud Pubsub destintation
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Amazon Lambda Destination
rewrite: true
---

Segment makes it easy to send your data to AWS Lambda (and lots of other destinations). Once you've tracked your data using our open source [libraries](https://segment.com/libraries) we'll translate and route your data to AWS Lambda in the format they understand.
Segment makes it easy to send your data to AWS Lambda (and lots of other destinations). Once you've tracked your data using our open source [libraries](/docs/connections/sources/catalog/) we'll translate and route your data to AWS Lambda in the format they understand.

[AWS Lambda](https://aws.amazon.com/lambda/) lets you run code without provisioning or managing servers. You pay only for the compute time you consume - there is no charge when your code is not running.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ rewrite: true
title: Amazon Personalize Destination
---

Segment makes it easy to send your data to Amazon Personalize (and lots of other destinations). Once you've tracked your data through our open source [libraries](https://segment.com/libraries) we'll translate and route your data to Amazon Personalize in the format they understand. [Learn more about how to use Amazon Personalize with Segment.](/docs/connections/destinations/catalog/amazon-personalize)
Segment makes it easy to send your data to Amazon Personalize (and lots of other destinations). Once you track your data using our open-source [libraries](/docs/connections/sources/catalog/) we'll translate and route your data to Amazon Personalize in the format they understand. [Learn more about how to use Amazon Personalize with Segment.](/docs/connections/destinations/catalog/amazon-personalize)

[Amazon Personalize](https://aws.amazon.com/personalize/) is a machine learning service that makes it easy for developers to create individualized recommendations for customers using their applications. AWS Personalize enables…

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ beta: true
title: Azure Function Destination
---

Segment makes it easy to send your data to Azure Function (and lots of other destinations). Once you've tracked your data through our open source [libraries](https://segment.com/libraries) we'll translate and route your data to Azure Function in the format they understand. [Learn more about how to use Azure Function with Segment.](/docs/connections/destinations/catalog/azure-function)
Segment makes it easy to send your data to Azure Function (and lots of other destinations). Once you track your data using our open-source [libraries](/docs/connections/sources/catalog/) we'll translate and route your data to Azure Function in the format they understand. [Learn more about how to use Azure Function with Segment.](/docs/connections/destinations/catalog/azure-function)

[Azure Function](https://azure.microsoft.com/en-us/services/functions) is a serverless compute service that enables you to run code on-demand without having to explicitly provision or manage infrastructure. Use Azure Functions to run a script or piece of code in response to a variety of events.

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1,34 +1,33 @@
---
title: DoubleClick Floodlight Destination
strat: google
---

## Getting Started
The [DoubleClick Floodlight](https://support.google.com/searchads/answer/7298761?hl=en) destination allows you to make calls directly to Floodlight based on your mapped events. All you have to do is enter your **DoubleClick Advertiser ID** in the Doubleclick Floodlight destinations settings in the Segment App, then map the Segment `track` events to their corresponding Floodlight tags.

The DoubleClick Floodlight destination allows you to make calls directly to Floodlight based on your mapped events. All you have to do is drop in your **DoubleClick Advertiser ID** into your settings and map the Segment `track` events to their corresponding Floodlight tags.

If you'd like to send mobile data, this destination _requires_ you to send device specific information such as the `IDFA` or the `AdvertisingId` and thus you should send events using our **mobile** libraries. You can also send data from `analytics.js` and we will make direct HTTP requests to Doubleclick Floodlight from your browser.
This destination _requires_ that mobile implementations send device-specific information such as the `IDFA` or the `AdvertisingId`, so you should send events using [one of the Segment mobile libraries](/docs/connections/sources/catalog/#mobile). You can also send data from [Analytics.js](/docs/connections/sources/catalog/libraries/website/javascript/) and Segment makes direct HTTP requests to Doubleclick Floodlight from your browser.

## Track

In order to send `track` events to DoubleClick Floodlight, you **must** first create the Floodlight tags (**Sales** or **Counter**) inside your DoubleClick Campaign Manager and then map the Segment events to those tags inside Segment settings.
Before you send `track` events to DoubleClick Floodlight, you **must** first go to the DoubleClick Campaign Manager and create the Floodlight tags (**Sales** or **Counter**). Once you do that, you can map the Segment events to those tags from in the destination's settings in the Segment App.

If you want to track custom properties, be sure to create [custom variables](https://segment.com/docs/connections/destinations/catalog/doubleclick-floodlight/#setting-up-custom-variables) inside DoubleClick Campaign Manager.
To track custom properties first create [custom variables](#setting-up-custom-variables) inside DoubleClick Campaign Manager.

Once all the configurations are finished, whenever we receive a mapped Segment event, we will map the following properties and settings:
After you finish configuring Doubleclick Floodlight, Segment maps the following properties and settings when it receives a mapped event:

- `dc_rdid` will be set as `IDFA` or `AdvertisingId` (for mobile data only)
- `src` will be pulled from your destination settings
- `cat` and `type` will be pulled from your event mappings from the settings OR your top level **Activity Tag** and **Group Tag** settings
- `ord` for **counter** tags will be a random number to prevent browser caching
- `ord` for **sales** tags will be your whatever you define in your settings! (ie. `properties.order_id`) Include the `properties.` prefix to the key to ensure we can find the associated value in your `properties` object.
- `qty` for **sales** tags only we will sum the quantity of products in your `products` array property or fallback on top level `properties.quantity`
- `cost` for **sales** tags only we will send the `revenue`
- `u$` (if any) will be pulled from your property mapping setting
- `dc_lat` will be set to `0` or `1` depending on whether the device has **Limit Ad Tracking** enabled (for mobile data only)
- `dc_rdid` is set as `IDFA` or `AdvertisingId` (for mobile data only)
- `src` is pulled from your destination settings
- `cat` and `type` are pulled from your event mappings from the settings OR your top level **Activity Tag** and **Group Tag** settings
- `ord` for **counter** tags are a random number to prevent browser caching
- `ord` for **sales** tags are set to whatever you define in your settings! (ie. `properties.order_id`) Include the `properties.` prefix to the key to ensure Segment finds the associated value in your `properties` object.
- `qty` for **sales** tags only, Segment sums the quantity of products in your `products` array property or falls back on top level `properties.quantity`
- `cost` for **sales** tags only Segment sends the `revenue`
- `u$` (if any) is pulled from your property mapping setting
- `dc_lat` is set to `0` or `1` depending on whether the device has **Limit Ad Tracking** enabled (for mobile data only)

**Important:** Floodlight requires that you [set a `User-Agent` header](https://cloudup.com/cDlD6KmuuOK) with that of the app where the track event took place. Our Android or analytics.js library automatically collects the `userAgent`. However, for iOS library you must manually send the user agent string inside the `context` object. If `context.userAgent` is not provided, we will try to generate a user agent string based on some device and operating system information that we *do* already collect.
**Important:** Floodlight requires that you [set a `User-Agent` header](images/cDlD6KmuuOK.png) with that of the app where the track event took place. The Segment Android and Analytics.js (javascript) library automatically collect the `userAgent`. However you must manually send the user agent string inside the `context` object if you are using the iOS library. If `context.userAgent` is not provided, Segment tries to generate a user agent string based on some device and operating system information that is already has.

Such generated user agent string might look something like this:
A generated user agent string might look something like the following:

`Segment/1.0 (iPhone OS; CPU iPhone7,2; en-US) Apple; Version 8.1.3`

Expand All @@ -55,33 +54,31 @@ https://ad.doubleclick.net/ddm/activity/src=1234567;cat=fghij456;type=abcde123;d

By default, the Segment event property you define for each custom variable mapping will be matched against the property values found in the `properties` object of a `track` event. You can, however, use JSON style dot-notation-accessors wrapped in double curly brackets to map to **any** property in the event's raw payload to your custom variables. For example, some acceptable values could be `context.campaign.name`, `context.userAgent`, or `anonymousId` (inside of the double curly brackets). You can find the complete structure of a standard Segment event payload [here](/docs/connections/spec/common/#structure).

**Note:** `dc_rdid` and `dc_lat` will be automatically collected by our mobile libraries and `ord` will be uniquely generated for each event.
**Note:** `dc_rdid` and `dc_lat` are automatically collected by our mobile libraries and `ord` is uniquely generated for each event.

## Page

Our DoubleClick Floodlight destination also supports tracking named `page` events as conversions. In order to enable this functionality, follow the same steps laid out above for `track` events however, in the destination settings, input the conversion "event" name following this structure (where \[PAGE NAME\] is the `name` parameter you are passing to the Segment `page` event):
The Segment DoubleClick Floodlight destination also supports tracking named `page` events as conversions. To enable this feature, follow the same steps explained above for `track` events but in the destination settings, enter the conversion "event" name. Use the structure in the example below, replacing `PAGE NAME` with the `name` parameter you pass to the Segment `page` event:

**Viewed** \[PAGE NAME\] **Page**
**Viewed `PAGE NAME` Page**

Here's an example for tracking a `page` event with the name **Confirmation**:

![page event as track event](images/page-event.png)

Make sure you enter the name case sensitively.
The name is case sensitive.

Reference our [docs](/docs/connections/sources/catalog/libraries/website/javascript/#page) for more on the `name` parameter.
See the [Analytics.js documentation](/docs/connections/sources/catalog/libraries/website/javascript/#page) for more on the `name` parameter.

### Pages with categories

If you are passing category names to `page` events you would like to track as conversions, you will need to slightly modify the event name you input into your destination settings. As opposed to **Viewed** \[PAGE NAME\] **Page**, you will need to input it as:

**Viewed** \[CATEGORY NAME\] \[PAGE NAME\] **Page**
If you are passing category names to `page` events you would like to track as conversions, you must slightly modify the event name you input into your destination settings. Instead of **Viewed `PAGE NAME` Page**, enter it as: **Viewed `CATEGORY NAME` `PAGE NAME` **Page**

For example, if you had a `page` event with the name as **Confirmation** that was being categorized as part of a group of **Checkout** pages, you would input:
For example, if you had a `page` event with the name as **Confirmation** that was being categorized as part of a group of **Checkout** pages, you would enter:

**Viewed Checkout Confirmation Page**

Reference our [docs](/docs/connections/sources/catalog/libraries/website/javascript/#page) for more on the `category` paramter.
See the [Analytics.js documentation](/docs/connections/sources/catalog/libraries/website/javascript/#page) for more on the `category` paramter.

## Setting up Custom Variables

Expand All @@ -95,25 +92,25 @@ For each custom variable you want to create or edit, enter a Friendly Name, whic

Choose the Type of custom variable you're creating. Choose string if you want the variable to include alphanumeric characters or special characters. The only characters you can't use are ", < and >. Choose number if you want to pass numeric values.

If you add Custom Floodlight Variables to a report as metrics, note that they will be summed in the report as if they are numeric values, even if the variables are actually strings. The string variables will display a value of 0.
If you add Custom Floodlight Variables to a report as metrics, they are summed in the report as if they are numeric values, even if the variables are actually strings. The string variables will display a value of 0.

Click Save.
Click **Save**.

## COPPA Compliance

DoubleClick Floodlight lets you set a parameter called `tag_for_child_directed_treatment` as either `0` or `1` if you want to mark a particular tag as coming from a user under the age of 13, under the [COPPA](https://www.ftc.gov/news-events/media-resources/protecting-consumer-privacy/kids-privacy-coppa) compliance.
DoubleClick Floodlight lets you set a parameter called `tag_for_child_directed_treatment` as either `0`, or `1` to mark a specific tag as coming from a user under the age of 13, under the [COPPA compliance privacy law](https://www.ftc.gov/news-events/media-resources/protecting-consumer-privacy/kids-privacy-coppa).

If you want to set this flag, you can send an integration option namespaced as `coppaCompliant` with `true` or `false` (default):

```java

Analytics.with(context).track("Free El", new Properties().putValue("show", "Stranger Things").putValue("source", "Netflix").putValue("greatestShowEver", true), new Options().setIntegrationOptions("DoubleClick Floodlight", new ValueMap().putValue("coppaCompliant", true)));
```

> Note: This flag was previously called "copaCompliant" instead of "coppaCompliant". The method has been aliased to preserve the old functionality, and you do not need to update it if you used the old spelling.
> success ""
> **Tip**: This flag was previously called `copaCompliant` (a typo) instead of `coppaCompliant`. The method has been aliased to preserve the old functionality, and you do not need to update it if you used the old spelling.

## Sending Personally Identifiable Information (PII)

Do not map custom variables that are PII. Refer to the [warning](https://support.google.com/dfa/partner/answer/2548879?hl=en) by DoubleClick:
Do not map custom variables that contain Personally Identifying Information (PII). Refer to [this warning by DoubleClick](https://support.google.com/dfa/partner/answer/2548879?hl=en):

The terms of your DoubleClick contract prohibit passing any information to us that we could use or recognize as personally identifiable information (PII). If you enter certain key-values into a field in a DoubleClick product, you may see a warning that reminds you that you must not use key-values to pass data that we would recognize as PII. Key-values that trigger this warning include, for example, email and username. Note that it is okay to use these key-values if your purpose is not to collect information that DoubleClick could use or recognize as PII. (For example, email=weekly is fine, but passing a user's email address is not.) If you do choose one of these key-values, DoubleClick may contact you in the future to confirm that you are not using them in a way that is prohibited.
9 changes: 4 additions & 5 deletions src/connections/destinations/catalog/firebase/index.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
---
title: Firebase Destination
strat: google
---


## Getting Started

### Android
## Getting Started on Android

To start sending data to Firebase Analytics from your Android project, you'll need to follow a few simple steps:

Expand All @@ -32,7 +31,7 @@ apply plugin: 'com.google.gms.google-services'

***Project-level build.gradle***: Add Google Services dependency and their Maven repo location to repositories:

```
```js
buildscript {
dependencies {
// Add this line
Expand Down Expand Up @@ -68,7 +67,7 @@ Analytics analytics = new Analytics.Builder(context, writeKey)

By default, we bundle only `Firebase/Core` which is [Firebase's Analytics offering](https://firebase.google.com/docs/analytics/). You can see the other available [Firebase dependencies and features here](https://firebase.google.com/docs/android/setup).

### iOS
## Getting Started on iOS

1. Register your app in the [Firebase console](https://console.firebase.google.com/) and add the `GoogleService-Info.plist` to the root of your Xcode project.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Freshmarketer Destination
rewrite: true
---

Segment makes it easy to send your data to [Freshmarketer](https://www.freshmarketer.com/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners) (and lots of other destinations). Once you've tracked your data through our open source [libraries](https://segment.com/libraries) we'll translate and route your data to Freshmarketer in the format they understand. Learn more about how to use Freshmarketer with Segment.
Segment makes it easy to send your data to [Freshmarketer](https://www.freshmarketer.com/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners) (and lots of other destinations). Once you track your data using our open-source [libraries](/docs/connections/sources/catalog/) we'll translate and route your data to Freshmarketer in the format they understand. Learn more about how to use Freshmarketer with Segment.

This destination is maintained by Freshmarketer. For any issues with the destination, [contact their team](mailto:support@freshmarketer.com).

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
---
title: Google Ads (Classic) Destination
redirect_from: '/connections/destinations/catalog/adwords/'
strat: google
---

Our Google Ads (Classic) destination code is open-source on GitHub if you want to check it out.
[Our clientside javascript destination.](https://github.com/segment-integrations/analytics.js-integration-adwords).
Our Google Ads (Classic) destination code is open-source on GitHub if you want to check out
[Segment's javascript Google Ads destination](https://github.com/segment-integrations/analytics.js-integration-adwords).

## Web

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
title: 'Google Ads (Gtag) Destination'
beta: true
redirect_from: '/connections/destinations/catalog/google-adwords-new/'
strat: google
---

## Before you begin...
Expand Down
Loading