From 2087c4d4e45371731dbbe90f381a53d234954a88 Mon Sep 17 00:00:00 2001 From: XavierAgostini Date: Mon, 18 Nov 2019 18:17:43 -0800 Subject: [PATCH 1/2] update swiftype meta tags to accept description and product info --- Makefile | 4 +- README.md | 3 +- scripts/catalog.js | 39 +- src/_data/catalog/destinations.yml | 5957 ++++++++++++++-------------- src/_data/catalog/sources.yml | 1 - src/_layouts/default.html | 9 +- 6 files changed, 3011 insertions(+), 3002 deletions(-) diff --git a/Makefile b/Makefile index 3d885b3ca8..a7ae84484e 100644 --- a/Makefile +++ b/Makefile @@ -32,11 +32,11 @@ serve: package .PHONY: catalog catalog: vendor/bundle - @node server/catalog.js + @node scripts/catalog.js .PHONY: sidenav sidenav: vendor/bundle - @node server/nav.js + @node scripts/nav.js .PHONY: typewriter typewriter: npx typewriter diff --git a/README.md b/README.md index 40fff860ad..9e70047044 100644 --- a/README.md +++ b/README.md @@ -22,9 +22,8 @@ You will need to have Docker installed https://docs.docker.com/install/ ## Makefile commands - `build`: Builds the site docs. Used by CI to publish the docs to staging and production -- `nav`: Rebuilds the entire nav datafile based on the current doc structure. This is destructive and should not be used unless absolutely necessary. - `catalog`: Pulls in the latest catalog data from the Platform API and saves it in the respective data files. Requires an API key to be passed in env via PLATFORM_API_TOKEN -- `nav`: Builds the side navs for 'main', 'legal', 'api', 'partners' and stores the output in `/src/_data/sidenav-auto/`. This output isn't used for the actual build. +- `sidenav`: Builds the side navs for 'main', 'legal', 'api', 'partners' and stores the output in `/src/_data/sidenav-auto/`. This output isn't used for the actual build. - `typewritter`: pulls in the current state of the Docs tracking plan for implementing Segment tracking - `seed`: copies all example data files out of the `_templates` directory and puts them in the `_data` directory. Useful if you don't have a way to setup an API key. - `clean`: removes all build artifacts diff --git a/scripts/catalog.js b/scripts/catalog.js index a5f20354dd..3a029dccac 100644 --- a/scripts/catalog.js +++ b/scripts/catalog.js @@ -112,6 +112,34 @@ const doesCatalogItemExist = (item) => { fs.appendFileSync('src/_data/catalog/incompleteDocs.txt', `${docsPath}\n`) } } + +/** + * + * Update catalog item frontmatter description + */ +function updateCatalogItemDescription (description, display_name, url) { + let updatedDescription = description.length ? description.trim() : `The technical documentation for ${display_name}` + const itemPath = path.resolve(__dirname, `../src/${url}/index.md`) + const originalText = fs.readFileSync(itemPath, 'utf8') + // Get index of closing '---' + const frontMatterIndex = originalText.substring(4).indexOf('---') + 3 + const frontMatter = originalText.substring(0, frontMatterIndex) + let newText = '' + if (!frontMatter.match(/^description:(.)*$/gm)) { + updatedDescription = `\ndescription: "${updatedDescription}"` + newText = frontMatter + `${updatedDescription}` + originalText.substring(frontMatterIndex) + } else { + newText = originalText.replace(/^description:.*$/gm, `description: "${updatedDescription}"`) + } + + try { + fs.writeFileSync(itemPath, newText) + } catch (e) { + console.error(`Couldn't write to file: ${uritemPathl}`) + console.error(e) + } +} + const updateSources = async () => { let sources = [] let sourcesUpdated = [] @@ -166,6 +194,7 @@ const updateSources = async () => { } sourcesUpdated.push(updatedSource) doesCatalogItemExist(updatedSource) + updateCatalogItemDescription(source.description, source.display_name, url) // add unique source categories to set source.categories.reduce((s, e) => s.add(e), categories); }) @@ -180,8 +209,7 @@ const updateSources = async () => { // Create source catalog yaml file const options = { noArrayIndent: true }; - let output = "# AUTOGENERATED FROM PLATFORM API. DO NOT EDIT\n" - output += yaml.safeDump({ items: sourcesUpdated }, options); + let output = yaml.safeDump({ items: sourcesUpdated }, options); fs.writeFileSync(path.resolve(__dirname, `../src/_data/catalog/sources.yml`), output); // Create source-category mapping yaml file @@ -220,12 +248,13 @@ const updateDestinations = async () => { browserUnbundlingPublic: destination.browserUnbundlingPublic }) + let url = `connections/destinations/catalog/${slug}` let updatedDestination = { display_name: destination.display_name, slug, name: destination.name, description: destination.description, - url: `connections/destinations/catalog/${slug}`, + url, status: destination.status, logo: { url: destination.logos.logo @@ -239,6 +268,7 @@ const updateDestinations = async () => { } destinationsUpdated.push(updatedDestination) doesCatalogItemExist(updatedDestination) + updateCatalogItemDescription(destination.description, destination.display_name, url) // add unique destination categories to set tempCategories.reduce((s, e) => s.add(e), categories); }) @@ -253,8 +283,7 @@ const updateDestinations = async () => { // Create destination catalog yaml file const options = { noArrayIndent: true }; - let output = "# AUTOGENERATED FROM PLATFORM API. DO NOT EDIT\n" - output += yaml.safeDump({ items: destinationsUpdated }, options); + let output = yaml.safeDump({ items: destinationsUpdated }, options); fs.writeFileSync(path.resolve(__dirname, `../src/_data/catalog/destinations.yml`), output); // Create source-category mapping yaml file diff --git a/src/_data/catalog/destinations.yml b/src/_data/catalog/destinations.yml index 350abaffed..2f20fc594f 100644 --- a/src/_data/catalog/destinations.yml +++ b/src/_data/catalog/destinations.yml @@ -1,4 +1,3 @@ -# AUTOGENERATED FROM PLATFORM API. DO NOT EDIT items: - display_name: ActiveCampaign slug: activecampaign @@ -149,6 +148,16 @@ items: categories: - Advertising settings: + - name: _version + display_name: _version + type: NUMBER + deprecated: false + required: false + number_validators: + min: 0 + max: 0 + description: '' + settings: [] - name: advId display_name: Advertiser ID type: STRING @@ -187,16 +196,6 @@ items: be 22 characters long, and look something like this: `6UUA5LKILFESVE44XH6SVX`. settings: [] - - name: _version - display_name: _version - type: NUMBER - deprecated: false - required: false - number_validators: - min: 0 - max: 0 - description: '' - settings: [] connection_modes: device: web: true @@ -305,6 +304,16 @@ items: - Attribution - Deep Linking settings: + - name: setEventBufferingEnabled + display_name: Buffer and batch events sent to Adjust + type: BOOLEAN + deprecated: false + required: false + description: >- + **Device Mode Only**: This will save battery life by buffering and + batching events sent to Adjust. But during development it's nicer to see + events come through immediately. + settings: [] - name: trackAttributionData display_name: Track Attribution Data type: BOOLEAN @@ -369,16 +378,6 @@ items: This will send all your data to your production environment on Adjust. If unchecked, data will flow to your sandbox environment on Adjust. settings: [] - - name: setEventBufferingEnabled - display_name: Buffer and batch events sent to Adjust - type: BOOLEAN - deprecated: false - required: false - description: >- - **Device Mode Only**: This will save battery life by buffering and - batching events sent to Adjust. But during development it's nicer to see - events come through immediately. - settings: [] connection_modes: device: web: false @@ -406,14 +405,35 @@ items: - Analytics - Video settings: - - name: enableTrackPageName - display_name: Enable pageName for Track Events + - name: merchEvents + display_name: 'Merchandising Events ' + type: MIXED + deprecated: false + required: false + description: |- + Configure merchandising event, such as purchase or currency events. + + This is currently in Beta Testing and not generally available. + settings: + - name: merchEvents + display_name: merchEvents + type: MIXED + deprecated: false + required: false + description: The name of the adobe event. + settings: [] + - name: sendBothTimestampVisitorId + display_name: Send Both Timestamp and VisitorID for Timestamp Optional Reporting Suites type: BOOLEAN deprecated: false required: false description: >- - If you do not want to attach `pageName` for your `.track()` calls, you can - disable this option. + If you have a *Timestamp Optional* Reporting Suite, you can opt to send + _both_ the timestamp and the visitorID in your XML when sending events + server side. However, note that this is *NOT* recommended by + [Adobe](https://marketing.adobe.com/resources/help/en_US/sc/implement/timestamps-overview.html) + as it may lead to out of order data. This setting will only work for + reporting suites that have optional timestamp setting enabled. settings: [] - name: timestampOption display_name: Timestamp Option @@ -430,6 +450,74 @@ items: non-timestamped or hybrid data. Note that we can only play historical data for timestamped or hybrid Report Suites. settings: [] + - name: customDelimiter + display_name: 'List Variable and Prop Custom Delimiter: Server-Side Only ' + type: MAP + deprecated: false + required: false + map_validators: + regexp: '' + min: 0 + max: 0 + map_prefix: '' + select_options: + - '|' + - ',' + - ':' + - ; + - / + description: >- + Add a custom delimiter to concatenate Adobe Analytics lVars or props sent + as an array. Note, if you do not specify a custom delimiter, arrays will + be concatenated with a comma. Please add the Adobe Analytics lVar or prop + on the left and select a custom delimiter on the right. lVars must be in + format 'list1', 'list2', etc. and props in format 'prop1', 'prop2', etc. + Must be all lowercase with no whitespace. + settings: [] + - name: heartbeatTrackingServerUrl + display_name: Heartbeat Tracking Server URL + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + This is the URL of your Adobe Heartbeat server. Please contact Adobe to + obtain this URL. + settings: [] + - name: hVars + display_name: Hierarchy Variables + type: MAP + deprecated: false + required: false + map_validators: + regexp: '' + min: 0 + max: 5 + map_prefix: hier + select_options: [] + description: >- + Map your Adobe Analytics hVars to the property names you’re using in your + Segment page calls. Enter a Segment property name on the left and an Adobe + Analytics hVar number on the right. You can view your Segment page calls + and properties in your Schema. + settings: [] + - name: removeFallbackVisitorId + display_name: 'No Fallbacks for Visitor ID: Server-Side Only ' + type: BOOLEAN + deprecated: false + required: false + description: >- + Note: This setting is for Server-Side only, and only applies when the Drop + Visitor ID setting is disabled and you send a marketingCloudId in the + Adobe Analytics integration object. + + ​​ + + ​​Segment’s default behavior is to set the Adobe Analytics visitorID based + on the destination specific setting for visitorId​, falling back to + userId​ then anonymousId​. This setting removes the fallbacks. + settings: [] - name: trackingServerSecureUrl display_name: Tracking Server Secure URL type: STRING @@ -461,6 +549,27 @@ items: **NOTE**: By default we send all your `properties` as Context Data Variables so you do not need to map them again here. settings: [] + - name: preferVisitorId + display_name: Prefer VisitorID for Hybrid Timestamp Reporting + type: BOOLEAN + deprecated: false + required: false + description: >- + If you enable this option and you also have a *Timestamp Optional* + reporting suite, you can opt to send your visitorID instead of the + timestamp since Adobe does not allow you to send both. If you care more + about your user attribution, you should enable this if you're using a + hybrid timestamp reporting suite. + settings: [] + - name: trackingServerUrl + display_name: Tracking Server URL + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: This is the URL of your Adobe Analytics server. + settings: [] - name: disableVisitorId display_name: Drop Visitor ID type: BOOLEAN @@ -468,20 +577,53 @@ items: required: false description: This will disable Visitor ID from being passed to Adobe. settings: [] - - name: productIdentifier - display_name: Product Identifier - type: SELECT + - name: sendFalseValues + display_name: Send False values + type: BOOLEAN deprecated: false required: false - select_validators: - select_options: - - name - - sku - - id description: >- - Adobe Analytics only accepts a single [product - identifier](https://marketing.adobe.com/resources/help/en_US/sc/implement/products.html). - Use this option to choose whether we send product `name`, `id`, or `sku`. + By default, we don't send properties with a `false` as value on cloud + mode. Enabling this setting will send any boolean property where value is + `false`. + settings: [] + - name: ssl + display_name: SSL + type: BOOLEAN + deprecated: false + required: false + description: >- + Check this box if you would like your Adobe Heartbeat calls to be made + over HTTPS. + settings: [] + - name: eVars + display_name: eVars + type: MAP + deprecated: false + required: false + map_validators: + regexp: '' + min: 0 + max: 250 + map_prefix: eVar + select_options: [] + description: >- + Map your Adobe Analytics eVar names to the property names you’re using in + your Segment events. Enter a Segment property name on the left and an + Adobe Analytics eVar number on the right. You can view your Segment events + and properties in your Schema. + settings: [] + - name: reportSuiteId + display_name: Report Suite ID(s) + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + You can find your Report Suite ID in your Adobe Analytics Settings page. + Multiple report suite ids can be separated by commas: + `suite1,suite2,suite3`. settings: [] - name: props display_name: Props @@ -500,30 +642,15 @@ items: Adobe Analytics property number on the right. You can view your Segment events and properties in your Schema. settings: [] - - name: removeFallbackVisitorId - display_name: 'No Fallbacks for Visitor ID: Server-Side Only ' - type: BOOLEAN - deprecated: false - required: false - description: >- - Note: This setting is for Server-Side only, and only applies when the Drop - Visitor ID setting is disabled and you send a marketingCloudId in the - Adobe Analytics integration object. - - ​​ - - ​​Segment’s default behavior is to set the Adobe Analytics visitorID based - on the destination specific setting for visitorId​, falling back to - userId​ then anonymousId​. This setting removes the fallbacks. - settings: [] - - name: useSecureServerUrl - display_name: Use Secure URL for Server-side + - name: utf8Charset + display_name: Use UTF-8 Charset type: BOOLEAN deprecated: false required: false description: >- - Enable this option if you want to use the 'Tracking Server Secure URL' - endpoint instead of the normal URL for server-side and Cloud Mode calls. + Only applicable on server-side or cloud-mode. If this setting is enabled, + we will send the payload to Adobe Analytics with UTF-8 charset. Useful + when your events contains accents or other special characters. settings: [] - name: customDataPrefix display_name: Context Data Property Prefix @@ -536,58 +663,12 @@ items: If you would like to prefix your Segment properties before sending them as contextData, enter a prefix here. settings: [] - - name: customDelimiter - display_name: 'List Variable and Prop Custom Delimiter: Server-Side Only ' - type: MAP + - name: marketingCloudOrgId + display_name: Marketing Cloud Organization Id + type: STRING deprecated: false required: false - map_validators: - regexp: '' - min: 0 - max: 0 - map_prefix: '' - select_options: - - '|' - - ',' - - ':' - - ; - - / - description: >- - Add a custom delimiter to concatenate Adobe Analytics lVars or props sent - as an array. Note, if you do not specify a custom delimiter, arrays will - be concatenated with a comma. Please add the Adobe Analytics lVar or prop - on the left and select a custom delimiter on the right. lVars must be in - format 'list1', 'list2', etc. and props in format 'prop1', 'prop2', etc. - Must be all lowercase with no whitespace. - settings: [] - - name: reportSuiteId - display_name: Report Suite ID(s) - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - You can find your Report Suite ID in your Adobe Analytics Settings page. - Multiple report suite ids can be separated by commas: - `suite1,suite2,suite3`. - settings: [] - - name: utf8Charset - display_name: Use UTF-8 Charset - type: BOOLEAN - deprecated: false - required: false - description: >- - Only applicable on server-side or cloud-mode. If this setting is enabled, - we will send the payload to Adobe Analytics with UTF-8 charset. Useful - when your events contains accents or other special characters. - settings: [] - - name: marketingCloudOrgId - display_name: Marketing Cloud Organization Id - type: STRING - deprecated: false - required: false - string_validators: + string_validators: regexp: '' description: >- If you would like to use the Marketing Cloud Id Service and use @@ -595,71 +676,6 @@ items: do not know your organization ID, you can find it on the Marketing Cloud administration page. It should look something like '1234567ABC@AdobeOrg'. settings: [] - - name: merchEvents - display_name: 'Merchandising Events ' - type: MIXED - deprecated: false - required: false - description: |- - Configure merchandising event, such as purchase or currency events. - - This is currently in Beta Testing and not generally available. - settings: - - name: merchEvents - display_name: merchEvents - type: MIXED - deprecated: false - required: false - description: The name of the adobe event. - settings: [] - - name: preferVisitorId - display_name: Prefer VisitorID for Hybrid Timestamp Reporting - type: BOOLEAN - deprecated: false - required: false - description: >- - If you enable this option and you also have a *Timestamp Optional* - reporting suite, you can opt to send your visitorID instead of the - timestamp since Adobe does not allow you to send both. If you care more - about your user attribution, you should enable this if you're using a - hybrid timestamp reporting suite. - settings: [] - - name: sendFalseValues - display_name: Send False values - type: BOOLEAN - deprecated: false - required: false - description: >- - By default, we don't send properties with a `false` as value on cloud - mode. Enabling this setting will send any boolean property where value is - `false`. - settings: [] - - name: eVars - display_name: eVars - type: MAP - deprecated: false - required: false - map_validators: - regexp: '' - min: 0 - max: 250 - map_prefix: eVar - select_options: [] - description: >- - Map your Adobe Analytics eVar names to the property names you’re using in - your Segment events. Enter a Segment property name on the left and an - Adobe Analytics eVar number on the right. You can view your Segment events - and properties in your Schema. - settings: [] - - name: ssl - display_name: SSL - type: BOOLEAN - deprecated: false - required: false - description: >- - Check this box if you would like your Adobe Heartbeat calls to be made - over HTTPS. - settings: [] - name: useLegacyLinkName display_name: Use Legacy LinkName type: BOOLEAN @@ -673,54 +689,44 @@ items: This setting enables a legacy behavior for backwards compatibility. You probably want to keep this setting turned off. settings: [] - - name: addBuildToAppId - display_name: Add application build to Adobe's App ID - type: BOOLEAN - deprecated: false - required: false - description: >- - If this setting is enable, we will add `context.app.build`, if present, to - Adobe's AppID, as ` ()`. - settings: [] - - name: events - display_name: Events - type: MIXED - deprecated: false - required: false - description: Map your Segment events to custom Adobe events. - settings: [] - - name: heartbeatTrackingServerUrl - display_name: Heartbeat Tracking Server URL - type: STRING + - name: lVars + display_name: List Variables + type: MAP deprecated: false required: false - string_validators: + map_validators: regexp: '' + min: 0 + max: 3 + map_prefix: list + select_options: [] description: >- - This is the URL of your Adobe Heartbeat server. Please contact Adobe to - obtain this URL. + Map your Adobe Analytics list variables names to the property names you’re + using in your Segment events. Enter a Segment property name on the left + and an Adobe Analytics list variable number on the right. You can view + your Segment events and properties in your Schema. settings: [] - - name: sendBothTimestampVisitorId - display_name: Send Both Timestamp and VisitorID for Timestamp Optional Reporting Suites - type: BOOLEAN + - name: productIdentifier + display_name: Product Identifier + type: SELECT deprecated: false required: false + select_validators: + select_options: + - name + - sku + - id description: >- - If you have a *Timestamp Optional* Reporting Suite, you can opt to send - _both_ the timestamp and the visitorID in your XML when sending events - server side. However, note that this is *NOT* recommended by - [Adobe](https://marketing.adobe.com/resources/help/en_US/sc/implement/timestamps-overview.html) - as it may lead to out of order data. This setting will only work for - reporting suites that have optional timestamp setting enabled. + Adobe Analytics only accepts a single [product + identifier](https://marketing.adobe.com/resources/help/en_US/sc/implement/products.html). + Use this option to choose whether we send product `name`, `id`, or `sku`. settings: [] - - name: trackingServerUrl - display_name: Tracking Server URL - type: STRING + - name: events + display_name: Events + type: MIXED deprecated: false required: false - string_validators: - regexp: '' - description: This is the URL of your Adobe Analytics server. + description: Map your Segment events to custom Adobe events. settings: [] - name: eventsV2 display_name: Events V2 (Bundled Mobile Only) @@ -735,39 +741,32 @@ items: MUST be set up in Adobe and mapped here in order to to be forwarded to the destination. This setting only applies to Mobile integrations with Adobe. settings: [] - - name: hVars - display_name: Hierarchy Variables - type: MAP + - name: useSecureServerUrl + display_name: Use Secure URL for Server-side + type: BOOLEAN deprecated: false required: false - map_validators: - regexp: '' - min: 0 - max: 5 - map_prefix: hier - select_options: [] description: >- - Map your Adobe Analytics hVars to the property names you’re using in your - Segment page calls. Enter a Segment property name on the left and an Adobe - Analytics hVar number on the right. You can view your Segment page calls - and properties in your Schema. + Enable this option if you want to use the 'Tracking Server Secure URL' + endpoint instead of the normal URL for server-side and Cloud Mode calls. settings: [] - - name: lVars - display_name: List Variables - type: MAP + - name: addBuildToAppId + display_name: Add application build to Adobe's App ID + type: BOOLEAN deprecated: false required: false - map_validators: - regexp: '' - min: 0 - max: 3 - map_prefix: list - select_options: [] description: >- - Map your Adobe Analytics list variables names to the property names you’re - using in your Segment events. Enter a Segment property name on the left - and an Adobe Analytics list variable number on the right. You can view - your Segment events and properties in your Schema. + If this setting is enable, we will add `context.app.build`, if present, to + Adobe's AppID, as ` ()`. + settings: [] + - name: enableTrackPageName + display_name: Enable pageName for Track Events + type: BOOLEAN + deprecated: false + required: false + description: >- + If you do not want to attach `pageName` for your `.track()` calls, you can + disable this option. settings: [] connection_modes: device: @@ -974,26 +973,6 @@ items: - Analytics - Raw Data settings: - - name: region - display_name: AWS Kinesis Stream Region - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: The Kinesis Stream's AWS region key - settings: [] - - name: roleAddress - display_name: Role Address - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - The address of the AWS role that will be writing to Kinesis (ex: - arn:aws:iam::874699288871:role/example-role) - settings: [] - name: secretId display_name: Secret ID type: STRING @@ -1030,6 +1009,26 @@ items: `userId` or `anonymousId`*). This option should provide much more stable and even distribution. settings: [] + - name: region + display_name: AWS Kinesis Stream Region + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: The Kinesis Stream's AWS region key + settings: [] + - name: roleAddress + display_name: Role Address + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + The address of the AWS role that will be writing to Kinesis (ex: + arn:aws:iam::874699288871:role/example-role) + settings: [] connection_modes: device: web: false @@ -1062,9 +1061,22 @@ items: - Analytics - Raw Data settings: - - name: mappedStreams - display_name: Map Segment Events to Firehose Delivery Streams - type: MIXED + - name: secretId + display_name: Secret ID + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + If you have so many sources that it's impractical to attach all of their + source IDs as external IDs to your IAM role, you can specify a single + external ID here instead and attach that as an external ID to your IAM + role. This value is a secret and should be treated as a password. + settings: [] + - name: mappedStreams + display_name: Map Segment Events to Firehose Delivery Streams + type: MIXED deprecated: false required: false description: >- @@ -1102,19 +1114,6 @@ items: The address of the AWS role that will be writing to Kinesis Firehose (ex: arn:aws:iam::874699288871:role/example-role) settings: [] - - name: secretId - display_name: Secret ID - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - If you have so many sources that it's impractical to attach all of their - source IDs as external IDs to your IAM role, you can specify a single - external ID here instead and attach that as an external ID to your IAM - role. This value is a secret and should be treated as a password. - settings: [] connection_modes: device: web: false @@ -1140,27 +1139,30 @@ items: categories: - Raw Data settings: - - name: function - display_name: Lambda + - name: clientContext + display_name: Client Context + type: MAP + deprecated: false + required: false + map_validators: + regexp: '' + min: 0 + max: 0 + map_prefix: '' + select_options: [] + description: >- + An optional map to pass to the Lambda function. See [AWS Lambda + documentation](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html#API_Invoke_RequestSyntax) + for more information. + settings: [] + - name: region + display_name: Region type: STRING deprecated: false required: true string_validators: regexp: '' - description: >- - The name of the Lambda function to invoke. These are the supported name - formats: - - - * Function name (`my-function`) or with alias (`my-function:v1`). - - * Function ARN - (`arn:aws:lambda:us-west-2:123456789012:function:my-function`). - - * Partial ARN (`123456789012:function:my-function`). - - - You can append a version number or alias to any of the formats. + description: 'AWS Region where the lambda lives. E.G. `us-west-2`, `eu-west-3`' settings: [] - name: externalId display_name: External ID @@ -1176,30 +1178,27 @@ items: roles, check [here](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html). settings: [] - - name: region - display_name: Region + - name: function + display_name: Lambda type: STRING deprecated: false required: true string_validators: regexp: '' - description: 'AWS Region where the lambda lives. E.G. `us-west-2`, `eu-west-3`' - settings: [] - - name: clientContext - display_name: Client Context - type: MAP - deprecated: false - required: false - map_validators: - regexp: '' - min: 0 - max: 0 - map_prefix: '' - select_options: [] description: >- - An optional map to pass to the Lambda function. See [AWS Lambda - documentation](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html#API_Invoke_RequestSyntax) - for more information. + The name of the Lambda function to invoke. These are the supported name + formats: + + + * Function name (`my-function`) or with alias (`my-function:v1`). + + * Function ARN + (`arn:aws:lambda:us-west-2:123456789012:function:my-function`). + + * Partial ARN (`123456789012:function:my-function`). + + + You can append a version number or alias to any of the formats. settings: [] - name: logType display_name: Log Type @@ -1254,20 +1253,6 @@ items: categories: - Personalization settings: - - name: externalId - display_name: External ID - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - This is an optional string Segment will use to assume the role provided to - invoke the Lambda function. If this setting is not defined, we'll use the - Source ID. For more information about external IDs while assuming AWS - roles, check - [here](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html). - settings: [] - name: function display_name: Lambda type: STRING @@ -1290,6 +1275,23 @@ items: You can append a version number or alias to any of the formats. settings: [] + - name: logType + display_name: Log Type + type: SELECT + deprecated: false + required: false + select_validators: + select_options: + - None + - Tail + description: >- + Lambda [log + type](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html#API_Invoke_RequestSyntax). + By default `None`. + + + Select `Tail` if you would like to see detailed logs in Cloud Watch. + settings: [] - name: region display_name: Region type: STRING @@ -1301,6 +1303,17 @@ items: AWS Region where the lambda lives. If it is not defined, we'll use `us-west-2` by default. settings: [] + - name: roleAddress + display_name: Role Address + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + The address of the AWS role that will be invoking Lambda (ex: + `arn:aws:iam::874699288871:role/example-role`). + settings: [] - name: clientContext display_name: Client Context type: MAP @@ -1317,33 +1330,19 @@ items: documentation](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html#API_Invoke_RequestSyntax) for more information. settings: [] - - name: logType - display_name: Log Type - type: SELECT - deprecated: false - required: false - select_validators: - select_options: - - None - - Tail - description: >- - Lambda [log - type](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html#API_Invoke_RequestSyntax). - By default `None`. - - - Select `Tail` if you would like to see detailed logs in Cloud Watch. - settings: [] - - name: roleAddress - display_name: Role Address + - name: externalId + display_name: External ID type: STRING deprecated: false - required: true + required: false string_validators: regexp: '' description: >- - The address of the AWS role that will be invoking Lambda (ex: - `arn:aws:iam::874699288871:role/example-role`). + This is an optional string Segment will use to assume the role provided to + invoke the Lambda function. If this setting is not defined, we'll use the + Source ID. For more information about external IDs while assuming AWS + roles, check + [here](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html). settings: [] connection_modes: device: @@ -1370,6 +1369,15 @@ items: - Analytics - Raw Data settings: + - name: bucket + display_name: Bucket Name + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: Your S3 bucket name. + settings: [] - name: useServerSideEncryption display_name: Use Server Side Encryption? type: BOOLEAN @@ -1381,15 +1389,6 @@ items: see [here](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html). settings: [] - - name: bucket - display_name: Bucket Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: Your S3 bucket name. - settings: [] connection_modes: device: web: false @@ -1474,14 +1473,39 @@ items: categories: - Analytics settings: - - name: forceHttps - display_name: Force Https + - name: appendFieldsToEventProps + display_name: Append Fields To Event Properties + type: MAP + deprecated: false + required: false + description: >- + Web and server-side only. Configure event fields to be appended to + `event_props` for all track calls. For example, entering + `context.page.title` on the left and `pageTitle` on the right will set the + value of `context.page.title` at `event_properties.pageTitle`. + settings: [] + - name: saveParamsReferrerOncePerSession + display_name: 'Save Referrer, URL Params, GCLID Once Per Session' type: BOOLEAN deprecated: false required: false description: >- - If true, the events will always be uploaded to HTTPS endpoint. Otherwise - the SDK will use the embedding site's protocol. + If true then includeGclid, includeReferrer, and includeUtm will only track + their respective properties once per session. New values that come in + during the middle of the user's session will be ignored. Set to false to + always capture new values. + settings: [] + - name: sendAlias + display_name: Enable Alias + type: BOOLEAN + deprecated: false + required: false + description: >- + Server-Side Only. Enabling this setting allows your Amplitude destination + instance to send `alias` events to Amplitude's `usermap` endpoint. By + default, Segment's Amplitude integration does not support `alias`, so when + this setting is disabled, your Segment Amplitude destination will reject + `alias` events as unsupported. settings: [] - name: trackProductsOnce display_name: Track products once @@ -1493,163 +1517,147 @@ items: products on "Order Completed" events. If this setting is set to true, we will send all the products in one single event to Amplitude. settings: [] - - name: useCustomAmplitudeProperties - display_name: Send Custom Language and Country Properties - type: BOOLEAN + - name: traitsToPrepend + display_name: Traits to Prepend + type: LIST deprecated: false required: false description: >- - Enable this option if you want to send additional 'language' and 'country' - parameters inside of event_properties. This is separate from the language - and country collected from your user's context. (For example, you want to - send the language that a video is played in). You can send these in your - properties, for example: `analytics.track('Video Played', {language: - 'Japanese'});` + Server-Side and Mobile Only. Configure values to be prepended to the user + property array via identify.traits. settings: [] - - name: deviceIdFromUrlParam - display_name: Set Device ID From URL Parameter amp_device_id + - name: preferAnonymousIdForDeviceId + display_name: Prefer Anonymous ID for Device ID type: BOOLEAN deprecated: false required: false description: >- - If true, the SDK will parse device ID values from url parameter - `amp_device_id` if available. + By default, Segment will use `context.device.id` as the Amplitude + `device_id`, using `anonymousId` if `context.device.id` isn't present. + + + Enable this setting to flip this behavior; `anonymousId` will be used as + the `device_id`, falling back to `context.device.id` if it isn't present. + + + In browsers, enabling this setting means the user's anonymous ID, which + you can set using `analytics.user().anonymousId('ID_GOES_HERE')`, will be + set as the Amplitude device ID. Otherwise, Amplitude's default logic for + determining device IDs will be used. settings: [] - - name: enableLocationListening - display_name: Enable Location Listening + - name: trackSessionEvents + display_name: Track Session Events to Amplitude type: BOOLEAN deprecated: false required: false description: >- - Mobile Only. If a user has granted your app location permissions, enable - this setting so that the SDK will also grab the location of the user. - Amplitude will never prompt the user for location permission, so this must - be done by your app. + (Optional) This enables the sending of start and end session events for + mobile products. Amplitude's libraries track sessions automatically and + this option is not necessary for session tracking. settings: [] - - name: sendAlias - display_name: Enable Alias - type: BOOLEAN + - name: traitsToSetOnce + display_name: Traits to Set Once + type: LIST deprecated: false required: false description: >- - Server-Side Only. Enabling this setting allows your Amplitude destination - instance to send `alias` events to Amplitude's `usermap` endpoint. By - default, Segment's Amplitude integration does not support `alias`, so when - this setting is disabled, your Segment Amplitude destination will reject - `alias` events as unsupported. + Server-Side and Mobile Only. Configure values to be set only once via + identify.traits. settings: [] - - name: useLogRevenueV2 - display_name: Use Log Revenue V2 API + - name: unsetParamsReferrerOnNewSession + display_name: Unset Params Referrer On New Session type: BOOLEAN deprecated: false required: false description: >- - Use Amplitude's logRevenueV2 API, which allows for the tracking of event - properties with the revenue event. Track an event with "price" and - "quantity" properties, and it will log total revenue = price * quantity. - You may also set a revenueType property to designate the type of revenue - (ex: purchase, refund, etc). Negative prices can be used to indicate - revenue lost. + If false, the existing referrer and `utm_parameter` values will be carried + through each new session. If set to true, the referrer and `utm_parameter` + user properties, which include `referrer`, `utm_source`, `utm_medium`, + `utm_campaign`, `utm_term`, and `utm_content`, will be set to null upon + instantiating a new session. **Note**: This only works if Track Referrer + or Track UTM Properties to Amplitude are set to true. settings: [] - - name: apiKey - display_name: API Key - type: STRING + - name: trackAllPagesV2 + display_name: Track All Screens + type: BOOLEAN deprecated: false - required: true - string_validators: - regexp: '^[a-z0-9]{32}$' + required: false description: >- - You can find your API Key on your Amplitude [Settings - page](https://amplitude.com/settings). + Mobile only. Sends a "Loaded Screen" event and the screen name as a + property to Amplitude. Moving forward, this is the preferred method of + tracking screen events in Amplitude. settings: [] - - name: trackUtmProperties - display_name: Track UTM Properties to Amplitude. - type: BOOLEAN + - name: traitsToAppend + display_name: Traits to Append + type: LIST deprecated: false required: false description: >- - This will track UTM properties found in the querystring to Amplitude (only - for Device mode). + Server-Side and Mobile Only. Configure values to be appended to the user + property array via identify.traits. settings: [] - - name: versionName - display_name: Version Name - type: STRING + - name: useAdvertisingIdForDeviceId + display_name: Use AdvertisingId for DeviceId + type: BOOLEAN deprecated: false required: false - string_validators: - regexp: '' description: >- - Optional. You can assign a version name for your page, and we'll send it - to Amplitude for more detailed events. + Mobile Only (will *not* work in cloud-mode). Allows users to use + advertisingIdentifier instead of identifierForVendor as the Device ID. settings: [] - - name: groupTypeTrait - display_name: Group Type Trait - type: STRING + - name: batchEvents + display_name: Batch Events + type: BOOLEAN deprecated: false required: false - string_validators: - regexp: '' description: >- - What trait Segment should use as your Amplitude "group type" in group - calls. If, for example, you set this to be `industry`, then - `traits["industry"]` will be sent as `groupType` to Amplitude. + If true, events are batched together and uploaded only when the number of + unsent events is greater than or equal to `eventUploadThreshold` or after + `eventUploadPeriodMillis` milliseconds have passed since the first unsent + event was logged. settings: [] - - name: eventUploadThreshold - display_name: Event Upload Threshold (for batching events) - type: NUMBER + - name: deviceIdFromUrlParam + display_name: Set Device ID From URL Parameter amp_device_id + type: BOOLEAN deprecated: false required: false - number_validators: - min: 0 - max: 0 description: >- - Minimum number of events to batch together per request if `batchEvents` is - `true`. + If true, the SDK will parse device ID values from url parameter + `amp_device_id` if available. settings: [] - - name: mapQueryParams - display_name: Map Query Params to Custom Property - type: MAP + - name: enableLocationListening + display_name: Enable Location Listening + type: BOOLEAN deprecated: false required: false - map_validators: - regexp: '' - min: 0 - max: 0 - map_prefix: '' - select_options: - - user_properties - - event_properties description: >- - When sending data via server side or Cloud Mode, you can send the custom - query params that are automatically collected by `analytics.js` (or - whatever you manually send under `context.page.search`), by entering a - custom property name you would like to map that under on the left hand - side. On the right hand side, please choose whether you want the query - params to be set on the user profile or event metadata level. Whatever you - put on the left hand side we will map the entire query parameters string - from the `context.page.url`. + Mobile Only. If a user has granted your app location permissions, enable + this setting so that the SDK will also grab the location of the user. + Amplitude will never prompt the user for location permission, so this must + be done by your app. settings: [] - - name: batchEvents - display_name: Batch Events - type: BOOLEAN + - name: groupValueTrait + display_name: Group Value Trait + type: STRING deprecated: false required: false + string_validators: + regexp: '' description: >- - If true, events are batched together and uploaded only when the number of - unsent events is greater than or equal to `eventUploadThreshold` or after - `eventUploadPeriodMillis` milliseconds have passed since the first unsent - event was logged. + What trait Segment should use as your Amplitude "group value" in group + calls. If, for example, you set this to be `plan`, then `traits["plan"]` + will be sent as `groupValue` to Amplitude. settings: [] - - name: trackCategorizedPages - display_name: Track Categorized Pages to Amplitude + - name: trackAllPages + display_name: Track All Pages to Amplitude type: BOOLEAN deprecated: false required: false description: >- - This will track events to Amplitude for [`page` - method](https://segment.io/libraries/analytics.js#page) calls that have a - `category` associated with them. For example `page('Docs', 'Index')` would - translate to **Viewed Docs Page**. + This will track **Loaded a Page** events to Amplitude for all [`page` + method](https://segment.io/libraries/analytics.js#page) calls. We keep + this disabled by default, since Amplitude isn't generally used for + pageview tracking. settings: [] - name: trackNamedPages display_name: Track Named Pages to Amplitude @@ -1673,206 +1681,197 @@ items: Enabling this will send referrer information as a user property to Amplitude when you call Segment's `page` method. settings: [] - - name: trackRevenuePerProduct - display_name: Track Revenue Per Product + - name: useCustomAmplitudeProperties + display_name: Send Custom Language and Country Properties type: BOOLEAN deprecated: false required: false description: >- - Client and server only. This setting allows you to specify whether you - would like to track an Amplitude Revenue event per individual product in a - user transaction or a single Revenue event for the combined revenue of all - products. This setting is only relevant if you are using our eCommerce - spec and passing us an Order Completed event with a list of products. + Enable this option if you want to send additional 'language' and 'country' + parameters inside of event_properties. This is separate from the language + and country collected from your user's context. (For example, you want to + send the language that a video is played in). You can send these in your + properties, for example: `analytics.track('Video Played', {language: + 'Japanese'});` settings: [] - - name: trackSessionEvents - display_name: Track Session Events to Amplitude + - name: useLogRevenueV2 + display_name: Use Log Revenue V2 API type: BOOLEAN deprecated: false required: false description: >- - (Optional) This enables the sending of start and end session events for - mobile products. Amplitude's libraries track sessions automatically and - this option is not necessary for session tracking. + Use Amplitude's logRevenueV2 API, which allows for the tracking of event + properties with the revenue event. Track an event with "price" and + "quantity" properties, and it will log total revenue = price * quantity. + You may also set a revenueType property to designate the type of revenue + (ex: purchase, refund, etc). Negative prices can be used to indicate + revenue lost. settings: [] - - name: traitsToIncrement - display_name: Traits To Increment - type: LIST + - name: apiKey + display_name: API Key + type: STRING deprecated: false - required: false + required: true + string_validators: + regexp: '^[a-z0-9]{32}$' description: >- - Server-Side and Mobile Only. Configure `trait` to increment on identify. - If the trait is present, it will increment the trait given the numerical - value passed in when you call `identify` with the trait. + You can find your API Key on your Amplitude [Settings + page](https://amplitude.com/settings). settings: [] - - name: saveParamsReferrerOncePerSession - display_name: 'Save Referrer, URL Params, GCLID Once Per Session' - type: BOOLEAN + - name: eventUploadPeriodMillis + display_name: Event Upload Period Millis (for batching events) + type: NUMBER deprecated: false required: false + number_validators: + min: 0 + max: 0 description: >- - If true then includeGclid, includeReferrer, and includeUtm will only track - their respective properties once per session. New values that come in - during the middle of the user's session will be ignored. Set to false to - always capture new values. + Amount of time in milliseconds that the SDK waits before uploading events + if `batchEvents` is `true`. settings: [] - - name: trackAllPagesV2 - display_name: Track All Screens - type: BOOLEAN + - name: secretKey + display_name: Secret Key + type: STRING deprecated: false required: false - description: >- - Mobile only. Sends a "Loaded Screen" event and the screen name as a - property to Amplitude. Moving forward, this is the preferred method of - tracking screen events in Amplitude. + string_validators: + regexp: '' + description: Your Amplitude Secret Key (Only needed for user deletion) settings: [] - - name: traitsToAppend - display_name: Traits to Append - type: LIST + - name: trackCategorizedPages + display_name: Track Categorized Pages to Amplitude + type: BOOLEAN deprecated: false required: false description: >- - Server-Side and Mobile Only. Configure values to be appended to the user - property array via identify.traits. + This will track events to Amplitude for [`page` + method](https://segment.io/libraries/analytics.js#page) calls that have a + `category` associated with them. For example `page('Docs', 'Index')` would + translate to **Viewed Docs Page**. settings: [] - - name: sendToBatchEndpoint - display_name: Send To Batch Endpoint - type: BOOLEAN + - name: traitsToIncrement + display_name: Traits To Increment + type: LIST deprecated: false required: false description: >- - Server-Side Only. If true, events are sent to Amplitude's `batch` endpoint - rather than to their `httpapi` endpoint. Because Amplitude's `batch` - endpoint throttles traffic less restrictively than the Amplitude `httpapi` - endpoint, enabling this setting may help to reduce 429s - or throttling - errors - from Amplitude. Amplitude's `batch` endpoint throttles data only - when the rate of events sharing the same `user_id` or `device_id` exceeds - an average of 1,000/second over a 30-second period. More information about - Amplitude's throttling is available here in their docs: - https://developers.amplitude.com/#429s-in-depth. + Server-Side and Mobile Only. Configure `trait` to increment on identify. + If the trait is present, it will increment the trait given the numerical + value passed in when you call `identify` with the trait. settings: [] - - name: trackAllPages - display_name: Track All Pages to Amplitude + - name: forceHttps + display_name: Force Https type: BOOLEAN deprecated: false required: false description: >- - This will track **Loaded a Page** events to Amplitude for all [`page` - method](https://segment.io/libraries/analytics.js#page) calls. We keep - this disabled by default, since Amplitude isn't generally used for - pageview tracking. - settings: [] - - name: trackGclid - display_name: Track GCLID - type: BOOLEAN - deprecated: false - required: false - description: >- - If true, captures the gclid url parameter as well as the user's - initial_gclid via a set once operation. + If true, the events will always be uploaded to HTTPS endpoint. Otherwise + the SDK will use the embedding site's protocol. settings: [] - - name: traitsToSetOnce - display_name: Traits to Set Once - type: LIST + - name: mapQueryParams + display_name: Map Query Params to Custom Property + type: MAP deprecated: false required: false + map_validators: + regexp: '' + min: 0 + max: 0 + map_prefix: '' + select_options: + - user_properties + - event_properties description: >- - Server-Side and Mobile Only. Configure values to be set only once via - identify.traits. + When sending data via server side or Cloud Mode, you can send the custom + query params that are automatically collected by `analytics.js` (or + whatever you manually send under `context.page.search`), by entering a + custom property name you would like to map that under on the left hand + side. On the right hand side, please choose whether you want the query + params to be set on the user profile or event metadata level. Whatever you + put on the left hand side we will map the entire query parameters string + from the `context.page.url`. settings: [] - - name: useAdvertisingIdForDeviceId - display_name: Use AdvertisingId for DeviceId + - name: trackRevenuePerProduct + display_name: Track Revenue Per Product type: BOOLEAN deprecated: false required: false description: >- - Mobile Only (will *not* work in cloud-mode). Allows users to use - advertisingIdentifier instead of identifierForVendor as the Device ID. + Client and server only. This setting allows you to specify whether you + would like to track an Amplitude Revenue event per individual product in a + user transaction or a single Revenue event for the combined revenue of all + products. This setting is only relevant if you are using our eCommerce + spec and passing us an Order Completed event with a list of products. settings: [] - - name: eventUploadPeriodMillis - display_name: Event Upload Period Millis (for batching events) - type: NUMBER + - name: versionName + display_name: Version Name + type: STRING deprecated: false required: false - number_validators: - min: 0 - max: 0 + string_validators: + regexp: '' description: >- - Amount of time in milliseconds that the SDK waits before uploading events - if `batchEvents` is `true`. + Optional. You can assign a version name for your page, and we'll send it + to Amplitude for more detailed events. settings: [] - - name: groupValueTrait - display_name: Group Value Trait + - name: groupTypeTrait + display_name: Group Type Trait type: STRING deprecated: false required: false string_validators: regexp: '' description: >- - What trait Segment should use as your Amplitude "group value" in group - calls. If, for example, you set this to be `plan`, then `traits["plan"]` - will be sent as `groupValue` to Amplitude. + What trait Segment should use as your Amplitude "group type" in group + calls. If, for example, you set this to be `industry`, then + `traits["industry"]` will be sent as `groupType` to Amplitude. settings: [] - - name: preferAnonymousIdForDeviceId - display_name: Prefer Anonymous ID for Device ID + - name: sendToBatchEndpoint + display_name: Send To Batch Endpoint type: BOOLEAN deprecated: false required: false description: >- - By default, Segment will use `context.device.id` as the Amplitude - `device_id`, using `anonymousId` if `context.device.id` isn't present. - - - Enable this setting to flip this behavior; `anonymousId` will be used as - the `device_id`, falling back to `context.device.id` if it isn't present. - - - In browsers, enabling this setting means the user's anonymous ID, which - you can set using `analytics.user().anonymousId('ID_GOES_HERE')`, will be - set as the Amplitude device ID. Otherwise, Amplitude's default logic for - determining device IDs will be used. - settings: [] - - name: secretKey - display_name: Secret Key - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: Your Amplitude Secret Key (Only needed for user deletion) + Server-Side Only. If true, events are sent to Amplitude's `batch` endpoint + rather than to their `httpapi` endpoint. Because Amplitude's `batch` + endpoint throttles traffic less restrictively than the Amplitude `httpapi` + endpoint, enabling this setting may help to reduce 429s - or throttling + errors - from Amplitude. Amplitude's `batch` endpoint throttles data only + when the rate of events sharing the same `user_id` or `device_id` exceeds + an average of 1,000/second over a 30-second period. More information about + Amplitude's throttling is available here in their docs: + https://developers.amplitude.com/#429s-in-depth. settings: [] - - name: traitsToPrepend - display_name: Traits to Prepend - type: LIST + - name: trackUtmProperties + display_name: Track UTM Properties to Amplitude. + type: BOOLEAN deprecated: false required: false description: >- - Server-Side and Mobile Only. Configure values to be prepended to the user - property array via identify.traits. + This will track UTM properties found in the querystring to Amplitude (only + for Device mode). settings: [] - - name: unsetParamsReferrerOnNewSession - display_name: Unset Params Referrer On New Session - type: BOOLEAN + - name: eventUploadThreshold + display_name: Event Upload Threshold (for batching events) + type: NUMBER deprecated: false required: false + number_validators: + min: 0 + max: 0 description: >- - If false, the existing referrer and `utm_parameter` values will be carried - through each new session. If set to true, the referrer and `utm_parameter` - user properties, which include `referrer`, `utm_source`, `utm_medium`, - `utm_campaign`, `utm_term`, and `utm_content`, will be set to null upon - instantiating a new session. **Note**: This only works if Track Referrer - or Track UTM Properties to Amplitude are set to true. + Minimum number of events to batch together per request if `batchEvents` is + `true`. settings: [] - - name: appendFieldsToEventProps - display_name: Append Fields To Event Properties - type: MAP + - name: trackGclid + display_name: Track GCLID + type: BOOLEAN deprecated: false required: false description: >- - Web and server-side only. Configure event fields to be appended to - `event_props` for all track calls. For example, entering - `context.page.title` on the left and `pageTitle` on the right will set the - value of `context.page.title` at `event_properties.pageTitle`. + If true, captures the gclid url parameter as well as the user's + initial_gclid via a set once operation. settings: [] connection_modes: device: @@ -1903,6 +1902,20 @@ items: required: false description: Configure a pixel settings: + - name: event + display_name: Event Name + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + AppNexus allows you to track both conversions and segments, when you + `analytics.track('my event')` we will map that custom event to + `segment-id` or `pixel-id` that you provided, when `conversion` is + ticked we will track a `conversion` otherwise we will track a `segment` + otherwise we will track a conversion. + settings: [] - name: pixelId display_name: Pixel ID type: STRING @@ -1931,20 +1944,6 @@ items: AppNexus url. Two parameters are sent automatically: `order_id` and the monetary `value`. settings: [] - - name: event - display_name: Event Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - AppNexus allows you to track both conversions and segments, when you - `analytics.track('my event')` we will map that custom event to - `segment-id` or `pixel-id` that you provided, when `conversion` is - ticked we will track a `conversion` otherwise we will track a `segment` - otherwise we will track a conversion. - settings: [] connection_modes: device: web: true @@ -2013,17 +2012,6 @@ items: categories: - Attribution settings: - - name: canOmitAppsFlyerId - display_name: Can Omit AppsFlyerId - type: BOOLEAN - deprecated: false - required: false - description: >- - *Only applicable for Appsflyer's Business Tiers customers using - server-side or cloud mode destination.* Please contact your AppsFlyer - representative for more information. This setting allows to use the - advertising ID as appsflyer ID. - settings: [] - name: httpFallback display_name: Enable HTTP fallback (Android) type: BOOLEAN @@ -2092,6 +2080,17 @@ items: Your unique developer ID from AppsFlyer, which is accessible from your AppsFlyer account. settings: [] + - name: canOmitAppsFlyerId + display_name: Can Omit AppsFlyerId + type: BOOLEAN + deprecated: false + required: false + description: >- + *Only applicable for Appsflyer's Business Tiers customers using + server-side or cloud mode destination.* Please contact your AppsFlyer + representative for more information. This setting allows to use the + advertising ID as appsflyer ID. + settings: [] connection_modes: device: web: false @@ -2630,6 +2629,17 @@ items: - CRM - Email Marketing settings: + - name: openNewsFeedCardsInNewTab + display_name: Open News Feed Cards In New Tab + type: BOOLEAN + deprecated: false + required: false + description: >- + By default, links from news feed cards load in the current tab or window. + Set this option to true to make links from news feed cards open in a new + tab or window. **This setting is only applicable if you are using version + 2 of the Braze Web SDK.** + settings: [] - name: serviceWorkerLocation display_name: Service Worker Location type: STRING @@ -2642,57 +2652,54 @@ items: documentation: https://js.appboycdn.com/web-sdk/latest/doc/module-appboy.html settings: [] - - name: allowCrawlerActivity - display_name: Allow Crawler Activity + - name: updateExistingOnly + display_name: Update Existing Users Only type: BOOLEAN deprecated: false required: false description: >- - **Web Only:** By default, the Braze Web SDK ignores activity from known - spiders or web crawlers, such as Google, based on the user agent string. - This saves datapoints, makes analytics more accurate, and may improve page - rank. However, if you want Braze to log activity from these crawlers - instead, you may set this option to true. + **Server Side only**: A flag to determine whether to update existing users + only, defaults to false settings: [] - - name: appGroupId - display_name: REST API Key + - name: automatic_in_app_message_registration_enabled + display_name: Enable Automatic In-App Message Registration + type: BOOLEAN + deprecated: false + required: false + description: >- + **Mobile Only:** Every activity in your app must be registered with Braze + to allow it to add in-app message views to the view hierarchy. By default, + Braze's Segment integration automatically registers every activity. + However, if you would like to manually register activities, you may do so + by disabling this setting. For more information, see the Braze + [documentation](https://www.braze.com/docs/developer_guide/platform_integration_guides/android/in-app_messaging/integration/#step-1-braze-in-app-message-manager-registration). + settings: [] + - name: customEndpoint + display_name: Custom API Endpoint type: STRING deprecated: false - required: true + required: false string_validators: regexp: '' description: >- - This can be found in your Braze dashboard under App Settings > Developer - Console. (Formerly 'App Group Identifier') + If you've been assigned an API endpoint by the Braze team specifically for + use with their Mobile or Javascript SDKs, please input that here. It + should look something like: sdk.api.appboy.eu. Otherwise, leave this + blank. settings: [] - - name: doNotLoadFontAwesome - display_name: Do Not Load Font Awesome + - name: enableLogging + display_name: Enable Logging type: BOOLEAN deprecated: false required: false description: >- - **Web Only:** Braze uses [FontAwesome](https://fontawesome.com/) for - in-app message icons. By default, Braze will automatically load - FontAwesome from - https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css. - To disable this behavior (e.g. because your site uses a customized version - of FontAwesome), set this option to true. Note that if you do this, you - are responsible for ensuring that FontAwesome is loaded on your site - - otherwise in-app messages may not render correctly. **This setting is only + **Web Only:** Set to true to enable logging by default. Note that this + will cause Braze to log to the javascript console, which is visible to all + users! You should probably remove this or provide an alternate logger with + [appboy.setLogger()](https://js.appboycdn.com/web-sdk/2.0/doc/module-appboy.html#.setLogger) + before you release your page to production. **This setting is only applicable if you are using version 2 of the Braze Web SDK.** settings: [] - - name: openInAppMessagesInNewTab - display_name: Open In-App Messages In New Tab - type: BOOLEAN - deprecated: false - required: false - description: >- - By default, links from in-app message clicks load in the current tab or a - new tab as specified in the dashboard on a message-by-message basis. Set - this option to true to force all links from in-app message clicks open in - a new tab or window. **This setting is only applicable if you are using - version 2 of the Braze Web SDK.** - settings: [] - name: restCustomEndpoint display_name: Custom REST API Endpoint type: STRING @@ -2705,52 +2712,43 @@ items: use with their REST API, please input that here. It should look something like "https://foo.bar.braze.com". Otherwise, leave this blank. settings: [] - - name: updateExistingOnly - display_name: Update Existing Users Only + - name: trackNamedPages + display_name: Track Only Named Pages type: BOOLEAN deprecated: false required: false description: >- - **Server Side only**: A flag to determine whether to update existing users - only, defaults to false + This will send only [`page` calls](https://segment.com/docs/spec/page/) to + Braze that have a `name` associated with them. For example, + `page('Signup')` would translate to **Viewed Signup Page** in Braze. settings: [] - - name: automaticallyDisplayMessages - display_name: Automatically Send In-App Messages + - name: doNotLoadFontAwesome + display_name: Do Not Load Font Awesome type: BOOLEAN deprecated: false required: false description: >- - **Web Only**: When this is enabled, all In-App Messages that a user is - eligible for are automatically delivered to the user. If you'd like to - register your own display subscribers or send soft push notifications to - your users, make sure to disable this option. - settings: [] - - name: datacenter - display_name: Appboy Datacenter - type: SELECT - deprecated: false - required: true - select_validators: - select_options: - - us - - us02 - - us03 - - us04 - - eu - description: 'Choose your Appboy Gateway (ie. US 01, US 02, EU 01, etc.).' + **Web Only:** Braze uses [FontAwesome](https://fontawesome.com/) for + in-app message icons. By default, Braze will automatically load + FontAwesome from + https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css. + To disable this behavior (e.g. because your site uses a customized version + of FontAwesome), set this option to true. Note that if you do this, you + are responsible for ensuring that FontAwesome is loaded on your site - + otherwise in-app messages may not render correctly. **This setting is only + applicable if you are using version 2 of the Braze Web SDK.** settings: [] - - name: enableLogging - display_name: Enable Logging + - name: enableHtmlInAppMessages + display_name: Enable HTML In-App Messages type: BOOLEAN deprecated: false required: false description: >- - **Web Only:** Set to true to enable logging by default. Note that this - will cause Braze to log to the javascript console, which is visible to all - users! You should probably remove this or provide an alternate logger with - [appboy.setLogger()](https://js.appboycdn.com/web-sdk/2.0/doc/module-appboy.html#.setLogger) - before you release your page to production. **This setting is only - applicable if you are using version 2 of the Braze Web SDK.** + **Web only**: Enabling this option will allow Braze dashboard users to + write HTML In-App messages. Check out [Braze + Documentation](https://js.appboycdn.com/web-sdk/latest/doc/module-appboy.html#.initialize) + for more information on this setting. **This setting is only applicable if + you are using version 2 of the Braze Web SDK.** settings: [] - name: minimumIntervalBetweenTriggerActionsInSeconds display_name: Minimum Interval Between Trigger Actions In Seconds @@ -2768,52 +2766,32 @@ items: spamming the user with notifications. **This setting is only applicable if you are using version 2 of the Braze Web SDK.** settings: [] - - name: automatic_in_app_message_registration_enabled - display_name: Enable Automatic In-App Message Registration - type: BOOLEAN - deprecated: false - required: false - description: >- - **Mobile Only:** Every activity in your app must be registered with Braze - to allow it to add in-app message views to the view hierarchy. By default, - Braze's Segment integration automatically registers every activity. - However, if you would like to manually register activities, you may do so - by disabling this setting. For more information, see the Braze - [documentation](https://www.braze.com/docs/developer_guide/platform_integration_guides/android/in-app_messaging/integration/#step-1-braze-in-app-message-manager-registration). - settings: [] - - name: sessionTimeoutInSeconds - display_name: Session Timeout In Seconds - type: NUMBER - deprecated: false - required: false - number_validators: - min: 0 - max: 0 - description: > - **Web Only:** By default, sessions time out after 30 minutes of - inactivity. Provide a value for this configuration option to override that - default with a value of your own. **This setting is only applicable if you - are using version 2 of the Braze Web SDK.** - settings: [] - - name: trackAllPages - display_name: Track All Pages - type: BOOLEAN + - name: datacenter + display_name: Appboy Datacenter + type: SELECT deprecated: false - required: false - description: >- - This will send all [`page` calls](https://segment.com/docs/spec/page/) to - Braze as a Loaded/Viewed a Page event. This option is disabled by default - since Braze isn't generally used for page view tracking. + required: true + select_validators: + select_options: + - us + - us02 + - us03 + - us04 + - eu + description: 'Choose your Appboy Gateway (ie. US 01, US 02, EU 01, etc.).' settings: [] - - name: trackNamedPages - display_name: Track Only Named Pages - type: BOOLEAN + - name: safariWebsitePushId + display_name: Safari Website Push ID + type: STRING deprecated: false required: false + string_validators: + regexp: '' description: >- - This will send only [`page` calls](https://segment.com/docs/spec/page/) to - Braze that have a `name` associated with them. For example, - `page('Signup')` would translate to **Viewed Signup Page** in Braze. + **Web Only**: To send push notifications on Safari, Braze needs your + Website Push Id. To get your Webite Push ID, check out the first two + bullet points + [here](https://www.braze.com/documentation/Web/#step-5-configure-safari-push). settings: [] - name: version display_name: Braze Web SDK Version @@ -2832,18 +2810,49 @@ items: [this](https://segment.com/docs/destinations/braze/#migrating-to-v2-of-the-braze-web-sdk) section of our documentation carefully before changing this setting.** settings: [] - - name: safariWebsitePushId - display_name: Safari Website Push ID - type: STRING + - name: automaticallyDisplayMessages + display_name: Automatically Send In-App Messages + type: BOOLEAN deprecated: false required: false - string_validators: - regexp: '' description: >- - **Web Only**: To send push notifications on Safari, Braze needs your - Website Push Id. To get your Webite Push ID, check out the first two - bullet points - [here](https://www.braze.com/documentation/Web/#step-5-configure-safari-push). + **Web Only**: When this is enabled, all In-App Messages that a user is + eligible for are automatically delivered to the user. If you'd like to + register your own display subscribers or send soft push notifications to + your users, make sure to disable this option. + settings: [] + - name: logPurchaseWhenRevenuePresent + display_name: Log Purchase when Revenue is present + type: BOOLEAN + deprecated: false + required: false + description: >- + When this option is enabled, all Track calls with a property called + `revenue` will trigger Braze's LogRevenue event. + settings: [] + - name: openInAppMessagesInNewTab + display_name: Open In-App Messages In New Tab + type: BOOLEAN + deprecated: false + required: false + description: >- + By default, links from in-app message clicks load in the current tab or a + new tab as specified in the dashboard on a message-by-message basis. Set + this option to true to force all links from in-app message clicks open in + a new tab or window. **This setting is only applicable if you are using + version 2 of the Braze Web SDK.** + settings: [] + - name: allowCrawlerActivity + display_name: Allow Crawler Activity + type: BOOLEAN + deprecated: false + required: false + description: >- + **Web Only:** By default, the Braze Web SDK ignores activity from known + spiders or web crawlers, such as Google, based on the user agent string. + This saves datapoints, makes analytics more accurate, and may improve page + rank. However, if you want Braze to log activity from these crawlers + instead, you may set this option to true. settings: [] - name: apiKey display_name: App Identifier @@ -2856,50 +2865,40 @@ items: The API key found in your Braze dashboard, used to identify your application as the app identifier. (Formerly 'API Key') settings: [] - - name: customEndpoint - display_name: Custom API Endpoint + - name: appGroupId + display_name: REST API Key type: STRING deprecated: false - required: false + required: true string_validators: regexp: '' description: >- - If you've been assigned an API endpoint by the Braze team specifically for - use with their Mobile or Javascript SDKs, please input that here. It - should look something like: sdk.api.appboy.eu. Otherwise, leave this - blank. - settings: [] - - name: enableHtmlInAppMessages - display_name: Enable HTML In-App Messages - type: BOOLEAN - deprecated: false - required: false - description: >- - **Web only**: Enabling this option will allow Braze dashboard users to - write HTML In-App messages. Check out [Braze - Documentation](https://js.appboycdn.com/web-sdk/latest/doc/module-appboy.html#.initialize) - for more information on this setting. **This setting is only applicable if - you are using version 2 of the Braze Web SDK.** + This can be found in your Braze dashboard under App Settings > Developer + Console. (Formerly 'App Group Identifier') settings: [] - - name: logPurchaseWhenRevenuePresent - display_name: Log Purchase when Revenue is present - type: BOOLEAN + - name: sessionTimeoutInSeconds + display_name: Session Timeout In Seconds + type: NUMBER deprecated: false required: false - description: >- - When this option is enabled, all Track calls with a property called - `revenue` will trigger Braze's LogRevenue event. + number_validators: + min: 0 + max: 0 + description: > + **Web Only:** By default, sessions time out after 30 minutes of + inactivity. Provide a value for this configuration option to override that + default with a value of your own. **This setting is only applicable if you + are using version 2 of the Braze Web SDK.** settings: [] - - name: openNewsFeedCardsInNewTab - display_name: Open News Feed Cards In New Tab + - name: trackAllPages + display_name: Track All Pages type: BOOLEAN deprecated: false required: false description: >- - By default, links from news feed cards load in the current tab or window. - Set this option to true to make links from news feed cards open in a new - tab or window. **This setting is only applicable if you are using version - 2 of the Braze Web SDK.** + This will send all [`page` calls](https://segment.com/docs/spec/page/) to + Braze as a Loaded/Viewed a Page event. This option is disabled by default + since Braze isn't generally used for page view tracking. settings: [] connection_modes: device: @@ -2923,15 +2922,6 @@ items: categories: - Email Marketing settings: - - name: host - display_name: Domain - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: You can use your own domain with Bronto - settings: [] - name: siteId display_name: Site ID type: STRING @@ -2943,6 +2933,15 @@ items: You can find your Site ID in your Bronto [Account Page](https://app.bronto.com/login/index/login/) settings: [] + - name: host + display_name: Domain + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: You can use your own domain with Bronto + settings: [] connection_modes: device: web: true @@ -3512,13 +3511,6 @@ items: categories: - Enrichment settings: - - name: writeKeyAllowed - display_name: writeKeyAllowed - type: BOOLEAN - deprecated: false - required: false - description: '' - settings: [] - name: apiKey display_name: API Key type: STRING @@ -3528,6 +3520,13 @@ items: regexp: '' description: Enter your API Key associated with your Clearbit Reveal account. settings: [] + - name: writeKeyAllowed + display_name: writeKeyAllowed + type: BOOLEAN + deprecated: false + required: false + description: '' + settings: [] connection_modes: device: web: false @@ -3650,27 +3649,27 @@ items: categories: - Customer Success settings: - - name: apiKey - display_name: API Key + - name: apiSecret + display_name: Project Id type: STRING deprecated: false required: true string_validators: regexp: '' description: >- - You can find your API key in ClientSuccess under the top right menu, Apps - & Integrations > Usage + You can find your Project Id in ClientSuccess under the top right menu, + Apps & Integrations > Usage settings: [] - - name: apiSecret - display_name: Project Id + - name: apiKey + display_name: API Key type: STRING deprecated: false required: true string_validators: regexp: '' description: >- - You can find your Project Id in ClientSuccess under the top right menu, - Apps & Integrations > Usage + You can find your API key in ClientSuccess under the top right menu, Apps + & Integrations > Usage settings: [] connection_modes: device: @@ -3737,36 +3736,6 @@ items: categories: - Attribution settings: - - name: hybridAttributionModel - display_name: Hybrid Attribution Model - type: BOOLEAN - deprecated: false - required: false - description: >- - This will make **Completed Order** events always send a `sale` event in - addition to a `sale.new` or `sale.repeat` event if it has a boolean - `repeat` property. - settings: [] - - name: siteId - display_name: Site ID - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - If you'd like to send mobile data to Convertro's server side integration, - please enter your Convertro Site ID - settings: [] - - name: account - display_name: Account - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: Enter your Convertro Account Name - settings: [] - name: clientName display_name: Client Name type: STRING @@ -3799,6 +3768,36 @@ items: you want to send to Convertro, put the event name you send to Segment on the left, and the name you want Convertro to receive it as on the right. settings: [] + - name: hybridAttributionModel + display_name: Hybrid Attribution Model + type: BOOLEAN + deprecated: false + required: false + description: >- + This will make **Completed Order** events always send a `sale` event in + addition to a `sale.new` or `sale.repeat` event if it has a boolean + `repeat` property. + settings: [] + - name: siteId + display_name: Site ID + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + If you'd like to send mobile data to Convertro's server side integration, + please enter your Convertro Site ID + settings: [] + - name: account + display_name: Account + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: Enter your Convertro Account Name + settings: [] connection_modes: device: web: true @@ -4396,6 +4395,30 @@ items: categories: - Advertising settings: + - name: groupTag + display_name: Group Tag + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + This setting maps to the Doubleclick Floodlight container group tag (the + `type` parameter) string. You can choose to use this setting to define the + same value for this parameter across all conversion events or you can + define this value for each of your conversion event mappings below. + settings: [] + - name: token + display_name: Authorization Token for server-to-server requests + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + Please add the Token to send your conversions using the server-to-server + endpoint from DisplayVideo 360. + settings: [] - name: activityTag display_name: Activity Tag type: STRING @@ -4418,30 +4441,6 @@ items: Use these fields to map your Segment event names to Floodlight tags. We'll only send Floodlight the conversion events you specify. settings: - - name: event - display_name: Segment Event Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - Our Floodlight integration allows you to map the event names you track - in Segment to Floodlight tags. - settings: [] - - name: cat - display_name: Floodlight Activity Tag - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - This should be the `cat` of your tag string, which Floodlight servers - use to identify the activity group to which the activity belongs. If you - leave this option blank, we will fall back to whatever you define in the - top level Activity Tag setting. - settings: [] - name: type display_name: Floodlight Group Tag type: STRING @@ -4500,19 +4499,30 @@ items: `{{context.userAgent}}`. Please reference our [docs](/docs/destinations/doubleclick-floodlight/) for more info. settings: [] - - name: groupTag - display_name: Group Tag - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - This setting maps to the Doubleclick Floodlight container group tag (the - `type` parameter) string. You can choose to use this setting to define the - same value for this parameter across all conversion events or you can - define this value for each of your conversion event mappings below. - settings: [] + - name: event + display_name: Segment Event Name + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + Our Floodlight integration allows you to map the event names you track + in Segment to Floodlight tags. + settings: [] + - name: cat + display_name: Floodlight Activity Tag + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + This should be the `cat` of your tag string, which Floodlight servers + use to identify the activity group to which the activity belongs. If you + leave this option blank, we will fall back to whatever you define in the + top level Activity Tag setting. + settings: [] - name: source display_name: DoubleClick Advertiser ID type: STRING @@ -4524,17 +4534,6 @@ items: Your advertiser ID that is the source of the Floodlight activity. This should be the `src` of your tag string. settings: [] - - name: token - display_name: Authorization Token for server-to-server requests - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - Please add the Token to send your conversions using the server-to-server - endpoint from DisplayVideo 360. - settings: [] connection_modes: device: web: true @@ -4593,8 +4592,8 @@ items: categories: - Livechat settings: - - name: embedId - display_name: Embed ID + - name: apiKey + display_name: API Key type: STRING deprecated: false required: true @@ -4604,8 +4603,8 @@ items: Head right to this page in [Drift](https://app.drift.com/setup/segment) and click connect to setup Drift in Segment. settings: [] - - name: apiKey - display_name: API Key + - name: embedId + display_name: Embed ID type: STRING deprecated: false required: true @@ -4640,18 +4639,6 @@ items: categories: - Email Marketing settings: - - name: token - display_name: API Token - type: STRING - deprecated: false - required: false - string_validators: - regexp: '^[a-zA-Z0-9]{20}$|[a-zA-Z0-9]{32}' - description: >- - Your API Token can be found in your [User - Settings](https://www.getdrip.com/user/edit). It should be 20 character - alphanumeric string, like: `bmrdc6hczyn8yss8o8td`. - settings: [] - name: account display_name: Account Key type: STRING @@ -4682,6 +4669,18 @@ items: you put a value in here, we will by default try to subscribe every user to this campaign ID. settings: [] + - name: token + display_name: API Token + type: STRING + deprecated: false + required: false + string_validators: + regexp: '^[a-zA-Z0-9]{20}$|[a-zA-Z0-9]{32}' + description: >- + Your API Token can be found in your [User + Settings](https://www.getdrip.com/user/edit). It should be 20 character + alphanumeric string, like: `bmrdc6hczyn8yss8o8td`. + settings: [] connection_modes: device: web: true @@ -4814,30 +4813,14 @@ items: categories: - Email Marketing settings: - - name: siteId - display_name: Site ID + - name: companyName + display_name: Company Name type: STRING deprecated: false required: true string_validators: regexp: '' - description: Enter your Site ID - settings: [] - - name: mappedIdentifyTraits - display_name: Map Custom Traits to Contacts - type: MAP - deprecated: false - required: false - description: >- - Please input the Segment trait names on the left and their corresponding - Eloqua Custom Contact Field names on the right. The traits must be set up - in the Eloqua dashboard prior to instantiating this mapping. - - - **Note:** If you have set up Custom Contact Fields in Eloqua, please - ensure the corresponding Segment payload property values are of the same - data type specified in Eloqua's dashboard. Eloqua will reject any event - containing a Custom Contact Field with an incorrect data type. + description: Enter your login company name settings: [] - name: password display_name: Password @@ -4848,30 +4831,14 @@ items: regexp: '' description: Enter your login passord settings: [] - - name: sendGroup - display_name: Create or Update Account on Group - type: BOOLEAN + - name: siteId + display_name: Site ID + type: STRING deprecated: false - required: false - description: >- - *Server Side Only*: Enable this setting to create or update an Eloqua - account on a `group` event. - settings: [] - - name: mappedGroupTraits - display_name: Map Custom Traits to Accounts - type: MAP - deprecated: false - required: false - description: >- - Please input the Segment trait names on the left and their corresponding - Eloqua Custom Account Field names on the right. The traits must be set up - in the Eloqua dashboard prior to instantiating this mapping. - - - **Note:** If you have set up Custom Account Fields in Eloqua, please - ensure the corresponding Segment payload property values are of the same - data type specified in Eloqua's dashboard. Eloqua will reject any event - containing a Custom Account Field with an incorrect data type. + required: true + string_validators: + regexp: '' + description: Enter your Site ID settings: [] - name: username display_name: Username @@ -4882,15 +4849,6 @@ items: regexp: '' description: Enter your login username settings: [] - - name: companyName - display_name: Company Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: Enter your login company name - settings: [] - name: createContactOnTrack display_name: Create or Update Contact on Track type: BOOLEAN @@ -4921,6 +4879,47 @@ items: automatically attempts to match property names to Custom Object Field names in Eloqua. settings: [] + - name: mappedGroupTraits + display_name: Map Custom Traits to Accounts + type: MAP + deprecated: false + required: false + description: >- + Please input the Segment trait names on the left and their corresponding + Eloqua Custom Account Field names on the right. The traits must be set up + in the Eloqua dashboard prior to instantiating this mapping. + + + **Note:** If you have set up Custom Account Fields in Eloqua, please + ensure the corresponding Segment payload property values are of the same + data type specified in Eloqua's dashboard. Eloqua will reject any event + containing a Custom Account Field with an incorrect data type. + settings: [] + - name: mappedIdentifyTraits + display_name: Map Custom Traits to Contacts + type: MAP + deprecated: false + required: false + description: >- + Please input the Segment trait names on the left and their corresponding + Eloqua Custom Contact Field names on the right. The traits must be set up + in the Eloqua dashboard prior to instantiating this mapping. + + + **Note:** If you have set up Custom Contact Fields in Eloqua, please + ensure the corresponding Segment payload property values are of the same + data type specified in Eloqua's dashboard. Eloqua will reject any event + containing a Custom Contact Field with an incorrect data type. + settings: [] + - name: sendGroup + display_name: Create or Update Account on Group + type: BOOLEAN + deprecated: false + required: false + description: >- + *Server Side Only*: Enable this setting to create or update an Eloqua + account on a `group` event. + settings: [] connection_modes: device: web: true @@ -5116,58 +5115,6 @@ items: - Advertising - Analytics settings: - - name: appEvents - display_name: Map your events to Standard FB App Events - type: MAP - deprecated: false - required: false - map_validators: - regexp: '' - min: 0 - max: 0 - map_prefix: '' - select_options: - - fb_mobile_level_achieved - - fb_mobile_activate_app - - fb_mobile_add_payment_info - - fb_mobile_add_to_cart - - fb_mobile_add_to_wishlist - - fb_mobile_complete_registration - - fb_mobile_tutorial_completion - - fb_mobile_initiated_checkout - - fb_mobile_purchase - - fb_mobile_rate - - fb_mobile_search - - fb_mobile_spent_credits - - fb_mobile_achievement_unlocked - - 'fb_mobile_content_view ' - - Subscribe - - StartTrial - - AdClick - - AdImpression - description: >- - Enter your events on the left and the Facebook standard event to map to on - the right. Facebook recognizes certain [standard - events](https://developers.facebook.com/docs/marketing-api/app-event-api/v2.6) - that can be used across Custom Audiences, custom conversions, conversion - tracking, and conversion optimization. When you map an event to a standard - Facebook event, we'll send the event by that name. Any unmapped events - will still be sent as Custom Events. - - - - **Facebook Recommended Events** - - - The most important events that can help advertisers improve campaign ROI - are the conversion events or events closest to the conversion. Those - events are marked with an *. - - - In addition, there are special requirements for dynamic ads. These events - are marked with "m" for dynamic ads for mobile, and "t" for dynamic ads - for travel. - settings: [] - name: appId display_name: App ID type: STRING @@ -5240,6 +5187,58 @@ items: (where `name` is the [screen name](https://segment.com/docs/spec/screen/) you specify). settings: [] + - name: appEvents + display_name: Map your events to Standard FB App Events + type: MAP + deprecated: false + required: false + map_validators: + regexp: '' + min: 0 + max: 0 + map_prefix: '' + select_options: + - fb_mobile_level_achieved + - fb_mobile_activate_app + - fb_mobile_add_payment_info + - fb_mobile_add_to_cart + - fb_mobile_add_to_wishlist + - fb_mobile_complete_registration + - fb_mobile_tutorial_completion + - fb_mobile_initiated_checkout + - fb_mobile_purchase + - fb_mobile_rate + - fb_mobile_search + - fb_mobile_spent_credits + - fb_mobile_achievement_unlocked + - 'fb_mobile_content_view ' + - Subscribe + - StartTrial + - AdClick + - AdImpression + description: >- + Enter your events on the left and the Facebook standard event to map to on + the right. Facebook recognizes certain [standard + events](https://developers.facebook.com/docs/marketing-api/app-event-api/v2.6) + that can be used across Custom Audiences, custom conversions, conversion + tracking, and conversion optimization. When you map an event to a standard + Facebook event, we'll send the event by that name. Any unmapped events + will still be sent as Custom Events. + + + + **Facebook Recommended Events** + + + The most important events that can help advertisers improve campaign ROI + are the conversion events or events closest to the conversion. Those + events are marked with an *. + + + In addition, there are special requirements for dynamic ads. These events + are marked with "m" for dynamic ads for mobile, and "t" for dynamic ads + for travel. + settings: [] connection_modes: device: web: false @@ -5266,26 +5265,6 @@ items: categories: - Advertising settings: - - name: events - display_name: Map Track Events to Event Set IDs - type: MAP - deprecated: false - required: false - description: >- - Enter your Segment `.track()` event names on the left that you want to - send as conversions. On the right hand side, put the ID of the Facebook - Offline Event Set where you want to send these conversions. - settings: [] - - name: leads - display_name: Map Track Events as Lead Conversions to Event Set IDs - type: MAP - deprecated: false - required: false - description: >- - Enter your Segment `.track()` event names on the left that you want to - send as `Lead` conversions. On the right hand side, put the ID of the - Facebook Offline Event Set where you want to send these conversions. - settings: [] - name: oauth display_name: oauth type: BOOLEAN @@ -5318,6 +5297,26 @@ items: the ID of the Facebook Offline Event Set where you want to send these conversions. settings: [] + - name: events + display_name: Map Track Events to Event Set IDs + type: MAP + deprecated: false + required: false + description: >- + Enter your Segment `.track()` event names on the left that you want to + send as conversions. On the right hand side, put the ID of the Facebook + Offline Event Set where you want to send these conversions. + settings: [] + - name: leads + display_name: Map Track Events as Lead Conversions to Event Set IDs + type: MAP + deprecated: false + required: false + description: >- + Enter your Segment `.track()` event names on the left that you want to + send as `Lead` conversions. On the right hand side, put the ID of the + Facebook Offline Event Set where you want to send these conversions. + settings: [] connection_modes: device: web: false @@ -5342,6 +5341,55 @@ items: categories: - Advertising settings: + - name: initWithExistingTraits + display_name: Enable Advanced Matching + type: BOOLEAN + deprecated: false + required: false + description: >- + If true, we will initialize Facebook Pixel with any user traits that's + been cached in the Segment cookies from your previous `.identify()` calls. + settings: [] + - name: valueIdentifier + display_name: Value Field Identifier + type: SELECT + deprecated: false + required: false + select_validators: + select_options: + - price + - value + description: >- + For pre-purchase events such as `Product Viewed` and `Product Added`, + choose which Segment property you would like to map to Facebook's value + property. + settings: [] + - name: contentTypes + display_name: Map Categories to FB Content Types + type: MAP + deprecated: false + required: false + description: >- + Enter your category value on the left, and the Facebook content type to + map to on the right. Facebook recognizes certain event types that can help + deliver relevant ads. If no category values are mapped we'll default to + `product` and `product_group`, depending on the event. + settings: [] + - name: blacklistPiiProperties + display_name: Blacklist PII Properties + type: MIXED + deprecated: false + required: false + description: >- + Facebook has a strict policy prohibiting any personally identifiable + information (PII) from being sent as properties of events to their API. By + default, this integration will scan `track` events for + [these](https://segment.com/docs/destinations/facebook-pixel/#pii-blacklisting) + properties and strip them from the payload that gets sent to Facebook. If + your events contain other properties with PII values, you can use this + setting to append to this default list. You can also use this setting to + optionally hash any PII values instead of dropping them. + settings: [] - name: keyForExternalId display_name: 'Client-Side Only: Advanced Match Trait Key for External ID' type: STRING @@ -5355,7 +5403,32 @@ items: will use the value of this trait to map it to Facebook Pixel's `external_id`. settings: [] - - name: standardEvents + - name: legacyEvents + display_name: Legacy Conversion Pixel IDs + type: MAP + deprecated: false + required: false + description: >- + These are your + **[deprecated](https://developers.facebook.com/docs/ads-for-websites)** + Conversion Pixel IDs from Facebook Conversion Tracking. Facebook will + still accept data in this format, though it's no longer possible to create + conversion Pixel IDs. Now you create conversions based on standard and + custom events inside their interface. Enter your event name in the left + column and your pixel ID in the right column. + settings: [] + - name: pixelId + display_name: Pixel ID + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + Your Pixel ID, from the snippet created on the [Facebook Pixel creation + page](https://www.facebook.com/ads/manager/pixel/facebook_pixel/). + settings: [] + - name: standardEvents display_name: Map Your Events to Standard FB Events type: MAP deprecated: false @@ -5392,6 +5465,16 @@ items: Facebook event, we'll send the event by that name. Any unmapped events will still be sent as Custom Events. settings: [] + - name: standardEventsCustomProperties + display_name: Standard Events custom properties + type: LIST + deprecated: false + required: false + description: >- + Add here all the custom properties you want to send as part of your + Standard Events (Order Completed, Checkout Started, etc) as `property + name`. + settings: [] - name: whitelistPiiProperties display_name: Whitelist PII Properties type: LIST @@ -5405,90 +5488,6 @@ items: [documentation](https://segment.com/docs/destinations/facebook-pixel/#pii-blacklisting) for the exact property names we filter out.** settings: [] - - name: valueIdentifier - display_name: Value Field Identifier - type: SELECT - deprecated: false - required: false - select_validators: - select_options: - - price - - value - description: >- - For pre-purchase events such as `Product Viewed` and `Product Added`, - choose which Segment property you would like to map to Facebook's value - property. - settings: [] - - name: blacklistPiiProperties - display_name: Blacklist PII Properties - type: MIXED - deprecated: false - required: false - description: >- - Facebook has a strict policy prohibiting any personally identifiable - information (PII) from being sent as properties of events to their API. By - default, this integration will scan `track` events for - [these](https://segment.com/docs/destinations/facebook-pixel/#pii-blacklisting) - properties and strip them from the payload that gets sent to Facebook. If - your events contain other properties with PII values, you can use this - setting to append to this default list. You can also use this setting to - optionally hash any PII values instead of dropping them. - settings: [] - - name: contentTypes - display_name: Map Categories to FB Content Types - type: MAP - deprecated: false - required: false - description: >- - Enter your category value on the left, and the Facebook content type to - map to on the right. Facebook recognizes certain event types that can help - deliver relevant ads. If no category values are mapped we'll default to - `product` and `product_group`, depending on the event. - settings: [] - - name: initWithExistingTraits - display_name: Enable Advanced Matching - type: BOOLEAN - deprecated: false - required: false - description: >- - If true, we will initialize Facebook Pixel with any user traits that's - been cached in the Segment cookies from your previous `.identify()` calls. - settings: [] - - name: legacyEvents - display_name: Legacy Conversion Pixel IDs - type: MAP - deprecated: false - required: false - description: >- - These are your - **[deprecated](https://developers.facebook.com/docs/ads-for-websites)** - Conversion Pixel IDs from Facebook Conversion Tracking. Facebook will - still accept data in this format, though it's no longer possible to create - conversion Pixel IDs. Now you create conversions based on standard and - custom events inside their interface. Enter your event name in the left - column and your pixel ID in the right column. - settings: [] - - name: pixelId - display_name: Pixel ID - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - Your Pixel ID, from the snippet created on the [Facebook Pixel creation - page](https://www.facebook.com/ads/manager/pixel/facebook_pixel/). - settings: [] - - name: standardEventsCustomProperties - display_name: Standard Events custom properties - type: LIST - deprecated: false - required: false - description: >- - Add here all the custom properties you want to send as part of your - Standard Events (Order Completed, Checkout Started, etc) as `property - name`. - settings: [] connection_modes: device: web: true @@ -5598,6 +5597,27 @@ items: - Advertising - SMS & Push Notifications settings: + - name: sessionContinueSeconds + display_name: Session Continue Seconds + type: NUMBER + deprecated: false + required: false + number_validators: + min: 1 + max: 10000 + description: >- + The number of seconds the app can be in the background before starting a + new Flurry session upon resume. Default from Flurry is 10 seconds. + settings: [] + - name: useHttps + display_name: Send Data to Flurry Over HTTPS + type: BOOLEAN + deprecated: false + required: false + description: >- + Enabling this will send data to Flurry securely. This option is ignored + for the latest versions of the Flurry SDK, which use HTTPS by default. + settings: [] - name: apiKey display_name: API Key type: STRING @@ -5634,27 +5654,6 @@ items: Enabling this will send data through screen calls as events (in addition to pageviews). settings: [] - - name: sessionContinueSeconds - display_name: Session Continue Seconds - type: NUMBER - deprecated: false - required: false - number_validators: - min: 1 - max: 10000 - description: >- - The number of seconds the app can be in the background before starting a - new Flurry session upon resume. Default from Flurry is 10 seconds. - settings: [] - - name: useHttps - display_name: Send Data to Flurry Over HTTPS - type: BOOLEAN - deprecated: false - required: false - description: >- - Enabling this will send data to Flurry securely. This option is ignored - for the latest versions of the Flurry SDK, which use HTTPS by default. - settings: [] connection_modes: device: web: false @@ -6181,6 +6180,16 @@ items: - Livechat - CRM settings: + - name: trackParams + display_name: Track Parameters + type: BOOLEAN + deprecated: false + required: false + description: >- + Disable to ignore URL querystring parameters from the page URL, for + example `/home?my=query&string=true` will be tracked as `/home` if this is + set to disabled. + settings: [] - name: useCookies display_name: Use Cookies type: BOOLEAN @@ -6188,6 +6197,15 @@ items: required: false description: Disable this if you don't want to use cookies settings: [] + - name: anonymizeIP + display_name: Anonymize IP + type: BOOLEAN + deprecated: false + required: false + description: >- + Enable if you need to anonymize the IP address of visitors to your + website. + settings: [] - name: apiKey display_name: API Key (Server-side) type: STRING @@ -6211,6 +6229,16 @@ items: guide](https://www.gosquared.com/integration/). It should look something like `GSN-123456-A`. settings: [] + - name: trackLocal + display_name: Track Local + type: BOOLEAN + deprecated: false + required: false + description: >- + Enable to track data on local pages/sites (using the `file://` protocol, + or on `localhost`). This helps prevent local development from polluting + your stats. + settings: [] - name: cookieDomain display_name: Cookie Domain type: STRING @@ -6233,35 +6261,6 @@ items: Enable if you'd like page hashes to be tracked alongside the page URL. By default, `example.com/about#us` will be tracked as `example.com/about`. settings: [] - - name: trackLocal - display_name: Track Local - type: BOOLEAN - deprecated: false - required: false - description: >- - Enable to track data on local pages/sites (using the `file://` protocol, - or on `localhost`). This helps prevent local development from polluting - your stats. - settings: [] - - name: anonymizeIP - display_name: Anonymize IP - type: BOOLEAN - deprecated: false - required: false - description: >- - Enable if you need to anonymize the IP address of visitors to your - website. - settings: [] - - name: trackParams - display_name: Track Parameters - type: BOOLEAN - deprecated: false - required: false - description: >- - Disable to ignore URL querystring parameters from the page URL, for - example `/home?my=query&string=true` will be tracked as `/home` if this is - set to disabled. - settings: [] connection_modes: device: web: true @@ -6286,36 +6285,6 @@ items: categories: - Advertising settings: - - name: trackAttributionData - display_name: Track Attribution Data - type: BOOLEAN - deprecated: false - required: false - description: >- - If this setting is enabled, Segment will send successfully attributed - `Application Installed` events from AdWords as `Install Attributed` events - back into this source. These events will contain data about the AdWords - campaign that lead to the conversion. You can learn more about these - events [here](https://segment.com/docs/spec/mobile/#install-attributed). - - - **Important:** this feature is only available if you are using the new - AdWords version. - settings: [] - - name: version - display_name: Version - type: SELECT - deprecated: false - required: false - select_validators: - select_options: - - '1' - - '2' - description: >- - The current version of your AdWords account. If you have migrated your - AdWords account to the **new** AdWords interface at any point, you are - using version 2. Otherwise, please select version 1. - settings: [] - name: conversionId display_name: Conversion ID type: STRING @@ -6344,11 +6313,29 @@ items: required: false description: AdWords behavior for each of your Segment Events is defined here. settings: - - name: eventName - display_name: Event Name + - name: conversionId + display_name: Conversion ID type: STRING deprecated: false - required: true + required: false + string_validators: + regexp: '' + description: You can opt to override the default conversion ID by setting one here + settings: [] + - name: remarketing + display_name: Send Remarketing Tag + type: BOOLEAN + deprecated: false + required: false + description: >- + Enable this to send a remarketing tag in addition to the conversion tag + (if you leave the label field blank only a remarketing tag will be sent) + settings: [] + - name: eventName + display_name: Event Name + type: STRING + deprecated: false + required: true string_validators: regexp: '' description: Segment Event Name @@ -6366,24 +6353,6 @@ items: conversion, you'll need to map the event name to its corresponding label here. settings: [] - - name: conversionId - display_name: Conversion ID - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: You can opt to override the default conversion ID by setting one here - settings: [] - - name: remarketing - display_name: Send Remarketing Tag - type: BOOLEAN - deprecated: false - required: false - description: >- - Enable this to send a remarketing tag in addition to the conversion tag - (if you leave the label field blank only a remarketing tag will be sent) - settings: [] - name: linkId display_name: Link Id type: STRING @@ -6408,6 +6377,36 @@ items: required: false description: Enable this to send a remarketing tag with your page calls settings: [] + - name: trackAttributionData + display_name: Track Attribution Data + type: BOOLEAN + deprecated: false + required: false + description: >- + If this setting is enabled, Segment will send successfully attributed + `Application Installed` events from AdWords as `Install Attributed` events + back into this source. These events will contain data about the AdWords + campaign that lead to the conversion. You can learn more about these + events [here](https://segment.com/docs/spec/mobile/#install-attributed). + + + **Important:** this feature is only available if you are using the new + AdWords version. + settings: [] + - name: version + display_name: Version + type: SELECT + deprecated: false + required: false + select_validators: + select_options: + - '1' + - '2' + description: >- + The current version of your AdWords account. If you have migrated your + AdWords account to the **new** AdWords interface at any point, you are + using version 2. Otherwise, please select version 1. + settings: [] connection_modes: device: web: true @@ -6432,18 +6431,6 @@ items: categories: - Advertising settings: - - name: sendPageView - display_name: Send Page View - type: BOOLEAN - deprecated: false - required: false - description: >- - If you want to prevent the global site tag from automatically sending a - remarketing hit to your AdWords accounts when the page is viewed, you can - disable this setting. Otherwise, by default all properties sent with the - conversions will be sent as remarketing hits which will allow you to - create audiences based on those properties. - settings: [] - name: accountId display_name: Google Conversion ID type: STRING @@ -6495,6 +6482,18 @@ items: You can map your `.page()` calls to specific AdWords Page Load Conversions by providing your page `name` and the Conversion ID. settings: [] + - name: sendPageView + display_name: Send Page View + type: BOOLEAN + deprecated: false + required: false + description: >- + If you want to prevent the global site tag from automatically sending a + remarketing hit to your AdWords accounts when the page is viewed, you can + disable this setting. Otherwise, by default all properties sent with the + conversions will be sent as remarketing hits which will allow you to + create audiences based on those properties. + settings: [] connection_modes: device: web: true @@ -6532,106 +6531,113 @@ items: test: if you see `_gaq.push` in your code you're using Classic, so enable this. settings: [] - - name: domain - display_name: Cookie Domain Name + - name: mobileTrackingId + display_name: Mobile Tracking ID type: STRING deprecated: false required: false string_validators: - regexp: '^none$|^[a-zA-Z0-9_-]+\.[.a-zA-Z0-9_-]+$' + regexp: ^UA-\d+-\d+$ description: >- - _Only data sent from visitors on this domain_ will be recorded. By default - Google Analytics automatically resolves the domain name, so you should - **leave this blank unless you know you want otherwise**! This option is - useful if you need to ignore data from other domains, or explicitly set - the domain of your Google Analytics cookie. This is known as Override - Domain Name in [GA - Classic](https://developers.google.com/analytics/devguides/collection/gajs/gaTrackingSite). - If you are testing locally, you can set the domain to `none`. [Read more - about this setting in our - docs](/docs/integrations/google-analytics/#cookie-domain-name). + Google Analytics tracks mobile apps separately, so you'll want to create a + separate Google Analytics mobile app property. Remember to only add a + mobile tracking ID if you're tracking from a mobile library. If you're + tracking from a hybrid app, fill in your website tracking ID instead. + Leave it blank if you don't have a mobile app property. settings: [] - - name: enhancedLinkAttribution - display_name: Enable Enhanced Link Attribution + - name: nameTracker + display_name: Name Tracker type: BOOLEAN deprecated: false required: false description: >- - Provides more detailed reports on the links clicked on your site. Read - more about it in the [Google support - documentation](https://developers.google.com/analytics/devguides/collection/analyticsjs/enhanced-link-attribution). + Name the tracker 'segmentGATracker'. Enable this if you're working with + additional Google Analytics trackers and want to ensure that your Segment + tracker has a distinct name. If this is enabled you must prepend this + tracker name to any native Google Analytics (except for create) that you + call, e.g. 'segmentGATracker.require(....)' settings: [] - - name: nonInteraction - display_name: Add the non-interaction flag to all events + - name: sendUserId + display_name: Send User-ID to GA type: BOOLEAN deprecated: false required: false description: >- - Adds a _noninteraction: true flag_ to every event tracked to Google - Analytics. If you're seeing unusually low bounce rates this will solve - that issue. + User-ID enables the analysis of groups of sessions across devices, using a + unique and persistent ID. This only works with Google Analytics Universal. + IMPORTANT: Sending email or other personally identifiable information + (PII) violates Google Analytics Terms of Service. settings: [] - - name: optimize - display_name: Optimize Container ID - type: STRING + - name: typeOverride + display_name: Send Segment "Product List" Events to GA as "Event" Hits + type: BOOLEAN deprecated: false required: false - string_validators: - regexp: '' description: >- - Integrate with Google Analytics Optimize plugin. Please enter your - Optimize Container ID + By default, Segment sends "Product List Viewed" and "Product List + Filtered" ecommerce events to GA as "pageview" hit types. Enable this + setting to instead map these two specced Segment track events to GA as + "event" hit types. settings: [] - - name: reportUncaughtExceptions - display_name: Send Uncaught Exceptions to GA (Mobile) + - name: anonymizeIp + display_name: Anonymize IP Addresses type: BOOLEAN deprecated: false required: false description: >- - This lets you study errors and exceptions in your iOS and Android apps in - Google Analytics. + For client side libraries. Read more about anonymizing IP addresses from + the [Google support + documentation](https://support.google.com/analytics/answer/2763052?hl=en). settings: [] - - name: contentGroupings - display_name: Content Groupings - type: MAP + - name: siteSpeedSampleRate + display_name: Site Speed Sample Rate + type: NUMBER deprecated: false required: false - map_validators: - regexp: '' - min: 0 - max: 5 - map_prefix: contentGroup - select_options: [] + number_validators: + min: 1 + max: 100 description: >- - Enter a property name on the left. Choose the Google Analytics content - grouping you want on the right. Google Analytics only accepts numbered - content groupings (e.g. contentGrouping3). When you use - `analytics.page(name, properties)` with custom properties, we'll use the - value of the property you designate as the value of the specified content - grouping. + Defines the sample size for Site Speed data collection. If you have a + small number of visitors you might want to adjust the sampling to a larger + rate for your [site speed + stats](https://developers.google.com/analytics/devguides/collection/gajs/methods/gaJSApiBasicConfiguration?hl=en#_gat.GA_Tracker_._setSiteSpeedSampleRate). settings: [] - - name: dimensions - display_name: Custom Dimensions - type: MAP + - name: useGoogleAmpClientId + display_name: Use Google AMP Client ID + type: BOOLEAN deprecated: false required: false - map_validators: - regexp: '' - min: 0 - max: 200 - map_prefix: dimension - select_options: [] description: >- - Because Google Analytics cannot accept arbitrary data about users or - events, when you use `analytics.identify(userId, traits)` with custom - traits or `analytics.track('event', properties)` with custom properties, - you need to map those traits and properties to Google Analytics custom - dimensions if you want them to be sent to GA. Enter a trait or property - name on the left. Choose the Google Analytics dimension you want on the - right. Google Analytics only accepts numbered dimensions (e.g. - dimension3). We suggest using user-scoped dimensions for trait mappings - and hit-scoped dimensions for properties [Contact - us](https://segment.com/contact) if you need help! + Google’s AMP Client ID API lets you uniquely identify users who engage + with your content on AMP and non-AMP pages. If you opt-in, Google + Analytics will use the user's AMP Client ID to determine that multiple + site events belong to the same user when those users visit AMP pages via a + [Google viewer](https://support.google.com/websearch/answer/7220196). + Associating events and users provides features like user counts and + session-based metrics. *Enabling this feature will affect your reporting.* + Please carefully reference Google's + [documentation](https://support.google.com/analytics/answer/7486764?hl=en&ref_topic=7378717) + for more info before you enable it. + settings: [] + - name: domain + display_name: Cookie Domain Name + type: STRING + deprecated: false + required: false + string_validators: + regexp: '^none$|^[a-zA-Z0-9_-]+\.[.a-zA-Z0-9_-]+$' + description: >- + _Only data sent from visitors on this domain_ will be recorded. By default + Google Analytics automatically resolves the domain name, so you should + **leave this blank unless you know you want otherwise**! This option is + useful if you need to ignore data from other domains, or explicitly set + the domain of your Google Analytics cookie. This is known as Override + Domain Name in [GA + Classic](https://developers.google.com/analytics/devguides/collection/gajs/gaTrackingSite). + If you are testing locally, you can set the domain to `none`. [Read more + about this setting in our + docs](/docs/integrations/google-analytics/#cookie-domain-name). settings: [] - name: enableServerIdentify display_name: Enable Server Side Identify @@ -6647,76 +6653,88 @@ items: will check your `traits` and your settings for custom dimension/metric mappings and send it with an explicit event. settings: [] - - name: sampleRate - display_name: Sample Rate - type: NUMBER + - name: trackNamedPages + display_name: Track Named Pages + type: BOOLEAN deprecated: false required: false - number_validators: - min: 1 - max: 100 description: >- - Specifies what percentage of users should be tracked. This defaults to 100 - (no users are sampled out) but large sites may need to use a lower sample - rate to stay within Google Analytics processing limits as [seen - here](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#sampleRate). - Currently only available in the browser - mobile coming soon. + Tracks events to Google Analytics for [`page` + method](https://segment.io/libraries/analytics.js#page) calls that have a + `name` associated with them. E.g. `page('Signup')` translates to **Viewed + Signup Page**. settings: [] - - name: mobileTrackingId - display_name: Mobile Tracking ID - type: STRING - deprecated: false - required: false - string_validators: - regexp: ^UA-\d+-\d+$ + - name: enhancedLinkAttribution + display_name: Enable Enhanced Link Attribution + type: BOOLEAN + deprecated: false + required: false description: >- - Google Analytics tracks mobile apps separately, so you'll want to create a - separate Google Analytics mobile app property. Remember to only add a - mobile tracking ID if you're tracking from a mobile library. If you're - tracking from a hybrid app, fill in your website tracking ID instead. - Leave it blank if you don't have a mobile app property. + Provides more detailed reports on the links clicked on your site. Read + more about it in the [Google support + documentation](https://developers.google.com/analytics/devguides/collection/analyticsjs/enhanced-link-attribution). settings: [] - - name: nameTracker - display_name: Name Tracker + - name: includeSearch + display_name: Include the Querystring in Page Views type: BOOLEAN deprecated: false required: false description: >- - Name the tracker 'segmentGATracker'. Enable this if you're working with - additional Google Analytics trackers and want to ensure that your Segment - tracker has a distinct name. If this is enabled you must prepend this - tracker name to any native Google Analytics (except for create) that you - call, e.g. 'segmentGATracker.require(....)' + The querystring doesn't usually affect the content of the page in a + significant way (like sorting), so we disable this by default. settings: [] - - name: setAllMappedProps - display_name: Set Custom Dimensions & Metrics to the Page - type: BOOLEAN + - name: sampleRate + display_name: Sample Rate + type: NUMBER deprecated: false required: false + number_validators: + min: 1 + max: 100 description: >- - Google Analytics allows users to either pass custom dimensions / metrics - as properties of specific events or as properties for all events on a - given page (or the lifetime of the global tracker object). The default - Segment behavior is the latter. Any metrics / dimensions that are mapped - to a given property will be set to the page and sent as properties of all - subsequent events on that page. You can disable this functionality with - this setting. If disabled, Segment will only pass custom dimensions / - metrics as part of the payload of the event with which they are explicitly - associated. Please reference the Google Analytics - [documentation](https://developers.google.com/analytics/devguides/collection/analyticsjs/custom-dims-mets#implementation) - for more info. + Specifies what percentage of users should be tracked. This defaults to 100 + (no users are sampled out) but large sites may need to use a lower sample + rate to stay within Google Analytics processing limits as [seen + here](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#sampleRate). + Currently only available in the browser - mobile coming soon. settings: [] - - name: trackingId - display_name: Website Tracking ID + - name: serversideTrackingId + display_name: Serverside Tracking ID type: STRING deprecated: false required: false string_validators: regexp: ^UA-\d+-\d+$ description: >- - Your website's Tracking ID is in the **Tracking Info** tab on the [Admin - Page](https://www.google.com/analytics/web/#management/Property) of Google - Analytics. Leave it blank if you don't have a website property. + Your Serverside Tracking ID is the UA code for the Google Analytics + property you want to send server-side calls to. Leave it blank if you + don't have a server-side client library that you want to send data from. + Remember that data tracked from mobile integrations that are not bundled + in your app send data to Google Analytics server side, since Segment sends + data to them via our own servers. + settings: [] + - name: dimensions + display_name: Custom Dimensions + type: MAP + deprecated: false + required: false + map_validators: + regexp: '' + min: 0 + max: 200 + map_prefix: dimension + select_options: [] + description: >- + Because Google Analytics cannot accept arbitrary data about users or + events, when you use `analytics.identify(userId, traits)` with custom + traits or `analytics.track('event', properties)` with custom properties, + you need to map those traits and properties to Google Analytics custom + dimensions if you want them to be sent to GA. Enter a trait or property + name on the left. Choose the Google Analytics dimension you want on the + right. Google Analytics only accepts numbered dimensions (e.g. + dimension3). We suggest using user-scoped dimensions for trait mappings + and hit-scoped dimensions for properties [Contact + us](https://segment.com/contact) if you need help! settings: [] - name: doubleClick display_name: 'Remarketing, Display Ads and Demographic Reports.' @@ -6725,38 +6743,33 @@ items: required: false description: Works with both Universal and Classic tracking methods. settings: [] - - name: enhancedEcommerce - display_name: Enable Enhanced Ecommerce - type: BOOLEAN + - name: identifyCategory + display_name: Server Side Identify Event Category + type: STRING deprecated: false required: false + string_validators: + regexp: '' description: >- - If you want more detailed reports on ecommerce, you might want to enable - this feature. Read more about it - [here](https://developers.google.com/analytics/devguides/collection/analyticsjs/enhanced-ecommerce). + If you have **Enabled Server Side Identify**, you can specify the trait + you want to look up for setting the event category will be since all + custom metrics/dimensions for server side `.identify()` calls will be sent + via an event hit to GA. The default value will be `'All'`. For example, if + you are sending `traits.category`, you can put 'category' in the setting + above and we will send the value of this trait as the event category. settings: [] - - name: metrics - display_name: Custom Metrics - type: MAP + - name: identifyEventName + display_name: Server Side Identify Event Action + type: STRING deprecated: false required: false - map_validators: + string_validators: regexp: '' - min: 0 - max: 200 - map_prefix: metric - select_options: [] description: >- - Because Google Analytics cannot accept arbitrary data about users or - events, when you use `analytics.identify(userId, traits)` with custom - numerical traits or `analytics.track('event', properties)` with custom - numerical properties, you need to map those traits and properties to - Google Analytics custom metrics if you want them to be sent to GA. Enter a - trait or property name on the left. Choose the Google Analytics metric you - want on the right. Google Analytics only accepts numbered metrics (e.g. - metric3). We suggest using user-scoped metrics for trait mappings and - hit-scoped metrics for properties. [Contact - us](https://segment.com/contact) if you need help! + If you have **Enabled Server Side Identify**, you can specify what the + event action will be since all custom metrics/dimensions for server side + `.identify()` calls will be sent via an event hit to GA. The default value + will be `'User Enriched'` settings: [] - name: protocolMappings display_name: Map Traits or Properties to Measurement Protocol Params @@ -6777,58 +6790,83 @@ items: traits or properties to known [measurement protocol params](https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters). settings: [] - - name: useGoogleAmpClientId - display_name: Use Google AMP Client ID - type: BOOLEAN + - name: trackingId + display_name: Website Tracking ID + type: STRING deprecated: false required: false + string_validators: + regexp: ^UA-\d+-\d+$ description: >- - Google’s AMP Client ID API lets you uniquely identify users who engage - with your content on AMP and non-AMP pages. If you opt-in, Google - Analytics will use the user's AMP Client ID to determine that multiple - site events belong to the same user when those users visit AMP pages via a - [Google viewer](https://support.google.com/websearch/answer/7220196). - Associating events and users provides features like user counts and - session-based metrics. *Enabling this feature will affect your reporting.* - Please carefully reference Google's - [documentation](https://support.google.com/analytics/answer/7486764?hl=en&ref_topic=7378717) - for more info before you enable it. + Your website's Tracking ID is in the **Tracking Info** tab on the [Admin + Page](https://www.google.com/analytics/web/#management/Property) of Google + Analytics. Leave it blank if you don't have a website property. settings: [] - - name: identifyCategory - display_name: Server Side Identify Event Category - type: STRING + - name: ignoredReferrers + display_name: Ignored Referrers + type: MULTI_LINE_STRING deprecated: false required: false string_validators: regexp: '' description: >- - If you have **Enabled Server Side Identify**, you can specify the trait - you want to look up for setting the event category will be since all - custom metrics/dimensions for server side `.identify()` calls will be sent - via an event hit to GA. The default value will be `'All'`. For example, if - you are sending `traits.category`, you can put 'category' in the setting - above and we will send the value of this trait as the event category. + Add any domains you want to ignore, separated by line breaks. You might + use this if you want Google Analytics to ignore certain referral domains + (e.g. to prevent your subdomains from showing up as referrers in your + analytics). _Note: this only works for Classic profiles. Universal + profiles can_ [edit their ignored + referrers](https://support.google.com/analytics/answer/2795830?hl=en&ref_topic=2790009) + _directly inside Google Analytics._ settings: [] - - name: includeSearch - display_name: Include the Querystring in Page Views + - name: metrics + display_name: Custom Metrics + type: MAP + deprecated: false + required: false + map_validators: + regexp: '' + min: 0 + max: 200 + map_prefix: metric + select_options: [] + description: >- + Because Google Analytics cannot accept arbitrary data about users or + events, when you use `analytics.identify(userId, traits)` with custom + numerical traits or `analytics.track('event', properties)` with custom + numerical properties, you need to map those traits and properties to + Google Analytics custom metrics if you want them to be sent to GA. Enter a + trait or property name on the left. Choose the Google Analytics metric you + want on the right. Google Analytics only accepts numbered metrics (e.g. + metric3). We suggest using user-scoped metrics for trait mappings and + hit-scoped metrics for properties. [Contact + us](https://segment.com/contact) if you need help! + settings: [] + - name: reportUncaughtExceptions + display_name: Send Uncaught Exceptions to GA (Mobile) type: BOOLEAN deprecated: false required: false description: >- - The querystring doesn't usually affect the content of the page in a - significant way (like sorting), so we disable this by default. + This lets you study errors and exceptions in your iOS and Android apps in + Google Analytics. settings: [] - - name: serversideClassic - display_name: Use Classic Analytics for Your Serverside Tracking + - name: setAllMappedProps + display_name: Set Custom Dimensions & Metrics to the Page type: BOOLEAN deprecated: false required: false description: >- - **Important:** When creating your Google Analytics profile, you can choose - between **Classic** and **Universal** Analytics. After March 2013, new - profiles default to Universal, while earlier profiles are Classic. An easy - test: if you see `_gaq.push` in your code you're using Classic, so enable - this. + Google Analytics allows users to either pass custom dimensions / metrics + as properties of specific events or as properties for all events on a + given page (or the lifetime of the global tracker object). The default + Segment behavior is the latter. Any metrics / dimensions that are mapped + to a given property will be set to the page and sent as properties of all + subsequent events on that page. You can disable this functionality with + this setting. If disabled, Segment will only pass custom dimensions / + metrics as part of the payload of the event with which they are explicitly + associated. Please reference the Google Analytics + [documentation](https://developers.google.com/analytics/devguides/collection/analyticsjs/custom-dims-mets#implementation) + for more info. settings: [] - name: trackCategorizedPages display_name: Track Categorized Pages @@ -6841,106 +6879,67 @@ items: `category` associated with them. E.g. `page('Docs', 'Index')` translates to **Viewed Docs Page**. settings: [] - - name: anonymizeIp - display_name: Anonymize IP Addresses - type: BOOLEAN - deprecated: false - required: false - description: >- - For client side libraries. Read more about anonymizing IP addresses from - the [Google support - documentation](https://support.google.com/analytics/answer/2763052?hl=en). - settings: [] - - name: identifyEventName - display_name: Server Side Identify Event Action - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - If you have **Enabled Server Side Identify**, you can specify what the - event action will be since all custom metrics/dimensions for server side - `.identify()` calls will be sent via an event hit to GA. The default value - will be `'User Enriched'` - settings: [] - - name: siteSpeedSampleRate - display_name: Site Speed Sample Rate - type: NUMBER - deprecated: false - required: false - number_validators: - min: 1 - max: 100 - description: >- - Defines the sample size for Site Speed data collection. If you have a - small number of visitors you might want to adjust the sampling to a larger - rate for your [site speed - stats](https://developers.google.com/analytics/devguides/collection/gajs/methods/gaJSApiBasicConfiguration?hl=en#_gat.GA_Tracker_._setSiteSpeedSampleRate). - settings: [] - - name: ignoredReferrers - display_name: Ignored Referrers - type: MULTI_LINE_STRING + - name: contentGroupings + display_name: Content Groupings + type: MAP deprecated: false required: false - string_validators: + map_validators: regexp: '' + min: 0 + max: 5 + map_prefix: contentGroup + select_options: [] description: >- - Add any domains you want to ignore, separated by line breaks. You might - use this if you want Google Analytics to ignore certain referral domains - (e.g. to prevent your subdomains from showing up as referrers in your - analytics). _Note: this only works for Classic profiles. Universal - profiles can_ [edit their ignored - referrers](https://support.google.com/analytics/answer/2795830?hl=en&ref_topic=2790009) - _directly inside Google Analytics._ + Enter a property name on the left. Choose the Google Analytics content + grouping you want on the right. Google Analytics only accepts numbered + content groupings (e.g. contentGrouping3). When you use + `analytics.page(name, properties)` with custom properties, we'll use the + value of the property you designate as the value of the specified content + grouping. settings: [] - - name: sendUserId - display_name: Send User-ID to GA + - name: enhancedEcommerce + display_name: Enable Enhanced Ecommerce type: BOOLEAN deprecated: false required: false description: >- - User-ID enables the analysis of groups of sessions across devices, using a - unique and persistent ID. This only works with Google Analytics Universal. - IMPORTANT: Sending email or other personally identifiable information - (PII) violates Google Analytics Terms of Service. + If you want more detailed reports on ecommerce, you might want to enable + this feature. Read more about it + [here](https://developers.google.com/analytics/devguides/collection/analyticsjs/enhanced-ecommerce). settings: [] - - name: serversideTrackingId - display_name: Serverside Tracking ID - type: STRING + - name: serversideClassic + display_name: Use Classic Analytics for Your Serverside Tracking + type: BOOLEAN deprecated: false required: false - string_validators: - regexp: ^UA-\d+-\d+$ description: >- - Your Serverside Tracking ID is the UA code for the Google Analytics - property you want to send server-side calls to. Leave it blank if you - don't have a server-side client library that you want to send data from. - Remember that data tracked from mobile integrations that are not bundled - in your app send data to Google Analytics server side, since Segment sends - data to them via our own servers. + **Important:** When creating your Google Analytics profile, you can choose + between **Classic** and **Universal** Analytics. After March 2013, new + profiles default to Universal, while earlier profiles are Classic. An easy + test: if you see `_gaq.push` in your code you're using Classic, so enable + this. settings: [] - - name: trackNamedPages - display_name: Track Named Pages + - name: nonInteraction + display_name: Add the non-interaction flag to all events type: BOOLEAN deprecated: false required: false description: >- - Tracks events to Google Analytics for [`page` - method](https://segment.io/libraries/analytics.js#page) calls that have a - `name` associated with them. E.g. `page('Signup')` translates to **Viewed - Signup Page**. + Adds a _noninteraction: true flag_ to every event tracked to Google + Analytics. If you're seeing unusually low bounce rates this will solve + that issue. settings: [] - - name: typeOverride - display_name: Send Segment "Product List" Events to GA as "Event" Hits - type: BOOLEAN + - name: optimize + display_name: Optimize Container ID + type: STRING deprecated: false required: false + string_validators: + regexp: '' description: >- - By default, Segment sends "Product List Viewed" and "Product List - Filtered" ecommerce events to GA as "pageview" hit types. Enable this - setting to instead map these two specced Segment track events to GA as - "event" hit types. + Integrate with Google Analytics Optimize plugin. Please enter your + Optimize Container ID settings: [] connection_modes: device: @@ -6967,23 +6966,23 @@ items: categories: - Raw Data settings: - - name: apiKey - display_name: API Key + - name: httpTrigger + display_name: HTTP Trigger type: STRING deprecated: false - required: false + required: true string_validators: regexp: '' - description: The api key used to identify request performed by Segment. + description: The URL to call the Google Cloud Function. settings: [] - - name: httpTrigger - display_name: HTTP Trigger + - name: apiKey + display_name: API Key type: STRING deprecated: false - required: true + required: false string_validators: regexp: '' - description: The URL to call the Google Cloud Function. + description: The api key used to identify request performed by Segment. settings: [] connection_modes: device: @@ -7158,15 +7157,6 @@ items: - Customer Success - Performance Monitoring settings: - - name: workspace - display_name: Workspace - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: The name of your workspace - settings: [] - name: apiKey display_name: API Key type: STRING @@ -7185,6 +7175,15 @@ items: regexp: '' description: The name of your environment settings: [] + - name: workspace + display_name: Workspace + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: The name of your workspace + settings: [] connection_modes: device: web: false @@ -7280,23 +7279,7 @@ items: url: 'https://cdn.filepicker.io/api/file/C4EffTBS1Sg6AeYE5d8j' categories: - Customer Success - settings: - - name: apiKey - display_name: API Key - type: STRING - deprecated: false - required: true - string_validators: - regexp: '^[a-z0-9]{40}$' - description: >- - You can find your API Key on the Help Scout API keys page by navigating - there from the [Help Scout - Dashboard](https://secure.helpscout.net/dashboard/). Go to the **user - icon** in the upper-right corner, and click **Your Profile** and then - **API Keys** and generate a new API key or grab your existing one. It - should be 40 characters long, and look something like this: - `19a568052a40916806975825946d1a0e39c721d6`. - settings: [] + settings: [] connection_modes: device: web: false @@ -7784,6 +7767,48 @@ items: - Customer Success - Email Marketing settings: + - name: apiKey + display_name: Enter your API Key + type: STRING + deprecated: false + required: false + string_validators: + regexp: '^[a-zA-Z0-9]{40}$' + description: >- + Note: this is **deprecated** . Intercom requires events hitting their + server-side api authenticated via OAuth. + settings: [] + - name: appId + display_name: App ID (required for analytics.js and mobile) + type: STRING + deprecated: false + required: false + string_validators: + regexp: '^([a-zA-Z0-9]{7,8}|[a-zA-Z0-9]{40})$' + description: >- + Note: this is **required** to send data to Intercom from your browser or + mobile app. You can find your App ID after activating your account under + the **Gear Menu > App Settings > API Keys** at + [Intercom.io](https://intercom.io). It should look something like this: + `9iefb489.` + settings: [] + - name: collectContext + display_name: Include Context with Identify Calls + type: BOOLEAN + deprecated: false + required: false + description: >- + Pass context data with Identify calls as Custom Attributes. Includes + device.type, device.manufacturer, device.model, os.name, os.version, + app.name, app.version + settings: [] + - name: isBulkAPIEnabled + display_name: isBulkAPIEnabled + type: BOOLEAN + deprecated: false + required: false + description: '' + settings: [] - name: mobileApiKey display_name: Enter your Mobile API Key type: STRING @@ -7830,48 +7855,6 @@ items: Intercom Inbox** setting for this to work._ The default value is `#IntercomDefaultWidget` settings: [] - - name: apiKey - display_name: Enter your API Key - type: STRING - deprecated: false - required: false - string_validators: - regexp: '^[a-zA-Z0-9]{40}$' - description: >- - Note: this is **deprecated** . Intercom requires events hitting their - server-side api authenticated via OAuth. - settings: [] - - name: appId - display_name: App ID (required for analytics.js and mobile) - type: STRING - deprecated: false - required: false - string_validators: - regexp: '^([a-zA-Z0-9]{7,8}|[a-zA-Z0-9]{40})$' - description: >- - Note: this is **required** to send data to Intercom from your browser or - mobile app. You can find your App ID after activating your account under - the **Gear Menu > App Settings > API Keys** at - [Intercom.io](https://intercom.io). It should look something like this: - `9iefb489.` - settings: [] - - name: collectContext - display_name: Include Context with Identify Calls - type: BOOLEAN - deprecated: false - required: false - description: >- - Pass context data with Identify calls as Custom Attributes. Includes - device.type, device.manufacturer, device.model, os.name, os.version, - app.name, app.version - settings: [] - - name: isBulkAPIEnabled - display_name: isBulkAPIEnabled - type: BOOLEAN - deprecated: false - required: false - description: '' - settings: [] connection_modes: device: web: true @@ -7953,6 +7936,27 @@ items: - SMS & Push Notifications - Email Marketing settings: + - name: trackAllPages + display_name: Track All Pages + type: BOOLEAN + deprecated: false + required: false + description: Send an event for every page or screen event. + settings: [] + - name: trackCategorizedPages + display_name: Track Categorized Pages + type: BOOLEAN + deprecated: false + required: false + description: Send an event for every page or screen with a category. + settings: [] + - name: trackNamedPages + display_name: Track Named Pages + type: BOOLEAN + deprecated: false + required: false + description: Send an event for every page or screen with a name. + settings: [] - name: apiKey display_name: API Key type: STRING @@ -7980,27 +7984,6 @@ items: Pages will be sent as "Loaded a Page". Screens will be sent as "Loaded a Screen". settings: [] - - name: trackAllPages - display_name: Track All Pages - type: BOOLEAN - deprecated: false - required: false - description: Send an event for every page or screen event. - settings: [] - - name: trackCategorizedPages - display_name: Track Categorized Pages - type: BOOLEAN - deprecated: false - required: false - description: Send an event for every page or screen with a category. - settings: [] - - name: trackNamedPages - display_name: Track Named Pages - type: BOOLEAN - deprecated: false - required: false - description: Send an event for every page or screen with a name. - settings: [] connection_modes: device: web: false @@ -8145,16 +8128,36 @@ items: - Raw Data - Performance Monitoring settings: - - name: initialPageview - display_name: Track an Initial Pageview + - name: trackNamedPages + display_name: Track Named Pages to Keen type: BOOLEAN deprecated: false required: false description: >- - This will send an intial 'Loaded a Page' event to Keen when the page is - loaded. We disable this by default since Keen is generally used for custom - event tracking, not pageviews. _Note: you must also have the **Send - Pageview Events** setting enabled for this to work._ + This will track events to Keen for [`page` + method](https://segment.io/libraries/analytics.js#page) calls that have a + `name` associated with them. For example `page('Signup')` would translate + to **Viewed Signup Page**. + settings: [] + - name: writeKey + display_name: Write Key + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + Your write key should be a minimum of 32 characters long and made up of + numbers and letters only. + settings: [] + - name: ipAddon + display_name: Geo IP Addon + type: BOOLEAN + deprecated: false + required: false + description: >- + Enable this to use Keen's data enrichment feature to add geographic + information based on IP. settings: [] - name: readKey display_name: Read Key @@ -8177,36 +8180,35 @@ items: Enable this to use the Keen IO's data enrichment feature for parsing referrer URLs into their source. settings: [] - - name: trackNamedPages - display_name: Track Named Pages to Keen + - name: trackAllPages + display_name: Track All Pages to Keen type: BOOLEAN deprecated: false required: false description: >- - This will track events to Keen for [`page` - method](https://segment.io/libraries/analytics.js#page) calls that have a - `name` associated with them. For example `page('Signup')` would translate - to **Viewed Signup Page**. + This will track **Loaded a Page** events to Keen for all [`page` + method](https://segment.io/libraries/analytics.js#page) calls. settings: [] - - name: writeKey - display_name: Write Key - type: STRING + - name: urlAddon + display_name: URL Parsing Addon + type: BOOLEAN deprecated: false - required: true - string_validators: - regexp: '' + required: false description: >- - Your write key should be a minimum of 32 characters long and made up of - numbers and letters only. + Enable this to use the Keen's data enrichment feature for parsing URLs + into its components for easier filtering. Note that `userAgent` is only + collected on Android, not on iOS. settings: [] - - name: ipAddon - display_name: Geo IP Addon + - name: initialPageview + display_name: Track an Initial Pageview type: BOOLEAN deprecated: false required: false - description: >- - Enable this to use Keen's data enrichment feature to add geographic - information based on IP. + description: >- + This will send an intial 'Loaded a Page' event to Keen when the page is + loaded. We disable this by default since Keen is generally used for custom + event tracking, not pageviews. _Note: you must also have the **Send + Pageview Events** setting enabled for this to work._ settings: [] - name: projectId display_name: Project ID @@ -8219,15 +8221,6 @@ items: Your project ID. It should be 24 characters long, and look something like this: `9181bcd23843312d87000000`. settings: [] - - name: trackAllPages - display_name: Track All Pages to Keen - type: BOOLEAN - deprecated: false - required: false - description: >- - This will track **Loaded a Page** events to Keen for all [`page` - method](https://segment.io/libraries/analytics.js#page) calls. - settings: [] - name: trackCategorizedPages display_name: Track Categorized Pages to Keen type: BOOLEAN @@ -8246,16 +8239,6 @@ items: required: false description: Enable this to use the Keen's data enrichment to parse UserAgent strings. settings: [] - - name: urlAddon - display_name: URL Parsing Addon - type: BOOLEAN - deprecated: false - required: false - description: >- - Enable this to use the Keen's data enrichment feature for parsing URLs - into its components for easier filtering. Note that `userAgent` is only - collected on Android, not on iOS. - settings: [] connection_modes: device: web: true @@ -8325,31 +8308,6 @@ items: categories: - Email Marketing settings: - - name: confirmOptin - display_name: Confirm Optin - type: BOOLEAN - deprecated: false - required: false - description: >- - This flag determines whether someone is sent an email with a confirmation - link before they are added to the list. Defaults to true (checked). This - should only be set to false or unchecked if you have already received - explicit permission from that person to add them to this list. - settings: [] - - name: enforceEmail - display_name: Enforce Email as Primary Identifier - type: BOOLEAN - deprecated: false - required: false - description: >- - If this option is enabled, we will never set $id field to your `userId` - when you call `.identify()` or `.track()`. Instead, we will only set a - custom attribute `id` and only set $email as the primary identifier with - your `traits.email` or `properties.email`. You should be careful when - enabling this option and understand its full implications. This should - only be enabled if you are experiencing an issue with duplicate profiles - being created inside Klaviyo. - settings: [] - name: listId display_name: List ID type: STRING @@ -8410,6 +8368,31 @@ items: regexp: '^[a-zA-Z0-9]{6}$' description: Your API key settings: [] + - name: confirmOptin + display_name: Confirm Optin + type: BOOLEAN + deprecated: false + required: false + description: >- + This flag determines whether someone is sent an email with a confirmation + link before they are added to the list. Defaults to true (checked). This + should only be set to false or unchecked if you have already received + explicit permission from that person to add them to this list. + settings: [] + - name: enforceEmail + display_name: Enforce Email as Primary Identifier + type: BOOLEAN + deprecated: false + required: false + description: >- + If this option is enabled, we will never set $id field to your `userId` + when you call `.identify()` or `.track()`. Instead, we will only set a + custom attribute `id` and only set $email as the primary identifier with + your `traits.email` or `properties.email`. You should be careful when + enabling this option and understand its full implications. This should + only be enabled if you are experiencing an issue with duplicate profiles + being created inside Klaviyo. + settings: [] connection_modes: device: web: true @@ -8541,37 +8524,6 @@ items: - Personalization - Email Marketing settings: - - name: appId - display_name: Leanplum Application Id - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - The application ID. To find yours, select your app in the navigation - column, and click Edit Apps. Under Keys, click Show. - settings: [] - - name: clientKey - display_name: Leanplum Client Key - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - Either the Production or Development keys, depending on which API call you - want to make. - settings: [] - - name: devMode - display_name: Use Leanplum in Development Mode - type: BOOLEAN - deprecated: false - required: false - description: >- - To use development mode, you must also input your Development key as the - client key. - settings: [] - name: gcmSenderId display_name: GCM Sender ID type: STRING @@ -8604,6 +8556,37 @@ items: use Leanplum's built in sender ID instead. If you have set your own GCM Sender ID and enable this setting, both IDs will be used. settings: [] + - name: appId + display_name: Leanplum Application Id + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + The application ID. To find yours, select your app in the navigation + column, and click Edit Apps. Under Keys, click Show. + settings: [] + - name: clientKey + display_name: Leanplum Client Key + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + Either the Production or Development keys, depending on which API call you + want to make. + settings: [] + - name: devMode + display_name: Use Leanplum in Development Mode + type: BOOLEAN + deprecated: false + required: false + description: >- + To use development mode, you must also input your Development key as the + client key. + settings: [] connection_modes: device: web: false @@ -8745,15 +8728,6 @@ items: categories: - Livechat settings: - - name: listen - display_name: Record live chat events. - type: BOOLEAN - deprecated: false - required: false - description: >- - Automatically send Live Chat message events, conversation starts and ends - to other tools you have enabled. - settings: [] - name: group display_name: Group type: STRING @@ -8777,6 +8751,15 @@ items: **Settings > Installation** page. Or, if you're just signing up, it's right in the setup guide! settings: [] + - name: listen + display_name: Record live chat events. + type: BOOLEAN + deprecated: false + required: false + description: >- + Automatically send Live Chat message events, conversation starts and ends + to other tools you have enabled. + settings: [] connection_modes: device: web: true @@ -8804,6 +8787,18 @@ items: - SMS & Push Notifications - Attribution settings: + - name: appKey + display_name: App Key + type: STRING + deprecated: false + required: true + string_validators: + regexp: >- + ^[a-z0-9]{23}-[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}$ + description: >- + You can find your App Key in your Localytics [Settings + page](http://www.localytics.com/). + settings: [] - name: dimensions display_name: Custom Dimensions type: MAP @@ -8867,18 +8862,6 @@ items: set for a user will be available across all of your apps in Localytics. If it's unchecked, we'll use the default SDK behavior of Application scoping. settings: [] - - name: appKey - display_name: App Key - type: STRING - deprecated: false - required: true - string_validators: - regexp: >- - ^[a-z0-9]{23}-[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}$ - description: >- - You can find your App Key in your Localytics [Settings - page](http://www.localytics.com/). - settings: [] connection_modes: device: web: true @@ -8941,15 +8924,6 @@ items: - Analytics - Personalization settings: - - name: blockload - display_name: Ensure Entity - type: BOOLEAN - deprecated: false - required: false - description: >- - If `true`, ensures entity returned from Lytics personalization api - reflects all events from current page view. - settings: [] - name: cid display_name: CID type: STRING @@ -8991,6 +8965,15 @@ items: `3daDLlqb4ANg7l0rf4cfl6xF`. This is only required if you are using the Lytics server side integration. settings: [] + - name: blockload + display_name: Ensure Entity + type: BOOLEAN + deprecated: false + required: false + description: >- + If `true`, ensures entity returned from Lytics personalization api + reflects all events from current page view. + settings: [] connection_modes: device: web: true @@ -9045,27 +9028,6 @@ items: categories: - Email Marketing settings: - - name: doubleOptIn - display_name: Double Opt-In - type: BOOLEAN - deprecated: false - required: false - description: >- - An optional flag to control whether a double opt-in confirmation message - is sent when subscribing new users. - settings: [] - - name: listId - display_name: Audience ID - type: STRING - deprecated: false - required: true - string_validators: - regexp: '^[a-z0-9]+$' - description: >- - You can find your Audience ID in your Mailchimp Settings pane under the - Audiences tab. Go to Manage Audiences > Settings and click on Audience - Name & Defaults. The Audience ID will be on the right side. - settings: [] - name: apiKey display_name: API Key type: STRING @@ -9089,6 +9051,27 @@ items: you're logged in. It's the 'us1' in 'https://us1.admin.mailchimp.com/lists/'. settings: [] + - name: doubleOptIn + display_name: Double Opt-In + type: BOOLEAN + deprecated: false + required: false + description: >- + An optional flag to control whether a double opt-in confirmation message + is sent when subscribing new users. + settings: [] + - name: listId + display_name: Audience ID + type: STRING + deprecated: false + required: true + string_validators: + regexp: '^[a-z0-9]+$' + description: >- + You can find your Audience ID in your Mailchimp Settings pane under the + Audiences tab. Go to Manage Audiences > Settings and click on Audience + Name & Defaults. The Audience ID will be on the right side. + settings: [] connection_modes: device: web: false @@ -9113,25 +9096,25 @@ items: categories: - Email Marketing settings: - - name: listId - display_name: List ID + - name: apiKey + display_name: Authentication key type: STRING deprecated: false required: true string_validators: regexp: '' - description: >- - Please provide the default list id for which contacts will be associated - with + description: Your Mailjet Authentication key settings: [] - - name: apiKey - display_name: Authentication key + - name: listId + display_name: List ID type: STRING deprecated: false required: true string_validators: regexp: '' - description: Your Mailjet Authentication key + description: >- + Please provide the default list id for which contacts will be associated + with settings: [] connection_modes: device: @@ -9251,6 +9234,15 @@ items: categories: - Email Marketing settings: + - name: clientId + display_name: Client ID + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: Your Marketo REST API Client ID. + settings: [] - name: clientSecret display_name: Client Secret type: STRING @@ -9271,6 +9263,15 @@ items: these fields to map your Segment track event names to Marketo Custom Activities. We'll only send events that you specify. settings: + - name: event + display_name: Segment Event Name + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: Enter the Segment Event Name. + settings: [] - name: marketoActivityId display_name: Marketo Custom Activity ID type: STRING @@ -9287,13 +9288,6 @@ items: required: false description: Map your Segment properties to the Marketo Activity Fields settings: - - name: primaryKey - display_name: Set as Primary Key - type: BOOLEAN - deprecated: false - required: false - description: Mark this property as the Primary field in Marketo. - settings: [] - name: segmentProperty display_name: Segment Property Name type: STRING @@ -9329,15 +9323,13 @@ items: - date description: Enter the Marketo Field type. settings: [] - - name: event - display_name: Segment Event Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: Enter the Segment Event Name. - settings: [] + - name: primaryKey + display_name: Set as Primary Key + type: BOOLEAN + deprecated: false + required: false + description: Mark this property as the Primary field in Marketo. + settings: [] - name: privateKey display_name: API Private Key type: STRING @@ -9427,15 +9419,6 @@ items: with Marketo's REST API. Page and Identify events will still be sent using our client side integration with the Marketo JavaScript SDK. settings: [] - - name: clientId - display_name: Client ID - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: Your Marketo REST API Client ID. - settings: [] connection_modes: device: web: true @@ -9491,6 +9474,35 @@ items: required: false description: Configure a conversion pixel settings: + - name: sParameters + display_name: S-Parameters + type: MAP + deprecated: false + required: false + map_validators: + regexp: '' + min: 0 + max: 10 + map_prefix: s + select_options: [] + description: >- + Map event properties to sParameters and we'll insert the value of that + property in the corresponding query parameter of the MediaMath Pixel. + Email [friends@segment.io](mailto:friends@segment.io) if you need help! + settings: [] + - name: event + display_name: Event Name + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + Mediamath allows you to track conversions. When you `analytics.track('my + event')` we will map that event to the `mt_id` and `mt_adid` that you + provide. We'll map other data like properties to s and v parameters + below. + settings: [] - name: mtId display_name: mt_id type: STRING @@ -9529,35 +9541,6 @@ items: property in the corresponding query parameter of the MediaMath Pixel. Email [friends@segment.io](mailto:friends@segment.io) if you need help! settings: [] - - name: sParameters - display_name: S-Parameters - type: MAP - deprecated: false - required: false - map_validators: - regexp: '' - min: 0 - max: 10 - map_prefix: s - select_options: [] - description: >- - Map event properties to sParameters and we'll insert the value of that - property in the corresponding query parameter of the MediaMath Pixel. - Email [friends@segment.io](mailto:friends@segment.io) if you need help! - settings: [] - - name: event - display_name: Event Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - Mediamath allows you to track conversions. When you `analytics.track('my - event')` we will map that event to the `mt_id` and `mt_adid` that you - provide. We'll map other data like properties to s and v parameters - below. - settings: [] connection_modes: device: web: true @@ -9619,6 +9602,51 @@ items: categories: - Analytics settings: + - name: persistence + display_name: Persistence Type + type: SELECT + deprecated: false + required: false + select_validators: + select_options: + - cookie + - localStorage + description: >- + This will allow the Mixpanel cookie to persist between different pages of + your application. + settings: [] + - name: propIncrements + display_name: Properties to increment in People + type: LIST + deprecated: false + required: false + description: >- + If you want to see and segment by event counts and last event date in + Mixpanel people, enable people, and then list the events you want to see + in People here. + settings: [] + - name: token + display_name: Token + type: STRING + deprecated: false + required: true + string_validators: + regexp: '^[a-f0-9]{32}$' + description: >- + You can find your token under **Account** in the upper-right of the + [Mixpanel interface](https://mixpanel.com). + settings: [] + - name: trackNamedPages + display_name: Track Named Pages to Mixpanel + type: BOOLEAN + deprecated: false + required: false + description: >- + This will track events to Mixpanel for [`page` + method](https://segment.io/libraries/analytics.js#page) calls that have a + `name` associated with them. For example `page('Signup')` would translate + to **Viewed Signup Page**. + settings: [] - name: consolidatedPageCalls display_name: Track All Pages to Mixpanel with a Consolidated Event Name type: BOOLEAN @@ -9631,33 +9659,38 @@ items: method](https://segment.io/libraries/ios#screen) calls. We enable this by default as it's how Mixpanel suggests sending these calls. settings: [] - - name: crossSubdomainCookie - display_name: Cross Subdomain Cookie - type: BOOLEAN + - name: groupIdentifierTraits + display_name: Group Identifier Traits + type: LIST deprecated: false required: false description: >- - This will allow the Mixpanel cookie to persist between different pages of - your application. + What trait Segment should use as your Mixpanel "group key" in group calls. + If, for example, you set this to be `company`, then "company" will be sent + as `group_key` and the value of `traits["company"]` will be sent as the + `group_id`. settings: [] - - name: legacySuperProperties - display_name: Legacy Super Properties - type: BOOLEAN + - name: peopleProperties + display_name: Traits to set as People Properties + type: LIST deprecated: false required: false description: >- - We used to add $ to mixpanel traits as super properties. This fixes that: - https://github.com/segmentio/integrations/pull/124/files + If you only want to set specific traits as People Properties in Mixpanel + People, you will need to: + + - Enable the "Use Mixpanel People" setting. + + - List the traits you want to see in People here. settings: [] - - name: people - display_name: Use Mixpanel People + - name: crossSubdomainCookie + display_name: Cross Subdomain Cookie type: BOOLEAN deprecated: false required: false description: >- - This will send all of your - [identify](https://segment.io/docs/methods/identify) calls to Mixpanel's - People feature. + This will allow the Mixpanel cookie to persist between different pages of + your application. settings: [] - name: setAllTraitsByDefault display_name: Automatically set all Traits as Super Properties and People Properties @@ -9680,17 +9713,6 @@ items: This value, if it's not blank, will be sent as `segment_source_name` to Mixpanel for every `event`/`page`/`screen` call. settings: [] - - name: trackCategorizedPages - display_name: Track Categorized Pages to Mixpanel - type: BOOLEAN - deprecated: false - required: false - description: >- - This will track events to Mixpanel for [`page` - method](https://segment.io/libraries/analytics.js#page) calls that have a - `category` associated with them. For example `page('Docs', 'Index')` would - translate to **Viewed Docs Index Page**. - settings: [] - name: trackAllPages display_name: Track All Pages to Mixpanel type: BOOLEAN @@ -9701,70 +9723,47 @@ items: method](https://segment.io/libraries/analytics.js#page) calls. We keep this disabled by default. settings: [] - - name: trackNamedPages - display_name: Track Named Pages to Mixpanel - type: BOOLEAN - deprecated: false - required: false - description: >- - This will track events to Mixpanel for [`page` - method](https://segment.io/libraries/analytics.js#page) calls that have a - `name` associated with them. For example `page('Signup')` would translate - to **Viewed Signup Page**. - settings: [] - - name: groupTraitsToSetOnce - display_name: Group Traits to Set Once - type: LIST - deprecated: false - required: false - description: Group traits to be set only once using Mixpanel's `$set_once` operator. - settings: [] - - name: peopleProperties - display_name: Traits to set as People Properties + - name: eventIncrements + display_name: Events to increment in People type: LIST deprecated: false required: false description: >- - If you only want to set specific traits as People Properties in Mixpanel - People, you will need to: + If you want to see and segment by event counts and last event date in + Mixpanel people, you will need to: - - Enable the "Use Mixpanel People" setting. + 1. Enable the "Use Mixpanel People" setting. - - List the traits you want to see in People here. + 2. List the events you want to see in People here. settings: [] - - name: persistence - display_name: Persistence Type - type: SELECT + - name: secureCookie + display_name: Secure Cookie + type: BOOLEAN deprecated: false required: false - select_validators: - select_options: - - cookie - - localStorage description: >- - This will allow the Mixpanel cookie to persist between different pages of - your application. + This will mark the Mixpanel cookie as secure, meaning it will only be + transmitted over https settings: [] - - name: propIncrements - display_name: Properties to increment in People + - name: superProperties + display_name: Properties to send as Super Properties type: LIST deprecated: false required: false description: >- - If you want to see and segment by event counts and last event date in - Mixpanel people, enable people, and then list the events you want to see - in People here. + If you want to see and segment by Super Properties in Mixpanel, then list + the properties you want to see as Super Properties here. settings: [] - - name: token - display_name: Token - type: STRING + - name: trackCategorizedPages + display_name: Track Categorized Pages to Mixpanel + type: BOOLEAN deprecated: false - required: true - string_validators: - regexp: '^[a-f0-9]{32}$' + required: false description: >- - You can find your token under **Account** in the upper-right of the - [Mixpanel interface](https://mixpanel.com). + This will track events to Mixpanel for [`page` + method](https://segment.io/libraries/analytics.js#page) calls that have a + `category` associated with them. For example `page('Docs', 'Index')` would + translate to **Viewed Docs Index Page**. settings: [] - name: apiKey display_name: API Secret @@ -9777,47 +9776,31 @@ items: You can find your API Secret under **Settings > Project Settings** in the upper right of the [Mixpanel interface](https://mixpanel.com). settings: [] - - name: eventIncrements - display_name: Events to increment in People - type: LIST - deprecated: false - required: false - description: >- - If you want to see and segment by event counts and last event date in - Mixpanel people, you will need to: - - 1. Enable the "Use Mixpanel People" setting. - - 2. List the events you want to see in People here. - settings: [] - - name: groupIdentifierTraits - display_name: Group Identifier Traits + - name: groupTraitsToSetOnce + display_name: Group Traits to Set Once type: LIST deprecated: false required: false - description: >- - What trait Segment should use as your Mixpanel "group key" in group calls. - If, for example, you set this to be `company`, then "company" will be sent - as `group_key` and the value of `traits["company"]` will be sent as the - `group_id`. + description: Group traits to be set only once using Mixpanel's `$set_once` operator. settings: [] - - name: secureCookie - display_name: Secure Cookie + - name: legacySuperProperties + display_name: Legacy Super Properties type: BOOLEAN deprecated: false required: false description: >- - This will mark the Mixpanel cookie as secure, meaning it will only be - transmitted over https + We used to add $ to mixpanel traits as super properties. This fixes that: + https://github.com/segmentio/integrations/pull/124/files settings: [] - - name: superProperties - display_name: Properties to send as Super Properties - type: LIST + - name: people + display_name: Use Mixpanel People + type: BOOLEAN deprecated: false required: false description: >- - If you want to see and segment by Super Properties in Mixpanel, then list - the properties you want to see as Super Properties here. + This will send all of your + [identify](https://segment.io/docs/methods/identify) calls to Mixpanel's + People feature. settings: [] connection_modes: device: @@ -10189,6 +10172,28 @@ items: categories: - Advertising settings: + - name: fbAppId + display_name: Facebook App ID + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + You can find your Facebook App ID in your Nanigans pixel; it's the xxx + part of the fb_app_id=xxx parameter. + settings: [] + - name: isMobile + display_name: Send Events to Mobile Endpoint + type: BOOLEAN + deprecated: false + required: false + description: >- + Select this option to send your data to Nanigans' mobile endpoint. Most + projects (even mobile ones) don't need this option enabled; if you're + unsure, check with your Nanigans contact. Note that if you set this + option, you must also set your Facebook App ID. + settings: [] - name: appId display_name: App ID type: STRING @@ -10254,28 +10259,6 @@ items: Our Nanigans integration allows you to map the event names you track in Segment to Nanigans events of name and type. settings: [] - - name: fbAppId - display_name: Facebook App ID - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - You can find your Facebook App ID in your Nanigans pixel; it's the xxx - part of the fb_app_id=xxx parameter. - settings: [] - - name: isMobile - display_name: Send Events to Mobile Endpoint - type: BOOLEAN - deprecated: false - required: false - description: >- - Select this option to send your data to Nanigans' mobile endpoint. Most - projects (even mobile ones) don't need this option enabled; if you're - unsure, check with your Nanigans contact. Note that if you set this - option, you must also set your Facebook App ID. - settings: [] connection_modes: device: web: true @@ -10300,18 +10283,6 @@ items: categories: - Customer Success settings: - - name: authKey - display_name: Auth Key - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - To retrieve your Auth Key first navigate to Sources > List Sources. Select - your source, and then click the 'Select View' dropdown, and select 'View - Settings'. - settings: [] - name: endpointRegion display_name: Endpoint Region type: SELECT @@ -10338,6 +10309,18 @@ items: your source, and then click the 'Select View' dropdown, and select 'View Settings'. settings: [] + - name: authKey + display_name: Auth Key + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + To retrieve your Auth Key first navigate to Sources > List Sources. Select + your source, and then click the 'Select View' dropdown, and select 'View + Settings'. + settings: [] connection_modes: device: web: false @@ -10409,6 +10392,34 @@ items: - Analytics - Performance Monitoring settings: + - name: insertKey + display_name: Insert Key + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: Put your New Relic Insert Key + settings: [] + - name: sendContext + display_name: Send Device Context + type: BOOLEAN + deprecated: false + required: false + description: >- + If you enable this setting, we will flatten all your `context` fields + delimited by a period and send it to New Relic. This is recommended as + getting rich device context is useful inside New Relic. + settings: [] + - name: sendIds + display_name: Send UserId and AnonymousId + type: BOOLEAN + deprecated: false + required: false + description: >- + If you want to send your Segment `userId` and `anonymousId`, enabling this + option will do so. + settings: [] - name: accountId display_name: Account ID type: STRING @@ -10439,34 +10450,6 @@ items: Enter your Segment `.track()` event names on the left and their respective eventType (table name) in New Relic. settings: [] - - name: insertKey - display_name: Insert Key - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: Put your New Relic Insert Key - settings: [] - - name: sendContext - display_name: Send Device Context - type: BOOLEAN - deprecated: false - required: false - description: >- - If you enable this setting, we will flatten all your `context` fields - delimited by a period and send it to New Relic. This is recommended as - getting rich device context is useful inside New Relic. - settings: [] - - name: sendIds - display_name: Send UserId and AnonymousId - type: BOOLEAN - deprecated: false - required: false - description: >- - If you want to send your Segment `userId` and `anonymousId`, enabling this - option will do so. - settings: [] connection_modes: device: web: false @@ -10490,17 +10473,6 @@ items: - Video - Analytics settings: - - name: nolDevDebug - display_name: Enable Debug Mode - type: BOOLEAN - deprecated: false - required: false - description: >- - Check this setting if you would like to activate the Debug flag. Once the - flag is active, it logs each API call made and the data passed. - - Note: DO NOT: activate the Debug flag in a production environment. - settings: [] - name: adAssetIdPropertyName display_name: Custom Ad Asset Id Property Name type: STRING @@ -10513,6 +10485,29 @@ items: you would like to set up a custom property mapping for ad asset ids please indicate the name of the property here. settings: [] + - name: contentLengthPropertyName + display_name: Content Length Property Name + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + Segment will map our `total_length` property to Nielsen's `length` field + by default. If you would like to set up a custom property mapping please + indicate the name of the property here. + settings: [] + - name: nolDevDebug + display_name: Enable Debug Mode + type: BOOLEAN + deprecated: false + required: false + description: >- + Check this setting if you would like to activate the Debug flag. Once the + flag is active, it logs each API call made and the data passed. + + Note: DO NOT: activate the Debug flag in a production environment. + settings: [] - name: appId display_name: AppID type: STRING @@ -10537,6 +10532,18 @@ items: credit to another brand or sub-brand then please indicate which property value from your payload you want to use to override `clientId`. settings: [] + - name: contentAssetIdPropertyName + display_name: Custom Content Asset Id Property Name + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + Segment will map our `asset_id` property to Nielsen's `assetId` field. If + you would like to set up a custom property mapping for content asset ids + please indicate the name of the property here. + settings: [] - name: instanceName display_name: Instance Name type: STRING @@ -10572,30 +10579,6 @@ items: credit to another brand or sub-brand then please indicate which property value from your payload you want to use to override `subbrand`. settings: [] - - name: contentAssetIdPropertyName - display_name: Custom Content Asset Id Property Name - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - Segment will map our `asset_id` property to Nielsen's `assetId` field. If - you would like to set up a custom property mapping for content asset ids - please indicate the name of the property here. - settings: [] - - name: contentLengthPropertyName - display_name: Content Length Property Name - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - Segment will map our `total_length` property to Nielsen's `length` field - by default. If you would like to set up a custom property mapping please - indicate the name of the property here. - settings: [] connection_modes: device: web: true @@ -10659,26 +10642,26 @@ items: categories: - Email Marketing settings: - - name: clientApiKey - display_name: Javascript API Key + - name: apiKey + display_name: Server-side API Key type: STRING deprecated: false required: true string_validators: regexp: '' description: >- - Your Javascript API Key can be found in your Nudgespot dashboard under + Your Server-side API Key can be found in your Nudgespot dashboard under Settings settings: [] - - name: apiKey - display_name: Server-side API Key + - name: clientApiKey + display_name: Javascript API Key type: STRING deprecated: false required: true string_validators: regexp: '' description: >- - Your Server-side API Key can be found in your Nudgespot dashboard under + Your Javascript API Key can be found in your Nudgespot dashboard under Settings settings: [] connection_modes: @@ -10706,22 +10689,6 @@ items: categories: - Livechat settings: - - name: listen - display_name: Record live chat events. - type: BOOLEAN - deprecated: false - required: false - description: >- - Automatically send Live Chat message events, conversation starts and ends - to other tools you have enabled. - settings: [] - - name: page - display_name: Log pageviews to the Olark chat console - type: BOOLEAN - deprecated: false - required: false - description: Log pageviews to the Olark chat console - settings: [] - name: siteId display_name: Site ID type: STRING @@ -10768,6 +10735,22 @@ items: required: false description: Configures whether the chat box should be inlined or not settings: [] + - name: listen + display_name: Record live chat events. + type: BOOLEAN + deprecated: false + required: false + description: >- + Automatically send Live Chat message events, conversation starts and ends + to other tools you have enabled. + settings: [] + - name: page + display_name: Log pageviews to the Olark chat console + type: BOOLEAN + deprecated: false + required: false + description: Log pageviews to the Olark chat console + settings: [] connection_modes: device: web: true @@ -10824,6 +10807,62 @@ items: - Personalization - Feature Flagging settings: + - name: useUserId + display_name: Use User ID + type: BOOLEAN + deprecated: false + required: false + description: >- + Enable this if you want the server side integration to use User ID instead + of anonymous ID in your identify calls + settings: [] + - name: cacheExp + display_name: Cache Exp + type: NUMBER + deprecated: false + required: false + number_validators: + min: 300 + max: 0 + description: >- + To optimize the server side integration, we will cache the fetched + *Datafile* that you have provided for this amount of time (in seconds) in + Redis. Since the datafile should not change unless you modified the + conditions or variation rules of your experiments, it is advised to have a + minimum floor of 300 seconds (5 minutes). + settings: [] + - name: datafileUrl + display_name: Datafile URL + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + In order to use Optimizely X _server side_, you must enter the entire URL + for your datafile. It should look something like + `https://cdn.optimizely.com/json/9218021209.json` + settings: [] + - name: nonInteraction + display_name: >- + Specifies the Experiment Viewed as a non-interaction event for Google + Analytics + type: BOOLEAN + deprecated: false + required: false + description: Send `Experiment Viewed` as a non-interaction event + settings: [] + - name: trackKnownUsers + display_name: Only Track Known Users + type: BOOLEAN + deprecated: false + required: false + description: >- + Optimizely does not alias known and unknown users. By default, Segment + will only send the `anonymousId` to Optimizely. Enable this to only send + the `userId` to Optimizely. *Important*: This setting only applies if you + are bundling this integration for mobile sources. + settings: [] - name: accountId display_name: Account ID type: STRING @@ -10836,6 +10875,13 @@ items: **Account ID** from your Optimizely account. You can find this ID by visiting https://app.optimizely.com/v2/accountsettings/account/plan settings: [] + - name: fallbackToAnonymousId + display_name: Fall Back To Anonymous Id + type: BOOLEAN + deprecated: false + required: false + description: Optionally fall back to `anonymousId` when `userId` is not present. + settings: [] - name: listen display_name: >- Sends the experiment and variation information as properties on a track @@ -10868,69 +10914,6 @@ items: activateExperiment:False]; ``` settings: [] - - name: nonInteraction - display_name: >- - Specifies the Experiment Viewed as a non-interaction event for Google - Analytics - type: BOOLEAN - deprecated: false - required: false - description: Send `Experiment Viewed` as a non-interaction event - settings: [] - - name: trackKnownUsers - display_name: Only Track Known Users - type: BOOLEAN - deprecated: false - required: false - description: >- - Optimizely does not alias known and unknown users. By default, Segment - will only send the `anonymousId` to Optimizely. Enable this to only send - the `userId` to Optimizely. *Important*: This setting only applies if you - are bundling this integration for mobile sources. - settings: [] - - name: useUserId - display_name: Use User ID - type: BOOLEAN - deprecated: false - required: false - description: >- - Enable this if you want the server side integration to use User ID instead - of anonymous ID in your identify calls - settings: [] - - name: cacheExp - display_name: Cache Exp - type: NUMBER - deprecated: false - required: false - number_validators: - min: 300 - max: 0 - description: >- - To optimize the server side integration, we will cache the fetched - *Datafile* that you have provided for this amount of time (in seconds) in - Redis. Since the datafile should not change unless you modified the - conditions or variation rules of your experiments, it is advised to have a - minimum floor of 300 seconds (5 minutes). - settings: [] - - name: datafileUrl - display_name: Datafile URL - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - In order to use Optimizely X _server side_, you must enter the entire URL - for your datafile. It should look something like - `https://cdn.optimizely.com/json/9218021209.json` - settings: [] - - name: fallbackToAnonymousId - display_name: Fall Back To Anonymous Id - type: BOOLEAN - deprecated: false - required: false - description: Optionally fall back to `anonymousId` when `userId` is not present. - settings: [] - name: useOptimizely3 display_name: Use Optimizely 3 type: BOOLEAN @@ -10974,6 +10957,15 @@ items: - Personalization - Feature Flagging settings: + - name: sendRevenueOnlyForOrderCompleted + display_name: Send `properties.revenue` only on `Order Completed` events (recommended) + type: BOOLEAN + deprecated: false + required: false + description: >- + This is Optimizely expected behavior. This will send revenue only on + `Order Completed` events. + settings: [] - name: trackCategorizedPages display_name: Track Categorized Pages type: BOOLEAN @@ -11024,15 +11016,6 @@ items: Specifies the `Experiment Viewed` as a non-interaction event for Google Analytics settings: [] - - name: sendRevenueOnlyForOrderCompleted - display_name: Send `properties.revenue` only on `Order Completed` events (recommended) - type: BOOLEAN - deprecated: false - required: false - description: >- - This is Optimizely expected behavior. This will send revenue only on - `Order Completed` events. - settings: [] connection_modes: device: web: true @@ -11057,24 +11040,6 @@ items: categories: - Email Marketing settings: - - name: lookupFieldName - display_name: Prospect Lookup Field ID - type: STRING - deprecated: false - required: false - string_validators: - regexp: ^\S*$ - description: >- - Specify the Field ID in Pardot to use as a lookup to identify unique - prospects with. The Field Id cannot be `id` or `fid` as these are reserved - keywords in the Pardot API. Needs to be case sensitive. **Important:** - this option is only applicable if you are using version 4 of the Pardot - API. If you are using V4 of the API but plan on passing a `SalesforceFID` - or `PardotID` as a property of an `identify` event, you can also ignore - this setting. Please see our - [documentation](https://segment.com/docs/integrations/pardot/) for more - details. - settings: [] - name: lookupFieldUseUserId display_name: Use User ID as Lookup Value type: BOOLEAN @@ -11165,6 +11130,24 @@ items: regexp: '' description: Your account email. settings: [] + - name: lookupFieldName + display_name: Prospect Lookup Field ID + type: STRING + deprecated: false + required: false + string_validators: + regexp: ^\S*$ + description: >- + Specify the Field ID in Pardot to use as a lookup to identify unique + prospects with. The Field Id cannot be `id` or `fid` as these are reserved + keywords in the Pardot API. Needs to be case sensitive. **Important:** + this option is only applicable if you are using version 4 of the Pardot + API. If you are using V4 of the API but plan on passing a `SalesforceFID` + or `PardotID` as a property of an `identify` event, you can also ignore + this setting. Please see our + [documentation](https://segment.com/docs/integrations/pardot/) for more + details. + settings: [] connection_modes: device: web: true @@ -11190,6 +11173,25 @@ items: - Video - Analytics settings: + - name: inPixelMetadata + display_name: Enable In-Pixel Metadata + type: BOOLEAN + deprecated: false + required: false + description: "If you enable In-Pixel Metadata, Segment will map page properties to Parsely's `metadata` format, allowing you to eschew their out-of-band metadata crawling. This has tradeoffs and is not the recommended approach—\_please be sure to check with your Parsely rep prior to enabling this setting. Requires Dynamic Tracking to be set to `true`." + settings: [] + - name: trackEvents + display_name: Track Events + type: BOOLEAN + deprecated: false + required: false + description: >- + Parsely can track custom events, but does not surface these events in + their Dashboard or UI. If you'd like your Segment `track()` calls to flow + to Parsely's Raw Data Pipeline product, enable this setting. [See + here](https://www.parsely.com/help/integration/dynamic/) for more + information. + settings: [] - name: apiKey display_name: Domain type: STRING @@ -11206,39 +11208,20 @@ items: type: MAP deprecated: false required: false - description: >- - Map your custom `.page()` property names on the left and semantic Parsely - properties on the right. - settings: [] - - name: dynamicTracking - display_name: Enable Dynamic Tracking - type: BOOLEAN - deprecated: false - required: false - description: >- - If you enable Dynamic Tracking, Segment will disable Parsely autotracking - and instead explicitly proxy your `page()` calls to Parsely. This feature - is recommended if you want Segment to pass additional pageview metadata - collected with your `.page()` properties through to Parsely. [See - here](https://www.parsely.com/help/integration/dynamic/) for more - information. - settings: [] - - name: inPixelMetadata - display_name: Enable In-Pixel Metadata - type: BOOLEAN - deprecated: false - required: false - description: "If you enable In-Pixel Metadata, Segment will map page properties to Parsely's `metadata` format, allowing you to eschew their out-of-band metadata crawling. This has tradeoffs and is not the recommended approach—\_please be sure to check with your Parsely rep prior to enabling this setting. Requires Dynamic Tracking to be set to `true`." + description: >- + Map your custom `.page()` property names on the left and semantic Parsely + properties on the right. settings: [] - - name: trackEvents - display_name: Track Events + - name: dynamicTracking + display_name: Enable Dynamic Tracking type: BOOLEAN deprecated: false required: false description: >- - Parsely can track custom events, but does not surface these events in - their Dashboard or UI. If you'd like your Segment `track()` calls to flow - to Parsely's Raw Data Pipeline product, enable this setting. [See + If you enable Dynamic Tracking, Segment will disable Parsely autotracking + and instead explicitly proxy your `page()` calls to Parsely. This feature + is recommended if you want Segment to pass additional pageview metadata + collected with your `.page()` properties through to Parsely. [See here](https://www.parsely.com/help/integration/dynamic/) for more information. settings: [] @@ -11684,6 +11667,17 @@ items: categories: - Customer Success settings: + - name: apiKey + display_name: Tenant Token + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + Add your Planhat Tenant Token, which you can find in Planhat under App + Settings > API Access + settings: [] - name: subdomain display_name: subdomain type: SELECT @@ -11696,17 +11690,6 @@ items: - analytics description: Your Planhat API subdomain. settings: [] - - name: apiKey - display_name: Tenant Token - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - Add your Planhat Tenant Token, which you can find in Planhat under App - Settings > API Access - settings: [] connection_modes: device: web: false @@ -11932,15 +11915,6 @@ items: - Advertising - Analytics settings: - - name: advertise - display_name: Advertise - type: BOOLEAN - deprecated: false - required: false - description: >- - By default data will be sent to Quantcast Measure, enable this option to - send to Quantcast Advertise - settings: [] - name: advertiseProducts display_name: Advertise Products type: BOOLEAN @@ -11973,6 +11947,15 @@ items: You can find your P-Code in the right-hand column under **Your P-Code** after you login to [Quantcast](https://www.quantcast.com/). settings: [] + - name: advertise + display_name: Advertise + type: BOOLEAN + deprecated: false + required: false + description: >- + By default data will be sent to Quantcast Measure, enable this option to + send to Quantcast Advertise + settings: [] connection_modes: device: web: true @@ -11998,6 +11981,15 @@ items: categories: - Advertising settings: + - name: clientId + display_name: ClientID + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: Your QuanticMind account manager will provide your ClientID. + settings: [] - name: domain display_name: Domain type: STRING @@ -12036,15 +12028,6 @@ items: but instead to a conversion through the conversion's `orderId`. Only use if instructed specifically by your InsideVault account manager. settings: [] - - name: clientId - display_name: ClientID - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: Your QuanticMind account manager will provide your ClientID. - settings: [] connection_modes: device: web: true @@ -12312,6 +12295,88 @@ items: categories: - Email Marketing settings: + - name: pod + display_name: Pod + type: SELECT + deprecated: false + required: true + select_validators: + select_options: + - '2' + - '5' + - '8' + - '9' + description: >- + The pod that hosts your Responsys account. Simply check your url during + your login screen. This is required to any requests to your account. The + default is `interact2`. + settings: [] + - name: folderName + display_name: Folder Name + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + Please enter the default Folder Name that holds the provided Profile List + and Profile Extension Table. + settings: [] + - name: listName + display_name: Profile List Name + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + Please enter the default Profile List. Make sure that the Profile List is + inside the provided Folder Name. + settings: [] + - name: optOutEmailTrait + display_name: Email Permission Status Trait Mapping + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + Please enter the trait you would like to be mapped to + `EMAIL_PEERMISSION_STATUS_`. This will allow you to track users who opt in + and out of marketing communications in your apps and websites. The value + of this trait MUST be a boolean. + settings: [] + - name: optOutMobileTrait + display_name: Mobile Permission Status Trait Mapping + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + Please enter the trait youw would like to be mapped to + MOBILE_PERMISSION_STATUS_. This will allow you to track users who opt in + and out of marketing communications in your apps and websites. The value + of this trait MUST be a boolean. + settings: [] + - name: optin + display_name: Set Default Permission Setting to OPTIN + type: BOOLEAN + deprecated: false + required: false + description: >- + Choose whether records added to Profile Lists should be `'OPTIN'` rather + than the default `'OPTOUT'` + settings: [] + - name: password + display_name: Password + type: PASSWORD + deprecated: false + required: true + string_validators: + regexp: '' + description: Please enter your account's password. + settings: [] - name: events display_name: Events type: MIXED @@ -12359,6 +12424,15 @@ items: required: false description: Map your Segment properties to Responsys Columns settings: + - name: columns + display_name: Segment Property Name + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: Enter the Segment Property Name. + settings: [] - name: fieldName display_name: Responsys Column Name type: STRING @@ -12392,15 +12466,6 @@ items: required: false description: Mark this property as a Primary Key in Responsys. settings: [] - - name: columns - display_name: Segment Property Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: Enter the Segment Property Name. - settings: [] - name: useSegmentMsgId display_name: Use Segment Message ID type: BOOLEAN @@ -12452,88 +12517,6 @@ items: regexp: '' description: Please enter your account's username. settings: [] - - name: pod - display_name: Pod - type: SELECT - deprecated: false - required: true - select_validators: - select_options: - - '2' - - '5' - - '8' - - '9' - description: >- - The pod that hosts your Responsys account. Simply check your url during - your login screen. This is required to any requests to your account. The - default is `interact2`. - settings: [] - - name: folderName - display_name: Folder Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - Please enter the default Folder Name that holds the provided Profile List - and Profile Extension Table. - settings: [] - - name: listName - display_name: Profile List Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: >- - Please enter the default Profile List. Make sure that the Profile List is - inside the provided Folder Name. - settings: [] - - name: optOutEmailTrait - display_name: Email Permission Status Trait Mapping - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - Please enter the trait you would like to be mapped to - `EMAIL_PEERMISSION_STATUS_`. This will allow you to track users who opt in - and out of marketing communications in your apps and websites. The value - of this trait MUST be a boolean. - settings: [] - - name: optOutMobileTrait - display_name: Mobile Permission Status Trait Mapping - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - Please enter the trait youw would like to be mapped to - MOBILE_PERMISSION_STATUS_. This will allow you to track users who opt in - and out of marketing communications in your apps and websites. The value - of this trait MUST be a boolean. - settings: [] - - name: optin - display_name: Set Default Permission Setting to OPTIN - type: BOOLEAN - deprecated: false - required: false - description: >- - Choose whether records added to Profile Lists should be `'OPTIN'` rather - than the default `'OPTOUT'` - settings: [] - - name: password - display_name: Password - type: PASSWORD - deprecated: false - required: true - string_validators: - regexp: '' - description: Please enter your account's password. - settings: [] connection_modes: device: web: false @@ -12595,6 +12578,15 @@ items: categories: - Performance Monitoring settings: + - name: accessToken + display_name: Access Token + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: Your Rollbar access token + settings: [] - name: captureUncaught display_name: Capture uncaught exceptions type: BOOLEAN @@ -12602,15 +12594,6 @@ items: required: false description: Record uncaught exceptions from `window.onerror`. settings: [] - - name: captureUnhandledRejections - display_name: Capture Unhandled Rejections - type: BOOLEAN - deprecated: false - required: false - description: >- - Catch and report unhandled Promise rejections, such as Promise failures - that do not have a corresponding `.then(null, function(e) {})` handler. - settings: [] - name: codeVersion display_name: Code Version type: STRING @@ -12622,44 +12605,32 @@ items: If you have enabled Source Maps, this is a version string, such as a version number or git sha settings: [] - - name: guessUncaughtFrames - display_name: Guess Uncaught Frames - type: BOOLEAN + - name: environment + display_name: Environment + type: STRING deprecated: false required: false - description: >- - When this option is enabled, Rollbar will guess which frames the error was - thrown from when the browser does not provide line and column numbers. + string_validators: + regexp: '' + description: The environment the code is running in. settings: [] - - name: sourceMapEnabled - display_name: Enable Source Map + - name: captureUnhandledRejections + display_name: Capture Unhandled Rejections type: BOOLEAN deprecated: false required: false description: >- - When this option is enabled, we'll let Rollbar know you have source maps - enabled. Be sure to implement either Option A or B in [these - instructions](https://rollbar.com/docs/source-maps/#step-2-provide-your-source-map) - to set up source maps with Rollbar as well as fill out Code Version in you - Rollbar Integration settings in your Segment source. - settings: [] - - name: accessToken - display_name: Access Token - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: Your Rollbar access token + Catch and report unhandled Promise rejections, such as Promise failures + that do not have a corresponding `.then(null, function(e) {})` handler. settings: [] - - name: environment - display_name: Environment - type: STRING + - name: guessUncaughtFrames + display_name: Guess Uncaught Frames + type: BOOLEAN deprecated: false required: false - string_validators: - regexp: '' - description: The environment the code is running in. + description: >- + When this option is enabled, Rollbar will guess which frames the error was + thrown from when the browser does not provide line and column numbers. settings: [] - name: identify display_name: Include custom user data with Rollbar's error tracking @@ -12680,6 +12651,18 @@ items: browser plugin that is throwing errors, you can add them here and Rollbar will ignore exceptions matching those messages. settings: [] + - name: sourceMapEnabled + display_name: Enable Source Map + type: BOOLEAN + deprecated: false + required: false + description: >- + When this option is enabled, we'll let Rollbar know you have source maps + enabled. Be sure to implement either Option A or B in [these + instructions](https://rollbar.com/docs/source-maps/#step-2-provide-your-source-map) + to set up source maps with Rollbar as well as fill out Code Version in you + Rollbar Integration settings in your Segment source. + settings: [] connection_modes: device: web: true @@ -12788,6 +12771,19 @@ items: - CRM - Email Marketing settings: + - name: defaultReminderTime + display_name: Default Reminder Time + type: STRING + deprecated: false + required: false + string_validators: + regexp: '' + description: >- + **Required with Reminder Template**. The time frame you will want the + email to send. **YOU MUST ENTER A NUMERICAL TIME AND FIELD MINUTES, HOURS, + WEEKS** For example: `60 minutes`, `24 hours`, `2 weeks`. Segment will + handle passing in the `+` increment. + settings: [] - name: optoutValue display_name: Optout Status type: SELECT @@ -12854,19 +12850,6 @@ items: **Required with Reminder Time**. The **public name** of your template which you first must configure in Sailthru's UI. settings: [] - - name: defaultReminderTime - display_name: Default Reminder Time - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: >- - **Required with Reminder Template**. The time frame you will want the - email to send. **YOU MUST ENTER A NUMERICAL TIME AND FIELD MINUTES, HOURS, - WEEKS** For example: `60 minutes`, `24 hours`, `2 weeks`. Segment will - handle passing in the `+` increment. - settings: [] connection_modes: device: web: false @@ -12884,7 +12867,7 @@ items: activity and automation, lead collection, communication and deal management. url: connections/destinations/catalog/salescamp-crm - status: PUBLIC_BETA + status: PUBLIC logo: url: >- https://public-segment-devcenter-production.s3.amazonaws.com/75254814-e6a4-46b5-a7ee-febe3fe4a2b1.svg @@ -12897,6 +12880,15 @@ items: - Email Marketing - Marketing Automation settings: + - name: apiKey + display_name: API Key + type: STRING + deprecated: false + required: true + string_validators: + regexp: '^.{8,}$' + description: Login to www.salescamp.app and go to setting - > integration -> segment + settings: [] - name: events display_name: 'Events ' type: LIST @@ -12907,15 +12899,6 @@ items: recommend you to add event in below list that important for your sales process (ex. "Demo Request Placed", "Order Placed" etc.) settings: [] - - name: apiKey - display_name: API Key - type: STRING - deprecated: false - required: true - string_validators: - regexp: '^.{8,}$' - description: Login to www.salescamp.app and go to setting - > integration -> segment - settings: [] connection_modes: device: web: false @@ -12941,17 +12924,46 @@ items: categories: - CRM settings: - - name: securityToken - display_name: Security Token - type: STRING + - name: alwaysEnabled + display_name: Always Enabled + type: BOOLEAN + deprecated: false + required: false + description: >- + Enable this to send *every* event to Salesforce, bypassing the need to set + `'Salesforce': true` in your track calls. + settings: [] + - name: billing + display_name: Send Address as Billing Address + type: BOOLEAN + deprecated: false + required: false + description: >- + This will map address traits in your group calls as Billing Address for + your Account Objects. + settings: [] + - name: password + display_name: Account Password + type: PASSWORD deprecated: false required: true string_validators: - regexp: '^[a-zA-Z0-9]{24,25}$' + regexp: '' description: >- - You can find your Security Token under **Setup > Personal Setup > My - Personal Information > [Reset My Security - Token](https://na15.salesforce.com/_ui/system/security/ResetApiTokenEdit)**. + Salesforce requires we store a Salesforce user's password to access their + SOAP API. We recommend you add a new System Administrator user profile to + your Salesforce account, so that you don't have to tell us your actual + password. You can do that under **Setup > Administration Setup > Users > + New User**. + settings: [] + - name: sandbox + display_name: Sandbox + type: BOOLEAN + deprecated: false + required: false + description: >- + Enable this setting if the Salesforce instance you are integrating with is + a Sandbox environment. settings: [] - name: actions display_name: Actions @@ -12972,15 +12984,6 @@ items: Conditions](https://segment.com/docs/legal/first-access-beta-preview/). By using this feature, you agree to these terms. settings: [] - - name: billing - display_name: Send Address as Billing Address - type: BOOLEAN - deprecated: false - required: false - description: >- - This will map address traits in your group calls as Billing Address for - your Account Objects. - settings: [] - name: leadLookupFields display_name: Custom Lead Lookup Fields type: MAP @@ -12999,37 +13002,17 @@ items: with another field **you need to explicitly define that as a row in this setting**. settings: [] - - name: password - display_name: Account Password - type: PASSWORD + - name: securityToken + display_name: Security Token + type: STRING deprecated: false required: true string_validators: - regexp: '' - description: >- - Salesforce requires we store a Salesforce user's password to access their - SOAP API. We recommend you add a new System Administrator user profile to - your Salesforce account, so that you don't have to tell us your actual - password. You can do that under **Setup > Administration Setup > Users > - New User**. - settings: [] - - name: sandbox - display_name: Sandbox - type: BOOLEAN - deprecated: false - required: false - description: >- - Enable this setting if the Salesforce instance you are integrating with is - a Sandbox environment. - settings: [] - - name: alwaysEnabled - display_name: Always Enabled - type: BOOLEAN - deprecated: false - required: false + regexp: '^[a-zA-Z0-9]{24,25}$' description: >- - Enable this to send *every* event to Salesforce, bypassing the need to set - `'Salesforce': true` in your track calls. + You can find your Security Token under **Setup > Personal Setup > My + Personal Information > [Reset My Security + Token](https://na15.salesforce.com/_ui/system/security/ResetApiTokenEdit)**. settings: [] - name: shipping display_name: Send Address as Shipping Address @@ -13149,6 +13132,15 @@ items: Cloud Data Extensions. We'll only send SMC the conversion events you specify. settings: + - name: event + display_name: Event Name + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: The name of the event you'd like to send to Salesforce Marketing Cloud. + settings: [] - name: externalKey display_name: External Key type: STRING @@ -13183,15 +13175,6 @@ items: SMC as the value for *Primary Key* for this event called 'Uuid'. *This will override the above Primary Key field.* settings: [] - - name: event - display_name: Event Name - type: STRING - deprecated: false - required: true - string_validators: - regexp: '' - description: The name of the event you'd like to send to Salesforce Marketing Cloud. - settings: [] - name: identifyExtensionExternalKey display_name: Identify Data Extension External Key type: STRING @@ -13292,33 +13275,33 @@ items: - Surveys - Customer Success settings: - - name: apiKey - display_name: API Key + - name: token + display_name: Token type: STRING deprecated: false required: false string_validators: regexp: '' description: >- - To connect SatisMeter with Segment first create a project in your - Satismeter dashboard and then navigate to Settings / Install and click the - green button 'Enable with Segment'. You can also manually copy Settings / - Integrations / API keys / Write key and use it as the api key. The api key + This is a legacy setting, and now known as the apiKey. To connect + SatisMeter with Segment first create a project in your Satismeter + dashboard and then navigate to Settings / Install and click the green + button 'Enable with Segment'. You can also manually copy Settings / + Integrations / API keys / Write key and use it as the token. The tokeny should look like urC2RuBlt7utBCzu. settings: [] - - name: token - display_name: Token + - name: apiKey + display_name: API Key type: STRING deprecated: false required: false string_validators: regexp: '' description: >- - This is a legacy setting, and now known as the apiKey. To connect - SatisMeter with Segment first create a project in your Satismeter - dashboard and then navigate to Settings / Install and click the green - button 'Enable with Segment'. You can also manually copy Settings / - Integrations / API keys / Write key and use it as the token. The tokeny + To connect SatisMeter with Segment first create a project in your + Satismeter dashboard and then navigate to Settings / Install and click the + green button 'Enable with Segment'. You can also manually copy Settings / + Integrations / API keys / Write key and use it as the api key. The api key should look like urC2RuBlt7utBCzu. settings: [] connection_modes: @@ -13460,17 +13443,26 @@ items: categories: - Performance Monitoring settings: - - name: includePaths - display_name: Include Paths + - name: config + display_name: Public DSN + type: STRING + deprecated: false + required: true + string_validators: + regexp: '' + description: >- + You can find your Public DSN by going to Sentry and clicking Projects & + Teams > Any Project > Settings > Client Keys (DSN). This should be the + PUBLIC DSN since it does not contain a secret. + settings: [] + - name: ignoreUrls + display_name: Ignore Urls type: LIST deprecated: false required: false description: >- - An array of regex patterns to indicate which urls are a part of your app - in the stack trace. All other frames will appear collapsed inside Sentry - to make it easier to discern between frames that happened in your code vs - other code. It’d be suggested to add the current page url, and the host - for your CDN. + The inverse of whitelistUrls and similar to ignoreErrors, but will ignore + errors from whole urls matching a regex pattern or an exact string. settings: [] - name: maxMessageLength display_name: Maximum Message Length @@ -13484,24 +13476,6 @@ items: By default, Raven does not truncate messages. If you need to truncate characters for whatever reason, you may set this to limit the length. settings: [] - - name: logger - display_name: Logger - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: The name of the logger used by Sentry. - settings: [] - - name: release - display_name: Release - type: STRING - deprecated: false - required: false - string_validators: - regexp: '' - description: Track the version of your application in Sentry. - settings: [] - name: serverName display_name: Server Name type: STRING @@ -13526,18 +13500,6 @@ items: only if you are inlining code inside