diff --git a/src/_data/catalog/destination_categories.yml b/src/_data/catalog/destination_categories.yml index 0676a78b49..fb4c063be2 100644 --- a/src/_data/catalog/destination_categories.yml +++ b/src/_data/catalog/destination_categories.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# destination categories last updated 2023-10-10 +# destination categories last updated 2023-10-12 items: - display_name: A/B Testing slug: a-b-testing diff --git a/src/_data/catalog/destinations.yml b/src/_data/catalog/destinations.yml index 1d5b8a38e5..1d6fb5b81b 100644 --- a/src/_data/catalog/destinations.yml +++ b/src/_data/catalog/destinations.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# destination data last updated 2023-10-10 +# destination data last updated 2023-10-12 items: - id: 637e8d185e2dec264895ea89 display_name: 1Flow @@ -12676,7 +12676,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: 2bSsqZboLLYg5pBHid9WJZ + - id: t9SCc3xALWZBf8Es2TDjK9 sortOrder: 0 fieldKey: external_id label: External User ID @@ -12690,7 +12690,7 @@ items: choices: null dynamic: false allowNull: false - - id: pUTMjAd4aztB1hdivbTNq + - id: dPsXmeH3wqxgfvGLbiT4Tt sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -12704,7 +12704,7 @@ items: choices: null dynamic: false allowNull: false - - id: dNsvKs3wsg2b6N8B9qkwMi + - id: fKLjXAUioS8d6Lz9yHWzu1 sortOrder: 2 fieldKey: braze_id label: Braze User Identifier @@ -12718,7 +12718,7 @@ items: choices: null dynamic: false allowNull: true - - id: 6jeMnM1ZTcyKXo9gHnKjf5 + - id: stgHBwjcZD56Ftwad6Q2bs sortOrder: 3 fieldKey: country label: Country @@ -12732,7 +12732,7 @@ items: choices: null dynamic: false allowNull: true - - id: cVzkL6sESnM3xyXLGWERtk + - id: wuNQNhybcgLrSpy6V4ycDF sortOrder: 4 fieldKey: current_location label: Current Location @@ -12749,7 +12749,7 @@ items: choices: null dynamic: false allowNull: true - - id: dfznvyWrYEjUGMwLZARACL + - id: mHcxzzjsbAGUiRkMLvKLNG sortOrder: 5 fieldKey: date_of_first_session label: Date of First Session @@ -12761,7 +12761,7 @@ items: choices: null dynamic: false allowNull: true - - id: 6yuPetEWYavvt2BafZgkbf + - id: 8DcpniBdDevP8WzC2JTJ8b sortOrder: 6 fieldKey: date_of_last_session label: Date of Last Session @@ -12773,7 +12773,7 @@ items: choices: null dynamic: false allowNull: true - - id: aST3mWj2BKSrgiEromLKD7 + - id: 5ZmrERSLmGG3cqRpNzmE9Z sortOrder: 7 fieldKey: dob label: Date of Birth @@ -12785,7 +12785,7 @@ items: choices: null dynamic: false allowNull: true - - id: uXXHDCAtoKRwDEpdZEvVtC + - id: qYgtmgDo4wWMjQpEnhrrZC sortOrder: 8 fieldKey: email label: Email @@ -12799,7 +12799,7 @@ items: choices: null dynamic: false allowNull: true - - id: 58MVfEvRBJc6xHHAFBWdan + - id: 47cZKmaWVHCj3FvMjgGsag sortOrder: 9 fieldKey: email_subscribe label: Email Subscribe @@ -12814,7 +12814,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4tBHK38oNYvdUWdEZNbU1 + - id: 6WLxaPpFM58swst8U8r9Lw sortOrder: 10 fieldKey: email_open_tracking_disabled label: Email Open Tracking Disabled @@ -12828,7 +12828,7 @@ items: choices: null dynamic: false allowNull: false - - id: 2TWVYph7SjHmyQUUsYPey3 + - id: uaMKfapt8MkGzyNQfLTrCs sortOrder: 11 fieldKey: email_click_tracking_disabled label: Email Click Tracking Disabled @@ -12842,7 +12842,7 @@ items: choices: null dynamic: false allowNull: false - - id: oS285bCjxECHyeM68ZLXzm + - id: oM7ujxdfgVXYrXWoSizoX7 sortOrder: 12 fieldKey: facebook label: Facebook Attribution Data @@ -12856,7 +12856,7 @@ items: choices: null dynamic: false allowNull: false - - id: hWZ5G3MQxhoSU92cta6XuV + - id: qwfL9PyHvsYBm7tXq41KYk sortOrder: 13 fieldKey: first_name label: First Name @@ -12870,7 +12870,7 @@ items: choices: null dynamic: false allowNull: true - - id: 4EAG6U62Dc2kAhx7UJb2Gz + - id: jxG4QW9FKLYdf1GM5LrPp3 sortOrder: 14 fieldKey: gender label: Gender @@ -12886,7 +12886,7 @@ items: choices: null dynamic: false allowNull: true - - id: phtG4ikS5XScR9fidTjHX9 + - id: ijMyF3StJeVNtwEumuyoBt sortOrder: 15 fieldKey: home_city label: Home City @@ -12900,7 +12900,7 @@ items: choices: null dynamic: false allowNull: true - - id: dq9PmuVCWokyr42FWP4iRh + - id: aRnpCrmsJeWGbPSFNkYmKK sortOrder: 16 fieldKey: image_url label: Image URL @@ -12914,7 +12914,7 @@ items: choices: null dynamic: false allowNull: true - - id: 9BdG8ZqZeNeDiXo7Y9NcXx + - id: qjFbDd6gSGi165672QUfdF sortOrder: 17 fieldKey: language label: Language @@ -12926,7 +12926,7 @@ items: choices: null dynamic: false allowNull: true - - id: 34MJwhmcjNugPcNRzohL2j + - id: s6jfoe5yf7ff4aYs6mwqF8 sortOrder: 18 fieldKey: last_name label: Last Name @@ -12940,7 +12940,7 @@ items: choices: null dynamic: false allowNull: false - - id: avZZd5FymtVumhP5CLqx2F + - id: cZrP5RdxwvWC8WhhTbjPTo sortOrder: 19 fieldKey: marked_email_as_spam_at label: Marked Email as Spam At @@ -12952,7 +12952,7 @@ items: choices: null dynamic: false allowNull: true - - id: h46NpE6GnAPXcW4C5K3Psp + - id: t6PVQdepmERTAMsoAK7wjZ sortOrder: 20 fieldKey: phone label: Phone Number @@ -12966,7 +12966,7 @@ items: choices: null dynamic: false allowNull: true - - id: cu2m9Uvh8Lnofeb7pvJW6V + - id: 8hPgzEcHSNWRZkTARciSTY sortOrder: 21 fieldKey: push_subscribe label: Push Subscribe @@ -12981,7 +12981,7 @@ items: choices: null dynamic: false allowNull: false - - id: 3ewTGZKHAZQQobMRMHgNhN + - id: nxnuC7tu4LoRv9e64L46Ym sortOrder: 22 fieldKey: push_tokens label: Push Tokens @@ -12998,7 +12998,7 @@ items: choices: null dynamic: false allowNull: false - - id: tpPU51RgTq4ei3XQoRtB9r + - id: wDDgpKtikzhfG7r9vLvcj1 sortOrder: 23 fieldKey: time_zone label: Time zone @@ -13013,7 +13013,7 @@ items: choices: null dynamic: false allowNull: false - - id: oU5ipCTCGYGYzfQc1dRoYS + - id: cHCJW78gQqET9pxqoTtqjC sortOrder: 24 fieldKey: twitter label: Twitter Attribution Data @@ -13028,7 +13028,7 @@ items: choices: null dynamic: false allowNull: false - - id: jSyaUha3ZZLG96Ga3KnTHq + - id: 4fPjGC9WChZe1djf3XPrXG sortOrder: 25 fieldKey: custom_attributes label: Custom Attributes @@ -13042,7 +13042,7 @@ items: choices: null dynamic: false allowNull: false - - id: 2fKcoTYuKurKDxCuK7d4Qj + - id: o6vAzJ27qeY7qEjQ3SHvky sortOrder: 26 fieldKey: _update_existing_only label: Update Existing Only @@ -13065,7 +13065,7 @@ items: hidden: false defaultTrigger: type = "track" and event != "Order Completed" fields: - - id: 54Gfaef9YqgxyeHQfNTnsg + - id: ikZu3QVPvUPmVykGE82tWS sortOrder: 0 fieldKey: external_id label: External User ID @@ -13079,7 +13079,7 @@ items: choices: null dynamic: false allowNull: false - - id: JLcvqAJWtMbHEFA93cvnq + - id: m2kCv32eKA5Ha3L1KTUk53 sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -13093,7 +13093,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4uRXXbgrkETb2iEFnRXTWR + - id: 3yfH95GE3BBPcjLFQVr5mX sortOrder: 2 fieldKey: braze_id label: Braze User Identifier @@ -13107,7 +13107,7 @@ items: choices: null dynamic: false allowNull: true - - id: wPs11q6UEDDMdhPS1h6hvT + - id: cKFRRjtSyiHFDg3Y8RU3Nf sortOrder: 3 fieldKey: name label: Event Name @@ -13121,7 +13121,7 @@ items: choices: null dynamic: false allowNull: false - - id: 6k6TQkDNHtJpuVsh9fxej + - id: ndiJTprd2QJ5CJJaKk7UA8 sortOrder: 4 fieldKey: time label: Time @@ -13135,7 +13135,7 @@ items: choices: null dynamic: false allowNull: false - - id: cPkAKLeSNjdCefWgFP9jax + - id: iFvfC61ukb7uDPSgTn8Jjf sortOrder: 5 fieldKey: properties label: Event Properties @@ -13149,7 +13149,7 @@ items: choices: null dynamic: false allowNull: false - - id: stUju6WAND1ZgcZDxEsdsf + - id: r4tXN39NPuX4UWb9mCXScK sortOrder: 6 fieldKey: _update_existing_only label: Update Existing Only @@ -13164,7 +13164,7 @@ items: choices: null dynamic: false allowNull: false - - id: 56Ljq5EjrA7VSPhTdtuX88 + - id: 7cgyRdzSXeBhNvsCL3Pvto sortOrder: 7 fieldKey: enable_batching label: Batch Data to Braze @@ -13201,7 +13201,7 @@ items: hidden: false defaultTrigger: null fields: - - id: scjEtY59TD2KY81ihjYyBB + - id: qUpbZje8zWGY1ybKK4haDt sortOrder: 0 fieldKey: external_id label: External ID @@ -13213,7 +13213,7 @@ items: choices: null dynamic: false allowNull: false - - id: ef733HVEX97Su2ZGQkWCmY + - id: aHYQDV9BqZcwhsZ2hcvpF5 sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -13235,7 +13235,7 @@ items: hidden: false defaultTrigger: event = "Order Completed" fields: - - id: iVoZBMUoiChjUwPtTWgFf3 + - id: 6peeteD72WPab967K6Ngfa sortOrder: 0 fieldKey: external_id label: External User ID @@ -13249,7 +13249,7 @@ items: choices: null dynamic: false allowNull: false - - id: a5buUWTLkvmZ8Tq86dWHem + - id: 28ei7hgXqXf7CPnMj338BA sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -13263,7 +13263,7 @@ items: choices: null dynamic: false allowNull: false - - id: qvuG5ATnUncDxXq5nbchgs + - id: jx7UJco4tnv6ViNNffupNa sortOrder: 2 fieldKey: braze_id label: Braze User Identifier @@ -13277,7 +13277,7 @@ items: choices: null dynamic: false allowNull: true - - id: ucFXTLaww5tZbRUZcDEJ5q + - id: dz549cPk8jWo8SNaMcUw4C sortOrder: 3 fieldKey: time label: Time @@ -13291,7 +13291,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5V5teWT8APH7LNATiuyWHU + - id: s8duNk4NPmzpodfkTzRd2T sortOrder: 4 fieldKey: products label: Products @@ -13305,7 +13305,7 @@ items: choices: null dynamic: false allowNull: false - - id: fz3pSc6XvZVEbnYvwNN6CY + - id: r1iPmEtXsGhKKWuvECqTq3 sortOrder: 5 fieldKey: properties label: Event Properties @@ -13319,7 +13319,7 @@ items: choices: null dynamic: false allowNull: false - - id: uUjaW5619iY3y7ERhx2vk7 + - id: o2qj7Cp9sqeE6BECQESH9p sortOrder: 6 fieldKey: _update_existing_only label: Update Existing Only @@ -13344,7 +13344,7 @@ items: hidden: false defaultTrigger: event = "Create Alias" fields: - - id: hp4QBpCRVsJnYomLNHzkMr + - id: oxYh76t1WkkSFhXkzfgcU1 sortOrder: 0 fieldKey: external_id label: External ID @@ -13356,7 +13356,7 @@ items: choices: null dynamic: false allowNull: true - - id: tdvBx9AWBUoY2xR4XbcvuJ + - id: 9Z6g3Scf8NFtM2Fp1Z1ZUx sortOrder: 1 fieldKey: alias_name label: Alias Name @@ -13368,7 +13368,7 @@ items: choices: null dynamic: false allowNull: false - - id: q3mGxYe3WNu11MhyVCw7T1 + - id: 9GGzbUeCxmcqskN6ktDVrX sortOrder: 2 fieldKey: alias_label label: Alias Label @@ -13572,7 +13572,7 @@ items: sortOrder: 3 fieldKey: cohort_id label: Cohort ID - type: HIDDEN + type: STRING description: The Cohort Identifier placeholder: '' defaultValue: @@ -13586,7 +13586,7 @@ items: sortOrder: 4 fieldKey: cohort_name label: Cohort Name - type: HIDDEN + type: STRING description: The name of Cohort placeholder: '' defaultValue: @@ -13650,7 +13650,7 @@ items: sortOrder: 8 fieldKey: time label: Time - type: HIDDEN + type: STRING description: When the event occurred. placeholder: '' defaultValue: @@ -17125,7 +17125,7 @@ items: sortOrder: 0 fieldKey: segmentId label: Segment User ID - type: HIDDEN + type: STRING description: Segment User ID value placeholder: '' defaultValue: @@ -17139,7 +17139,7 @@ items: sortOrder: 1 fieldKey: anonymousId label: Segment Anonymous ID - type: HIDDEN + type: STRING description: Segment Anonymous ID value placeholder: '' defaultValue: @@ -17350,7 +17350,7 @@ items: sortOrder: 0 fieldKey: segmentId label: Segment User ID - type: HIDDEN + type: STRING description: Segment User ID value placeholder: '' defaultValue: @@ -17364,7 +17364,7 @@ items: sortOrder: 1 fieldKey: anonymousId label: Segment Anonymous ID - type: HIDDEN + type: STRING description: Segment Anonymous ID value placeholder: '' defaultValue: @@ -17432,7 +17432,7 @@ items: sortOrder: 0 fieldKey: segmentId label: Segment User ID - type: HIDDEN + type: STRING description: Segment User ID value placeholder: '' defaultValue: @@ -17446,7 +17446,7 @@ items: sortOrder: 1 fieldKey: anonymousId label: Segment Anonymous ID - type: HIDDEN + type: STRING description: Segment Anonymous ID value placeholder: '' defaultValue: @@ -17498,7 +17498,7 @@ items: sortOrder: 0 fieldKey: segmentId label: Segment User ID - type: HIDDEN + type: STRING description: Segment User ID value placeholder: '' defaultValue: @@ -17512,7 +17512,7 @@ items: sortOrder: 1 fieldKey: anonymousId label: Segment Anonymous ID - type: HIDDEN + type: STRING description: Segment Anonymous ID value placeholder: '' defaultValue: @@ -17615,7 +17615,7 @@ items: sortOrder: 0 fieldKey: segmentId label: Segment User ID - type: HIDDEN + type: STRING description: Segment User ID value placeholder: '' defaultValue: @@ -17629,7 +17629,7 @@ items: sortOrder: 1 fieldKey: anonymousId label: Segment Anonymous ID - type: HIDDEN + type: STRING description: Segment Anonymous ID value placeholder: '' defaultValue: @@ -17695,7 +17695,7 @@ items: sortOrder: 0 fieldKey: segmentId label: Segment User ID - type: HIDDEN + type: STRING description: Segment User ID value placeholder: '' defaultValue: @@ -17709,7 +17709,7 @@ items: sortOrder: 1 fieldKey: anonymousId label: Segment Anonymous ID - type: HIDDEN + type: STRING description: Segment Anonymous ID value placeholder: '' defaultValue: @@ -17766,7 +17766,7 @@ items: sortOrder: 0 fieldKey: segmentId label: Segment User ID - type: HIDDEN + type: STRING description: Segment User ID value placeholder: '' defaultValue: @@ -17780,7 +17780,7 @@ items: sortOrder: 1 fieldKey: anonymousId label: Segment Anonymous ID - type: HIDDEN + type: STRING description: Segment Anonymous ID value placeholder: '' defaultValue: @@ -38433,7 +38433,7 @@ items: sortOrder: 1 fieldKey: operation_type label: Operation Type - type: HIDDEN + type: STRING description: >- Describes the nature of the operation being performed. Only supported values are 'new' and 'updated'. @@ -41760,10 +41760,10 @@ items: methods: track: true identify: true - group: false + group: true alias: false screen: false - page: true + page: false platforms: browser: true mobile: true @@ -49367,7 +49367,7 @@ items: sortOrder: 2 fieldKey: email label: User Email - type: HIDDEN + type: STRING description: The user's email address to send to LinkedIn. placeholder: '' defaultValue: @@ -49381,7 +49381,7 @@ items: sortOrder: 3 fieldKey: google_advertising_id label: User Google Advertising ID - type: HIDDEN + type: STRING description: The user's Google Advertising ID to send to LinkedIn. placeholder: '' defaultValue: @@ -49395,7 +49395,7 @@ items: sortOrder: 4 fieldKey: source_segment_id label: LinkedIn Source Segment ID - type: HIDDEN + type: STRING description: >- A Segment-specific key associated with the LinkedIn DMP Segment. This is the lookup key Segment uses to fetch the DMP Segment from LinkedIn's @@ -49427,7 +49427,7 @@ items: sortOrder: 6 fieldKey: event_name label: Event Name - type: HIDDEN + type: STRING description: The name of the current Segment event. placeholder: '' defaultValue: @@ -49936,7 +49936,7 @@ items: sortOrder: 4 fieldKey: anonymous_id label: Segment Anonymous ID - type: HIDDEN + type: STRING description: Segment Anonymous ID. placeholder: '' defaultValue: @@ -50687,6 +50687,261 @@ items: properties: '@path': $.properties trigger: type = "track" +- id: 63360a5fe290ca3fdfad4a68 + display_name: Loops (Actions) + name: Loops (Actions) + slug: loops-actions + hidden: false + endpoints: + - US + regions: + - us-west-2 + - eu-west-1 + url: connections/destinations/catalog/loops-actions + previous_names: + - Loops (Actions) + website: https://loops.so + status: PUBLIC_BETA + categories: + - Email Marketing + - Marketing Automation + logo: + url: https://cdn.filepicker.io/api/file/oiEy8wQZTWmI0ZCBZDdr + mark: + url: https://cdn.filepicker.io/api/file/ITaW6g6gRiOqhCbx4o7Y + methods: + track: true + identify: true + group: true + alias: true + screen: false + page: true + platforms: + browser: true + mobile: false + server: true + warehouse: true + components: [] + browserUnbundlingSupported: false + browserUnbundlingPublic: false + replay: false + connection_modes: + device: + web: false + mobile: false + server: false + cloud: + web: true + mobile: false + server: true + settings: + - name: apiKey + type: string + defaultValue: '' + description: Your Loops API Key + required: true + label: API Key + actions: + - id: unHYcGwymGuZGnXskSGFQt + name: Create or update a contact + slug: createOrUpdateContact + description: Create or update a contact in Loops + platform: CLOUD + hidden: false + defaultTrigger: type = "identify" + fields: + - id: rxYWaVqEV45dnwgbCP6U22 + sortOrder: 0 + fieldKey: createdAt + label: Contact Created Date + type: DATETIME + description: Date the contact was created. + placeholder: '' + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: cMqYhUx4pfeG5zDT8XNsqJ + sortOrder: 1 + fieldKey: customAttributes + label: Custom Contact Attributes + type: OBJECT + description: Attributes maintained by your team. + placeholder: '' + defaultValue: + '@path': $.traits + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: tGqBCH6mUzbM9HVjqAnbcQ + sortOrder: 2 + fieldKey: email + label: Contact Email + type: STRING + description: >- + Email address for the contact. This is required when creating new + contacts. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.traits.email + then: + '@path': $.traits.email + else: + '@path': $.email + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: fhCmdnagiJso31geuyQPpf + sortOrder: 3 + fieldKey: firstName + label: First Name + type: STRING + description: The contact's given name. + placeholder: '' + defaultValue: + '@path': $.traits.firstName + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: nFvYJauyj9yMHuUqVdsCYM + sortOrder: 4 + fieldKey: lastName + label: Last Name + type: STRING + description: The contact's surname. + placeholder: '' + defaultValue: + '@path': $.traits.lastName + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: m5ysat4jv9qeViVB6rCbJS + sortOrder: 5 + fieldKey: source + label: Source + type: STRING + description: The contact's source. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.traits.source + then: + '@path': $.traits.source + else: Segment + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: xo9AuQ4NWnB34GraEyySUn + sortOrder: 6 + fieldKey: subscribed + label: Subscribed + type: BOOLEAN + description: Whether the contact is subscribed to email. + placeholder: '' + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 4aC8HEz9iHMo5F4Tg5ajc5 + sortOrder: 7 + fieldKey: userGroup + label: User Group + type: STRING + description: The contact's user group. + placeholder: '' + defaultValue: + '@path': $.traits.userGroup + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: rF1Hb6AdDRdJwzTHwAv2oJ + sortOrder: 8 + fieldKey: userId + label: User ID + type: STRING + description: User ID for the contact. + placeholder: '' + defaultValue: + '@path': $.userId + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: vaKecAu4KpBs6R7sHQKTNY + name: Send Event + slug: sendEvent + description: Send an event for a contact in Loops + platform: CLOUD + hidden: false + defaultTrigger: type = "track" + fields: + - id: otkhdgsXZkG1tLtSTJgNV1 + sortOrder: 0 + fieldKey: email + label: Contact Email + type: STRING + description: Email address for the contact. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.context.traits.email + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 29NeoqAxu4wMed82Y383f2 + sortOrder: 1 + fieldKey: eventName + label: Event Name + type: STRING + description: Name of the event. + placeholder: '' + defaultValue: + '@path': $.event + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: pDJDuKmBEYytcXy7qojDh3 + sortOrder: 2 + fieldKey: userId + label: User ID + type: STRING + description: User ID for the contact. + placeholder: '' + defaultValue: + '@path': $.userId + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + presets: [] - id: 5fac1adf1aa5eb4a01168950 display_name: Lou name: Lou @@ -56545,7 +56800,7 @@ items: sortOrder: 7 fieldKey: uuid label: Unique ID - type: HIDDEN + type: STRING description: Unique ID for the event placeholder: '' defaultValue: @@ -57090,7 +57345,7 @@ items: sortOrder: 0 fieldKey: action label: Action name - type: HIDDEN + type: STRING description: Indicates which action was triggered placeholder: '' defaultValue: track @@ -57117,7 +57372,7 @@ items: sortOrder: 2 fieldKey: user_id label: User ID - type: HIDDEN + type: STRING description: The identifier of the user who performed the event placeholder: '' defaultValue: @@ -57131,7 +57386,7 @@ items: sortOrder: 3 fieldKey: anonymous_id label: Anonymous ID - type: HIDDEN + type: STRING description: Anonymous ID of the user placeholder: '' defaultValue: @@ -57179,7 +57434,7 @@ items: sortOrder: 6 fieldKey: timestamp label: Event timestamp - type: HIDDEN + type: STRING description: The time the event occured in UTC placeholder: '' defaultValue: @@ -57229,7 +57484,7 @@ items: sortOrder: 0 fieldKey: action label: Action name - type: HIDDEN + type: STRING description: Indicates which action was triggered placeholder: '' defaultValue: group @@ -57242,7 +57497,7 @@ items: sortOrder: 1 fieldKey: user_id label: User ID - type: HIDDEN + type: STRING description: The identifier of the user placeholder: '' defaultValue: @@ -57256,7 +57511,7 @@ items: sortOrder: 2 fieldKey: anonymous_id label: Anonymous ID - type: HIDDEN + type: STRING description: Anonymous ID of the user placeholder: '' defaultValue: @@ -57270,7 +57525,7 @@ items: sortOrder: 3 fieldKey: group_id label: Group ID - type: HIDDEN + type: STRING description: ID of the group placeholder: '' defaultValue: @@ -57298,7 +57553,7 @@ items: sortOrder: 5 fieldKey: timestamp label: Event timestamp - type: HIDDEN + type: STRING description: The time the event occured in UTC placeholder: '' defaultValue: @@ -57348,7 +57603,7 @@ items: sortOrder: 0 fieldKey: action label: Action name - type: HIDDEN + type: STRING description: Indicates which action was triggered placeholder: '' defaultValue: identify @@ -57361,7 +57616,7 @@ items: sortOrder: 1 fieldKey: user_id label: User ID - type: HIDDEN + type: STRING description: The identifier of the user placeholder: '' defaultValue: @@ -57375,7 +57630,7 @@ items: sortOrder: 2 fieldKey: anonymous_id label: Anonymous ID - type: HIDDEN + type: STRING description: Anonymous ID of the user placeholder: '' defaultValue: @@ -57403,7 +57658,7 @@ items: sortOrder: 4 fieldKey: timestamp label: Event timestamp - type: HIDDEN + type: STRING description: The time the event occured in UTC placeholder: '' defaultValue: @@ -59465,6 +59720,12 @@ items: mobile: false server: false settings: + - name: mapMessageIdToEventId + type: boolean + defaultValue: false + description: If this setting is enabled, event_id will be set to message_id. + required: false + label: Use messageId as event_id - name: pinterestCustomProperties type: array defaultValue: [] @@ -73542,7 +73803,7 @@ items: browser: true mobile: false server: false - warehouse: true + warehouse: false components: [] browserUnbundlingSupported: false browserUnbundlingPublic: false @@ -76174,7 +76435,7 @@ items: sortOrder: 0 fieldKey: email label: User Email - type: HIDDEN + type: STRING description: The user's email address to send to TikTok. placeholder: '' defaultValue: @@ -76188,7 +76449,7 @@ items: sortOrder: 1 fieldKey: advertising_id label: User Advertising ID - type: HIDDEN + type: STRING description: >- The user's mobile advertising ID to send to TikTok. This could be a GAID, IDFA, or AAID @@ -76232,7 +76493,7 @@ items: sortOrder: 4 fieldKey: event_name label: Event Name - type: HIDDEN + type: STRING description: The name of the current Segment event. placeholder: '' defaultValue: @@ -76259,7 +76520,7 @@ items: sortOrder: 6 fieldKey: external_audience_id label: External Audience ID - type: HIDDEN + type: STRING description: The Audience ID in TikTok's DB. placeholder: '' defaultValue: @@ -76365,7 +76626,7 @@ items: sortOrder: 2 fieldKey: email label: User Email - type: HIDDEN + type: STRING description: The user's email address to send to TikTok. placeholder: '' defaultValue: @@ -76379,7 +76640,7 @@ items: sortOrder: 3 fieldKey: advertising_id label: User Advertising ID - type: HIDDEN + type: STRING description: >- The user's mobile advertising ID to send to TikTok. This could be a GAID, IDFA, or AAID @@ -76423,7 +76684,7 @@ items: sortOrder: 6 fieldKey: event_name label: Event Name - type: HIDDEN + type: STRING description: The name of the current Segment event. placeholder: '' defaultValue: @@ -76458,7 +76719,7 @@ items: sortOrder: 0 fieldKey: email label: User Email - type: HIDDEN + type: STRING description: The user's email address to send to TikTok. placeholder: '' defaultValue: @@ -76472,7 +76733,7 @@ items: sortOrder: 1 fieldKey: advertising_id label: User Advertising ID - type: HIDDEN + type: STRING description: >- The user's mobile advertising ID to send to TikTok. This could be a GAID, IDFA, or AAID @@ -76516,7 +76777,7 @@ items: sortOrder: 4 fieldKey: event_name label: Event Name - type: HIDDEN + type: STRING description: The name of the current Segment event. placeholder: '' defaultValue: @@ -76543,7 +76804,7 @@ items: sortOrder: 6 fieldKey: external_audience_id label: External Audience ID - type: HIDDEN + type: STRING description: The Audience ID in TikTok's DB. placeholder: '' defaultValue: @@ -76592,7 +76853,7 @@ items: sortOrder: 2 fieldKey: email label: User Email - type: HIDDEN + type: STRING description: The user's email address to send to TikTok. placeholder: '' defaultValue: @@ -76606,7 +76867,7 @@ items: sortOrder: 3 fieldKey: advertising_id label: User Advertising ID - type: HIDDEN + type: STRING description: >- The user's mobile advertising ID to send to TikTok. This could be a GAID, IDFA, or AAID @@ -76650,7 +76911,7 @@ items: sortOrder: 6 fieldKey: event_name label: Event Name - type: HIDDEN + type: STRING description: The name of the current Segment event. placeholder: '' defaultValue: @@ -78223,6 +78484,638 @@ items: event_channel: in_store event: SubmitForm trigger: type = "track" and event = "Form Submitted" +- id: 64c1690a9f08c84a420aba78 + display_name: TikTok Pixel + name: TikTok Pixel + slug: tiktok-pixel + hidden: true + endpoints: + - US + regions: + - us-west-2 + - eu-west-1 + url: connections/destinations/catalog/tiktok-pixel + previous_names: + - TikTok Pixel + website: https://ads.tiktok.com/marketing_api/docs?id=1739583652957185 + status: PUBLIC_BETA + categories: + - Advertising + logo: + url: https://cdn.filepicker.io/api/file/eopgr24sQ0R0SRVoIMkO + mark: + url: https://cdn.filepicker.io/api/file/FldFCNWTS83L7R7EE59G + methods: + track: true + identify: true + group: true + alias: true + screen: false + page: true + platforms: + browser: true + mobile: false + server: false + warehouse: false + components: [] + browserUnbundlingSupported: false + browserUnbundlingPublic: false + replay: false + connection_modes: + device: + web: false + mobile: false + server: false + cloud: + web: true + mobile: false + server: false + settings: + - name: pixelCode + type: string + defaultValue: '' + description: >- + Your TikTok Pixel ID. Please see TikTok's [Pixel + documentation](https://ads.tiktok.com/marketing_api/docs?id=1739583652957185) + for information on how to find this value. + required: true + label: Pixel Code + actions: + - id: wxF1KnjEX1Zu9fuN8Nkwp1 + name: Report Web Event + slug: reportWebEvent + description: >- + Report events directly to TikTok. Data shared can power TikTok solutions + like dynamic product ads, custom targeting, campaign optimization and + attribution. + platform: WEB + hidden: false + defaultTrigger: type = "track" + fields: + - id: q2bkw9YNe2wkaPhvFnCiFR + sortOrder: 0 + fieldKey: event + label: Event Name + type: STRING + description: >- + Conversion event name. Please refer to the "Supported Web Events" + section on in TikTok’s [Pixel + documentation](https://ads.tiktok.com/marketing_api/docs?id=1739585696931842) + for accepted event names. + placeholder: '' + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: wQdHFJ4vFqVGecgLy7ycYq + sortOrder: 1 + fieldKey: event_id + label: Event ID + type: STRING + description: Any hashed ID that can identify a unique user/session. + placeholder: '' + defaultValue: + '@path': $.messageId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: cdyufu44YdBK6wfV45GmXp + sortOrder: 2 + fieldKey: phone_number + label: Phone Number + type: STRING + description: >- + Phone number of the user who triggered the conversion event, in E.164 + standard format, e.g. +14150000000. Segment will hash this value before + sending to TikTok. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.properties.phone + then: + '@path': $.properties.phone + else: + '@path': $.traits.phone + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 4z7NkDVjwLJVjsVZeu8g9U + sortOrder: 3 + fieldKey: email + label: Email + type: STRING + description: >- + Email address of the user who triggered the conversion event. Segment + will hash this value before sending to TikTok. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.traits.email + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 8EXzo78xe6gz9oQqsE2GU + sortOrder: 4 + fieldKey: external_id + label: External ID + type: STRING + description: >- + Uniquely identifies the user who triggered the conversion event. Segment + will hash this value before sending to TikTok. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: hAc9KnJg1ciGvmzE5phCyE + sortOrder: 5 + fieldKey: contents + label: Contents + type: OBJECT + description: Related items in a web event. + placeholder: '' + required: false + multiple: true + choices: null + dynamic: false + allowNull: false + - id: 4WD4KaeGZBoWDWCYwVPhhp + sortOrder: 6 + fieldKey: currency + label: Currency + type: STRING + description: Currency for the value specified as ISO 4217 code. + placeholder: '' + defaultValue: + '@path': $.properties.currency + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: k7EeskRsch9d3WheCA99mf + sortOrder: 7 + fieldKey: value + label: Value + type: NUMBER + description: Value of the order or items sold. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.properties.value + then: + '@path': $.properties.value + else: + '@path': $.properties.revenue + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: mT3tcEcQ2ynxh73jTpMeFb + sortOrder: 8 + fieldKey: description + label: Description + type: STRING + description: A string description of the web event. + placeholder: '' + defaultValue: + '@path': $.properties.description + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: m94decyCZEGKPd5xWa23a8 + sortOrder: 9 + fieldKey: query + label: Query + type: STRING + description: The text string that was searched for. + placeholder: '' + defaultValue: + '@path': $.properties.query + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + presets: + - actionId: wxF1KnjEX1Zu9fuN8Nkwp1 + name: Search + fields: + event_id: + '@path': $.messageId + phone_number: + '@if': + exists: + '@path': $.properties.phone + then: + '@path': $.properties.phone + else: + '@path': $.traits.phone + email: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.traits.email + external_id: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + currency: + '@path': $.properties.currency + value: + '@if': + exists: + '@path': $.properties.value + then: + '@path': $.properties.value + else: + '@path': $.properties.revenue + description: + '@path': $.properties.description + query: + '@path': $.properties.query + contents: + '@arrayPath': + - $.properties + - price: + '@path': $.price + quantity: + '@path': $.quantity + content_type: + '@path': $.category + content_id: + '@path': $.product_id + event: Search + trigger: event = "Products Searched" + - actionId: wxF1KnjEX1Zu9fuN8Nkwp1 + name: Add to Wishlist + fields: + event_id: + '@path': $.messageId + phone_number: + '@if': + exists: + '@path': $.properties.phone + then: + '@path': $.properties.phone + else: + '@path': $.traits.phone + email: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.traits.email + external_id: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + currency: + '@path': $.properties.currency + value: + '@if': + exists: + '@path': $.properties.value + then: + '@path': $.properties.value + else: + '@path': $.properties.revenue + description: + '@path': $.properties.description + query: + '@path': $.properties.query + contents: + '@arrayPath': + - $.properties + - price: + '@path': $.price + quantity: + '@path': $.quantity + content_type: + '@path': $.category + content_id: + '@path': $.product_id + event: AddToWishlist + trigger: event = "Product Added to Wishlist" + - actionId: wxF1KnjEX1Zu9fuN8Nkwp1 + name: Place an Order + fields: + event_id: + '@path': $.messageId + phone_number: + '@if': + exists: + '@path': $.properties.phone + then: + '@path': $.properties.phone + else: + '@path': $.traits.phone + email: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.traits.email + external_id: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + currency: + '@path': $.properties.currency + value: + '@if': + exists: + '@path': $.properties.value + then: + '@path': $.properties.value + else: + '@path': $.properties.revenue + description: + '@path': $.properties.description + query: + '@path': $.properties.query + contents: + '@arrayPath': + - $.properties.products + - price: + '@path': $.price + quantity: + '@path': $.quantity + content_type: + '@path': $.category + content_id: + '@path': $.product_id + event: PlaceAnOrder + trigger: event = "Order Completed" + - actionId: wxF1KnjEX1Zu9fuN8Nkwp1 + name: View Content + fields: + event_id: + '@path': $.messageId + phone_number: + '@if': + exists: + '@path': $.properties.phone + then: + '@path': $.properties.phone + else: + '@path': $.traits.phone + email: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.traits.email + external_id: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + currency: + '@path': $.properties.currency + value: + '@if': + exists: + '@path': $.properties.value + then: + '@path': $.properties.value + else: + '@path': $.properties.revenue + description: + '@path': $.properties.description + query: + '@path': $.properties.query + contents: + '@arrayPath': + - $.properties + - price: + '@path': $.price + quantity: + '@path': $.quantity + content_type: + '@path': $.category + content_id: + '@path': $.product_id + event: ViewContent + trigger: type="page" + - actionId: wxF1KnjEX1Zu9fuN8Nkwp1 + name: Add Payment Info + fields: + event_id: + '@path': $.messageId + phone_number: + '@if': + exists: + '@path': $.properties.phone + then: + '@path': $.properties.phone + else: + '@path': $.traits.phone + email: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.traits.email + external_id: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + currency: + '@path': $.properties.currency + value: + '@if': + exists: + '@path': $.properties.value + then: + '@path': $.properties.value + else: + '@path': $.properties.revenue + description: + '@path': $.properties.description + query: + '@path': $.properties.query + contents: + '@arrayPath': + - $.properties.products + - price: + '@path': $.price + quantity: + '@path': $.quantity + content_type: + '@path': $.category + content_id: + '@path': $.product_id + event: AddPaymentInfo + trigger: event = "Payment Info Entered" + - actionId: wxF1KnjEX1Zu9fuN8Nkwp1 + name: Initiate Checkout + fields: + event_id: + '@path': $.messageId + phone_number: + '@if': + exists: + '@path': $.properties.phone + then: + '@path': $.properties.phone + else: + '@path': $.traits.phone + email: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.traits.email + external_id: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + currency: + '@path': $.properties.currency + value: + '@if': + exists: + '@path': $.properties.value + then: + '@path': $.properties.value + else: + '@path': $.properties.revenue + description: + '@path': $.properties.description + query: + '@path': $.properties.query + contents: + '@arrayPath': + - $.properties.products + - price: + '@path': $.price + quantity: + '@path': $.quantity + content_type: + '@path': $.category + content_id: + '@path': $.product_id + event: InitiateCheckout + trigger: event = "Checkout Started" + - actionId: wxF1KnjEX1Zu9fuN8Nkwp1 + name: Add to Cart + fields: + event_id: + '@path': $.messageId + phone_number: + '@if': + exists: + '@path': $.properties.phone + then: + '@path': $.properties.phone + else: + '@path': $.traits.phone + email: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.traits.email + external_id: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + currency: + '@path': $.properties.currency + value: + '@if': + exists: + '@path': $.properties.value + then: + '@path': $.properties.value + else: + '@path': $.properties.revenue + description: + '@path': $.properties.description + query: + '@path': $.properties.query + contents: + '@arrayPath': + - $.properties + - price: + '@path': $.price + quantity: + '@path': $.quantity + content_type: + '@path': $.category + content_id: + '@path': $.product_id + event: AddToCart + trigger: event = "Product Added" - id: 6408ac6c144a7d5ac55cf414 display_name: Toplyne Cloud Mode (Actions) name: Toplyne Cloud Mode (Actions) diff --git a/src/_data/catalog/destinations_private.yml b/src/_data/catalog/destinations_private.yml index e3d6370d24..7aaf083705 100644 --- a/src/_data/catalog/destinations_private.yml +++ b/src/_data/catalog/destinations_private.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# destination data last updated 2023-10-10 +# destination data last updated 2023-10-12 items: - id: 54521fd725e721e32a72eec6 display_name: Intercom diff --git a/src/_data/catalog/source_categories.yml b/src/_data/catalog/source_categories.yml index 9e4a9cf54e..deb6fbb0ed 100644 --- a/src/_data/catalog/source_categories.yml +++ b/src/_data/catalog/source_categories.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# source categories last updated 2023-10-10 +# source categories last updated 2023-10-12 items: - display_name: A/B Testing slug: a-b-testing diff --git a/src/_data/catalog/sources.yml b/src/_data/catalog/sources.yml index e19d67e6f4..8906238d55 100644 --- a/src/_data/catalog/sources.yml +++ b/src/_data/catalog/sources.yml @@ -1,5 +1,5 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# sources last updated 2023-10-10 +# sources last updated 2023-10-12 items: - id: 8HWbgPTt3k display_name: .NET diff --git a/src/_includes/components/actions-fields.html b/src/_includes/components/actions-fields.html index 947f2ea6ea..a06c5a92b9 100644 --- a/src/_includes/components/actions-fields.html +++ b/src/_includes/components/actions-fields.html @@ -82,6 +82,21 @@ ## Available Actions + + +{% if currentIntegration.id == '63ed446fe60a1b56c5e6f130' %} +
+
+
+

Required fields may have changed

+

+ View the [Google Analytics documentation](https://developers.google.com/analytics/devguides/collection/ga4/reference/events?client_type=gtag#purchase){:target="_blank"} for the most up-to-date list of required fields. +

+
+
+ +{% endif %} + Build your own Mappings. Combine supported [triggers](/docs/connections/destinations/actions/#components-of-a-destination-action) with the following {{currentIntegration.display_name | remove: " (Actions)"}}-supported actions:
diff --git a/src/_includes/content/react-dest.md b/src/_includes/content/react-dest.md deleted file mode 100644 index 260f9a937c..0000000000 --- a/src/_includes/content/react-dest.md +++ /dev/null @@ -1,31 +0,0 @@ - - -{% assign currentSlug = page.url | split: "/" | last %} -{% assign thisDest = site.data.catalog.destinations.items | where: "slug", currentSlug | first %} -{% assign thisDestName = thisDest.display_name %} -{% assign thisDestRNspecific = include.only %} - - -{% if thisDestRNspecific %} -
-
-

-The {{thisDestName}} device-mode destination SDK is only available for {{thisDestRNspecific}} in React Native. -

-{%endif%} - -To add the {{thisDestName}} device-mode SDK to a [React Native](/docs/connections/sources/catalog/libraries/mobile/react-native/) project using Segment's `1.5.1≤` release: -1. Navigate to the root folder of your project, and run a `yarn add @segment/analytics-react-native-{{thisDestName | downcase | replace: " ", "-" }}{% if thisDestRNspecific %}-{{thisDestRNspecific}}{%endif%}` command to add the destination SDK to your project. -2. Add an `import` statement to your project, as in the example below. - ```js - import {{thisDestName | replace: " ", "" }} from '@segment/analytics-react-native-{{thisDestName | downcase | replace: " ", "-" }}{% if thisDestRNspecific %}-{{thisDestRNspecific}}{%endif%}' - ``` -3. In the same project file, add the destination to the `using` list in the `await` command. - ```js - await analytics.setup('YOUR_WRITE_KEY', { - // Add any of your Device-mode destinations. This ensures they load before continuing. - using: {{thisDestName | replace: " ", "" }} - // ... - }) - ``` -4. Finally, change to your iOS development folder ( `cd ios` ) and run `pod install`. diff --git a/src/connections/destinations/catalog/actions-launchdarkly-audiences/index.md b/src/connections/destinations/catalog/actions-launchdarkly-audiences/index.md new file mode 100644 index 0000000000..ccadb85bb4 --- /dev/null +++ b/src/connections/destinations/catalog/actions-launchdarkly-audiences/index.md @@ -0,0 +1,32 @@ +--- +title: LaunchDarkly Audiences Destination +id: 64e72a310da9ebedf99c8937 +beta: true +--- + +{% include content/plan-grid.md name="actions" %} + +[LaunchDarkly](https://launchdarkly.com){:target="_blank"} is a feature management platform that empowers development teams to safely deliver, control, and measure their software through feature flags. + +With LaunchDarkly, you can release features that target specific groups, such as beta users, and premium accounts, using segments. This destination allows you to sync Engage Audiences to LaunchDarkly segments, letting you concentrate more on deploying features and less on managing end users between platforms. + +LaunchDarkly maintains this destinatino. For any issues with the destination, [contact the LaunchDarkly Support team](mailto:support@launchdarkly.com). + +{% include content/ajs-upgrade.md %} + +## Getting started + +1. In LaunchDarkly, navigate to [Account settings](https://app.launchdarkly.com/settings/projects){:target="_blank"} and copy the client-side ID for the project and environment where you would like to create an Engage Audience synced segment. +2. In LaunchDarkly, create a service token with either a Writer role or a custom role. If your service token has a custom role, it must have the actions `createSegment` and `updateIncluded` to sync a segment from an Engage Audience. To learn how to create a service token, read [Creating API access tokens](https://docs.launchdarkly.com/home/account-security/api-access-tokens#creating-api-access-tokens){:target="_blank"}. +3. From the Segment web app, navigate to **Engage > Audiences**. Ensure you are in the Engage space you plan to use with the LaunchDarkly Audiences destination. Either choose an existing Engage audience or create a new one. This is the audience you plan to sync with LaunchDarkly. +4. Navigate to **Engage > Engage Settings** and click **Destinations**. Ensure you are still in the correct Engage space. +5. Search for `LaunchDarkly Audiences` and select the destination. Click **Add destination**. +6. On the **Select Source** screen, your Engage space should already be selected as the source. Click **Confirm Source**. +7. On the Destination **Settings** tab, name your destination and provide your LaunchDarkly client-side ID and service token. +8. Toggle **Enable Destination** on and click **Save Changes**. +9. Navigate to the **Mappings** tab, click **New Mapping**, and select the **Sync Engage Audience to LaunchDarkly** pre-built mapping. +10. Under **Select mappings**, modify the default mappings as needed. In most cases, you shouldn't need to make any changes. +11. Click **Save**. +12. Ensure the **Status** toggle on the **Mappings** tab is enabled. + +{% include components/actions-fields.html %} diff --git a/src/connections/destinations/catalog/adjust/index.md b/src/connections/destinations/catalog/adjust/index.md index 8b390b2906..2c62812ebd 100644 --- a/src/connections/destinations/catalog/adjust/index.md +++ b/src/connections/destinations/catalog/adjust/index.md @@ -109,10 +109,6 @@ analytics = new Analytics.Builder(this, "write_key") After you build and release to the App Store, Segment automatically starts translating and sending your data to Adjust. -### React Native - -{% include content/react-dest.md %} - ### Server The Cloud-mode integration allows you to send *supplemental* data to Adjust. This *does not* include attribution events. If you rely on the Adjust server-side component, and do not bundle the Segment-Adjust SDK, your installs will not be attributed. E-commerce events and other general `track` events are supported out of the box. You **must** map your `track` events to your custom Adjust Event Token in your [Adjust destination settings](#map-your-events-to-custom-adjust-event-tokens). diff --git a/src/connections/destinations/catalog/amplitude/index.md b/src/connections/destinations/catalog/amplitude/index.md index caf8a4d3e7..87082a1238 100644 --- a/src/connections/destinations/catalog/amplitude/index.md +++ b/src/connections/destinations/catalog/amplitude/index.md @@ -42,11 +42,6 @@ In addition to Segment's Amplitude documentation, Amplitude provides a [Segment If you included Segment's JavaScript snippet on your page, then Amplitude's SDK loads on your page automatically and you can use Segment's to begin sending events right away. -### React Native device mode set up - -{% include content/react-dest.md %} - - ## Page and Screen If you're not familiar with the Segment Specs, take a look to understand what the [Page](/docs/connections/spec/page/) and [Screen](/docs/connections/spec/screen/) methods do. By default, Segment does not send these standard calls to Amplitude. However, you can enable them with the destination settings below, which you can find under the "Optional Settings" tab. diff --git a/src/connections/destinations/catalog/branch-metrics/index.md b/src/connections/destinations/catalog/branch-metrics/index.md index 00b6ecec68..fd90fa40d9 100644 --- a/src/connections/destinations/catalog/branch-metrics/index.md +++ b/src/connections/destinations/catalog/branch-metrics/index.md @@ -29,28 +29,6 @@ This destination is maintained by Branch. For any issues with the destination, [ 5. Paste the Branch Key in the destination settings and click **Save**. -### Adding Branch device-mode SDKs for React Native - - - -To add the Branch device-mode SDK to a [React Native](/docs/connections/sources/catalog/libraries/mobile/react-native/) project using Segment's `1.5.1≤` release: -1. Navigate to the root folder of your project, and run a `yarn add branch` command to add the destination SDK to your project. -2. Add an `import` statement to your project, as in the example below. - ```js - import Branch from '@segment/analytics-react-native-branch' - ``` -3. In the same project file, add the destination to the `using` list in the `await` command. - ```js - await analytics.setup('YOUR_WRITE_KEY', { - // Add any of your Device-mode destinations. This ensures they load before continuing. - using: Branch - // ... - }) - ``` -4. Finally, change to your iOS development folder ( `cd ios` ) and run `pod install`. - - - ## Identify If you're not familiar with the Segment Specs, take a look to understand what the [Identify method](/docs/connections/spec/identify/) does. An example iOS call would look like: diff --git a/src/connections/destinations/catalog/braze/index.md b/src/connections/destinations/catalog/braze/index.md index 8a6fed2f56..59a192524c 100644 --- a/src/connections/destinations/catalog/braze/index.md +++ b/src/connections/destinations/catalog/braze/index.md @@ -108,30 +108,6 @@ To use the latest Braze SDK to collect IDFAs you must do the following: .build(); ``` -### React Native device-mode set up - - - -To add the Braze device-mode SDK to a [React Native](/docs/connections/sources/catalog/libraries/mobile/react-native/) project using Segment's `1.5.1≤` release: -1. Navigate to the root folder of your project, and run a `yarn add appboy` command to add the destination SDK to your project. -2. Add an `import` statement to your project, as in the following example. - ```js - import Braze from '@segment/analytics-react-native-appboy' - ``` -3. In the same project file, add the destination to the `using` list in the `await` command. - ```js - await analytics.setup('YOUR_WRITE_KEY', { - // Add any of your Device-mode destinations. This ensures they load before continuing. - using: [Braze] - // ... - }) - ``` -4. Change to your iOS development folder ( `cd ios` ) and run `pod install`. - - -> note "" -> Braze was formerly known as "Appboy", and the Braze React component still uses that name. Be sure to use the old name! - ## Page If you're not familiar with the Segment Specs, take a look to understand what the [Page method](/docs/connections/spec/page/) does. An example call would look like: diff --git a/src/connections/destinations/catalog/bugsnag/index.md b/src/connections/destinations/catalog/bugsnag/index.md index 54fc98b617..9ad909dece 100644 --- a/src/connections/destinations/catalog/bugsnag/index.md +++ b/src/connections/destinations/catalog/bugsnag/index.md @@ -31,13 +31,6 @@ If you'd like to integrate with Bugsnag's iOS and/or Android SDKs, in addition t 2. [iOS](https://github.com/segment-integrations/analytics-ios-integration-bugsnag) - -### React Native - -{% include content/react-dest.md %} - -- - - - ## Identify Once you've correctly set up your Bugsnag integration, you should [`identify`](/docs/connections/spec/identify/) each of your users as soon as you know their identity (this typically happens after log in or sign up), so that Bugsnag can provide you with more visibility into which user is encountering which error. diff --git a/src/connections/destinations/catalog/clevertap/index.md b/src/connections/destinations/catalog/clevertap/index.md index 1a2143e1f7..380bc9a4d3 100644 --- a/src/connections/destinations/catalog/clevertap/index.md +++ b/src/connections/destinations/catalog/clevertap/index.md @@ -163,12 +163,6 @@ No further action is required to integrate in-app notifications, which are regis CleverTap has created a sample iOS application that integrates CleverTap using Segment. Check it out at the [GitHub repository](https://github.com/CleverTap/clevertap-segment-ios/tree/master/Example){:target="_blank"}. - -## React Native - -{% include content/react-dest.md %} - - ## Server-Side ### Push Tokens diff --git a/src/connections/destinations/catalog/comscore/index.md b/src/connections/destinations/catalog/comscore/index.md index 9d7f3c7d4f..2917cf4ba7 100644 --- a/src/connections/destinations/catalog/comscore/index.md +++ b/src/connections/destinations/catalog/comscore/index.md @@ -30,10 +30,6 @@ To install comScore via Segment on iOS, please follow the additional set up step ### Android To install comScore via Segment on Android, please follow the additional set up steps in the Segment-Comscore Android repository [here](https://github.com/segment-integrations/analytics-android-integration-comscore#analytics-android-integration-comscore). -### React Native - -{% include content/react-dest.md only="ios"%} - ## Page Calling `page` on web will automatically send a call to comScore's Application Tag, along with any `labels` mapped in the **Beacon Param Map** setting. diff --git a/src/connections/destinations/catalog/countly/index.md b/src/connections/destinations/catalog/countly/index.md index af294f4b3e..b15ac525e9 100644 --- a/src/connections/destinations/catalog/countly/index.md +++ b/src/connections/destinations/catalog/countly/index.md @@ -12,11 +12,6 @@ After you integrate the appropriate destination with your app, add the Countly d These new settings take up to an hour to propagate to existing users, but is instantaneous for new users. -### React Native set up - -{% include content/react-dest.md %} - - ## Track Countly helps you better understand your user's behavior. To accomplish that, [`track`](/docs/connections/spec/track/) your user's actions in detail. diff --git a/src/connections/destinations/catalog/crittercism/index.md b/src/connections/destinations/catalog/crittercism/index.md index c292c46af7..78db02ee0b 100644 --- a/src/connections/destinations/catalog/crittercism/index.md +++ b/src/connections/destinations/catalog/crittercism/index.md @@ -11,13 +11,6 @@ To get started with Crittercism and Segment, you'll want to integrate our [Andro Once the Segment library is integrated with your app, toggle Crittercism on in your Segment destination catalog, and add your **App Id** which you can find in your [Crittercism app settings](https://app.crittercism.com/developers/login). These new settings will take up to an hour to propagate to all of your existing users. For new users it'll be instantaneous! -### React Native set up - -{% include content/react-dest.md %} - -- - - - - ## Identify Crittercism can show you information about the user using your app. You can record that info with our [`identify`](/docs/connections/spec/identify/) method. You should put the `identify` call as soon as you know the user's identity. This usually happens after they register or log in. diff --git a/src/connections/destinations/catalog/facebook-app-events/index.md b/src/connections/destinations/catalog/facebook-app-events/index.md index 7c310e6544..655ae329f2 100644 --- a/src/connections/destinations/catalog/facebook-app-events/index.md +++ b/src/connections/destinations/catalog/facebook-app-events/index.md @@ -28,10 +28,6 @@ This page is about the **Facebook App Events**. For documentation on other Faceb 3. In the destination settings, enter your Facebook App ID which can be retrieved from your [Facebook Apps dashboard](https://developers.facebook.com/apps/). 4. Once you turn on the Facebook App Events integration in your app's Segment project, we'll start sending `track` data to Facebook's App Events endpoints. -### Using Facebook App Events with React Native Device Mode - -{% include content/react-dest.md only="ios" %} - ## Screen If you're not familiar with the Segment Specs, take a look to understand what the [Screen method](/docs/connections/spec/screen/) does. An example call would look like: diff --git a/src/connections/destinations/catalog/flurry/index.md b/src/connections/destinations/catalog/flurry/index.md index f9343302ef..ae42070158 100644 --- a/src/connections/destinations/catalog/flurry/index.md +++ b/src/connections/destinations/catalog/flurry/index.md @@ -19,10 +19,6 @@ Our Flurry destination code is open sourced on GitHub. Feel free to check it out _Note: Flurry does not always display data in real time. We've seen that it can take anywhere from a few hours to a few days for certain types of data to sync with Flurry._ -### React Native set up - -{% include content/react-dest.md %} - ## Screen If you're not familiar with the Segment Specs, take a look to understand what the [Screen method](/docs/connections/spec/screen/) does. diff --git a/src/connections/destinations/catalog/inflection/index.md b/src/connections/destinations/catalog/inflection/index.md index a0c58895a1..c5ac0630e6 100644 --- a/src/connections/destinations/catalog/inflection/index.md +++ b/src/connections/destinations/catalog/inflection/index.md @@ -21,24 +21,6 @@ This destination is maintained by Inflection. For any issues with the destinatio Inflection supports the following methods, as specified in the [Segment Spec](/docs/connections/spec). -### Page - -Send [Page](/docs/connections/spec/page) calls to be added to *Product Activity* on Inflection App. For example: - -```js -analytics.page() -``` - - -### Screen - -Send [Screen](/docs/connections/spec/screen) calls to be added to *Product Activity* on Inflection App. For example: - -```obj-c -[[SEGAnalytics sharedAnalytics] screen:@"Home"]; -``` - - ### Identify Send [Identify](/docs/connections/spec/identify) calls to Identify a user. The traits should have the `email` trait to be processed. All the other reserved traits are optional, but will be used to populate *Person DB* if available. @@ -58,4 +40,18 @@ Send [Track](/docs/connections/spec/track) calls to be added to *Product Activit ```js analytics.track('Login Button Clicked') +``` + +### Group + +Send [Group](/docs/connections/spec/group) calls to tie a user to an org. There are two IDs that are relevant in a group call: the userId, which belongs and refers to the user, and the groupId, which belongs and refers to the specific group. A user can belong to multiple groups, each associated with a different groupId, but the user will have only one userId linked to each of these different groups. + +```js + analytics.group("0e8c78ea9d97a7b8185e8632", { +name: "Initech", +industry: "Technology", +employees: 329, +plan: "enterprise", +"total billed": 830 +}); ``` \ No newline at end of file diff --git a/src/connections/destinations/catalog/intercom/index.md b/src/connections/destinations/catalog/intercom/index.md index 560cda4cfd..abdc986c82 100644 --- a/src/connections/destinations/catalog/intercom/index.md +++ b/src/connections/destinations/catalog/intercom/index.md @@ -52,10 +52,6 @@ Before reading the specific instructions for iOS or Android below, make sure you .build(); ``` -### React Native - -{% include content/react-dest.md %} - ## Page If you're not familiar with the Segment Specs, take a look to understand what the [Page method](/docs/connections/spec/page/) does. An example call would look like: diff --git a/src/connections/destinations/catalog/localytics/index.md b/src/connections/destinations/catalog/localytics/index.md index 246593ab78..f13d1bcc1c 100644 --- a/src/connections/destinations/catalog/localytics/index.md +++ b/src/connections/destinations/catalog/localytics/index.md @@ -31,12 +31,6 @@ is not yet supported. You must also add the Maven Localytics repo (since Localytics doesn't publish it on Maven Central). You can see an example of how to add that [here](https://github.com/segment-integrations/analytics-android-integration-localytics/blob/master/build.gradle#L44). -### React Native set up - -{% include content/react-dest.md %} - -- - - - ## Identify When you call [`identify`](/docs/connections/spec/identify/), we'll set the Localytics diff --git a/src/connections/destinations/catalog/loops-actions/index.md b/src/connections/destinations/catalog/loops-actions/index.md new file mode 100644 index 0000000000..2e0025bf08 --- /dev/null +++ b/src/connections/destinations/catalog/loops-actions/index.md @@ -0,0 +1,7 @@ +--- +title: 'Loops (Actions) Destination' +hidden: true +id: 63360a5fe290ca3fdfad4a68 +published: false +beta: true +--- diff --git a/src/connections/destinations/catalog/mixpanel/index.md b/src/connections/destinations/catalog/mixpanel/index.md index 5336e0bbbc..e352e09563 100644 --- a/src/connections/destinations/catalog/mixpanel/index.md +++ b/src/connections/destinations/catalog/mixpanel/index.md @@ -22,10 +22,6 @@ Segment's Mixpanel destination code is open source and available on GitHub. You 3. Copy your Mixpanel "API Secret" and "Token", and paste them into the Connection Settings in Segment. 4. Enable the destination to start sending your data to Mixpanel. -### Adding device-mode SDKs to React Native - -{% include content/react-dest.md %} - ## Page If you're not familiar with the Segment Specs, take a look to understand what the [Page method](/docs/connections/spec/page/) does. An example call would look like: diff --git a/src/connections/destinations/catalog/quantcast/index.md b/src/connections/destinations/catalog/quantcast/index.md index 19561e625e..5e70c002ab 100644 --- a/src/connections/destinations/catalog/quantcast/index.md +++ b/src/connections/destinations/catalog/quantcast/index.md @@ -15,10 +15,6 @@ Quantcast supports the `identify` and `track` methods on our API. Note: For Quantcast to load you must call our page method. There is a call to page in your JavaScript snippet by default, so as long as you don't remove it Quantcast will load whenever your snippet loads! -## React Native set up - -{% include content/react-dest.md only="android" %} - ### Page When you call `.page()`, we will automatically pass the labels. [See below for details](#labels). diff --git a/src/connections/destinations/catalog/taplytics/index.md b/src/connections/destinations/catalog/taplytics/index.md index 2cc13b2771..e818c003f1 100644 --- a/src/connections/destinations/catalog/taplytics/index.md +++ b/src/connections/destinations/catalog/taplytics/index.md @@ -23,10 +23,6 @@ To get up and running with Taplytics on Android, there a couple of steps we will To enable its full functionality (like Push Notifications, Deep linking), there are a couple of extra steps that you have to take care of in your Android app. [This document explains how to set up Push Notifications](https://docs.taplytics.com/docs/guides-push-notifications) and [ths one explains how to set up deep linking](https://support.taplytics.com/hc/en-us/articles/360004176632-Deep-Linking-Guide-). -### React Native set up - -{% include content/react-dest.md only="ios" %} - ## Identify Use [Identify](/docs/connections/sources/catalog/libraries/mobile/ios/#identify) to track user specific attributes. It equivalent to tracking [user attributes](https://docs.taplytics.com/docs/guides-user-insights) on Taplytics. Taplytics supports traits supported by Segment as well as custom traits. If you set traits.id, we set that as the Unique ID for that user. diff --git a/src/connections/destinations/catalog/tapstream/index.md b/src/connections/destinations/catalog/tapstream/index.md index b272135956..201e5391f3 100644 --- a/src/connections/destinations/catalog/tapstream/index.md +++ b/src/connections/destinations/catalog/tapstream/index.md @@ -3,5 +3,4 @@ title: 'Tapstream Destination' hidden: true id: 54521fdb25e721e32a72eef7 --- - + diff --git a/src/protocols/tracking-plan/create.md b/src/protocols/tracking-plan/create.md index b628e83c0c..8244da80ec 100644 --- a/src/protocols/tracking-plan/create.md +++ b/src/protocols/tracking-plan/create.md @@ -174,6 +174,9 @@ To edit the common JSON schema using the Public API, you'll need to add your new > info "Specifying data type" > Property or trait data type should adhere to the [data types defined by JSON schema](https://json-schema.org/understanding-json-schema/reference/type.html){:target="_blank”}. Data type names must be lower-cased as specified in JSON schema. Datetime properties should be represented as a `string` type with [`format` keyword](https://json-schema.org/understanding-json-schema/reference/string.html#format){:target="_blank”} (for example: "format": "date-time"). +> info "Blocking data" +> JSON schema violation event blocking is **only** supported in cloud-mode Destinations. See [the Customize your schema controls docs](/docs/protocols/enforce/schema-configuration/) for more information on blocking data. + ### Extend the Tracking Plan Some customers prefer to manage the Tracking Plan with outside tools and resources. See the [APIs and extensions](/docs/protocols/apis-and-extensions/) section to learn more. diff --git a/src/segment-app/iam/roles.md b/src/segment-app/iam/roles.md index 3ab052a8f9..966a054cc9 100644 --- a/src/segment-app/iam/roles.md +++ b/src/segment-app/iam/roles.md @@ -67,10 +67,10 @@ The following roles are only available to Segment Business Tier accounts. * **Scope:** Grants access to *all* warehouses. #### Entities Admin -Full CRUD (create, read, access, and delete) access to all Entities within a workspace. You can also grant or revoke user permissions. +Full edit and view access to all entity models and connection details. #### Entities Read-only -Read-only access to all Entities models and destinations in a workspace. +Read-only access, with the ability to view entity models. ## PII Access diff --git a/src/engage/images/large_trait_csv.png b/src/unify/images/large_trait_csv.png similarity index 100% rename from src/engage/images/large_trait_csv.png rename to src/unify/images/large_trait_csv.png diff --git a/src/engage/images/trait_overview.png b/src/unify/images/trait_overview.png similarity index 100% rename from src/engage/images/trait_overview.png rename to src/unify/images/trait_overview.png diff --git a/src/unify/linked-profiles/linked-events.md b/src/unify/linked-profiles/linked-events.md index 423f6a315e..542abb863d 100644 --- a/src/unify/linked-profiles/linked-events.md +++ b/src/unify/linked-profiles/linked-events.md @@ -39,10 +39,8 @@ The following Segment access [roles](/docs/segment-app/iam/roles/) apply to Link **Entities Read-only Access**: Entities Read-only users have the ability to view entity models. -To create models and enrich events in destinations, you need the following roles: -- `Workspace Owner` and `Entities Admin` +To create models and enrich events in destinations, you need to be a `Workspace Owner` or have the following roles: -OR: - `Unify and Engage Admin` - `Entities Admin` - `Source Admin`