diff --git a/src/_data/catalog/destination_categories.yml b/src/_data/catalog/destination_categories.yml index 3612d0d943..f06995b16f 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 2024-09-10 +# destination categories last updated 2024-09-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 a6084c30df..1252cae10a 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 2024-09-10 +# destination data last updated 2024-09-12 items: - id: 637e8d185e2dec264895ea89 display_name: 1Flow @@ -22197,7 +22197,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: c68r6dfc6ZPNJHeiNiyHVr + - id: 9i1FkdDrmqxHCJcYaaTq5L sortOrder: 0 fieldKey: external_id label: External User ID @@ -22211,7 +22211,7 @@ items: choices: null dynamic: false allowNull: false - - id: fKURnNu38SgU8gixR9eUpf + - id: bUhBXrN645Zy3fuPoj75W8 sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -22225,7 +22225,7 @@ items: choices: null dynamic: false allowNull: false - - id: vwpPZhmmLx5phWzaeBwfyy + - id: d7t9Abw5gPC7xGx6HvhU48 sortOrder: 2 fieldKey: braze_id label: Braze User Identifier @@ -22239,7 +22239,7 @@ items: choices: null dynamic: false allowNull: true - - id: pGTdrjZ3xYVcduT4Va3hGR + - id: pXK4EVYJkxogs4YoULY31g sortOrder: 3 fieldKey: country label: Country @@ -22253,7 +22253,7 @@ items: choices: null dynamic: false allowNull: true - - id: qH6nR9GnbwCzREHTBmnXR + - id: aZSCMJk9aSXpMokknt6Nxi sortOrder: 4 fieldKey: current_location label: Current Location @@ -22270,7 +22270,7 @@ items: choices: null dynamic: false allowNull: true - - id: ogBWQ6C1CyDezTLy1QUX3E + - id: 6esRwuntNMQCrvBjxFEyLN sortOrder: 5 fieldKey: date_of_first_session label: Date of First Session @@ -22282,7 +22282,7 @@ items: choices: null dynamic: false allowNull: true - - id: 3AJJbHH15MkXy1oh9xESg2 + - id: 6GNmNS1vC3cpo8WADhM5QH sortOrder: 6 fieldKey: date_of_last_session label: Date of Last Session @@ -22294,7 +22294,7 @@ items: choices: null dynamic: false allowNull: true - - id: sLVVuTiQQ5QDgDSp3NFwyz + - id: jTsBnkgNz1QozVQjDrq647 sortOrder: 7 fieldKey: dob label: Date of Birth @@ -22306,7 +22306,7 @@ items: choices: null dynamic: false allowNull: true - - id: g2Nh1ah75L3HZnCRnn7Lc8 + - id: aFDDDxfui6oQkizr4nq4su sortOrder: 8 fieldKey: email label: Email @@ -22320,7 +22320,7 @@ items: choices: null dynamic: false allowNull: true - - id: ahHthFUavS2xRcUFdnioes + - id: w2meSVABPngr5rtB4NawKA sortOrder: 9 fieldKey: email_subscribe label: Email Subscribe @@ -22335,7 +22335,7 @@ items: choices: null dynamic: false allowNull: false - - id: tURrQk9HdpgHHvHYobisbS + - id: 8MJqqxbqy677H4jnqM4orx sortOrder: 10 fieldKey: email_open_tracking_disabled label: Email Open Tracking Disabled @@ -22349,7 +22349,7 @@ items: choices: null dynamic: false allowNull: false - - id: tpwfKprUuQCrWuyDWewBtd + - id: tzzn9G2L9ARnNpojBfFbCk sortOrder: 11 fieldKey: email_click_tracking_disabled label: Email Click Tracking Disabled @@ -22363,7 +22363,7 @@ items: choices: null dynamic: false allowNull: false - - id: bso8R2TCbLH8tMSL1fx6nB + - id: iMXgcS8cxL9ToBosD6yL3M sortOrder: 12 fieldKey: facebook label: Facebook Attribution Data @@ -22377,7 +22377,7 @@ items: choices: null dynamic: false allowNull: false - - id: 7A7nUuvNHqfHg88Lx2Jkgm + - id: knTWCLW93dCX9ema2MqTqY sortOrder: 13 fieldKey: first_name label: First Name @@ -22391,7 +22391,7 @@ items: choices: null dynamic: false allowNull: true - - id: npGJZbNJT7QSfxdy417aRK + - id: d4797Eo2VUT8PX9H64D82d sortOrder: 14 fieldKey: gender label: Gender @@ -22407,7 +22407,7 @@ items: choices: null dynamic: false allowNull: true - - id: nx35oDUXdGUTG93xk7hjHD + - id: oHwwwoDHkQrnaVEEpofUdk sortOrder: 15 fieldKey: home_city label: Home City @@ -22421,7 +22421,7 @@ items: choices: null dynamic: false allowNull: true - - id: kLH2kdAiHKuo5YYAaK5qNc + - id: ySh9XQSnXuwiYc4tpwo5K sortOrder: 16 fieldKey: image_url label: Image URL @@ -22435,7 +22435,7 @@ items: choices: null dynamic: false allowNull: true - - id: aeZ6wvrKgGiaYkKBzuj2Ho + - id: 3BNu46Yu1N9Mqk7dZhvYJP sortOrder: 17 fieldKey: language label: Language @@ -22447,7 +22447,7 @@ items: choices: null dynamic: false allowNull: true - - id: 2nmtMEFMyvxiPRLndcZc21 + - id: 6htCxH1RgPDmxiJGa3SgFD sortOrder: 18 fieldKey: last_name label: Last Name @@ -22461,7 +22461,7 @@ items: choices: null dynamic: false allowNull: false - - id: fJZ6nSBmsnA8y3vc4bwZA4 + - id: uGx885Xb6r9iWU22t5RL5s sortOrder: 19 fieldKey: marked_email_as_spam_at label: Marked Email as Spam At @@ -22473,7 +22473,7 @@ items: choices: null dynamic: false allowNull: true - - id: nXV5hq6G4ZvAenQy1o7URn + - id: aJd89Ud8xdDyCFjgZL7JzV sortOrder: 20 fieldKey: phone label: Phone Number @@ -22487,7 +22487,7 @@ items: choices: null dynamic: false allowNull: true - - id: 6FfgrJDX9ot7zUFsG1rcYd + - id: vRgDxivGNdXjgAPZJtTthx sortOrder: 21 fieldKey: push_subscribe label: Push Subscribe @@ -22502,7 +22502,7 @@ items: choices: null dynamic: false allowNull: false - - id: 882YgJxE7fxRMZ8HYqJaTz + - id: eB7RJEKfbbYRUxaPzHJcB8 sortOrder: 22 fieldKey: push_tokens label: Push Tokens @@ -22519,7 +22519,7 @@ items: choices: null dynamic: false allowNull: false - - id: 91FWcoYetBDAL7R2HxzCuZ + - id: mBeejkkTTFwsVt5XVg34rK sortOrder: 23 fieldKey: time_zone label: Time zone @@ -22534,7 +22534,7 @@ items: choices: null dynamic: false allowNull: false - - id: 8Y17J6jSvqg5BMFjmxqCFg + - id: bymJsmsCpJmHHinie64Fvx sortOrder: 24 fieldKey: twitter label: Twitter Attribution Data @@ -22549,7 +22549,7 @@ items: choices: null dynamic: false allowNull: false - - id: b19KhigjWCj5fAe8oFzMW3 + - id: 3A514W9TPCxB6Y7fTCAjqs sortOrder: 25 fieldKey: custom_attributes label: Custom Attributes @@ -22563,7 +22563,7 @@ items: choices: null dynamic: false allowNull: false - - id: tT31tvyX7VjgvAKUMX8Xd4 + - id: 8ci6XRV2tyUGjnPvd239XV sortOrder: 26 fieldKey: _update_existing_only label: Update Existing Only @@ -22578,7 +22578,7 @@ items: choices: null dynamic: false allowNull: false - - id: e3YvPty7HhLAf7wS36wHCg + - id: h8vDoWPb7nHA1hW63YkvYs sortOrder: 27 fieldKey: enable_batching label: Batch Data to Braze @@ -22601,7 +22601,7 @@ items: hidden: false defaultTrigger: type = "track" and event != "Order Completed" fields: - - id: 88t7JHp8xzn1knxdG6EfzW + - id: iMBAxT8HkiFfECSpppKdxP sortOrder: 0 fieldKey: external_id label: External User ID @@ -22615,7 +22615,7 @@ items: choices: null dynamic: false allowNull: false - - id: 3cruKrD8XZ1gLLf6Y1jLBV + - id: 2R2ZADUiCeeGZ9MTVJNwCY sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -22629,7 +22629,7 @@ items: choices: null dynamic: false allowNull: false - - id: gsq54Q9QadBHv1dywo9NXk + - id: 2wN1CrseysdGzF5Ns7t4Za sortOrder: 2 fieldKey: email label: Email @@ -22637,13 +22637,19 @@ items: description: The user email placeholder: '' defaultValue: - '@path': $.traits.email + '@if': + exists: + '@path': $.context.traits.email + then: + '@path': $.context.traits.email + else: + '@path': $.properties.email required: false multiple: false choices: null dynamic: false allowNull: false - - id: ocn55mTqi2SVE7ZSVvbaFT + - id: hbgAWCUqixaAcF1BhHyzJ8 sortOrder: 3 fieldKey: braze_id label: Braze User Identifier @@ -22657,7 +22663,7 @@ items: choices: null dynamic: false allowNull: true - - id: ufsfb2PV7PGmqkKwtMefm + - id: 9ab4oXYJtAbKuTCK4hVTzB sortOrder: 4 fieldKey: name label: Event Name @@ -22671,7 +22677,7 @@ items: choices: null dynamic: false allowNull: false - - id: 6EHcmqyA1uT4RXrpwyMCmh + - id: jK6Xh6qnCUmDLEYjrUYXH1 sortOrder: 5 fieldKey: time label: Time @@ -22685,7 +22691,7 @@ items: choices: null dynamic: false allowNull: false - - id: nYLAn1vLtDGzzgSjyRLJVE + - id: 9tsavza1NUtsCLpA51D4BR sortOrder: 6 fieldKey: properties label: Event Properties @@ -22699,7 +22705,7 @@ items: choices: null dynamic: false allowNull: false - - id: nyNoXt2pGUEb1125doeiaQ + - id: r8cDyjES7L8CqeurYMj1gW sortOrder: 7 fieldKey: _update_existing_only label: Update Existing Only @@ -22714,7 +22720,7 @@ items: choices: null dynamic: false allowNull: false - - id: x2N1T5D1nA5mQQ2Ngy9H1V + - id: 8MDXQbp3ipXwaDNY3ZAsqU sortOrder: 8 fieldKey: enable_batching label: Batch Data to Braze @@ -22737,7 +22743,7 @@ items: hidden: false defaultTrigger: event = "Order Completed" fields: - - id: n6A5PUh1u3LKCwWA3Sdx7J + - id: sKA1hGKVCoH8szpYwsv5EM sortOrder: 0 fieldKey: external_id label: External User ID @@ -22751,7 +22757,7 @@ items: choices: null dynamic: false allowNull: false - - id: 57ASYgk71v8otsT9uBMGG4 + - id: nD12sk8W87jjtxfFFugZgY sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -22765,7 +22771,7 @@ items: choices: null dynamic: false allowNull: false - - id: kFdWrRySSxJyXCponB2uQN + - id: 2vPejVRQPvZ6G7tBkTNxJt sortOrder: 2 fieldKey: email label: Email @@ -22779,7 +22785,7 @@ items: choices: null dynamic: false allowNull: false - - id: rDvUnx9EUNkPKhxvmizvwD + - id: vPnydUsTaf6jp6jX8yp92X sortOrder: 3 fieldKey: braze_id label: Braze User Identifier @@ -22793,7 +22799,7 @@ items: choices: null dynamic: false allowNull: true - - id: wqr9BwMtUVjCjVuB3WA9R5 + - id: jvbR7WAZntnFtw1wQy6SS sortOrder: 4 fieldKey: time label: Time @@ -22807,7 +22813,7 @@ items: choices: null dynamic: false allowNull: false - - id: wr1aYATksP8E3ezGBpgNrp + - id: q4BVLJKZwDV4qYb4od2LMo sortOrder: 5 fieldKey: products label: Products @@ -22821,7 +22827,7 @@ items: choices: null dynamic: false allowNull: false - - id: x2VNichaGnW9AaXYugEe5B + - id: pD47eiZrPeWSYtUn1JYNm4 sortOrder: 6 fieldKey: properties label: Event Properties @@ -22835,7 +22841,7 @@ items: choices: null dynamic: false allowNull: false - - id: bLeP5MW1X3urkYkcqso9EE + - id: kTgMrdGLD4BHmnMSFD81D2 sortOrder: 7 fieldKey: _update_existing_only label: Update Existing Only @@ -22850,7 +22856,7 @@ items: choices: null dynamic: false allowNull: false - - id: mxvx3suNxRtLQZX2WK2eGW + - id: cUY4VXfhaDgCSw4peKXs1h sortOrder: 8 fieldKey: enable_batching label: Batch Data to Braze @@ -22887,7 +22893,7 @@ items: hidden: false defaultTrigger: null fields: - - id: 6y9XKEcaxEDQ6zjJ2MTcrt + - id: 2gBk18J7N6v4cf6UwE5afb sortOrder: 0 fieldKey: external_id label: External ID @@ -22899,7 +22905,7 @@ items: choices: null dynamic: false allowNull: false - - id: 2KqcAShbpZFftvnhZ37Gmw + - id: 4UCBA7K6yWCzvgDj7Wmihf sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -22913,7 +22919,7 @@ items: choices: null dynamic: false allowNull: false - - id: q7LXdRanaLjsn7TUDhdE82 + - id: 98PYTD678dY7gMgZV2Ri5u sortOrder: 2 fieldKey: merge_behavior label: Merge Behavior @@ -22942,7 +22948,7 @@ items: hidden: false defaultTrigger: event = "Create Alias" fields: - - id: dGTtATiUdZKQeeWTikfgAQ + - id: 9MSDoFyKMZ5qEaCruRS9jA sortOrder: 0 fieldKey: external_id label: External ID @@ -22954,7 +22960,7 @@ items: choices: null dynamic: false allowNull: true - - id: mV2Hw9K2eJJZbiFQ5igZqy + - id: 871aNEsiHTrEogPxzzjo9o sortOrder: 1 fieldKey: alias_name label: Alias Name @@ -22966,7 +22972,7 @@ items: choices: null dynamic: false allowNull: false - - id: uCYBMxLv8SN1gUhoeKqjsX + - id: fq5EXsxCJLe8QzVZ8sF1r8 sortOrder: 2 fieldKey: alias_label label: Alias Label @@ -22979,6 +22985,31 @@ items: dynamic: false allowNull: false presets: + - actionId: 3pnc4QJvUjWGi2bp6EnDt + name: Track Calls + fields: + external_id: + '@path': $.userId + email: + '@if': + exists: + '@path': $.context.traits.email + then: + '@path': $.context.traits.email + else: + '@path': $.properties.email + braze_id: + '@path': $.properties.braze_id + name: + '@path': $.event + time: + '@path': $.receivedAt + properties: + '@path': $.properties + _update_existing_only: false + enable_batching: true + batch_size: 75 + trigger: type = "track" and event != "Order Completed" - actionId: vE7Gf9yobj2gTuMBhwmg7g name: Order Completed Calls fields: @@ -23032,25 +23063,6 @@ items: enable_batching: true batch_size: 75 trigger: type = "identify" - - actionId: 3pnc4QJvUjWGi2bp6EnDt - name: Track Calls - fields: - external_id: - '@path': $.userId - email: - '@path': $.traits.email - braze_id: - '@path': $.properties.braze_id - name: - '@path': $.event - time: - '@path': $.receivedAt - properties: - '@path': $.properties - _update_existing_only: false - enable_batching: true - batch_size: 75 - trigger: type = "track" and event != "Order Completed" partnerOwned: false - id: 63872c01c0c112b9b4d75412 display_name: Braze Cohorts @@ -104982,7 +104994,7 @@ items: display_name: StackAdapt name: StackAdapt slug: actions-stackadapt-cloud - hidden: true + hidden: false endpoints: - US regions: diff --git a/src/_data/catalog/destinations_private.yml b/src/_data/catalog/destinations_private.yml index 70cfdaf92c..75a939cdda 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 2024-09-10 +# destination data last updated 2024-09-12 items: - id: 54521fd925e721e32a72eee1 display_name: Pardot diff --git a/src/_data/catalog/source_categories.yml b/src/_data/catalog/source_categories.yml index 7cf9caeb79..25a9c80a73 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 2024-09-10 +# source categories last updated 2024-09-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 9d2ef44c53..219abafb0a 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 2024-09-10 +# sources last updated 2024-09-12 items: - id: 8HWbgPTt3k display_name: .NET @@ -992,7 +992,7 @@ items: categories: - Marketing Automation - Email Marketing - status: PUBLIC_BETA + status: PUBLIC partnerOwned: true - id: S1lptUOqTq display_name: InMoment (formerly Wootric) diff --git a/src/connections/destinations/actions.md b/src/connections/destinations/actions.md index 1497d0df8c..9161000ad5 100644 --- a/src/connections/destinations/actions.md +++ b/src/connections/destinations/actions.md @@ -249,6 +249,21 @@ You can combine criteria in a single group using **ALL** or **ANY**. Use an ANY > > If your use case does not match these criteria, you might benefit from using Mapping-level Triggers to match only certain events. +## Duplicate Mappings + +You can use the Duplicate Mappings feature to create an exact copy of a mapping. The duplicated mapping has the same configurations and enrichments as your original mapping. + +Duplicate Mappings supports [Actions destinations](#actions-destination), [Reverse ETL destinations](/docs/connections/reverse-etl/reverse-etl-catalog), and destinations connected to Engage [Audiences](/docs/engage/audiences) and [Journeys](/docs/engage/journeys). + +To duplicate your mappings: + +1. Navigate to **Connections > Destinations** and select the destination with the mappings you'd like to copy. +2. On the destination's **Mappings** tab, select the menu button (**...**) and click **Duplicate Mapping**. +3. Review the popup and click **Duplicate Mapping**. + +Segment creates a disabled mapping with the name "Original Mapping Name (Copy)". You must enable the mapping for data to flow. + + ## FAQ and troubleshooting ### Validation error when using the Event Tester diff --git a/src/connections/destinations/catalog/actions-moloco-rmp/index.md b/src/connections/destinations/catalog/actions-moloco-rmp/index.md index 29c3970350..595df788ed 100644 --- a/src/connections/destinations/catalog/actions-moloco-rmp/index.md +++ b/src/connections/destinations/catalog/actions-moloco-rmp/index.md @@ -42,7 +42,7 @@ analytics.identify('361b1fdfbeaa9d64a13c033eb9f970dc6740f6bc', { Once a user is identified, each call to Segment's [Track method](/docs/connections/spec/track/) automatically records the user ID. Users that are not logged in can be tracked using an [anonymousID](/docs/connections/spec/identify/#anonymous-id). Moloco Commerce Media does not use anonymousIDs for users that are not logged in. Segment recommends formatting your anonymousID in UUID format. -> info" " +> info " " > If you hash the user ID before sending it to Moloco, ensure you reuse the same hashed ID when calling other Moloco APIs. diff --git a/src/connections/destinations/catalog/inkit/index.md b/src/connections/destinations/catalog/inkit/index.md index e6a2360d37..bdad4feab3 100644 --- a/src/connections/destinations/catalog/inkit/index.md +++ b/src/connections/destinations/catalog/inkit/index.md @@ -54,10 +54,11 @@ For example, you might send a letter in which you need to include the recipient' If you aren't familiar with the Segment Spec, see the [Identify method documentation](/docs/connections/spec/identify/) to learn about what it does. An example call with Inkit would look like: -> note"" -> All address elements should be satisified within the segment's user identity -(exception of address_line_2 which is a custom entry) -Expected Requirements +> note " " +> All address elements should be satisfied within the Segment's user identity, with the (exception of address_line_2 which is a custom entry). + + +Expected Requirements: ```js analytics.identify('userId123', { diff --git a/src/connections/destinations/catalog/retina/index.md b/src/connections/destinations/catalog/retina/index.md index 660254a6c3..5014127f77 100644 --- a/src/connections/destinations/catalog/retina/index.md +++ b/src/connections/destinations/catalog/retina/index.md @@ -3,21 +3,18 @@ title: Retina AI Destination rewrite: true id: 5f287bfa332cce0b1ed18331 --- -# Retina AI Segment Destination [Retina AI](https://retina.ai/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners){:target="_blank”} is a customer intelligence partner that provides accurate **customer-level lifetime value** metrics at or before their first transaction. You can use this to improve targeting, ad relevance, conversion rates, and customer loyalty. Retina AI maintains this destination. For any issues with the destination, contact the [Retina AI Support Team](mailto:info@retina.ai). -> note" +> info " " > The Retina AI Destination is in beta, which means that they are still actively developing the destination. To join the beta program, or if you have any feedback to help improve the Retina AI Destination and its documentation, contact the [Retina AI Support Team](mailto:info@retina.ai). ## Getting Started - - -To integrate Retina AI with Segment as a **Destination**: +To integrate Retina AI with Segment as a destination: 1. From your Segment UI's Destinations page click on “Add Destination”. 2. Search for “Retina” in the Catalog, select it, and choose which of your sources to connect the destination to. 3. Add the “API Key” that Retina AI provides through a secure data transfer to your Segment workspace. @@ -87,5 +84,3 @@ If you aren't familiar with the Segment Spec, take a look at the [Alias method d ```js analytics.alias("507f191e81"); ``` - ---- diff --git a/src/connections/destinations/catalog/userlist/index.md b/src/connections/destinations/catalog/userlist/index.md index f17f68607c..e58a838f88 100644 --- a/src/connections/destinations/catalog/userlist/index.md +++ b/src/connections/destinations/catalog/userlist/index.md @@ -16,7 +16,7 @@ This destination is maintained by Userlist. For any issues with the destination, 2. Search for "Userlist" in the Catalog, select it, and choose which of your sources to connect the destination to. 3. In the Userlist Segment destination settings, enter your Userlist "Push API Key". You can find this key in your [Userlist Push API settings](https://app.userlist.com/settings/push){:target="_blank"}. -> info"" +> info "" > **NOTE:** The Userlist Destination does not support tracking anonymous users, and returns a 400 error if you send `track` or `group` call for unidentified users. To prevent this, make sure you make an Identify call before you make Track or Group calls. You can also disregard this error if you sent calls you do not intend Userlist to process. ## Identify diff --git a/src/connections/functions/insert-functions.md b/src/connections/functions/insert-functions.md index 3c60cc3e03..e9cad18de1 100644 --- a/src/connections/functions/insert-functions.md +++ b/src/connections/functions/insert-functions.md @@ -602,3 +602,7 @@ DELETE deleteInsertFunction(fn_id) For more information, visit Segment's [Public API docs](https://docs.segmentapis.com/tag/Functions){:target="_blank"}. {% endcomment %} + +##### What is the maximum data size that can be displayed in console.logs() when testing a Function? + +The test function interface has a 4KB console logging limit. Outputs surpassing this limit won't be visible in the user interface. diff --git a/src/connections/reverse-etl/setup.md b/src/connections/reverse-etl/setup.md index 95dd35ac3c..2039d73116 100644 --- a/src/connections/reverse-etl/setup.md +++ b/src/connections/reverse-etl/setup.md @@ -98,17 +98,8 @@ To create a mapping: 12. Turn the toggle on for the **Mapping Status**. Events that match the trigger condition in the mapping will be sent to the destination. * If you disable the mapping state to the destination, events that match the trigger condition in the mapping won’t be sent to the destination. -## Initial sync for a given mapping -After you've set up your source, model, destination, and mappings for Reverse ETL, your data will extract and sync to your destination(s) right away if you chose an interval schedule. If you set your data to extract at a specific day and time, the extraction will take place then. - -## Edit Reverse ETL syncs -### Edit your model - -To edit your model: -1. Navigate to **Connections > Destinations** and select the **Reverse ETL** tab. -2. Select the source and the model you want to edit. -3. On the overview tab, click **Edit** to edit your query. -4. Click the **Settings** tab to edit the model name or change the schedule settings. +> success "" +> Use Segment's [Duplicate mappings](/docs/connections/destinations/actions/#duplicate-mappings) feature to create an exact copy of an existing mapping. The copied mapping has the same configurations and enrichments as your original mapping. ### Supported object and arrays @@ -192,6 +183,19 @@ To opt out of including null values in your downstream syncs: 5. In the field dropdown selection, disable the **Sync null values** toggle. +## Initial sync for a given mapping +After you've set up your source, model, destination, and mappings for Reverse ETL, your data will extract and sync to your destination(s) right away if you chose an interval schedule. If you set your data to extract at a specific day and time, the extraction will take place then. + +## Edit Reverse ETL syncs +### Edit your model + +To edit your model: +1. Navigate to **Connections > Destinations** and select the **Reverse ETL** tab. +2. Select the source and the model you want to edit. +3. On the overview tab, click **Edit** to edit your query. +4. Click the **Settings** tab to edit the model name or change the schedule settings. + + ### Edit your mapping To edit your mapping: diff --git a/src/connections/sources/catalog/cloud-apps/one-creation/index.md b/src/connections/sources/catalog/cloud-apps/one-creation/index.md index 5e7e157634..1456f35250 100644 --- a/src/connections/sources/catalog/cloud-apps/one-creation/index.md +++ b/src/connections/sources/catalog/cloud-apps/one-creation/index.md @@ -4,7 +4,7 @@ id: IB9M67ZWaA hidden: true --- -[One Creation](https://www.one-creation.com/){:target="_blank”} provides brands with a Digital Preference Wallet to confirm, collect, and digitize consumer preference data. By seamlessly integrating into every customer touchpoint, the platform enhances services while enforcing consent (including Time-Based Consent) and data sharing rules. +[One Creation](https://www.one-creation.com/){:target="_blank”} provides brands with a Digital Preference Wallet to collect, digitize, and refresh consumer preference data. By seamlessly integrating into every customer touchpoint, the platform enhances services while enforcing consent (including Time-Based Consent) and data sharing rules. This is an Event Cloud Source that can not only export data into your Segment warehouse but also federate the exported data into your other enabled Segment Destinations. @@ -34,22 +34,41 @@ The following table lists events that One Creation sends to Segment. These event | Event Name | Description | |------------------|---------------------------| -| Submitted preferences | User responded to a data request campaign | -| Expired data | Data associated with a campaign has expired | -| Extended preferences | User agrees to extending the data associated with a campaign | +| Submitted Preferences | User responded to a data request campaign | +| Expired Data | Data associated with a campaign has expired | +| Extended Preferences | User agrees to extending the data associated with a campaign | -1. When a user responds to an One Creation data request campaign, One Creation sends the user's response to Segment. This is achieved by triggering an Identify call to create the traits and a Track call to record the **Submitted preferences** action. Each trait is suffixed with the associated One Creation campaign ID. -2. When a user agrees to extend data usage through an One Creation extension campaign, One Creation triggers an Identify call to create extended traits suffixed with the associated One Creation campaign ID. Additionally, a Track call is triggered to record the **Extended preferences** action. -3. When data associated with a campaign expires, One Creation triggers an Identify call to update traits with the **Expired_** prefix and a Track call to record the **Expired data** action. +1. When a user responds to an One Creation data request campaign, One Creation sends the user's response to Segment. This is achieved by triggering an Identify call to create the traits and a Track call to record the **Submitted Preferences** event. +2. When a user agrees to extend data usage through an One Creation extension campaign, One Creation triggers an Identify call to update the user's extended traits with the latest values. Additionally, a Track call is triggered to record the **Extended Preferences** event. +3. When data associated with a campaign expires, One Creation triggers an Identify call to update traits with the **Expired_** prefix and a Track call to record the **Expired Data** event. ## Event properties -The following table lists the properties included in the events listed above. - -| Property Name | Description | -|---------------|-------------| -| `campaign.campaignId` | ID of the campaign the user responded to | -| `campaign.name` | name of the campaign the user responded to | +All One Creation events contain the associated One Creation campaign name, campaign ID, user ID of the individual who responded to the campaign, and the list of traits or properties that the user provided through this campaign. Here's a sample payload: + + { + "properties": { + "fav_color": "blue", + "fav_pet": "dog", + "response_at": "2024-09-10T14:38:57.524122374Z[GMT]" + }, + "context": { + "integration": { + "name": "one-creation", + "version": "1.0.0" + }, + "campaign": { + "name": "One Creation Demo Campaign", + "id": "e17a2a8e-4b0c-46f6-a193-77d72108edf4" + } + }, + "integrations": { + "All": true + }, + "event": "Submitted Preferences", + "userId": "75720996-3c82-4cc4-b0e5-67bd441fa9f3", + "type": "track" + } ## Adding destinations diff --git a/src/connections/sources/catalog/libraries/website/javascript/index.md b/src/connections/sources/catalog/libraries/website/javascript/index.md index 629c1fa5de..a36ba0f3fa 100644 --- a/src/connections/sources/catalog/libraries/website/javascript/index.md +++ b/src/connections/sources/catalog/libraries/website/javascript/index.md @@ -216,7 +216,7 @@ The `page` call has the following fields: | `name` | optional | String | The name of the page. | | `properties` | optional | Object | A dictionary of properties of the page. Note: Analytics.js collects `url`, `title`, `referrer` and `path` are automatically. This defaults to a `canonical url`, if available, and falls back to `document.location.href`. | | `options` | optional | Object | A dictionary of options. For example, [enable or disable specific destinations](#managing-data-flow-with-the-integrations-object) for the call. _Note: If you do not pass a `properties` object, pass an empty object (like '{}') before `options`_. | -| `callback` | optional | Function | A function that runs after a timeout of 300 ms, giving the browser time to make outbound requests first. | +| `callback` | optional | Function | A function that runs after a timeout of 300 ms, giving the browser time to make outbound requests first. However, this function might not execute if one of the device-mode libraries has been blocked from loading. | #### Default page properties @@ -362,7 +362,7 @@ analytics.identify("hello world") The `ready` method lets you pass in a method that gets called after Analytics.js finishes initializing and after all enabled device-mode destinations load. It's like [jQuery's `ready` method](https://api.jquery.com/ready/){:target="_blank"}, except for Destinations. Because it doesn't fire until all enabled device-mode destinations are loaded, it can't be used to change configuration options for downstream SDKs. That can only be done if the SDK is loaded natively. -The `ready` method isn't invoked if any Destination throws an error (for example, for an expired API key, incorrect settings configuration, or when a Destination is blocked by the browser) during initialization. +The `ready` method isn't invoked if any Destination throws an error (for example, for an expired API key, incorrect settings configuration, or when a Destination is blocked by the browser) during initialization. If you're looking to detect when Analytics.js has loaded, instead of using the `ready` method, you can listen for the `initialize` event to be emitted (`window.analytics.initialized`). This event returns `true` even when a destination is blocked. The code in the `ready` function only executes after `ready` is emitted. diff --git a/src/engage/audiences/send-audience-data.md b/src/engage/audiences/send-audience-data.md index 238c4e11e4..ce0b617d85 100644 --- a/src/engage/audiences/send-audience-data.md +++ b/src/engage/audiences/send-audience-data.md @@ -64,4 +64,7 @@ You can add and access mappings within your audience's connected destination by 4. In the **Add Mapping** popup, select the mapping that you want to add. 5. Segment then opens the destination's mappings tab. Add the mapping(s) you want, then click **Save**. -Segment then returns you to the audience's destination side panel, which shows your new mapping(s). \ No newline at end of file +Segment then returns you to the audience's destination side panel, which shows your new mapping(s). + +> success "" +> Use Segment's [Duplicate mappings](/docs/connections/destinations/actions/#duplicate-mappings) feature to create an exact copy of an existing mapping. The copied mapping has the same configurations and enrichments as your original mapping. \ No newline at end of file diff --git a/src/engage/journeys/send-data.md b/src/engage/journeys/send-data.md index 45c6f6af9e..eccb3b93d8 100644 --- a/src/engage/journeys/send-data.md +++ b/src/engage/journeys/send-data.md @@ -45,6 +45,8 @@ To use Trait Activation with Journeys: 2. Select [a supported](/docs/engage/trait-activation/trait-activation-setup/#set-up-a-destination) destination from a journey step. 3. Select **Customized Setup**, then add identifier and trait mappings to customize the way you send data to your destination. For more, visit the [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/#customized-setup/) and [ID Sync](/docs/engage/trait-activation/id-sync/#customized-setup/) setup docs. +> success "" +> Use Segment's [Duplicate mappings](/docs/connections/destinations/actions/#duplicate-mappings) feature to create an exact copy of an existing mapping. The copied mapping has the same configurations and enrichments as your original mapping. ## What events are sent to destinations? diff --git a/src/engage/trait-activation/index.md b/src/engage/trait-activation/index.md index 583d89fa5a..94b479559a 100644 --- a/src/engage/trait-activation/index.md +++ b/src/engage/trait-activation/index.md @@ -11,7 +11,6 @@ Use Trait Activation to configure sync payloads that you send from Engage Audien Trait Activation includes both [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) and [ID Sync](/docs/engage/trait-activation/id-sync/). With Trait Enrichment, use custom, SQL, computed, and predictive traits to enrich the data you map to your destinations or destination functions. Use ID Sync to select identifiers and a sync strategy for each identifier when syncing Engage Audiences to Destinations. - ## Trait Activation setup To get started with Trait Activation, you'll need to set up the destination that you'll use with [Trait Enrichment](/docs/engage/trait-activation/trait-enrichment/) and [ID Sync](/docs/engage/trait-activation/id-sync/). @@ -22,12 +21,13 @@ To get started with Trait Activation, you'll need to set up the destination that Select your destination, view its Segment documentation, then follow the corresponding required setup steps. -|-----------------------|---------------| -|Destination | Type | -| [Facebook Custom Audiences](/docs/connections/destinations/catalog/personas-facebook-custom-audiences/) | List | -| [Google Ads Remarketing Lists](/docs/connections/destinations/catalog/adwords-remarketing-lists/#overview) | List | -| [Destination Actions](/docs/connections/destinations/actions/#available-actions-based-destinations). | Actions | -| [Destination Functions](/docs/connections/functions/destination-functions/#create-a-destination-function) | Function | +|Destination | Type | Compatible with Trait Enrichment | Compatible with ID Sync | +|-----------------------| -----------------------------------------------------------------------------------| --------------------------------- | ----------------------- | +| [Facebook Custom Audiences](/docs/connections/destinations/catalog/personas-facebook-custom-audiences/) | List | ![Supported](/docs/images/supported.svg){:class="inline"} | ![Supported](/docs/images/supported.svg){:class="inline"} | +| [Google Ads Remarketing Lists](/docs/connections/destinations/catalog/adwords-remarketing-lists/#overview) | List | ![Supported](/docs/images/supported.svg){:class="inline"} | ![Supported](/docs/images/supported.svg){:class="inline"} | +| [Destination Actions](/docs/connections/destinations/actions/#available-actions-based-destinations) | Actions | ![Supported](/docs/images/supported.svg){:class="inline"} | ![Supported](/docs/images/supported.svg){:class="inline"} | +| [Destination Functions](/docs/connections/functions/destination-functions/#create-a-destination-function) | Function | ![Supported](/docs/images/supported.svg){:class="inline"} | ![Supported](/docs/images/supported.svg){:class="inline"} | +| [Classic Destinations](/docs/connections/destinations/#add-a-destination) | Classic | ![Unsupported](/docs/images/unsupported.svg){:class="inline"} | ![Supported](/docs/images/supported.svg){:class="inline"} | ### Resyncs diff --git a/src/segment-app/extensions/dbt.md b/src/segment-app/extensions/dbt.md index 45dca99bb4..acef4c709a 100644 --- a/src/segment-app/extensions/dbt.md +++ b/src/segment-app/extensions/dbt.md @@ -48,7 +48,10 @@ To set up dbt Cloud: 1. In your Segment workspace, navigate to **Settings > Extensions**. 2. Click **Manage dbt Cloud**. -3. Add your dbt Cloud API key, and, optionally, a custom subdomain. Click **Save**. +3. Add your dbt Cloud API key or dbt Personal Access Token and an optional custom subdomain, then click **Save**. + +> info "Add a custom subdomain" +> By default, dbt sets the subdomain to 'cloud'. To identify your custom subdomain, open your URL and copy the portion before `.getdbt.com`. For example, if your domain was `https://subdomain.getdbt.com/`, your subdomain would be `subdomain`. ### Model syncs @@ -65,4 +68,4 @@ After you've successfully set up dbt with a warehouse and connected to your Git 5. Click **Next**. 6. Enter your **Model Name**, then click **Create Model**. -To change a connected model, ensure that you've removed it from all active Reverse ETL syncs. \ No newline at end of file +To change a connected model, ensure that you've removed it from all active Reverse ETL syncs. diff --git a/src/unify/salesforce-unify.md b/src/unify/salesforce-unify.md index 341171a8f5..69563409bd 100644 --- a/src/unify/salesforce-unify.md +++ b/src/unify/salesforce-unify.md @@ -7,6 +7,9 @@ This guide outlines the process for setting up Salesforce as a data source with Once configured, this integration lets you send Salesforce data directly to Segment Profiles, eliminating the need for a data warehouse and enabling faster data synchronization and profile enrichment. +> info "API usage and billing" +> The Salesforce Unify Direct Profile Integration increases API usage. Verify your API limits and Segment billing before you enable the Salesforce Unify Direct Profile Integration. + ## Prerequisites Before you begin, make sure that you have the following: @@ -61,9 +64,10 @@ Next, add a Segment Profiles destination: Finish by enabling the destination mappings and the source: -1. From the overview tab of the Segment Profiles destination you created, toggle the **Mapping Status** switch to **Enabled**. -2. Return to your Salesforce source and navigate to **Settings > Basic settings.** -2. Toggle the **Enable source** switch to on. +1. From the settings tab of the Segment Profiles destination you created, toggle the **Enable destination** switch to **Enabled**, then click **Save**. +2. From the overview tab of the same Segment Profiles destination, toggle the **Mapping Status** switch to **Enabled**. +3. Return to your Salesforce source and navigate to **Settings > Basic settings**. +4. Toggle the **Enable source** switch to on. Data now begins syncing between Salesforce and Segment.