diff --git a/src/_data/catalog/destination_categories.yml b/src/_data/catalog/destination_categories.yml index f8a919c06e..42afaf2b8e 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-04-24 +# destination categories last updated 2025-05-01 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 96babbfd9a..2e8ea3e178 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-04-24 +# destination data last updated 2025-05-01 items: - id: 637e8d185e2dec264895ea89 display_name: 1Flow @@ -33306,8 +33306,6 @@ items: categories: - Analytics - Attribution - - Marketing Automation - - Enrichment logo: url: https://cdn.filepicker.io/api/file/Z2uDA7FHQ5CwYnWt19q6 mark: @@ -33513,7 +33511,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: jKELzfnwbo8yQpm2B7NuQc + - id: 27xeTbG8fme8euDUUdDY4V sortOrder: 0 fieldKey: action label: Action @@ -33527,7 +33525,7 @@ items: choices: null dynamic: false allowNull: false - - id: nhQJBPWX8QThSnse2RL2tM + - id: vxMm8vUmpJisCkm6RbA3XZ sortOrder: 1 fieldKey: email label: Email Address @@ -33547,7 +33545,7 @@ items: choices: null dynamic: false allowNull: false - - id: 6DeJN5SBD8y25YHS3HqMVX + - id: 2EhURtqVsnTHq9iZ4jtdZ5 sortOrder: 2 fieldKey: properties label: Properties @@ -33569,7 +33567,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: in1TVXvKS3eDaWgrUVaqMx + - id: xvFMHemGWedTpXSNmZFGob sortOrder: 0 fieldKey: custom_fields label: Custom fields @@ -33585,7 +33583,7 @@ items: choices: null dynamic: false allowNull: false - - id: 55ssNjDfHie3KNwrhKd76e + - id: vD3PhGhkxqddSJXLb8KkBt sortOrder: 1 fieldKey: email label: Email Address @@ -33599,7 +33597,7 @@ items: choices: null dynamic: false allowNull: false - - id: 8kJXFwbwfsZ6wDDBLPUeoS + - id: b2URVZk5z6wiZbaKFKKVVm sortOrder: 2 fieldKey: ip label: IP Address @@ -33613,7 +33611,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5yCTjN9yuiaUDXx3au8rfy + - id: h2Dt3w2B5YxzsCvZsQRv4E sortOrder: 3 fieldKey: phone label: SMS Number @@ -33627,27 +33625,41 @@ items: choices: null dynamic: false allowNull: false - - id: ciPuPvfdriSkGcXR33VfQd + - id: rJijDWLPkc3eX8YnRSsJdq sortOrder: 4 - fieldKey: status - label: Status + fieldKey: initial_status + label: Initial Status type: STRING - description: The person's subscription status. + description: The person's subscription status if newly identified. placeholder: '' defaultValue: '@if': exists: - '@path': $.traits.status + '@path': $.traits.initial_status then: - '@path': $.traits.status + '@path': $.traits.initial_status else: unsubscribed required: false multiple: false choices: null dynamic: false allowNull: false - - id: 8cJ6W9XeEAK7nEyqSE7b8r + - id: aMt1SrZ8VBzF7qgu5y1A7e sortOrder: 5 + fieldKey: status + label: Status + type: STRING + description: The person's subscription status. Overrides initial_status. + placeholder: '' + defaultValue: + '@path': $.traits.status + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: pdpbCWQxk5LJMUW1NXWZr6 + sortOrder: 6 fieldKey: status_updated_at label: Status Updated At type: DATETIME @@ -33660,8 +33672,8 @@ items: choices: null dynamic: false allowNull: false - - id: 7keyZLwhDeAqVi7gG9FXDf - sortOrder: 6 + - id: 4uBC7uPGdcPz8f9jpWpFwg + sortOrder: 7 fieldKey: tags label: Tags type: STRING @@ -33676,8 +33688,8 @@ items: choices: null dynamic: false allowNull: false - - id: j6osLQGcYvfynratjbCNBc - sortOrder: 7 + - id: 33GRsPKbfgFgkw4bF4FSzF + sortOrder: 8 fieldKey: timezone label: Timezone type: STRING @@ -33690,8 +33702,8 @@ items: choices: null dynamic: false allowNull: false - - id: 9oaYsrheckLvBsBtt5P2s1 - sortOrder: 8 + - id: 8U9bip46MJRd6jfGQF5NA4 + sortOrder: 9 fieldKey: enable_batching label: Enable Batching? type: BOOLEAN @@ -33703,22 +33715,6 @@ 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: @@ -33730,13 +33726,15 @@ items: '@path': $.context.ip phone: '@path': $.traits.phone - status: + initial_status: '@if': exists: - '@path': $.traits.status + '@path': $.traits.initial_status then: - '@path': $.traits.status + '@path': $.traits.initial_status else: unsubscribed + status: + '@path': $.traits.status status_updated_at: '@path': $.traits.status_updated_at tags: @@ -33744,6 +33742,22 @@ 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 @@ -62006,7 +62020,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: rnuUQAxpWobUocYoov9Q3s + - id: 2DK3cxzfVVXoUfUMnCZBz8 sortOrder: 0 fieldKey: eventName label: Event Name @@ -62024,7 +62038,7 @@ items: choices: null dynamic: true allowNull: false - - id: gvxdvNVnTBYbqytz5NdWXw + - id: tnM7UP4S9SKR3vMk9A234N sortOrder: 1 fieldKey: occurredAt label: Event Timestamp @@ -62040,7 +62054,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5j58hEA34tvQbepza6SUkj + - id: kHFJW5DuJ8wPe79vqppMaf sortOrder: 2 fieldKey: email label: Email Address @@ -62062,7 +62076,7 @@ items: choices: null dynamic: false allowNull: false - - id: cpqmG1F5LnaxB61wYjeRpK + - id: k5AFngJYZBoUMDz4gmGhnY sortOrder: 3 fieldKey: utk label: User Token @@ -62076,7 +62090,7 @@ items: choices: null dynamic: false allowNull: false - - id: e9yg7ujnHLT9jpFk6XPwUW + - id: 2QhfBAuxN3av5tXGJScwfv sortOrder: 4 fieldKey: objectId label: Object ID @@ -62091,7 +62105,7 @@ items: choices: null dynamic: false allowNull: false - - id: mnGdZdUhDz251x6Nc8xVD9 + - id: x1xeTjjcU34AH62Hm7jqSD sortOrder: 5 fieldKey: properties label: Event Properties @@ -62116,7 +62130,7 @@ items: hidden: false defaultTrigger: null fields: - - id: kjmoivD5g6mhLqvnzEPjj2 + - id: oSV1Gh1mRXUVR8vnvPzKCj sortOrder: 0 fieldKey: createNewCustomRecord label: Create Custom Object Record if Not Found @@ -62133,7 +62147,7 @@ items: choices: null dynamic: false allowNull: false - - id: bacfKcYZ7xQH3EkP3vwAep + - id: gYL4VVzGSTsEnBEskYyoBD sortOrder: 1 fieldKey: customObjectSearchFields label: Custom Object Search Fields @@ -62148,7 +62162,7 @@ items: choices: null dynamic: false allowNull: false - - id: 3KDKw9V7gMUjxR3qkChR5B + - id: kVoAYtHQWjCxvFRmxQ5FeP sortOrder: 2 fieldKey: objectType label: Object Type @@ -62166,7 +62180,7 @@ items: choices: null dynamic: true allowNull: false - - id: n92VUCRAbRMT49uzLskTdo + - id: v1a7MfwfJXu65QR6xjChrR sortOrder: 3 fieldKey: properties label: Properties @@ -62184,7 +62198,7 @@ items: choices: null dynamic: false allowNull: false - - id: umCoTvDdjdNC3Z8uwHgd3L + - id: aC3d3njdQuFu2PTQygXG28 sortOrder: 4 fieldKey: searchFieldsToAssociateCustomObjects label: Search Fields to Associate custom Object @@ -62200,7 +62214,7 @@ items: choices: null dynamic: false allowNull: false - - id: axm4sMpA7B9Jbo6JMoCLEV + - id: dot3B8iESooQ5db5WcLfnh sortOrder: 5 fieldKey: toObjectType label: ObjectType to associate @@ -62218,7 +62232,7 @@ items: choices: null dynamic: true allowNull: false - - id: snJ1FGV7ULGUuEsv1XcvkL + - id: wR6QAHzuRRVpCumtSrgSsa sortOrder: 6 fieldKey: associationLabel label: Association Label @@ -62238,7 +62252,7 @@ items: hidden: false defaultTrigger: type = "identify" fields: - - id: cdsB5rr2hLGXLgDDoJQ9XX + - id: 3dxcZbCvuFLxPDAFGZ3Hja sortOrder: 0 fieldKey: email label: Email @@ -62256,7 +62270,7 @@ items: choices: null dynamic: false allowNull: false - - id: fBcf79y8CH2uWhZFKV1Nfd + - id: t24YuT1HoWD7tdb7QYoZXQ sortOrder: 1 fieldKey: company label: Company Name @@ -62270,7 +62284,7 @@ items: choices: null dynamic: false allowNull: false - - id: 8yogxd4Z3cc4TzfYrctPWt + - id: tCRKbEA1WoN22hsxvJudr4 sortOrder: 2 fieldKey: firstname label: First Name @@ -62290,7 +62304,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4k6JwCdd5QaziEnaSXKuHf + - id: qcGmJjDqyEbaikHxe2zkwg sortOrder: 3 fieldKey: lastname label: Last Name @@ -62310,7 +62324,7 @@ items: choices: null dynamic: false allowNull: false - - id: mz5HESZ17B1gTKZsJycDbH + - id: hDSuR6PmMxa5prBxTXxUvm sortOrder: 4 fieldKey: phone label: Phone @@ -62324,7 +62338,7 @@ items: choices: null dynamic: false allowNull: false - - id: 381N2wgFTk5pMQSXQTZH43 + - id: kkQTnzJZziPybzuL9iZMvN sortOrder: 5 fieldKey: address label: Street Address @@ -62338,7 +62352,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4ydUXVik3bv7C6X5aaRYXp + - id: praDwxC46R3UShxWV7Wa8y sortOrder: 6 fieldKey: city label: City @@ -62352,7 +62366,7 @@ items: choices: null dynamic: false allowNull: false - - id: spkp8CjRBJDEmUwqoMNcRq + - id: qCpRD1pNCHBrL9jfh11Ukc sortOrder: 7 fieldKey: state label: State @@ -62366,7 +62380,7 @@ items: choices: null dynamic: false allowNull: false - - id: dLBadxVvGzWqwPp1Wm1fW2 + - id: 8eo86YeBoYTVAdQAsEtPHq sortOrder: 8 fieldKey: country label: Country @@ -62380,7 +62394,7 @@ items: choices: null dynamic: false allowNull: false - - id: sxwT2NtMAmZEwXdro8auth + - id: 4TqFafUWz18kQcaX4hQWkm sortOrder: 9 fieldKey: zip label: Postal Code @@ -62400,7 +62414,7 @@ items: choices: null dynamic: false allowNull: false - - id: ss2u7Dd27uKniJcPGBmvMU + - id: 4uWyyPuaF9U73j8uxpQKh1 sortOrder: 10 fieldKey: website label: Website @@ -62414,7 +62428,7 @@ items: choices: null dynamic: false allowNull: false - - id: 8qe9Bxe4nFcjN6Rb4Fac2a + - id: wEjutQUx7SDJbKt57DJM2Z sortOrder: 11 fieldKey: lifecyclestage label: Lifecycle Stage @@ -62430,7 +62444,7 @@ items: choices: null dynamic: false allowNull: false - - id: xryKefrs6Dq6mJqgN4VQ3F + - id: kg7QXDvCEkSZ8VYZsVwWK7 sortOrder: 12 fieldKey: properties label: Other properties @@ -62448,7 +62462,7 @@ items: choices: null dynamic: false allowNull: false - - id: mj1uh2gajoQWhBKGChGez + - id: 2n2bQPYCGj8D1PwMtfBwGs sortOrder: 13 fieldKey: enable_batching label: Send Batch Data to HubSpot @@ -62473,7 +62487,7 @@ items: hidden: false defaultTrigger: type = "group" fields: - - id: nRZRNvpAXhwGjdLMdyGH8h + - id: rrApjdJDLKdLw9t46kxmr5 sortOrder: 0 fieldKey: groupid label: Unique Company Identifier @@ -62497,7 +62511,7 @@ items: choices: null dynamic: false allowNull: false - - id: 8Hno2mcRtitQkBmx9Sk1fh + - id: aKZGXAjq5vk2Z2emp2avtM sortOrder: 1 fieldKey: createNewCompany label: Create Company if Not Found @@ -62514,7 +62528,7 @@ items: choices: null dynamic: false allowNull: false - - id: 6i778RsTDFPGziNePk5AJ4 + - id: wrRPgUTU7zV7G9na8DKUSV sortOrder: 2 fieldKey: associateContact label: Associate Contact with Company @@ -62533,7 +62547,7 @@ items: choices: null dynamic: false allowNull: false - - id: 68VNBLHiy7A49ndak4gSH3 + - id: 6ZbDPDyhbT9ED7K1AcMV9x sortOrder: 3 fieldKey: companysearchfields label: Company Search Fields @@ -62550,7 +62564,7 @@ items: choices: null dynamic: false allowNull: false - - id: viUWHEJYxRD3VBY65SCdk + - id: 3BMsmMSRy8TjvecF2bNqNX sortOrder: 4 fieldKey: name label: Company Name @@ -62564,7 +62578,7 @@ items: choices: null dynamic: false allowNull: false - - id: 4C2D4nz8FiY9v2MwLFAsEh + - id: wWnGiFwcGbs8GfTxCGfZ6o sortOrder: 5 fieldKey: description label: Company Description @@ -62578,7 +62592,7 @@ items: choices: null dynamic: false allowNull: false - - id: qab37BAg9j1pzZcx5S54j9 + - id: b6fh8muFW95QJShTaTTDjx sortOrder: 6 fieldKey: address label: Street Address @@ -62592,7 +62606,7 @@ items: choices: null dynamic: false allowNull: false - - id: uVMLsrK71kASexcaiVe5Z8 + - id: 61hE1RBvR1KW9CL3QCwQHZ sortOrder: 7 fieldKey: city label: City @@ -62606,7 +62620,7 @@ items: choices: null dynamic: false allowNull: false - - id: gGRsfYg7GSCAJ3s3ztdzdt + - id: 7YbU3hGsy5pbpDT67PmWk6 sortOrder: 8 fieldKey: state label: State @@ -62620,7 +62634,7 @@ items: choices: null dynamic: false allowNull: false - - id: 5R2HfMUC6txJC9bVF7ja9b + - id: jQwgvdvMrnoj6C6KBxj3PG sortOrder: 9 fieldKey: zip label: Postal Code @@ -62640,7 +62654,7 @@ items: choices: null dynamic: false allowNull: false - - id: kEdokL5PrDvoYXpeCGdUTj + - id: g8b9eh3ftRFFFxNDWT2Wtc sortOrder: 10 fieldKey: domain label: Domain @@ -62654,7 +62668,7 @@ items: choices: null dynamic: false allowNull: false - - id: 6W5XETikyLRax6eHQvBU8Y + - id: gC1zTXod4fDd9cvdUqLycS sortOrder: 11 fieldKey: phone label: Phone @@ -62668,7 +62682,7 @@ items: choices: null dynamic: false allowNull: false - - id: pzjqj3BKP7H9aoMqzcqJDa + - id: 9pagwUPECaRLMqJ8SbK5yj sortOrder: 12 fieldKey: numberofemployees label: Number of Employees @@ -62682,7 +62696,7 @@ items: choices: null dynamic: false allowNull: false - - id: 9rSLRqK59Dji6zSANhgava + - id: mi6XfbaKpAEcaHFEMJqWK1 sortOrder: 13 fieldKey: industry label: Industry @@ -62696,7 +62710,7 @@ items: choices: null dynamic: false allowNull: false - - id: tXC4MshvXvfSNG7cgPWMZv + - id: cWKDBKPhTVJzyJTvhcjvbz sortOrder: 14 fieldKey: lifecyclestage label: Lifecycle Stage @@ -62712,7 +62726,7 @@ items: choices: null dynamic: false allowNull: false - - id: wNHgQFvCwEgujveWfwzWZG + - id: kPhagpW9YhqYHFyAC61Z1k sortOrder: 15 fieldKey: properties label: Other Properties @@ -62742,7 +62756,7 @@ items: hidden: false defaultTrigger: null fields: - - id: aQQRfpfb8pzEZmvScoGS4G + - id: kxSPqnXFDQXMTkcrE38Vcy sortOrder: 0 fieldKey: object_details label: Object Details @@ -62754,7 +62768,7 @@ items: choices: null dynamic: false allowNull: false - - id: xz6LDZHCmxYbaKNgKge413 + - id: iQmEqNLT2Mhtjc6jzQXmGe sortOrder: 1 fieldKey: properties label: Properties @@ -62766,7 +62780,7 @@ items: choices: null dynamic: true allowNull: false - - id: wXQn4bhhtLNLU61yxtPFTi + - id: ipq9jZegNCGyBsuoQyAbns sortOrder: 2 fieldKey: sensitive_properties label: Sensitive Properties @@ -62778,7 +62792,7 @@ items: choices: null dynamic: true allowNull: false - - id: pp8757hq6jPqQEDVPhY4F1 + - id: 8pcBfffJxYqCTMd8gvhTvz sortOrder: 3 fieldKey: association_sync_mode label: Associated Record Sync Mode @@ -62798,7 +62812,7 @@ items: value: read dynamic: false allowNull: false - - id: 9oKBmYTBK7zBYjPcSnkD9d + - id: iFYPqCCfEX3xCnqUD9ex54 sortOrder: 4 fieldKey: associations label: Associations @@ -62818,7 +62832,7 @@ items: hidden: false defaultTrigger: null fields: - - id: yuGonhqqeWPopJDdc3FyJ + - id: h7d99ZCwfEyFev1UVPcx93 sortOrder: 0 fieldKey: event_name label: Event Name @@ -62830,7 +62844,7 @@ items: choices: null dynamic: true allowNull: false - - id: 8DgdKPN2gvvJzGhefMpb4V + - id: nhdhQtU3Whix5BNauHBP5z sortOrder: 1 fieldKey: record_details label: Associated Record Details @@ -62842,7 +62856,7 @@ items: choices: null dynamic: false allowNull: false - - id: opsdKmRBYB4dftajPNTiHr + - id: 9MAhmE2ox45VxrSE8X1V6V sortOrder: 2 fieldKey: properties label: Properties @@ -62854,7 +62868,7 @@ items: choices: null dynamic: true allowNull: false - - id: wg8nJQCyFw3d185WTiMZhg + - id: w4Fz3hcKhx1iULDmweuJN sortOrder: 3 fieldKey: occurred_at label: Event Timestamp @@ -94525,6 +94539,12 @@ items: description: Podscribe advertiser lookup key required: true label: Advertiser + - name: userId + type: string + defaultValue: '' + description: Podscribe user ID + required: false + label: User ID actions: - id: otTeGZNHmduwXWxaTMe4ux name: Page @@ -94534,7 +94554,7 @@ items: hidden: false defaultTrigger: type = "page" fields: - - id: cYZYdxvQzBev6fZR5xdzwf + - id: 5uHaFgAuEX7NBT9LhZPdHB sortOrder: 0 fieldKey: anonymousId label: Anonymous ID @@ -94549,7 +94569,7 @@ items: dynamic: false allowNull: true hidden: false - - id: hsGJRRqsjoFqZKZ82zpxZB + - id: fEfhwnZP67QtjrKMevQGQX sortOrder: 1 fieldKey: timestamp label: Timestamp @@ -94564,7 +94584,7 @@ items: dynamic: false allowNull: false hidden: false - - id: v1VGGytx1NYqUgYHDSn5MT + - id: iiXRhnbzJzxJy9cM6Pf1Mt sortOrder: 2 fieldKey: referrer label: Page Referrer @@ -94585,7 +94605,7 @@ items: dynamic: false allowNull: true hidden: false - - id: dnSccvhcXFtXq7FYb6ap9v + - id: diiPjvHqaf6tGEmjphHNPG sortOrder: 3 fieldKey: url label: Page URL @@ -94606,7 +94626,7 @@ items: dynamic: false allowNull: true hidden: false - - id: 6oR6Ba2jbPHFvpK3QRXbrG + - id: apHTUdviHqCYGMnipvLqoa sortOrder: 4 fieldKey: ip label: User IP address @@ -94621,7 +94641,7 @@ items: dynamic: false allowNull: false hidden: false - - id: sN55PJZPUndAZcHmGz7nMr + - id: ek6YjM1tbkqzqpeM48Je9E sortOrder: 5 fieldKey: library label: Segment Library @@ -94636,7 +94656,7 @@ items: dynamic: false allowNull: false hidden: false - - id: iMhGsP389b4qc7JsMJ8Zt1 + - id: 5KLt95PKDgZHnLv55wEdSe sortOrder: 6 fieldKey: userAgent label: User Agent @@ -94659,7 +94679,7 @@ items: hidden: false defaultTrigger: type = "track" fields: - - id: c5Cyryb66879sYfKuvi379 + - id: mqrEKxee9sT6bNCTo75smv sortOrder: 0 fieldKey: anonymousId label: Anonymous ID @@ -94674,7 +94694,7 @@ items: dynamic: false allowNull: true hidden: false - - id: f9Bz4NCkmubwGLLcP1yWYs + - id: 2rGX2NhqhWpbwwhthRnATn sortOrder: 1 fieldKey: timestamp label: Timestamp @@ -94689,7 +94709,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 92McJykQw7qH8Xi5gjTGuA + - id: rdH29EvEg6ApWbmfokGrhs sortOrder: 2 fieldKey: referrer label: Page Referrer @@ -94710,7 +94730,7 @@ items: dynamic: false allowNull: true hidden: false - - id: 31apiakvDM1jTp7dKFVBzs + - id: tGhm8a2RJjRwtvfcsXgrCR sortOrder: 3 fieldKey: url label: Page URL @@ -94731,7 +94751,7 @@ items: dynamic: false allowNull: true hidden: false - - id: 7ExWVm19PLZVYzfbXMFaUC + - id: rWv1kvRDeEifBKd1KG66LG sortOrder: 4 fieldKey: ip label: User IP address @@ -94746,7 +94766,7 @@ items: dynamic: false allowNull: false hidden: false - - id: npX2zKEB16yMmz7VYeaGhn + - id: nNUtsrNYXZaVZqsSJaY3FV sortOrder: 5 fieldKey: library label: Segment Library @@ -94761,7 +94781,7 @@ items: dynamic: false allowNull: false hidden: false - - id: iGvB5w2qXuASKesXnRrQTy + - id: 5dKUFVHMEurLRkURw5VSsQ sortOrder: 6 fieldKey: userAgent label: User Agent @@ -94776,7 +94796,7 @@ items: dynamic: false allowNull: false hidden: false - - id: bQSecVUCXwSGEszBLvYeXX + - id: 7AoFf1AcKS9pQeENf3z3sX sortOrder: 7 fieldKey: email label: Email address @@ -94797,7 +94817,7 @@ items: dynamic: false allowNull: true hidden: false - - id: 56kZ2bxgbeXT5JRHTefFfD + - id: dswRFtZ8kswSsP44B6c4Yz sortOrder: 8 fieldKey: properties label: Event properties @@ -94825,7 +94845,7 @@ items: dynamic: false allowNull: false hidden: false - - id: tSQ1Q4pFQpoKoWy8YGbe2u + - id: azmHnoj58EZPwtJ2e8eXn sortOrder: 9 fieldKey: podscribeEvent label: Podscribe event type @@ -94895,8 +94915,8 @@ items: '@path': $.properties.is_subscription podscribeEvent: purchase trigger: type = "track" and event = "Order Completed" - - actionId: wXFTRjNRXRVqqSPeFL66YJ - name: Signed Up Calls + - actionId: otTeGZNHmduwXWxaTMe4ux + name: Page Calls fields: anonymousId: '@path': $.anonymousId @@ -94924,33 +94944,9 @@ items: '@path': $.context.library userAgent: '@path': $.context.userAgent - email: - '@if': - exists: - '@path': $.context.traits.email - then: - '@path': $.context.traits.email - else: - '@path': $.properties.email - properties: - total: - '@path': $.properties.total - order_id: - '@path': $.properties.order_id - currency: - '@path': $.properties.currency - coupon: - '@path': $.properties.coupon - num_items_purchased: - '@path': $.properties.num_items_purchased - is_new_customer: - '@path': $.properties.is_new_customer - is_subscription: - '@path': $.properties.is_subscription - podscribeEvent: signup - trigger: type = "track" and event = "Signed Up" - - actionId: otTeGZNHmduwXWxaTMe4ux - name: Page Calls + trigger: type = "page" + - actionId: wXFTRjNRXRVqqSPeFL66YJ + name: Signed Up Calls fields: anonymousId: '@path': $.anonymousId @@ -94978,7 +94974,31 @@ items: '@path': $.context.library userAgent: '@path': $.context.userAgent - trigger: type = "page" + email: + '@if': + exists: + '@path': $.context.traits.email + then: + '@path': $.context.traits.email + else: + '@path': $.properties.email + properties: + total: + '@path': $.properties.total + order_id: + '@path': $.properties.order_id + currency: + '@path': $.properties.currency + coupon: + '@path': $.properties.coupon + num_items_purchased: + '@path': $.properties.num_items_purchased + is_new_customer: + '@path': $.properties.is_new_customer + is_subscription: + '@path': $.properties.is_subscription + podscribeEvent: signup + trigger: type = "track" and event = "Signed Up" partnerOwned: true - id: 5d25eddde3ff660001b3adda display_name: Podsights @@ -97097,7 +97117,7 @@ items: previous_names: - Recombee website: https://www.recombee.com - status: PUBLIC_BETA + status: PUBLIC categories: - Personalization - Marketing Automation @@ -102442,7 +102462,7 @@ items: hidden: false defaultTrigger: type = "track" or type = "identify" fields: - - id: aCdquof3Bd6c3wug29BeEY + - id: m2kriU4SGQa1xwXZLAcnJ1 sortOrder: 0 fieldKey: custom_audience_name label: Custom Audience Name @@ -102457,7 +102477,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 4qkzJunzrb3ZTtn5VEXgHo + - id: 8foubWaS3F8SEM6BvrV81W sortOrder: 1 fieldKey: segment_computation_action label: Segment Computation Action @@ -102474,12 +102494,14 @@ items: dynamic: false allowNull: false hidden: false - - id: fq5EwYtoVfnBh5wRJ6YMhH + - id: poTpnUr2v1okG6zFKWdaPD sortOrder: 2 fieldKey: email label: Email type: STRING - description: User's email address for including/excluding from custom audience + description: >- + User's email address to be included/excluded from the custom audience. + One of either email_sha256 or email must be specified. placeholder: '' defaultValue: '@if': @@ -102489,14 +102511,36 @@ items: '@path': $.context.traits.email else: '@path': $.traits.email - required: true + required: false multiple: false choices: null dynamic: false allowNull: false hidden: false - - id: ae6rFSFRB9dSGZNVAxPxjb + - id: bRRuzs6Qx2oujG33Sydv1i sortOrder: 3 + fieldKey: email_sha256 + label: Email SHA256 + type: STRING + description: >- + User's SHA256-hashed email address to be included/excluded from the + custom audience. One of either email_sha256 or email must be specified. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.context.traits.email_sha256 + then: + '@path': $.context.traits.email_sha256 + else: + '@path': $.traits.email_sha256 + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: a6YHzmbqbXRnMaTboRcr9F + sortOrder: 4 fieldKey: traits_or_props label: traits or properties object type: OBJECT @@ -102516,8 +102560,8 @@ items: dynamic: false allowNull: false hidden: false - - id: btfk8jdv6uDRh7KT6dmcwC - sortOrder: 4 + - id: b4mjo4w2Cd9hfVF68E1on2 + sortOrder: 5 fieldKey: enable_batching label: enable batching to rokt api type: BOOLEAN @@ -102548,6 +102592,14 @@ items: '@path': $.context.traits.email else: '@path': $.traits.email + email_sha256: + '@if': + exists: + '@path': $.context.traits.email_sha256 + then: + '@path': $.context.traits.email_sha256 + else: + '@path': $.traits.email_sha256 traits_or_props: '@if': exists: @@ -111270,7 +111322,7 @@ items: regions: - us-west-2 - eu-west-1 - url: connections/destinations/catalog/actions-sendgrid + url: connections/destinations/catalog/sendgrid previous_names: - Sendgrid Marketing Campaigns - SendGrid Marketing Campaigns @@ -132700,7 +132752,7 @@ items: previous_names: - Userpilot Cloud (Actions) website: https://userpilot.com/ - status: PUBLIC_BETA + status: PUBLIC categories: - Personalization - Analytics @@ -132925,7 +132977,7 @@ items: previous_names: - Userpilot Web (Actions) website: https://userpilot.com/ - status: PUBLIC_BETA + status: PUBLIC categories: - Personalization - Analytics diff --git a/src/_data/catalog/destinations_private.yml b/src/_data/catalog/destinations_private.yml index 98f8b93312..97edd51abf 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-04-24 +# destination data last updated 2025-05-01 items: - id: 54521fd925e721e32a72eee1 display_name: Pardot diff --git a/src/_data/catalog/source_categories.yml b/src/_data/catalog/source_categories.yml index 19058f5719..e0de29377b 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 2025-04-24 +# source categories last updated 2025-05-01 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 cbb8203ced..513a5a4697 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-04-24 +# sources last updated 2025-05-01 items: - id: 8HWbgPTt3k display_name: .NET diff --git a/src/connections/destinations/catalog/bing-ads/index.md b/src/connections/destinations/catalog/bing-ads/index.md index 96980cb2a5..539d2a7381 100644 --- a/src/connections/destinations/catalog/bing-ads/index.md +++ b/src/connections/destinations/catalog/bing-ads/index.md @@ -98,6 +98,19 @@ analytics.track('Order Completed', { | Category | `category` property | | Action | Always set to `track` | +## Consent mode + +Starting May 5, 2025, Microsoft is enforcing the use of consent mode for clients with end users in the European Economic Area (EEA), the United Kingdom, and Switzerland. To learn more about setting consent mode, refer to the [Microsoft docs](https://help.ads.microsoft.com/?FromAdsEmail=1#apex/ads/en/60341/1){:target="_blank"}. Microsoft is currently only enforcing the [`ad_storage` value](https://help.ads.microsoft.com/?FromAdsEmail=1#apex/ads/en/60341/1/#exp46){:target="_blank"}. + +To send consent signals using the Microsoft Bing Ads destination: + +1. Navigate to **Connections > Destinations** and select the Microsoft Bing Ads destination. +2. Select the **Settings** tab for the destination. +3. Turn on the **Enable Consent** setting. If it is turned off, the Microsoft Bing Ads destination won't send the consent signal. +4. Select **ALLOWED** or **DENIED** as the **Default Ads Storage Consent State**. This will be the default consent signal state when the page loads. You can toggle the consent state by passing consent signals using the Track or Page event. +5. If you're using Segment [Consent Management](/docs/privacy/consent-management/), specify the consent category to look up the `ad_storage` consent state using the **Ad Storage Consent Category** setting. +6. If you're not a Segment consent management user, specify the properties field through which you want to toggle the consent setting with the `Ad Storage Consent Property Mapping` setting. For example, if you wish to toggle `ad_storage` consent state based `properties.ad_storage`, set the value to `ad_storage` and make sure the `properties.ad_storage` in your track or page event is set to `granted` or `denied`. + ## Troubleshooting diff --git a/src/connections/reverse-etl/reverse-etl-source-setup-guides/snowflake-setup.md b/src/connections/reverse-etl/reverse-etl-source-setup-guides/snowflake-setup.md index 2768240b68..2bf44475c1 100644 --- a/src/connections/reverse-etl/reverse-etl-source-setup-guides/snowflake-setup.md +++ b/src/connections/reverse-etl/reverse-etl-source-setup-guides/snowflake-setup.md @@ -10,7 +10,7 @@ Set up Snowflake as your Reverse ETL source. At a high level, when you set up Snowflake for Reverse ETL, the configured user/role needs read permissions for any resources (databases, schemas, tables) the query needs to access. Segment keeps track of changes to your query results with a managed schema
(`__SEGMENT_REVERSE_ETL`), which requires the configured user to allow write permissions for that schema. > success "" -> Segment now supports key-pair authentication for Snowflake Reverse ETL sources. Key-pair authentication is available for Business Tier users only. +> Segment now supports key-pair authentication for Snowflake Reverse ETL sources. > info "Snowflake Reverse ETL sources support Segment's dbt extension" > If you have an existing dbt account with a Git repository, you can use [Segment's dbt extension](/docs/segment-app/extensions/dbt/) to centralize model management and versioning, reduce redundancies, and run CI checks to prevent breaking changes. diff --git a/src/connections/sources/catalog/libraries/website/javascript/index.md b/src/connections/sources/catalog/libraries/website/javascript/index.md index 0c0579d06f..e3c83feb50 100644 --- a/src/connections/sources/catalog/libraries/website/javascript/index.md +++ b/src/connections/sources/catalog/libraries/website/javascript/index.md @@ -65,10 +65,13 @@ The Identify call has the following fields: | Field | | Type | Description | | ---------- | -------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `userId` | optional | String | The database ID for the user. If you don't know who the user is yet, you can omit the `userId` and just record `traits`. You can read more about identities in the [identify reference](/docs/connections/spec/identify). | +| `userId` | optional | String | The database ID for the user. If you don't know who the user is yet, you can omit the `userId` and just record `traits`. You can read more about identities in the [identify reference](/docs/connections/spec/identify). | | `traits` | optional | Object | A dictionary of traits you know about the user, like `email` or `name`. You can read more about traits in the [identify reference](/docs/connections/spec/identify/). | | `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 `traits` object, pass an empty object (as an '{}') before `options`._ | -| `callback` | optional | Function | A function executed after a timeout of 300 ms, giving the browser time to make outbound requests first. | +| `callback` | optional | Function | A function executed after a timeout of 300 ms, giving the browser time to make outbound requests first. | + + +If you want to set the `userId` without sending an Identify call, you can use `analytics.user().id('123')`. In the NPM package, use `analytics.instance.user().id(xxx)`. This method updates the stored `userId` locally without triggering a network request. This is helpful if you want to associate a user ID silently, without sending additional data to Segment or connected destinations. Be cautious when changing the `userId` mid-session to avoid double-counting users or splitting their identity history. By default, Analytics.js caches traits in the browser's `localStorage` and attaches them to each Identify call. @@ -101,6 +104,7 @@ analytics.identify('12091906-01011992', function(){ }); ``` + ### Track The Track method lets you record actions your users perform. You can [see a track example in the Quickstart guide](/docs/connections/sources/catalog/libraries/website/javascript/quickstart/#step-4-track-actions) or find details on [the track method payload](/docs/connections/spec/track/). diff --git a/src/connections/spec/best-practices-identify.md b/src/connections/spec/best-practices-identify.md index 622f714c41..85b76c7844 100644 --- a/src/connections/spec/best-practices-identify.md +++ b/src/connections/spec/best-practices-identify.md @@ -312,8 +312,10 @@ The Segment ID cookie is set with a one year expiration. However, there are some - If you invoke any call before you set an `anonymousId`, Segment automatically sets the `anonymousId` first. This means if you explicitly set an `anonymousId`, you might give the user two `anonymousId`s or overwrite an existing one. - If you fetch the `anonymousId` using `analytics.user().anonymousId()` before one is set, Segment generates and sets an `anonymousId` rather than returning `null`. - If you call `analytics.identify()` with a `userId` that is different from the currently cached `userId`, this can overwrite the existing one and cause attribution problems. +- If you call `analytics.identify(xxx)` or `analytics.instance.user().id(xxx)`(In the NPM package, use `analytics.instance.user().id(xxx)`) with a `userId` that is different from the currently cached `userId`, this can overwrite the existing one and cause attribution problems. - If you generate a new `anonymousId` on a server library, and pass it from the server to the browser, this could overwrite the user's existing `anonymousId`. + > info "" > Remember, if a user has multiple devices, they can have different `anonymousId`s on each different device. diff --git a/src/connections/storage/catalog/snowflake/index.md b/src/connections/storage/catalog/snowflake/index.md index aa76e90e8b..71b686d807 100644 --- a/src/connections/storage/catalog/snowflake/index.md +++ b/src/connections/storage/catalog/snowflake/index.md @@ -91,9 +91,6 @@ GRANT CREATE SCHEMA ON DATABASE "SEGMENT_EVENTS" TO ROLE "SEGMENT"; Create the user that Segment uses to connect to your warehouse. You can create a user that authenticates with a key pair, or you can create a user that authenticates using a password. For enhanced security, Segment recommends creating a user that authenticates with an encrypted key pair. -> info "Key-pair authentication restricted to Business Tier users only" -> Users on other plans can authenticate with Snowflake using a [username and password](#create-a-user-that-authenticates-with-a-username-and-password). - #### Create a user that authenticates with a key pair If you are creating a user that will use a key pair to authenticate, you first must create a public key and then can create a new user. @@ -264,7 +261,7 @@ At this time, the Segment Snowflake destination is not compatible with Snowflake Segment recommends that you authenticate with your Snowflake warehouse using an encrypted key pair. Key-pair authentication uses PKCS#8 private keys, which are typically exchanged in the PEM base64-encoded format. -Although you can create up to two keys in Snowflake, Segment only supports authenticating with one key at a time. To change the key that is in Segment, return to your Snowflake destination's settings and upload a new key in the **Private Key** field. +Although you can create up to two keys in Snowflake, Segment only supports authenticating with one key at a time. To change the key that's used to authenticate with Segment, return to your Snowflake destination's settings and upload a new key in the **Private Key** field. ### Auto Suspend and Auto Resume diff --git a/src/guides/regional-segment.md b/src/guides/regional-segment.md index c58c76479b..00255bd0c9 100644 --- a/src/guides/regional-segment.md +++ b/src/guides/regional-segment.md @@ -127,23 +127,6 @@ Segment maintains and hosts these sources, and they don't require SDK-level conf If you're using other cloud sources not listed here, they may only be available in US-based workspaces. Reach out to Segment Support if you're unsure whether a cloud source is supported in the EU. -## Updating source settings in Segment - -After you’ve configured your SDKs or custom integrations, double-check that your source settings in Segment are using the correct regional endpoint. - -To set your data ingestion region: - -1. Go to your source's **Settings** tab. -2. Click **Regional Settings**. -3. Choose your **Data Ingestion Region**. - - If your workspace is in the *US West* data processing region, you can select from: Dublin, Singapore, Oregon, or Sydney. - - If your workspace is in the *EU West* data processing region, Segment only supports ingestion from Dublin, using the `events.eu1.segmentapis.com/` endpoint. -4. Save your changes. - -All regions are configured on a **per-source** basis. You'll need to configure the region for each source separately if you don't want to use the default region. - -Segment’s client-side SDKs automatically fetch this setting and update themselves the next time the app reloads. However, for mobile apps and critical regional routing, Segment recommends also [setting the endpoint manually in your SDK configuration](#set-up-your-sources-for-eu-or-us-workspaces. - ## Create a new workspace with a different region > info "" diff --git a/src/guides/usage-and-billing/mtus-and-throughput.md b/src/guides/usage-and-billing/mtus-and-throughput.md index de50b9504d..a9453b6f7e 100644 --- a/src/guides/usage-and-billing/mtus-and-throughput.md +++ b/src/guides/usage-and-billing/mtus-and-throughput.md @@ -182,7 +182,7 @@ Check to see if you changed how you call `analytics.reset()`. This utility metho #### Overwriting an existing identity -Segment's analytics libraries include methods that allow you to overwrite both the `userId` (using `identify(xxx)`) and `anonymousId` (using `analytics.user().anonymousId(xxx)`). Using these methods on a user whose tracking information already includes an ID can cause the user to be counted more than once. +Segment’s analytics libraries include methods that allow you to overwrite both the `userId` (using `identify(xxx)` or `analytics.instance.user().id(xxx)`) and `anonymousId` (using `analytics.user().anonymousId(xxx)`). Using these methods on a user whose tracking information already includes an ID can cause the user to be counted more than once. If you find you need to use one of these overwrite methods, you should check to make sure that the field you are changing is `null` first. If the field is _not_ null, you probably don't want to overwrite it and lose the user's original tracked identity. diff --git a/src/monitor/alerts/default-alerts.md b/src/monitor/alerts/default-alerts.md index bd20b502e8..717c7ec1ea 100644 --- a/src/monitor/alerts/default-alerts.md +++ b/src/monitor/alerts/default-alerts.md @@ -110,6 +110,7 @@ your identity-resolved profiles to your data warehouse. - **Audience Deleted**: A user in your workspace deleted an Audience. - **Audience Destination Sync Failed**: Segment was unable to sync your Audience with a connected destination. - **Audience Modified**: A user in your workspace modified an Audience. +- **Audience Run Complete**: Segment computed your Audience. For more information about how long it takes Segment to compute an Audience, see the [Engage Audiences Overview](/docs/engage/audiences/#understanding-compute-times) docs. - **Audience Run Failed**: Segment was unable to compute your Audience. To resolve this error, please [contact Segment support](https://segment.com/help/contact/){:target="_blank”}. > info "Custom Engage alerts" diff --git a/src/protocols/faq.md b/src/protocols/faq.md index b33cf789cf..e2bb133f9b 100644 --- a/src/protocols/faq.md +++ b/src/protocols/faq.md @@ -31,6 +31,17 @@ You can also use the Slack Actions destination to set event triggers for context To consolidate the views in the Schema tab, Segment automatically converts `page` and `screen` calls into `Page Viewed` and `Screen Viewed` events that appear in the Schema Events view. Segment recommends adding a `Page Viewed` or `Screen Viewed` event to your Tracking Plan with any properties you want to validate against. At this time, to validate that a specific named page/screen (`analytics.page('Homepage') | analytics.screen('Home')`) has a specific set of required properties, you will need to use the [JSON Schema](/docs/protocols/tracking-plan/create/#edit-underlying-json-schema). +### Why aren't my changes to the Tracking Plan showing up immediately? + +When you update a Tracking Plan (for example, adding or removing a new property or editing the event or data type) the changes are typically applied within a few minutes. However, there can occasionally be a short delay, especially during periods of high usage across the platform. + +If you still see events flagged or properties omitted shortly after making changes, try the following: + +- Wait a few minutes and then send the event again. +- Make sure the updates are saved and published properly. + +If the changes still aren't reflected after 10 - 15 minutes, [contact Segment Support](https://segment.com/help/contact/){:target="_blank"}. + ### How can I see who made changes to my Tracking Plan? Each Tracking Plan includes a Changelog, which shows which changes were made by which users. To view it, open a Tracking Plan, click the **...** button (also known as the dot-dot-dot, or ellipses menu) next to the Edit Tracking Plan button, and click **View Changelog**. diff --git a/src/unify/data-graph/setup-guides/snowflake-setup.md b/src/unify/data-graph/setup-guides/snowflake-setup.md index aea89baece..249530272a 100644 --- a/src/unify/data-graph/setup-guides/snowflake-setup.md +++ b/src/unify/data-graph/setup-guides/snowflake-setup.md @@ -156,7 +156,7 @@ To connect your warehouse to the Data Graph: - **Username**: The Snowflake user that Segment uses to run SQL in your warehouse. This user is referred to as `segment_connection_username` in the script below - **Authentication**: There are 2 supported authentication methods: - **Key Pair**: This is the recommended method of authentication. You would need to first create the user and assign it a key pair following the instructions in the [Snowflake docs](https://docs.snowflake.com/en/user-guide/key-pair-auth){:target="_blank"}. Then, follow the Segment docs above to set up Snowflake permissions and set the `segment_connections_username` variable in the SQL script to the user you just created - - **Password**: The password of the user above. This password is referred to as `segment_connection_password` in the script below. + - **Password**: The password of the user above. This password is referred to as `segment_connection_password` in the script below 5. Test your connection, then click Save.