diff --git a/src/_data/catalog/destination_categories.yml b/src/_data/catalog/destination_categories.yml index 65fa36b340..c3c32f7320 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 2025-05-08 +# destination categories last updated 2025-05-15 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 55657d2fb1..2362069b55 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 2025-05-08 +# destination data last updated 2025-05-15 items: - id: 637e8d185e2dec264895ea89 display_name: 1Flow @@ -33546,7 +33546,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: 27xeTbG8fme8euDUUdDY4V + - id: gRedBRTrTuyThFLqG3M8Cp sortOrder: 0 fieldKey: action label: Action @@ -33560,7 +33560,7 @@ items: choices: null dynamic: false allowNull: false - - id: vxMm8vUmpJisCkm6RbA3XZ + - id: 7ZSV6VcoKXW8x3TZRJNWGT sortOrder: 1 fieldKey: email label: Email Address @@ -33580,7 +33580,7 @@ items: choices: null dynamic: false allowNull: false - - id: 2EhURtqVsnTHq9iZ4jtdZ5 + - id: o9jux47LvMFBJw2D1YjgNV sortOrder: 2 fieldKey: properties label: Properties @@ -33602,7 +33602,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: xvFMHemGWedTpXSNmZFGob + - id: b1XyG7x9fjecv4aAHgFkHV sortOrder: 0 fieldKey: custom_fields label: Custom fields @@ -33618,7 +33618,7 @@ items: choices: null dynamic: false allowNull: false - - id: vD3PhGhkxqddSJXLb8KkBt + - id: ihXziExRFv7ayQbwBiMvyR sortOrder: 1 fieldKey: email label: Email Address @@ -33632,7 +33632,7 @@ items: choices: null dynamic: false allowNull: false - - id: b2URVZk5z6wiZbaKFKKVVm + - id: 21ek8DZ1RDmtVkrP7JQu69 sortOrder: 2 fieldKey: ip label: IP Address @@ -33646,7 +33646,7 @@ items: choices: null dynamic: false allowNull: false - - id: h2Dt3w2B5YxzsCvZsQRv4E + - id: a3TBhnWe67WTNepn6CXjTe sortOrder: 3 fieldKey: phone label: SMS Number @@ -33660,7 +33660,7 @@ items: choices: null dynamic: false allowNull: false - - id: rJijDWLPkc3eX8YnRSsJdq + - id: fkBDQXd9GSxkvghxsUX4y9 sortOrder: 4 fieldKey: initial_status label: Initial Status @@ -33679,7 +33679,7 @@ items: choices: null dynamic: false allowNull: false - - id: aMt1SrZ8VBzF7qgu5y1A7e + - id: fXB5rQR2Xx8Vbwa3KE552A sortOrder: 5 fieldKey: status label: Status @@ -33693,7 +33693,7 @@ items: choices: null dynamic: false allowNull: false - - id: pdpbCWQxk5LJMUW1NXWZr6 + - id: mPdp8U2R4H4JKr2WmywJGd sortOrder: 6 fieldKey: status_updated_at label: Status Updated At @@ -33707,7 +33707,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4uBC7uPGdcPz8f9jpWpFwg + - id: 9JgLwQgg3X3tdbGNM65KS5 sortOrder: 7 fieldKey: tags label: Tags @@ -33723,7 +33723,7 @@ items: choices: null dynamic: false allowNull: false - - id: 33GRsPKbfgFgkw4bF4FSzF + - id: cRKNWANtdRBuBKSZfEmVHr sortOrder: 8 fieldKey: timezone label: Timezone @@ -33737,7 +33737,7 @@ items: choices: null dynamic: false allowNull: false - - id: 8U9bip46MJRd6jfGQF5NA4 + - id: bDeQCT5FBLEyUaLf9SFE2g sortOrder: 9 fieldKey: enable_batching label: Enable Batching? @@ -33750,6 +33750,22 @@ items: dynamic: false allowNull: false presets: + - actionId: pw7SY1gPNo8zVZHQDHC8nB + name: Track event + fields: + action: + '@path': $.event + email: + '@if': + exists: + '@path': $.properties.email + then: + '@path': $.properties.email + else: + '@path': $.context.traits.email + properties: + '@path': $.properties + trigger: type = "track" - actionId: sLfpFVRwsHj4GTBP3LEqBy name: Identify fields: @@ -33777,22 +33793,6 @@ items: timezone: '@path': $.context.timezone trigger: type = "identify" - - actionId: pw7SY1gPNo8zVZHQDHC8nB - name: Track event - fields: - action: - '@path': $.event - email: - '@if': - exists: - '@path': $.properties.email - then: - '@path': $.properties.email - else: - '@path': $.context.traits.email - properties: - '@path': $.properties - trigger: type = "track" partnerOwned: true - id: 64ede9fe67158afa8de61480 display_name: Dynamic Yield by Mastercard Audiences @@ -73813,7 +73813,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: 2XgVp3JEkB7YLC72hhweKt + - id: 6msL95azxnJMrr68PHsxb4 sortOrder: 0 fieldKey: email label: Email @@ -73829,7 +73829,7 @@ items: choices: null dynamic: false allowNull: false - - id: o9TvdcDRP1sJ5YMDdxNoY1 + - id: Uurqqw7sCRQDBExEhSie4 sortOrder: 1 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -73841,7 +73841,7 @@ items: choices: null dynamic: false allowNull: false - - id: 968L6DBDbk3iykHYtWFYPi + - id: odtzYCmaMTMMBY6uvjPVjn sortOrder: 2 fieldKey: phone_number label: Phone Number @@ -73858,7 +73858,7 @@ items: choices: null dynamic: false allowNull: false - - id: fzK43uYjunnNqXKZ7hUByF + - id: 7JDabiXi5sXbWGid2pgBVq sortOrder: 3 fieldKey: country_code label: Country Code @@ -74367,7 +74367,7 @@ items: value: ZW dynamic: false allowNull: false - - id: pQKBfpNBLVU3XDLENro8cP + - id: mvJMc4zCNEbVX2wox6bya8 sortOrder: 4 fieldKey: external_id label: External ID @@ -74382,7 +74382,7 @@ items: choices: null dynamic: false allowNull: false - - id: ohoDzvreZk8KsCr2HMJeha + - id: 4WwtN7phgBqGLaVhcseB8o sortOrder: 5 fieldKey: first_name label: First Name @@ -74396,7 +74396,7 @@ items: choices: null dynamic: false allowNull: false - - id: q7YqGidKdzavEVo7ckyq88 + - id: rggYRFABfnYoC4wwv9X8kQ sortOrder: 6 fieldKey: last_name label: Last Name @@ -74410,7 +74410,7 @@ items: choices: null dynamic: false allowNull: false - - id: czocTshjGXdaEue3j4FT3j + - id: rEX3QAZ41TxY6bLmno7u7d sortOrder: 7 fieldKey: organization label: Organization @@ -74426,7 +74426,7 @@ items: choices: null dynamic: false allowNull: false - - id: 88WPvSc8NAmyrC7Yj68p3w + - id: 2BC9T57dRsv391NHTkN9Le sortOrder: 8 fieldKey: title label: Title @@ -74440,7 +74440,7 @@ items: choices: null dynamic: false allowNull: false - - id: 3tuUtkwTRx5rFq1oeZsW3q + - id: r35vwz2KJs82cnzfhBD17H sortOrder: 9 fieldKey: image label: Image @@ -74454,7 +74454,7 @@ items: choices: null dynamic: false allowNull: false - - id: obVNHopBLvnjzxYZKDQp2Z + - id: 2svqrLcTUbxVeqUA11pBRA sortOrder: 10 fieldKey: location label: Location @@ -74477,7 +74477,7 @@ items: choices: null dynamic: false allowNull: false - - id: kPR5TfvLXHRUQnUQ9e6jFy + - id: dzUz5ih8hc6stC35FMhUXG sortOrder: 11 fieldKey: properties label: Properties @@ -74493,7 +74493,7 @@ items: choices: null dynamic: false allowNull: false - - id: t1c1wZHKox3qZDb1GeGfEY + - id: pFqVZaJjWDWzCbPXm4DfRS sortOrder: 12 fieldKey: list_id label: List @@ -74505,8 +74505,8 @@ items: choices: null dynamic: true allowNull: false - - id: v13sRRHoWprkrExaQH7MWL - sortOrder: 15 + - id: 9RSy39oYgghpJom138EmoT + sortOrder: 16 fieldKey: list_identifier label: Existing List ID type: STRING @@ -74519,8 +74519,8 @@ items: choices: null dynamic: true allowNull: false - - id: jFvsmTMox9PXTDp5Lr8r1A - sortOrder: 16 + - id: aRMza6JLMnzPW73bJu8Hip + sortOrder: 17 fieldKey: list_name label: Name of list to create type: STRING @@ -74531,8 +74531,8 @@ items: choices: null dynamic: false allowNull: false - - id: jGNGwBmCxRWzgj8b57yWLh - sortOrder: 17 + - id: 93QDo5j8Zsera8XUQGTa5Z + sortOrder: 18 fieldKey: retlOnMappingSave label: Connect to a static list in Klaviyo type: OBJECT @@ -74554,7 +74554,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: ctiLZLWKDyqqCrMcMqDnXw + - id: iTpqfm9xfVyqgBR5Z7Uzed sortOrder: 0 fieldKey: profile label: Profile @@ -74566,7 +74566,7 @@ items: choices: null dynamic: false allowNull: false - - id: rGHU9KUw8KmxbK1u2pwZpX + - id: wMuUHukT3DBBUXgLHzWU4U sortOrder: 1 fieldKey: properties label: Properties @@ -74580,7 +74580,7 @@ items: choices: null dynamic: false allowNull: false - - id: jnJP5XD9E3eRabuobwTeV8 + - id: f5YawFvNCeoqEEJbaGwVSi sortOrder: 2 fieldKey: time label: Time @@ -74599,7 +74599,7 @@ items: choices: null dynamic: false allowNull: false - - id: jSLoepXPrbCX2B3epFYywV + - id: iyTrvk6EJU1r2j52qq4DV5 sortOrder: 3 fieldKey: value label: Value @@ -74613,7 +74613,7 @@ items: choices: null dynamic: false allowNull: false - - id: uiVcqaCCMWmLMwxZk2s9HJ + - id: iYVofqjW7hQB7ZbkPbAA51 sortOrder: 4 fieldKey: unique_id label: Unique ID @@ -74633,7 +74633,7 @@ items: choices: null dynamic: false allowNull: false - - id: ueGDd8PbMmLJEGzcWQqnd3 + - id: wFVvE9zcaTgKJaiYsW2i8A sortOrder: 5 fieldKey: products label: Products @@ -74645,7 +74645,7 @@ items: choices: null dynamic: false allowNull: false - - id: dscn8qTcNy2wviaTHD11EK + - id: nRWSjkdoP4UPzBvEvNG6kc sortOrder: 6 fieldKey: event_name label: Event Name @@ -74660,7 +74660,7 @@ items: choices: null dynamic: false allowNull: false - - id: dUtP3jnWnVdiZ9xVz5YgNj + - id: iwCuV9PyktxmaL4qCRTtCt sortOrder: 7 fieldKey: product_event_name label: Product Event Name @@ -74684,7 +74684,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: wKkHxrMwAkkZk9py6WrMF1 + - id: tL8FcFEZkE24XQLdD2vo9a sortOrder: 0 fieldKey: profile label: Profile @@ -74696,7 +74696,7 @@ items: choices: null dynamic: false allowNull: false - - id: ksGsoNpVPHWf51xWntP6Zi + - id: marvhHBTypLrkargLBG6Hm sortOrder: 1 fieldKey: metric_name label: Metric Name @@ -74710,7 +74710,7 @@ items: choices: null dynamic: false allowNull: false - - id: vrd2oot3LGXGwMtuUKh5ma + - id: wZX3rhnAFUqtQXQA7BH9vV sortOrder: 2 fieldKey: properties label: Properties @@ -74724,7 +74724,7 @@ items: choices: null dynamic: false allowNull: false - - id: mM47ns3rBozpPHwdCAXqxS + - id: ixQ86ughDVwP38LywjVUgn sortOrder: 3 fieldKey: time label: Time @@ -74743,7 +74743,7 @@ items: choices: null dynamic: false allowNull: false - - id: ffnm73PrVbrwWFFHk9xMeQ + - id: thPaNWKXMXpJAR8kbk1esU sortOrder: 4 fieldKey: value label: Value @@ -74757,7 +74757,7 @@ items: choices: null dynamic: false allowNull: false - - id: eEors7aQdh2f6Ex6adav2L + - id: oRTuTm9ZjoXH8P7UwvsiPk sortOrder: 5 fieldKey: unique_id label: Unique ID @@ -74777,7 +74777,7 @@ items: choices: null dynamic: false allowNull: false - - id: xeG1x3znizXTufEUcfEqLC + - id: 6ou4tXSNsSJ5Phfip5mxzD sortOrder: 6 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -74798,7 +74798,7 @@ items: hidden: false defaultTrigger: event = "Audience Exited" fields: - - id: pXVCQSRnupZcx7tiwcbSJq + - id: bebZZERWjKzP8KwUwPtcts sortOrder: 0 fieldKey: email label: Email @@ -74812,7 +74812,7 @@ items: choices: null dynamic: false allowNull: false - - id: stXtMjgTbF8HBG3k8akVk7 + - id: cjaEwTpZCtB5142P1hWMYc sortOrder: 1 fieldKey: external_id label: External ID @@ -74826,7 +74826,7 @@ items: choices: null dynamic: false allowNull: false - - id: Ujcur5Eg1rwTjQbPSKdCx + - id: 7x3mWtn2Ui7jE7MRRjpKjo sortOrder: 3 fieldKey: phone_number label: Phone Number @@ -74843,7 +74843,7 @@ items: choices: null dynamic: false allowNull: false - - id: kM73bukH6vgu6rTzvYTQB5 + - id: aqeu4BDNTsYr5hBdjuGkzs sortOrder: 4 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -74856,7 +74856,7 @@ items: choices: null dynamic: false allowNull: false - - id: hTnTKLuJChNNWuoynK579s + - id: ivqvZ2qJv8yhmYRuPehNZ3 sortOrder: 5 fieldKey: country_code label: Country Code @@ -75373,7 +75373,7 @@ items: hidden: false defaultTrigger: event = "Audience Entered" fields: - - id: qhnVHthxB4AzNDVofTY217 + - id: iNMbhFx9LSZyKnYqj4iaCW sortOrder: 0 fieldKey: email label: Email @@ -75387,7 +75387,7 @@ items: choices: null dynamic: false allowNull: false - - id: e2xowXkFRXwshM2m55WyNg + - id: 9MUBqWgPoCxeW3WpDr4vob sortOrder: 1 fieldKey: phone_number label: Phone Number @@ -75404,7 +75404,7 @@ items: choices: null dynamic: false allowNull: false - - id: 6mxEbgKJu7LnS8Uj761AuB + - id: wTkbafB7oUNuoPiKo6DvuG sortOrder: 3 fieldKey: external_id label: External ID @@ -75418,7 +75418,7 @@ items: choices: null dynamic: false allowNull: false - - id: o45v2DzAndKRvfNrmif4Dw + - id: hFUjQ2iHLFiJXhRFpZVLW3 sortOrder: 4 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -75431,7 +75431,7 @@ items: choices: null dynamic: false allowNull: false - - id: i8SM1XZuQVD2C9FkSyefC5 + - id: crFjvXVP7Gn1m9TmhUt28r sortOrder: 6 fieldKey: first_name label: First Name @@ -75445,7 +75445,7 @@ items: choices: null dynamic: false allowNull: false - - id: bUzPoH1zg1zomd13qDpqvv + - id: 9oG5ixMzx4aTmdaEJ5vBdj sortOrder: 7 fieldKey: last_name label: Last Name @@ -75459,7 +75459,7 @@ items: choices: null dynamic: false allowNull: false - - id: fU8AoNQcnBLANEtDEZ7wLv + - id: jdwdLBBjHWAT3gN1WfVmdq sortOrder: 8 fieldKey: image label: Image @@ -75473,7 +75473,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5CPJqQhZFA1PmEykERZWJa + - id: iPrjovqZg41aPbH7crA4eE sortOrder: 9 fieldKey: title label: Title @@ -75487,7 +75487,7 @@ items: choices: null dynamic: false allowNull: false - - id: pKTDj74oGVKfhqBNb6Efor + - id: ouRoSxbKF9sCJJ3LULR6Hv sortOrder: 10 fieldKey: organization label: Organization @@ -75503,7 +75503,7 @@ items: choices: null dynamic: false allowNull: false - - id: jR1JWM3pKtqsWXUdwoWGcb + - id: uASptKjdri5ikJC3guaSdR sortOrder: 11 fieldKey: location label: Location @@ -75526,7 +75526,7 @@ items: choices: null dynamic: false allowNull: false - - id: wkphnqCUdBU1VfPcaTp9o4 + - id: nCjqiL3axBDqXzQH4av4uq sortOrder: 12 fieldKey: properties label: Properties @@ -75542,7 +75542,7 @@ items: choices: null dynamic: false allowNull: false - - id: TLvzsng9hsDhWm8MUBXF + - id: cnmM5bWSNDanfj8EDXabmq sortOrder: 13 fieldKey: country_code label: Country Code @@ -76059,7 +76059,7 @@ items: hidden: false defaultTrigger: type = "Identify" fields: - - id: ngoNmC1iuLzgBFJ3s9fVcK + - id: apTmu4MB2ZXMuW3ZGPBJ4E sortOrder: 0 fieldKey: email label: Email @@ -76073,7 +76073,7 @@ items: choices: null dynamic: false allowNull: false - - id: gZ6zgfkXFaeHVzkBAWuDPh + - id: i6bcdoBr4RVUMYuEZLypmb sortOrder: 1 fieldKey: external_id label: External ID @@ -76088,7 +76088,7 @@ items: choices: null dynamic: false allowNull: false - - id: hybeDqRQ4U4hXNfyQwYGg1 + - id: 7wPEM3FhsRfBgzSpbszgpb sortOrder: 2 fieldKey: list_id label: List @@ -76100,7 +76100,7 @@ items: choices: null dynamic: true allowNull: false - - id: fDEp2eMExqrPPko2QE8L1Z + - id: xqdEjRbwxoka4HCo9WvPEq sortOrder: 3 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -76113,7 +76113,7 @@ items: choices: null dynamic: false allowNull: false - - id: 2cvDKUD2URE5PCUjkGVkom + - id: qjmH3aEGz6UYAzxxnm1rj4 sortOrder: 5 fieldKey: phone_number label: Phone Number @@ -76130,7 +76130,7 @@ items: choices: null dynamic: false allowNull: false - - id: dJwKkXPiTkhFzPKvGQZhrh + - id: j5X8vftMkGdBAHu9YuqDgE sortOrder: 6 fieldKey: country_code label: Country Code @@ -76647,7 +76647,7 @@ items: hidden: false defaultTrigger: type = "track" and event = "User Subscribed" fields: - - id: x8wgkHNxwAGRQip2hktkPu + - id: b2QWhe5dH6WPJgeQKQAoij sortOrder: 0 fieldKey: email label: Email @@ -76669,7 +76669,7 @@ items: choices: null dynamic: false allowNull: false - - id: iTE8BR1x2WApp8AZ9kv21F + - id: nGzmSh3xKZWzNHedZPrAFA sortOrder: 1 fieldKey: phone_number label: Phone Number @@ -76691,7 +76691,7 @@ items: choices: null dynamic: false allowNull: false - - id: cU6V6QCm9y9MtTxgnda67N + - id: izHEyrRBNESCJZAi9oBVxH sortOrder: 2 fieldKey: country_code label: Country Code @@ -77200,7 +77200,7 @@ items: value: ZW dynamic: false allowNull: false - - id: uHfMqAyyMwHuahcsdS4baw + - id: x8pjjg9yoQTvDjWauoNE1B sortOrder: 3 fieldKey: list_id label: List Id @@ -77215,7 +77215,7 @@ items: choices: null dynamic: true allowNull: false - - id: aK2YiDhgZ9R6MXJfxvM4ui + - id: j7cFiPGXA6LntXdbpwiuLM sortOrder: 4 fieldKey: custom_source label: Custom Source ($source) @@ -77232,7 +77232,7 @@ items: choices: null dynamic: false allowNull: false - - id: mbW6nFUQBZmkftmTjGjdb6 + - id: h4tVceGeik3CCn6hQoTBQ5 sortOrder: 5 fieldKey: consented_at label: Consented At @@ -77246,7 +77246,7 @@ items: choices: null dynamic: false allowNull: false - - id: rdB6kbVSeTQyLaBa2zWjHd + - id: cEpePjHzBeJNJHQshcPre6 sortOrder: 6 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -77266,7 +77266,7 @@ items: hidden: false defaultTrigger: type = "track" and event = "User Unsubscribed" fields: - - id: 3aeD5eeARkQhzfUBzZ57uT + - id: pxaZyk16EYtRnpj8YnBgT4 sortOrder: 0 fieldKey: email label: Email @@ -77288,7 +77288,7 @@ items: choices: null dynamic: false allowNull: false - - id: tZKE598uEcCbTGhPUdMUwA + - id: 43C73SffdoA9sMQrsV972P sortOrder: 1 fieldKey: phone_number label: Phone Number @@ -77310,7 +77310,7 @@ items: choices: null dynamic: false allowNull: false - - id: jpYHKZ4rNuvmJQzFV7dfwZ + - id: hJkpp1YbaLqEFEh769GSv7 sortOrder: 2 fieldKey: country_code label: Country Code @@ -77819,7 +77819,7 @@ items: value: ZW dynamic: false allowNull: false - - id: fLvJ6LQmLLj9HUcuQnMUoU + - id: qqVxNuQUrDUokrPPDVExLx sortOrder: 3 fieldKey: list_id label: List Id @@ -77833,7 +77833,7 @@ items: choices: null dynamic: true allowNull: false - - id: wDJtajggf9nUL891fzvnr + - id: k12cuw86NPxz3wqAwADkvA sortOrder: 4 fieldKey: enable_batching label: Batch Data to Klaviyo @@ -81209,7 +81209,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: qFRbaWWVfVJKiSkEqCcECM + - id: saUE98xXQNKCMaXGEueygi sortOrder: 0 fieldKey: createdAt label: Contact Created Date @@ -81222,7 +81222,7 @@ items: dynamic: false allowNull: false hidden: false - - id: tWut447ysGn2rHAm9UV8Fo + - id: kT197A1DR6mByTYDuw2t6z sortOrder: 1 fieldKey: customAttributes label: Custom Contact Attributes @@ -81237,7 +81237,7 @@ items: dynamic: false allowNull: false hidden: false - - id: sLT73VR6btBx53CT6mER3Y + - id: kHZjjfoHc6DCRsQkppWWBb sortOrder: 2 fieldKey: email label: Contact Email @@ -81260,7 +81260,7 @@ items: dynamic: false allowNull: false hidden: false - - id: kWBNoLzbHkHY6LtvKpRRbf + - id: aoeiuuCARKmvNZ2KNvifp8 sortOrder: 3 fieldKey: firstName label: First Name @@ -81275,7 +81275,7 @@ items: dynamic: false allowNull: false hidden: false - - id: cHpN9SnhedNha7zMpBnLqK + - id: sj4WZbVZ6xJ3BA4Z6ryS4S sortOrder: 4 fieldKey: lastName label: Last Name @@ -81290,7 +81290,7 @@ items: dynamic: false allowNull: false hidden: false - - id: uaULgUo597JX9w8SQXCiFQ + - id: 3rPXp6Po71BFRyGfLzpsTE sortOrder: 5 fieldKey: mailingLists label: Mailing Lists @@ -81306,7 +81306,7 @@ items: choices: null dynamic: false allowNull: false - - id: cusLRxRiVDQ2z4ZGjkdihF + - id: bm2GoSrZtHvizWPXwwnT3q sortOrder: 6 fieldKey: source label: Source @@ -81326,7 +81326,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 6rG5ZKVrikKar1HZKJGndR + - id: aBK7Ypm9ZxR7vVeAVpKKQi sortOrder: 7 fieldKey: subscribed label: Subscribed @@ -81339,7 +81339,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 5EhCQfSmE1b4FdPdFCJzLa + - id: rACQwH8uwrBHNmdGKEaypa sortOrder: 8 fieldKey: userGroup label: User Group @@ -81354,7 +81354,7 @@ items: dynamic: false allowNull: false hidden: false - - id: vahmJWyvDuJd2ieT5mAYJD + - id: 49MbFBUcrFiF6RgFEGDLKh sortOrder: 9 fieldKey: userId label: User ID @@ -81377,7 +81377,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: 3L5d2pmHxWbEpYFFG1FXDy + - id: ksW79VAYTZEdjhQyxtF2oi sortOrder: 0 fieldKey: email label: Contact Email @@ -81398,7 +81398,7 @@ items: dynamic: false allowNull: false hidden: false - - id: we9vxDZmdCNoWDWYpyGszh + - id: rd1NL8MW32wEKTSRDWnW22 sortOrder: 1 fieldKey: eventName label: Event Name @@ -81413,7 +81413,7 @@ items: dynamic: false allowNull: false hidden: false - - id: gS5vwewLWEV7jpQwWfyckZ + - id: 3RZVRHBjBfcnQajSZP1oZG sortOrder: 2 fieldKey: userId label: User ID @@ -81428,8 +81428,20 @@ items: dynamic: false allowNull: false hidden: false - - id: xrC6tRMEBjpNKEMckiKD7N + - id: bJMnKShgbnkASzZmVaZURx sortOrder: 3 + fieldKey: contactProperties + label: Contact Properties + type: OBJECT + description: Optional properties that will be updated on the event's contact. + placeholder: '' + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: o2UDRp7uYpv5dtCSnrgxrk + sortOrder: 4 fieldKey: eventProperties label: Event Properties type: OBJECT @@ -129627,6 +129639,273 @@ items: actions: [] presets: [] partnerOwned: false +- id: 664ce847b3e6f19ea96b3611 + display_name: Trubrics + name: Trubrics + slug: trubrics + hidden: true + endpoints: + - US + regions: + - us-west-2 + - eu-west-1 + url: connections/destinations/catalog/trubrics + previous_names: + - Trubrics + website: https://www.trubrics.com/ + status: PUBLIC_BETA + categories: + - Analytics + logo: + url: https://cdn-devcenter.segment.com/f7054fe0-ac59-4a4a-993c-64b70d264587.svg + mark: + url: https://cdn-devcenter.segment.com/81ca64d0-9685-4252-8c19-1d0e241777b0.svg + methods: + track: true + identify: true + group: true + alias: true + screen: false + page: true + platforms: + browser: true + mobile: false + server: true + warehouse: false + cloudAppObject: false + linkedAudiences: 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 Trubrics Project API Key. This can be found in your project settings. + required: true + label: Project API Key + - name: url + type: string + defaultValue: app.trubrics.com/api/ingestion + description: The Trubrics API URL. In most cases the default value should be used. + required: true + label: Project URL + actions: + - id: npifd5A1kfN4M5maMqFRDq + name: Track + slug: track + description: Track an event in Trubrics. + platform: CLOUD + hidden: false + defaultTrigger: type = "track" + fields: + - id: 2XZFi9dXNVVTrYu2Uj76zw + sortOrder: 0 + fieldKey: event + label: Event Name + type: STRING + description: The event name + placeholder: '' + defaultValue: + '@path': $.event + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: koka273tbMqRuv2K7Ye4Ju + sortOrder: 1 + fieldKey: timestamp + label: Timestamp + type: STRING + description: The timestamp of the event + placeholder: '' + defaultValue: + '@path': $.timestamp + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: hDnAo1Xn6jtsHWhDkmQKJs + sortOrder: 2 + fieldKey: user_id + label: User ID + type: STRING + description: The ID associated with the user + placeholder: '' + defaultValue: + '@path': $.userId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: wNps8Fy3WAZzuveBd4fThN + sortOrder: 3 + fieldKey: llm_properties + label: LLM Event Properties + type: OBJECT + description: The properties associated with an LLM event + placeholder: '' + defaultValue: + assistant_id: + '@path': $.properties.$trubrics_assistant_id + prompt: + '@path': $.properties.$trubrics_prompt + generation: + '@path': $.properties.$trubrics_generation + thread_id: + '@path': $.properties.$trubrics_thread_id + latency: + '@path': $.properties.$trubrics_latency + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 2M18uCabn3oQttLYVnyjk4 + sortOrder: 4 + fieldKey: properties + label: Event properties + type: OBJECT + description: Properties to send with the event + placeholder: '' + defaultValue: + '@path': $.properties + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: gLkbH2V1Zz85V8pkWQPHbX + sortOrder: 5 + fieldKey: context + label: Context properties + type: OBJECT + description: Context properties to send with the event + placeholder: '' + defaultValue: + '@path': $.context + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: ksRRPD5tvNEx1YhERseFCm + sortOrder: 6 + fieldKey: anonymous_id + label: Anonymous ID + type: STRING + description: The Anonymous ID associated with the user + placeholder: '' + defaultValue: + '@path': $.anonymousId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: djJoiJJtPaNLHffqmrY8DB + sortOrder: 7 + fieldKey: enable_batching + label: Enable Batching? + type: BOOLEAN + description: When enabled, Segment will send events in batches. + defaultValue: false + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: qc7FSNbUF9k2XFtyEBAqrY + name: Identify + slug: identify + description: Identify a user in Trubrics and associate traits with them. + platform: CLOUD + hidden: false + defaultTrigger: null + fields: + - id: eMmQ8NVRvem7fTxQKmrwfk + sortOrder: 0 + fieldKey: user_id + label: User ID + type: STRING + description: The ID of the user performing the event. + placeholder: '' + defaultValue: + '@path': $.userId + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: bJtHKnFSyw2e4TiEDesX5r + sortOrder: 1 + fieldKey: anonymous_id + label: Anonymous ID + type: STRING + description: An anonymous identifier + placeholder: '' + defaultValue: + '@path': $.anonymousId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: r52J6x37gQUtjE9WZSzdXi + sortOrder: 2 + fieldKey: traits + label: Traits + type: OBJECT + description: The traits of the user. + placeholder: '' + defaultValue: + '@path': $.traits + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: mocNxSyNFohppmGDGpn4eM + sortOrder: 3 + fieldKey: timestamp + label: Timestamp + type: STRING + description: The timestamp of the event + placeholder: '' + defaultValue: + '@path': $.timestamp + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: oeE8VciUa4J2hqEWdRJ87J + sortOrder: 4 + fieldKey: enable_batching + label: Enable Batching? + type: BOOLEAN + description: When enabled, Segment will send events in batches. + defaultValue: false + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + presets: [] + partnerOwned: true - id: 5c6e52858392d6000101d4c1 display_name: Trustpilot name: Trustpilot @@ -132851,7 +133130,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: sBAZr141xZwY3MANfrF9DR + - id: 7ViW1xzzZiY9nmvgwp8k8B sortOrder: 0 fieldKey: userId label: User ID @@ -132872,7 +133151,7 @@ items: dynamic: false allowNull: false hidden: false - - id: wGefAWwQKqqjA3M8TiNZPR + - id: svW6q29X2sUH5VDn6pgzkV sortOrder: 1 fieldKey: createdAt label: User Created At Date @@ -132887,7 +133166,7 @@ items: dynamic: false allowNull: false hidden: false - - id: oe7sSEiFG1JfVMt26rJHXT + - id: 7uiFywYJ6ZxnDrFuvDRB4E sortOrder: 2 fieldKey: traits label: Traits @@ -132913,7 +133192,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: vGTS6CeR9QijXfMbF3dxEG + - id: pKLxRodmWFqm7nTMHywFM8 sortOrder: 0 fieldKey: userId label: User ID @@ -132934,7 +133213,7 @@ items: dynamic: false allowNull: false hidden: false - - id: bNTTP7EA5AssWafwiBHuDP + - id: w7MQASCS1EZUqzVhDVrKqu sortOrder: 1 fieldKey: name label: Name @@ -132949,7 +133228,7 @@ items: dynamic: false allowNull: false hidden: false - - id: tNqv52A7ZZv2gfesCV31GH + - id: w6wnNF6dEBFeRPVxGoXmXM sortOrder: 2 fieldKey: properties label: Properties @@ -132964,23 +133243,70 @@ items: dynamic: false allowNull: false hidden: false + - id: dwXNNckdd2oaRcK4vfbGK5 + name: Identify Company + slug: identifyCompany + description: >- + Defines a company in Userpilot, you can visit [Userpilot + docs](https://docs.userpilot.com/article/23-identify-users-track-custom-events) + for more information. + platform: CLOUD + hidden: false + defaultTrigger: type = "group" + fields: + - id: 2wpnHpysrk6rJ8SFf5UAH + sortOrder: 0 + fieldKey: groupId + label: Company ID + type: STRING + description: The ID of the company. + placeholder: '' + defaultValue: + '@path': $.groupId + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: e7KXptYmYG9qvP9nAqExHR + sortOrder: 1 + fieldKey: createdAt + label: Company Created At Date + type: DATETIME + description: The date the company profile was created at + placeholder: '' + defaultValue: + '@path': $.traits.createdAt + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: hvc8YYWQHfvW77JdFz7M49 + sortOrder: 2 + fieldKey: traits + label: Traits + type: OBJECT + description: Segment traits + placeholder: '' + defaultValue: + '@path': $.traits + required: false + multiple: false + choices: null + dynamic: false + allowNull: false presets: - - actionId: g2LisooKB28UWesWhUovS - name: Identify User + - actionId: dwXNNckdd2oaRcK4vfbGK5 + name: Identify Company fields: - userId: - '@if': - exists: - '@path': $.userId - then: - '@path': $.userId - else: - '@path': $.anonymousId + groupId: + '@path': $.groupId createdAt: '@path': $.traits.createdAt traits: '@path': $.traits - trigger: type = "identify" + trigger: type = "group" - actionId: mXocpMeG8N4d1HUcdxg5N1 name: Track Event fields: @@ -132997,6 +133323,22 @@ items: properties: '@path': $.properties trigger: type = "track" + - actionId: g2LisooKB28UWesWhUovS + name: Identify User + fields: + userId: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + createdAt: + '@path': $.traits.createdAt + traits: + '@path': $.traits + trigger: type = "identify" partnerOwned: true - id: 6480b4eeab29eca5415089d4 display_name: Userpilot Web (Actions) @@ -135796,7 +136138,7 @@ items: hidden: false defaultTrigger: null fields: - - id: cFuD33vNG3jjQUCnTqNhU3 + - id: uE2FarSidiMiyhJS4jxLTb sortOrder: 0 fieldKey: url label: URL @@ -135809,7 +136151,7 @@ items: dynamic: false allowNull: false hidden: false - - id: fUmwGuUMoeYRGkRGA2CKGo + - id: bAfEHcotNnvWVU7CY3wFEY sortOrder: 1 fieldKey: method label: Method @@ -135829,7 +136171,7 @@ items: dynamic: false allowNull: false hidden: false - - id: mt4jeCEfP66jqtBMP77zwR + - id: hTaJxJrUARpur414e76Wew sortOrder: 2 fieldKey: batch_size label: Batch Size @@ -135845,12 +136187,14 @@ items: dynamic: false allowNull: false hidden: false - - id: soAToLdGTcKZqABbgY8Jt3 + - id: k1zE19PC8oZn3qPJBhrXmo sortOrder: 3 fieldKey: headers label: Headers type: OBJECT - description: HTTP headers to send with each request. + description: >- + HTTP headers to send with each request. Only ASCII characters are + supported. placeholder: '' required: false multiple: false @@ -135858,7 +136202,7 @@ items: dynamic: false allowNull: false hidden: false - - id: nrB84FRZpADtnM1R4L4DKS + - id: 2LgTMrzpgLVZ7L1Zcz9VqU sortOrder: 4 fieldKey: data label: Data @@ -135873,8 +136217,8 @@ items: dynamic: false allowNull: false hidden: false - - id: eaGPhvZwfZWXwPnLXfa6Wk - sortOrder: 5 + - id: 5QWHRxUAcwUtjXFwVLqh2t + sortOrder: 6 fieldKey: enable_batching label: Enable Batching? type: BOOLEAN @@ -135885,7 +136229,6 @@ items: choices: null dynamic: false allowNull: false - hidden: false presets: [] partnerOwned: false - id: 55283a150a20f4e22f0fb37e diff --git a/src/_data/catalog/destinations_private.yml b/src/_data/catalog/destinations_private.yml index a930152ec4..2428cb5282 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 2025-05-08 +# destination data last updated 2025-05-15 items: - id: 54521fd925e721e32a72eee1 display_name: Pardot diff --git a/src/_data/catalog/source_categories.yml b/src/_data/catalog/source_categories.yml index 4f4fee434d..7f69d32dc0 100644 --- a/src/_data/catalog/source_categories.yml +++ b/src/_data/catalog/source_categories.yml @@ -1,6 +1,8 @@ # AUTOGENERATED FROM PUBLIC API. DO NOT EDIT -# source categories last updated 2025-05-08 +# source categories last updated 2025-05-15 items: + - display_name: A/B testing + slug: a-b-testing - display_name: A/B Testing slug: a-b-testing - display_name: Advertising @@ -19,6 +21,8 @@ items: slug: email-marketing - display_name: Enrichment slug: enrichment + - display_name: Experimentation + slug: experimentation - display_name: Feature Flagging slug: feature-flagging - display_name: Helpdesk @@ -39,6 +43,8 @@ items: slug: ott - display_name: Payments slug: payments + - display_name: Performance Marketing + slug: performance-marketing - display_name: Performance Monitoring slug: performance-monitoring - display_name: Personalization diff --git a/src/_data/catalog/sources.yml b/src/_data/catalog/sources.yml index 19ac91cd50..7e96a59719 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 2025-05-08 +# sources last updated 2025-05-15 items: - id: 8HWbgPTt3k display_name: .NET @@ -175,6 +175,11 @@ items: url: https://d3hotuclm6if1r.cloudfront.net/logos/amplitude-default.svg categories: - Analytics + - A/B testing + - Experimentation + - Feature Flagging + - Performance Marketing + - Surveys status: PUBLIC partnerOwned: false - id: WXNgKpZMsd diff --git a/src/connections/destinations/catalog/actions-reddit-audiences/index.md b/src/connections/destinations/catalog/actions-reddit-audiences/index.md index ae12980367..3ba2f1f0d2 100644 --- a/src/connections/destinations/catalog/actions-reddit-audiences/index.md +++ b/src/connections/destinations/catalog/actions-reddit-audiences/index.md @@ -20,10 +20,11 @@ This destination is maintained by Reddit. For any issues with the destination, [ 2. Click **Engage Settings** and select the **Destinations** tab. 3. Search for `Reddit Audiences`. 4. Click **Add Destination**. -5. Confirm the source. By default, this is the source connected to the space to which you’re adding the destination. +5. Confirm the source. By default, this is the source connected to the Enage Space to which you’re adding the destination. 6. In the **Settings** tab, click **Connect to Reddit Audiences** and authenticate the connection between Segment and Reddit. 7. Provide your ad account ID for **Ad Account ID**. 8. Toggle **Enable Destination** on and click **Save Changes**. +9. Add a **Sync Audience** Mapping using the Mapping tab in the *Reddit Audiences* destination you just created, and enable the Mapping. 9. Navigate to the engage space that contains the audience, and select it in the **Audiences** tab. 10. Click **Add Destination**. diff --git a/src/connections/destinations/catalog/actions-sendgrid/index.md b/src/connections/destinations/catalog/actions-sendgrid/index.md index 102a99527b..e0947c2b69 100644 --- a/src/connections/destinations/catalog/actions-sendgrid/index.md +++ b/src/connections/destinations/catalog/actions-sendgrid/index.md @@ -4,6 +4,7 @@ hide-boilerplate: true hide-dossier: true redirect_from: - "/connections/destinations/catalog/sendgrid-marketing-campaigns/" + - "/connections/destinations/catalog/sendgrid/" id: 631a6f32946dd8197e9cab66 --- diff --git a/src/connections/destinations/catalog/actions-the-trade-desk-crm/index.md b/src/connections/destinations/catalog/actions-the-trade-desk-crm/index.md index 5012051d91..e31ea194e0 100644 --- a/src/connections/destinations/catalog/actions-the-trade-desk-crm/index.md +++ b/src/connections/destinations/catalog/actions-the-trade-desk-crm/index.md @@ -37,7 +37,7 @@ Before you begin, generate a [long-lived token](https://partner.thetradedesk.com 8. Navigate to the **Mappings** tab, click **New Mapping**, and choose **Sync Audience to CRM Data Segment**. 9. In the **Select mappings** section, input the PII Type and maintain other defaults. Click **Save** and toggle to enable the mapping. - **Create only one mapping for every instance.** - - If any of the emails stored in your Engage audience are already in a hashed format, please specify the PII type as `Hashed Email.` Failure to do so results in The Trade Desk categorizing the hashed records as invalid during the ingestion process. + - If any of the emails stored in your Engage audience are already in a hashed format, please specify the [PII type](#what-pii-format-should-i-send) as `Hashed Email.` Failure to do so results in The Trade Desk categorizing the hashed records as invalid during the ingestion process. 10. Return to **Engage > Audiences** and select the audience from Step 1. 11. Click **Add Destinations** and choose The Trade Desk CRM destination you just created. In the settings that appear in the side panel, enable the **Send Track** option and **do not** alter the Audience Entered/Audience Exited event names. Fill out the audience settings, specifically the region field, with the geographical region of the CRM data segment based on the origin of the PII (US, EU, or APAC). Click **Save Settings**. @@ -69,4 +69,15 @@ The CRM endpoint maps email addresses into UID2s. If it's a valid email address, #### What PII format should I send? -The Trade Desk recommends transmitting personally identifiable information (PII) in its original, non-hashed format. TTD's preference is to handle the hashing of any PII, like emails, on their end. However, if your data already contains any hashed emails, please ensure you are normalizing and hashing the emails by designating the PII type as `Hashed Email`, in line with TTD's [PII Normalization and Hash Encoding](https://api.thetradedesk.com/v3/portal/data/doc/DataPiiNormalization){:target="_blank”} documentation. +The Trade Desk recommends transferring Personally Identifiable Information (PII), like email addresses, in their original, non-hashed format, as The Trade Desk normalizes and hashes any PII in their program. + +If you store your emails in plain text, select a "PII Type" of `Email`. + +If your data contains hashed email addresses, select a "PII Type" of `Hashed Email`. + +When you select `Hashed Email` as your PII Type, Segment completes the following steps on your behalf: +- Plain text email addresses are normalized and hashed as needed for The Trade Desk. +- SHA256 hashed email addresses are hex base64 encoded. +- Base64 encoded emails are sent directly to The Trade Desk without additional processing. + +For more information about The Trade Desk's recommendations for PII, see the [PII Normalization and Hash Encoding](https://partner.thetradedesk.com/v3/portal/data/doc/DataPiiNormalization){:target="_blank”} documentation. diff --git a/src/connections/oauth.md b/src/connections/oauth.md index 219b99ea67..664cab7e39 100644 --- a/src/connections/oauth.md +++ b/src/connections/oauth.md @@ -96,14 +96,17 @@ To obtain the access token: } ``` + Unless otherwise specified, all fields are mandatory. + Field | Description ------------ | ------------- - KID | The key ID of the public key in the OAuth application. - ISS | The identifier of the JWT issuer. - SUB | The OAuth application ID. - IAT | The epoch time in seconds when the token was issued. - EXP | The expiry time in seconds. This is expected to be valid only for a short duration under a minute. - JTI | The unique identifer for the token. + KID | The key ID of the public key in the OAuth application. You can find this value in the Segment app by navigating to the Access Management tab and selecting the OAuth app you created. On the Overview tab for your OAuth app, you'll find your Key ID. + ISS | _(Optional)_ The identifier of the JWT issuer. This value is `https://oauth2.segment.io` if you're located in the US, or `https://oauth2.eu1.segmentapis.com` if you're located in the EU. + SUB | The OAuth application ID. You can find this value in the Segment app by navigating to the Access Management tab and selecting the OAuth app you created. On the Overview tab for your OAuth app, you'll find your application ID under **App ID**. + AUD | The intended recipient of the token. This value is `https://oauth2.segment.io` if you're located in the US, or `https://oauth2.eu1.segmentapis.com` if you're located in the EU. + IAT | The epoch time in seconds when the token was issued. This is typically set using `Math.floor(Date.now() / 1000)`. + EXP | The expiry time of a token, measured in seconds. Tokens are expected to be valid for less than sixty seconds. You can set the expiry of a token using `Math.floor(Date.now() / 1000) + 60`. + JTI | A case-sensitive string that acts as a [unique identifier for the token](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.7){:target="_blank”}. Segment recommends setting this value with a UUID format to avoid duplicate values between tokens. 2. Send a form-url-encoded `POST` request to the regional authorization server's `\token` route with the following parameters: diff --git a/src/connections/sources/catalog/libraries/server/node/index.md b/src/connections/sources/catalog/libraries/server/node/index.md index 21462f502c..1ffa34f579 100644 --- a/src/connections/sources/catalog/libraries/server/node/index.md +++ b/src/connections/sources/catalog/libraries/server/node/index.md @@ -25,7 +25,7 @@ All of Segment's server-side libraries are built for high-performance, so you ca # yarn yarn add @segment/analytics-node # pnpm - pnpm install @segment/analytics-node + pnpm add @segment/analytics-node ``` 2. Initialize the `Analytics` constructor the module exposes with your Segment source **Write Key**, like so: diff --git a/src/engage/audiences/index.md b/src/engage/audiences/index.md index 3f104f92f6..6a659130ac 100644 --- a/src/engage/audiences/index.md +++ b/src/engage/audiences/index.md @@ -83,7 +83,7 @@ If the timestamp is not a valid ISO timestamp (for example, a trailing `Z` is mi **Note**: Timezones seen in the UI are based on your local timezone, but are converted to UTC on the backend. -### Funnel Audiences +### Funnel audiences Funnel audiences allow you to specify strict ordering between two events. This might be the case if you want an event to happen or not happen within a specific time window, as in the following example: @@ -106,21 +106,23 @@ See [Account-level Audiences](/docs/engage/audiences/account-audiences) for more You can send audiences and computed traits to third-party services in Segment's [Destinations catalog](/docs/connections/destinations/). -Segment's Connections pipeline first collects and sends events from your Source to your Destination. Built on top of Connections, Engage then uses the same Source events to let you create Audiences and computed traits within Segment. You can then send the Audience or computed trait you've built to your Destination(s). +Segment's Connections pipeline first collects and sends events from your Source to your destination. Built on top of Connections, Engage then uses the same source events to let you create Audiences and computed traits within Segment. You can then send the audience or computed trait you've built to your destinations. + +See how you can [use Linked Audiences with Braze](/docs/engage/audiences/linked-audiences-braze/) and [Iterable](/docs/engage/audiences/linked-audiences-iterable/) to better understand how you can utilize Linked Audiences for your destinations. > info "" -> Because Engage only sends Audiences and computed traits to Destinations, it doesn't replace a standard event pipeline. Connect a Source directly to a Destination if you want the Destination to receive all events that Segment gathers. +> Because Engage only sends audiences and computed traits to destinations, it doesn't replace a standard event pipeline. Connect a source directly to a destination if you want the destination to receive all events that Segment gathers. -### Connect your Audience to a Destination +### Connect your audience to a destination > warning "Audience Keys" -> Avoid using the same Audience key twice, even if you've deleted the original Audience. +> Avoid using the same audience key twice, even if you've deleted the original audience. -Once you've previewed your Audience, you can choose to connect it to a Destination or keep the Audience in Segment and export it as a CSV file download. +Once you've previewed your audience, you can choose to connect it to a destination or keep the audience in Segment and export it as a CSV file download. -If you already have Destinations set up in Segment, you can import the configuration from one of your existing sources to Engage. You can only connect one Destination configuration per Destination type. +If you already have destinations set up in Segment, you can import the configuration from one of your existing sources to Engage. You can only connect one destination configuration per destination type. -When you create an Audience, Segment starts syncing your Audience to the Destinations you selected. Audiences are either sent to Destinations as a boolean user-property or a user-list, depending on what the Destination supports. Read more about [supported Destinations](/docs/engage/using-engage-data/#compatible-engage-destinations) in the Engage documentation. +When you create an audience, Segment starts syncing your audience to the destinations you selected. Audiences are either sent to Destinations as a boolean user-property or a user-list, depending on what the destination supports. Read more about [supported destinations](/docs/engage/using-engage-data/#compatible-engage-destinations) in the Engage documentation. For account-level audiences, you can send either a [Group](/docs/connections/spec/group) call and/or [Identify](/docs/connections/spec/identify) call. Group calls will send one event per account, whereas Identify calls will send an Identify call for each user in the account. This means that even if a user hasn't performed an event, Segment will still set the account-level computed trait on that user. @@ -133,11 +135,11 @@ For step-by-step instructions on how to connect an audience to a destination, se ## Understanding compute times -Because a number of factors (like system load, backfills, or user bases) determine the complexity of an Audience, some compute times take longer than others. +Because a number of factors (like system load, backfills, or user bases) determine the complexity of an audience, some compute times take longer than others. -As a result, **Segment recommends waiting at least 24 hours for an Audience to finish computing** before you resume working with the Audience. +As a result, **Segment recommends waiting at least 24 hours for an audience to finish computing** before you resume working with the audience. -From the Overview page, you can view Audience details including the current compute status and a progress bar for real-time and batch Audiences. Engage updates the progress bar and status for real-time computations approximately every 10 minutes. +From the Overview page, you can view audience details including the current compute status and a progress bar for real-time and batch audiences. Engage updates the progress bar and status for real-time computations approximately every 10 minutes. > info "Viewing compute progress" > When you create a real-time Audience, you'll see a progress bar, computed percentage, and status updates. For existing Audiences that you edit, Engage displays the compute status but not the progress bar or percentage. @@ -169,25 +171,25 @@ Engage displays the following compute statuses for Audiences and Traits. | Computation status | Description | |---------------------------|---------------------------------------| | Preparing | Engage is preparing the computation. | -| Computing | Engage is computing the Audience or Trait. | +| Computing | Engage is computing the audience or trait. | | Live | The Audience or Trait is up-to-date, based on the most recent sync cadence. When you edit a batch Audience or Trait, Engage displays the compute status as `Live` and incorporates your edits in the next scheduled sync. | | Not Computing | Engage displays this status when there are no destinations connected or `Compute without connected destinations` isn't selected. | -| Disabled | The Audience or Trait is disabled. | +| Disabled | The audience or trait is disabled. | | Failed | The computation was cancelled or failed to compute. Please contact [Segment support](https://segment.com/help/contact/){:target="_blank"}. | ## Real-time compute compared to batch -Real-time Compute allows you to update traits and Audiences as Segment receives new events. Real-time Compute unlocks exciting use cases: +Real-time Compute allows you to update traits and audiences as Segment receives new events. Real-time Compute unlocks these use cases: - **Intra-Session App Personalization:** change your app experience with personalized onboarding, product recommendations, and faster funnels based on a user entering and exiting an audience. - **Instant Messaging:** Trigger messages in email, live chat, and push notifications instantly, to deliver immediate experiences across channels. - **Operational Workflows:** Supercharge your sales and support teams by responding to customer needs faster, based on the latest understanding of a user. > warning "" -> By default, Segment creates all Audiences as real-time computations. There are however, a few exceptions which can only be supported as batch computations, one example is [Funnel Audiences](#funnel-audiences). The Audience builder will determine and indicate whether the Audience is a real-time or batch computation. +> By default, Segment creates all audiences as real-time computations. There are however, a few exceptions which can only be supported as batch computations, one example is [Funnel Audiences](#funnel-audiences). The audience builder will determine and indicate whether the audience is a real-time or batch computation. -To create a new Audience or Trait: +To create a new audience or trait: 1. Go to your **Computed Traits** or **Audiences** tab in Engage and select **Create**. @@ -195,9 +197,9 @@ To create a new Audience or Trait: - A lightning bolt next to `Realtime Enabled` indicates that the computation updates in real-time. - Configure the **Include Historical Event Data** option to limit how far back event data is processed by setting a lookback window (for example, the “last 90 days”). Unchecking **Include Historical Event Data** computes values without historical event data, using only data arriving after audience creation. -3. Select destinations to connect, then review and create your Audience or Trait. +3. Select destinations to connect, then review and create your audience or trait. -While Engage is computing, use the Audience Explorer to see users or accounts that enter your Audience. Engage displays the Audience as computing in the Explorer until at least one user or account enters. +While Engage is computing, use the Audience Explorer to see users or accounts that enter your Audience. Engage displays the audience as computing in the Explorer until at least one user or account enters. > warning "" > [Facebook Custom Audiences](/docs/connections/destinations/catalog/personas-facebook-custom-audiences/), [Marketo Lists](/docs/connections/destinations/catalog/marketo-static-lists/), and [Adwords Remarking Lists](/docs/connections/destinations/catalog/adwords-remarketing-lists) impose rate limits on how quickly Segment can update an Audience. Segment syncs at the highest frequency allowed by the tool, which is between one and six hours. @@ -205,31 +207,31 @@ While Engage is computing, use the Audience Explorer to see users or accounts th > info "Real-time and batch computation" > By default, Segment creates all audiences as real-time computations. However, some conditions require batch computation. For example, [funnel audiences](#funnel-audiences) can only be computed in batch mode. The Audience builder determines whether an audience is real-time or batch based on the conditions applied. -### Editing Realtime Audiences and Traits +### Editing realtime audiences and traits Engage supports the editing of realtime Audiences and Traits, which allows you to make nuanced changes to existing Traits and Audiences in situations where cloning or building from scratch may not suit your use case. -To edit a realtime Trait or Audience, follow these steps: +To edit a realtime trait or audience: 1. In your Engage Space, select the **Computed Traits** or **Audiences** tab. -2. Select the realtime Audience or Trait you want to edit. +2. Select the realtime audience or trait you want to edit. 3. Select the **Builder** tab and make your edits. 4. Preview the results, then select **Create Audience** to confirm your edits. -Engage then processes your realtime Audience or Trait edits. While the edit task runs, the audience remains locked and you can't make further changes. Once Engage incorporates your changes, you'll be able to access your updated Audience or Trait. +Engage then processes your realtime audience or trait edits. While the edit task runs, the audience remains locked and you can't make further changes. Once Engage incorporates your changes, you'll be able to access your updated audience or trait. > warning "" > If your audience includes historical data (Historical Backfill is enabled), editing an audience creates a new backfill task. The backfill task, and therefore the edit task, take longer to process if the audience is connected to a destination with rate limits. Rate-limited destinations dictate how fast Engage can backfill. View a list of [rate-limited destinations](/docs/engage/using-engage-data/#rate-limits-on-engage-event-destinations). > warning "" -> It is not possible to edit an audience to convert it from real-time to batch, or vice-versa. If the computation type needs to be changed, you will need to recreate the audience with the appropriate conditions. +> It's not possible to edit an audience to convert it from real-time to batch, or vice-versa. If the computation type needs to be changed, you will need to recreate the audience with the appropriate conditions. > warning "" > You can't edit an audience to include anonymous users. If you need to include anonymous profiles, recreate the audience with the appropriate conditions -## Monitor the health of your Audience syncs +## Monitor the health of your audience syncs -Use Segment's [Delivery Overview](#delivery-overview) and [Alerting](#alerting) features to monitor the health of your Audience syncs and get notifications when event volume spikes or drops. +Use Segment's [Delivery Overview](#delivery-overview) and [Alerting](#alerting) features to monitor the health of your audience syncs and get notifications when event volume spikes or drops. ### Delivery Overview @@ -242,14 +244,14 @@ Delivery Overview has three core features: For more information about the breakdown and discard tables, see the [Delivery Overview](/docs/connections/delivery-overview/) documentation. -To view Delivery Overview for an Audience: +To view Delivery Overview for an audience: 1. From your Segment workspace's home page, navigate to **Engage > Audiences**. -2. Find an Audience, click the **(...)** menu, and select Delivery Overview. +2. Find an audience, click the **(...)** menu, and select **Delivery Overview**. 3. On the Delivery Overview page, select the Audience dropdown to filter by a specific Audience, select the Date range dropdown to filter by a specific time period, or use the Show metrics toggle to view your metrics as percentages. #### Steps in the pipeline view -By default, Segment displays Delivery Overview information for all Audiences connected to your destination. You can filter your Delivery Overview pipeline view by an individual Audience for more granular data. +By default, Segment displays Delivery Overview information for all audiences connected to your destination. You can filter your Delivery Overview pipeline view by an individual audience for more granular data. You can also further refine the data displayed on the pipeline view using the time picker and the metric toggle, located under the destination header. With the time picker, you can specify a time period (last 10 minutes, 1 hour, 24 hours, 7 days, 2 weeks, or a custom date range over the last two weeks) for which you’d like to see data. With the metric toggle, you can switch between seeing metrics represented as percentages (for example, _85% of events_ or _a 133% increase in events_) or as counts (_13 events_ or _an increase of 145 events_.) Delivery Overview shows percentages by default. @@ -268,18 +270,18 @@ Audiences have the following steps in the pipeline view: ### Alerting -Create alerts related to the performance and throughput of Audience syncs and receive in-app, email, and Slack notifications when event volume fluctuations occur. +Create alerts related to the performance and throughput of audience syncs and receive in-app, email, and Slack notifications when event volume fluctuations occur. > info "Generate a Slack webhook to receive Slack notifications" > To receive an alert in a Slack channel, you must first create a Slack webhook. For more information about Slack webhooks, see Slack's [Sending messages using incoming webhooks](https://api.slack.com/messaging/webhooks){:target="_blank”} documentation. -To access Audience alerting, navigate to **Engage > Audiences**, select an Audience, and click the Alerts tab. +To access audience alerting, navigate to **Engage > Audiences**, select an audience, and click the **Alerts** tab. -On the Alerts tab, you can create new alerts and view all active alerts for this connection. You can only edit or delete the alerts that you create, unless you have the [Workspace Owner role](/docs/segment-app/iam/roles/). +On the **Alerts** tab, you can create new alerts and view all active alerts for this connection. You can only edit or delete the alerts that you create, unless you have the [Workspace Owner role](/docs/segment-app/iam/roles/). #### Activation event health spikes or drops -You can create an Activation event health spikes or drops alert that notifies you when events sent from your audience to a downstream destination have failures to a destination above a certain threshold. For example, if you set a change percentage of 4% and your destination received 100 events from your Audience over the first 24 hours, Segment would notify you the following day if your destination ingested fewer than 96 or more than 104 events. +You can create an Activation event health spikes or drops alert that notifies you when events sent from your audience to a downstream destination have failures to a destination above a certain threshold. For example, if you set a change percentage of 4% and your destination received 100 events from your audience over the first 24 hours, Segment would notify you the following day if your destination ingested fewer than 96 or more than 104 events. To create an Activation event health spikes or drops alert: 1. From your Segment workspace's home page, navigate to **Engage > Audiences**. diff --git a/src/engage/audiences/linked-audiences.md b/src/engage/audiences/linked-audiences.md index 7f13873dd8..bff09aa547 100644 --- a/src/engage/audiences/linked-audiences.md +++ b/src/engage/audiences/linked-audiences.md @@ -17,6 +17,9 @@ With Linked Audiences, you can: To learn more about specific use cases you can set up with Linked Audiences, see [Linked Audiences Use Cases](/docs/engage/audiences/linked-audiences-use-cases/). + +See how you can [use Linked Audiences with Braze](/docs/engage/audiences/linked-audiences-braze/) and [Iterable](/docs/engage/audiences/linked-audiences-iterable/) to better understand how you can utilize Linked Audiences for your destinations. + ## Prerequisites Before you begin setting up your Linked Audience, ensure you have: @@ -59,9 +62,9 @@ After creating your Linked Audience, you will be brought to the Overview page wi ### Linked Audience conditions -The linked audiences builder sources profile trait and event keys from the data warehouse. This data must be synced to the data warehouse through [Profiles Sync](/docs/unify/profiles-sync/overview/) before you can reference it in the linked audience builder. If there is a profile trait that exists in the Segment Profile that hasn’t successfully synced to the data warehouse yet, it will be grayed out so that it can’t be selected. +The Linked Audiences builder sources profile trait and event keys from the data warehouse. This data must be synced to the data warehouse through [Profiles Sync](/docs/unify/profiles-sync/overview/) before you can reference it in the linked audience builder. If there is a profile trait that exists in the Segment Profile that hasn’t successfully synced to the data warehouse yet, it will be grayed out so that it can’t be selected. -The linked audience builder also returns a subset of available entity property key values, event property and context key values, and profile trait key values that you can select in the input field drop-down. This eliminates the need to type in the exact value you want to filter on. If the value you’re looking for isn’t listed, you can manually enter it into the input field. Manually entered values are case-sensitive. +The Linked Audience builder also returns a subset of available entity property key values, event property and context key values, and profile trait key values that you can select in the input field drop-down. This eliminates the need to type in the exact value you want to filter on. If the value you’re looking for isn’t listed, you can manually enter it into the input field. Manually entered values are case-sensitive. Segment displays: @@ -69,13 +72,13 @@ Segment displays: * the top 65 event property and context key values. * the top 65 profile trait key values. -You can duplicate your conditions in the audience builder into the same condition group.You can only create nested entity conditions up to six levels in depth. For example, an entity condition that queries for relationships between Profiles, Accounts, Credit Cards, and Transactions has four levels of depth. +You can duplicate your conditions in the audience builder into the same condition group. You can only create nested entity conditions up to six levels in depth. For example, an entity condition that queries for relationships between Profiles, Accounts, Credit Cards, and Transactions has four levels of depth. -As you're building your Linked Audience, you can choose from the following conditions: +When building your Linked Audience, you can add multiple conditions to a single condition group, or create multiple condition groups. Segment evaluates each condition group independently to determine which profiles meet each condition group, and Segment includes the associated entities that allowed each profile to meet the criteria of each condition group. Segment then unions the matched profiles based on whether the operator between the condition groups are using the AND or OR operators to combine the result set. You can choose from the following conditions as you're building your Linked Audience: | Conditions | Description | |---------------------------|---------------------------------------| -| with entity | Creates a condition that filters profiles associated with entity relationships defined in the [Data Graph](/docs/unify/linked-profiles/data-graph/). With this condition, you can navigate the full, nested entity relationships, and filter your audience on entity column values. Each subsequent entity you select in an entity branch acts as a filter over the profiles that are available at the next depth of that specific branch.| +| with entity | Creates a condition that filters profiles associated with entity relationships defined in the [Data Graph](/docs/unify/linked-profiles/data-graph/). With this condition, you can navigate the full, nested entity relationships, and filter your audience on entity column values. Each subsequent entity you select in an entity branch acts as a filter over the profiles that are available at the next depth of that specific branch. | | without entity | Creates a condition that filters profiles that are not associated with entity relationships defined in the [Data Graph](/docs/unify/linked-profiles/data-graph/). With this condition, you can navigate the full, nested entity relationships, and filter your audience on entity column values. Each subsequent entity you select in an entity branch acts as a filter over the profiles that are available at the next depth of that specific branch.| | with [ trait](/docs/unify/#enrich-profiles-with-traits) | Creates a condition that filters profiles with a specific trait. | | without [ trait](/docs/unify/#enrich-profiles-with-traits)| Creates a condition that filters profiles without a specific trait.| diff --git a/src/engage/journeys/event-triggered-journeys-steps.md b/src/engage/journeys/event-triggered-journeys-steps.md index 3adcc1b914..ca476b4e74 100644 --- a/src/engage/journeys/event-triggered-journeys-steps.md +++ b/src/engage/journeys/event-triggered-journeys-steps.md @@ -5,7 +5,7 @@ plan: engage-foundations [Event-Triggered Journeys](/docs/engage/journeys/event-triggered-journeys/) in Engage use steps to control how users move through a journey based on their actions or predefined conditions. -Steps are the building blocks of a journey. This page explains the **Hold Until** and **Send to Destination** steps, which enable precise control over journey progression and data delivery. +Steps are the building blocks of a journey. This page explains the **Hold Until**, **Send to Destination**, and **Data split** steps, which enable precise control over journey progression and data delivery. > info "Public Beta" > Event-Triggered Journeys is in public beta, and Segment is actively working on this feature. Some functionality may change before it becomes generally available. @@ -135,6 +135,47 @@ To configure the Delay step: 3. Enter a duration and select a time unit (minutes, hours, days, weeks). 4. Click **Save**. +## Data split + +The **Data split** step sends profiles down different branches based on audience membership or profile traits. This lets you personalize how users move through a journey, like sending different messages to new users instead of returning customers, or targeting re-engagement campaigns based on inactivity. + +Data split is useful when you want to take different actions based on what you already know about the user, rather than waiting for a new event. For example, you might use it to separate users who haven’t purchased in 30 days from those who lapsed 90 days ago, or from users who are still actively engaged. + +### How Data split works + +When a profile reaches a Data split step: + +1. Segment checks whether the profile matches the first branch’s conditions. +2. If not, it checks the next branch, and so on, in the order shown in the journey. +3. The profile moves down the first branch it qualifies for. Each profile can only follow one branch. + +### Configuration options + +You can configure up to five branches in a Data split step. Each branch can have one or more conditions: + +| Condition type | Description | +| -------------------- | ------------------------------------------------------------------------- | +| With trait | The profile includes a specific trait and value. | +| Without trait | The profile does not include a specific trait. | +| Part of audience | The profile is a member of a selected audience at the time of evaluation. | +| Not part of audience | The profile is not a member of a selected audience. | + +You can also give branches uniques name to differentiate them from each other on the journey canvas. + +> info "Evaluation is sequential" +> Segment evaluates branches in the order they appear in the configuration side sheet. If a profile qualifies for multiple branches, Segment sends it down the first one it matches. Profiles can't qualify for more than one branch, and Segment doesn't wait for audience membership to update after the profile enters the step. + +### Example: Target different customer types + +You can use a Data split to branch profiles based on traits or audience membership that already exist on the profile when it reaches this step. For example: + +- Profiles with a known `email_subscription_status` trait get treated as existing customers. +- Profiles that belong to a `VIP` audience are routed down a separate path for high-value users. +- Profiles with a specific set of traits (like favorite color and a known name) can receive personalized messaging. +- Everyone else continues through a general branch with default messaging. + +This setup helps tailor journey experiences using reliable, preexisting data. Because the Data split step evaluates conditions instantly, it works best with traits or audience membership that Segment has already computed before the profile enters the step. + ## Send to Destination The **Send to Destination** step lets you send journey data to one of your [configured Engage destinations](/docs/connections/destinations/), enabling real-time integration with tools like marketing platforms, analytics systems, or custom endpoints. diff --git a/src/unify/Traits/predictions/index.md b/src/unify/Traits/predictions/index.md index 8a97918676..f9fc14f291 100644 --- a/src/unify/Traits/predictions/index.md +++ b/src/unify/Traits/predictions/index.md @@ -83,13 +83,13 @@ To access Predictions, you must: This table lists the requirements for a trait to compute successfully: -| Requirement | Details | -|----------------------------------|---------------------------------------------------------------------------------------------| -| Event Types | Track at least 5 different event types in the Feature Window. | -| Historical Data | Ensure these 5 events have data spanning 1.5 times the length of the Target Window. For example, to predict a purchase propensity over the next 60 days, at least 90 days of historical data is required. | -| Subset Audience (if applicable) | Ensure the audience contains more than 1 non-anonymous user. | -| User Limit | Ensure that you are making a prediction for fewer than 10 million users. If you track more than 10 million users in your space, define a smaller audience in the **Make a Prediction For** section of the custom predictions builder. | -| User Activity | At least 100 users performing the Target Event and at least 100 users not performing the Target Event. | +| Requirement | Details | +| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Event Types | Track at least 5 different event types in the Feature Window. | +| Historical Data | Segment requires historical data spanning at least 3 times the length of the target window. For example, a 30-day window requires 90 days of past data. | +| Subset Audience (if applicable) | Ensure the audience contains more than 1 non-anonymous user. | +| User Limit | Ensure that you are making a prediction for fewer than 10 million users. If you track more than 10 million users in your space, define a smaller audience in the **Make a Prediction For** section of the custom predictions builder. | +| User Activity | At least 100 users performing the Target Event and at least 100 users not performing the Target Event. | #### Selecting events (optional) diff --git a/src/unify/data-graph/index.md b/src/unify/data-graph/index.md index 2b2b25d906..25e5941bac 100644 --- a/src/unify/data-graph/index.md +++ b/src/unify/data-graph/index.md @@ -360,6 +360,7 @@ For many:many relationships, define the join on between the two entity tables wi > warning "" > Attributes from a junction table are not referenceable via the Linked Audience builder. If a marketer would like to filter upon a column on the junction table, you must define the junction as an entity and define a relationship. + | Parameters | Definition | | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `relationship` | An immutable slug for the relationship, and will be treated as a delete if you make changes. The slug must be in all lowercase, and supports dashes or underscores (like `user-account` or `user_account`). | diff --git a/src/unify/data-graph/linked-events.md b/src/unify/data-graph/linked-events.md index ea32cb189e..34e20f13d3 100644 --- a/src/unify/data-graph/linked-events.md +++ b/src/unify/data-graph/linked-events.md @@ -74,10 +74,6 @@ For Segment to compute data changes in your warehouse, Segment requires both rea > warning "" > Only sync what you need for enrichment. There may be cost implications to having Segment query your warehouse tables. -> info "" -> Linked Events syncs data from your warehouse approximately once every hour. - - ### Supported data warehouses The table below shows the data warehouses Linked Events supports. View the Segment docs for your warehouse, then carry out the corresponding steps.