diff --git a/src/_data/catalog/destination_categories.yml b/src/_data/catalog/destination_categories.yml index 9d1dc61343..321c5173bc 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-07-10 +# destination categories last updated 2025-07-17 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 c8a1914d2f..af0364d1ba 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-07-10 +# destination data last updated 2025-07-17 items: - id: 637e8d185e2dec264895ea89 display_name: 1Flow @@ -455,6 +455,340 @@ items: actions: [] presets: [] partnerOwned: true +- id: 6874c64e5eda096bf3850ee0 + display_name: Aampe (Actions) + name: Aampe (Actions) + slug: aampe-actions + hidden: false + endpoints: + - US + regions: + - us-west-2 + - eu-west-1 + url: connections/destinations/catalog/aampe-actions + previous_names: + - Aampe (Actions) + website: https://aampe.com/ + status: PUBLIC_BETA + categories: + - Personalization + - CRM + logo: + url: https://cdn-devcenter.segment.com/d53e9443-0c77-445f-96f6-135a09a5801f.svg + mark: + url: https://cdn-devcenter.segment.com/3154991b-37a3-4c04-9e36-cc483caa0f49.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 Aampe API Key + required: true + label: API Key + - name: region + type: select + defaultValue: https://ingestion-service-asia-southeast1-toqowp62ka-as.a.run.app/v1/ + description: Your data region + required: true + label: Region + actions: + - id: 7HmfVLFrn8dQEsVtWciXas + name: Upsert User Profile + slug: upsertUserProfile + description: Send user profile updates to Aampe. + platform: CLOUD + hidden: false + defaultTrigger: type = "identify" or type = "track" or type = "page" or type = "screen" + fields: + - id: kLFKaj9fMaZ2UHRBYQrZY4 + sortOrder: 0 + fieldKey: contact_id + label: Contact ID + type: STRING + description: >- + Identifier for user. Use `userId` or `anonymousId` from the Segment + event. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 5Lvtq7JRRpSuBo1rQp4tG6 + sortOrder: 1 + fieldKey: event_name + label: Event Name + type: STRING + description: Name of the event. Use `event` from the Segment event. + placeholder: '' + defaultValue: User Profile Updated + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: qTrSVZCqJLb3Y7ZP72pr7C + sortOrder: 2 + fieldKey: timestamp + label: Timestamp + type: STRING + description: Timestamp for when the event happened. + placeholder: '' + defaultValue: + '@path': $.timestamp + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: iN5G5LRhLT6Lnanh5fTZ6p + sortOrder: 3 + fieldKey: metadata + label: Metadata + type: OBJECT + description: Event properties. + placeholder: '' + defaultValue: + '@path': $.properties + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 5qWS2HkZiR9Pg1uxXnGAWA + sortOrder: 4 + fieldKey: event_id + label: Event ID + type: STRING + description: Unique identifier for the event. + placeholder: '' + defaultValue: + '@path': $.messageId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: bB7jwk59B7jga1r7RFVmeA + sortOrder: 5 + fieldKey: user_properties + label: User Properties + type: OBJECT + description: >- + User properties. Make sure to update the default mapping if you are + sending user proferties via properties object in a track, page or screen + event. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.traits + then: + '@path': $.traits + else: + '@path': $.context.traits + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: osFKAiiV93y3P4BGgYnUWz + name: Send Event + slug: sendEvent + description: Send analytics, page and screen events to Aampe. + platform: CLOUD + hidden: false + defaultTrigger: type = "track" or type = "page" or type = "screen" + fields: + - id: e9uPJ1VsveraGHLf65APJ3 + sortOrder: 0 + fieldKey: contact_id + label: Contact ID + type: STRING + description: >- + Identifier for user. Use `userId` or `anonymousId` from the Segment + event. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 8jEBuoqVd4UeQYLgxWLsXi + sortOrder: 1 + fieldKey: event_name + label: Event Name + type: STRING + description: Name of the event. Use `event` from the Segment event. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.event + then: + '@path': $.event + else: + '@path': $.name + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: cDqF1DzTBso7rhg6MWt4UU + sortOrder: 2 + fieldKey: timestamp + label: Timestamp + type: STRING + description: Timestamp for when the event happened. + placeholder: '' + defaultValue: + '@path': $.timestamp + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: jQCkuvPwerx8poQxkV7sSn + sortOrder: 3 + fieldKey: timezone + label: Timezone + type: STRING + description: User’s local timezone. + placeholder: '' + defaultValue: + '@path': $.context.timezone + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: tCSfh2hMCt5tmCsGdKvqKF + sortOrder: 4 + fieldKey: metadata + label: Metadata + type: OBJECT + description: Event properties. + placeholder: '' + defaultValue: + '@path': $.properties + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: hw1KtFTubsLcPiPhZ64aQD + sortOrder: 5 + fieldKey: event_id + label: Event ID + type: STRING + description: Unique identifier for the event. + placeholder: '' + defaultValue: + '@path': $.messageId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + presets: + - actionId: osFKAiiV93y3P4BGgYnUWz + name: Send Event + fields: + contact_id: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + event_name: + '@if': + exists: + '@path': $.event + then: + '@path': $.event + else: + '@path': $.name + timestamp: + '@path': $.timestamp + timezone: + '@path': $.context.timezone + metadata: + '@path': $.properties + event_id: + '@path': $.messageId + trigger: type = "track" or type = "page" or type = "screen" + - actionId: 7HmfVLFrn8dQEsVtWciXas + name: Identify User + fields: + contact_id: + '@if': + exists: + '@path': $.userId + then: + '@path': $.userId + else: + '@path': $.anonymousId + event_name: User Profile Updated + timestamp: + '@path': $.timestamp + metadata: + '@path': $.properties + event_id: + '@path': $.messageId + user_properties: + '@if': + exists: + '@path': $.traits + then: + '@path': $.traits + else: + '@path': $.context.traits + trigger: type = "identify" + partnerOwned: true - id: 605dd9d7e5ff0b3873e250a4 display_name: AB Smartly name: AB Smartly @@ -6912,7 +7246,7 @@ items: hidden: false defaultTrigger: event = "Audience Entered" or event = "Audience Exited" fields: - - id: hXTR51dj3LafimrXih2Bp1 + - id: 4A1bPd98i588bYpa5eZr6w sortOrder: 1 fieldKey: externalUserId label: External User ID @@ -6926,7 +7260,7 @@ items: choices: null dynamic: false allowNull: false - - id: j9mjcuhWEpMifdZyWAbgy6 + - id: dX5JfWzdDmrzfQ2TiV3Hwe sortOrder: 2 fieldKey: email label: Email @@ -6946,7 +7280,7 @@ items: choices: null dynamic: false allowNull: false - - id: rDdffwomWyLMUicWqZ2jHs + - id: aeWdgP2rpDWC9rFN79BYhn sortOrder: 3 fieldKey: firstName label: First name @@ -6960,7 +7294,7 @@ items: choices: null dynamic: false allowNull: false - - id: 2sXvY1YMvis6Pd8E8j5wAD + - id: 5GrZQfGEA3CFrycdMfMxcA sortOrder: 4 fieldKey: lastName label: Last name @@ -6974,7 +7308,7 @@ items: choices: null dynamic: false allowNull: false - - id: 7LzRDB5r7u7BFd4FwRanBu + - id: ik2u2EBYZP1aYAXWNj2RUF sortOrder: 5 fieldKey: phone label: Phone @@ -6988,7 +7322,7 @@ items: choices: null dynamic: false allowNull: false - - id: h5y455jgy8YUoZvtjwhJPs + - id: 7Z17GdEpdKZFr5Myki5SXC sortOrder: 6 fieldKey: postal label: Postal @@ -7002,7 +7336,7 @@ items: choices: null dynamic: false allowNull: false - - id: ojQuEjGKCbmPhauLWCn1in + - id: gxPc3gsoX7YSbTMnHnoWnC sortOrder: 7 fieldKey: state label: State @@ -7016,7 +7350,7 @@ items: choices: null dynamic: false allowNull: false - - id: 36RovDYmJGAH3hUrq3kgqx + - id: cTeVapo1GSqRhFR9V6V2jv sortOrder: 8 fieldKey: city label: City @@ -7030,7 +7364,7 @@ items: choices: null dynamic: false allowNull: false - - id: vnTc2oJq7AeJEd2Z3pHvMN + - id: qC6au8wr26pyg3g9tmHcbT sortOrder: 9 fieldKey: address label: Address @@ -7044,7 +7378,7 @@ items: choices: null dynamic: false allowNull: false - - id: 2taQFET6uLeZJLi9vQkRwt + - id: sUqPf2Xi1XJXb7v4PveqxS sortOrder: 11 fieldKey: enable_batching label: Enable Batching @@ -7057,6 +7391,21 @@ items: choices: null dynamic: false allowNull: false + - id: v4MyobKDELZqZzkUiLhH7f + sortOrder: 12 + fieldKey: batch_size + label: Batch Size + type: NUMBER + description: >- + Maximum number of events to include in each batch. Actual batch sizes + may be lower. Minimum value is 1500 and maximum is 10000. + placeholder: '' + defaultValue: 10000 + required: false + multiple: false + choices: null + dynamic: false + allowNull: false presets: [] partnerOwned: false - id: 5d1994fb320116000112aa12 @@ -24943,7 +25292,7 @@ items: hidden: false defaultTrigger: event = "Audience Entered" or event = "Audience Exited" fields: - - id: mrKbuMgfWN8UEpJ2qcde2H + - id: sMWNJ9SV44EHdFWm1UrdNW sortOrder: 0 fieldKey: external_id label: External User ID @@ -24962,7 +25311,7 @@ items: dynamic: false allowNull: false hidden: false - - id: gfvJ2HNHnRiAJhXYp6Jzdi + - id: adW8A3ypaS3Gn61UTMQVDf sortOrder: 1 fieldKey: user_alias label: User Alias Object @@ -24979,7 +25328,7 @@ items: dynamic: false allowNull: false hidden: false - - id: m6feT5HWsrNtuELUTP3GRM + - id: fMBFeqVHqMphMfNMPUXjQr sortOrder: 2 fieldKey: device_id label: Device ID @@ -24995,7 +25344,7 @@ items: dynamic: false allowNull: false hidden: false - - id: 9kfD74Zpu2MdUBWmdp3K7q + - id: 6UaoCM3iYLE1EHXj5t36Wd sortOrder: 5 fieldKey: enable_batching label: Enable Batching @@ -25009,7 +25358,7 @@ items: dynamic: false allowNull: false hidden: false - - id: tYsBaXcfg6WnEBmKpP2ksC + - id: rHgLoUUVzLf1N13HYk2vrU sortOrder: 6 fieldKey: personas_audience_key label: Segment Engage Audience Key @@ -25277,7 +25626,7 @@ items: label: Safari Website Push ID - name: sdkVersion type: select - defaultValue: '5.8' + defaultValue: '5.9' description: The version of the Braze SDK to use required: true label: SDK Version @@ -25327,7 +25676,7 @@ items: hidden: false defaultTrigger: type = "track" and event != "Order Completed" fields: - - id: stJYHuavLhjpZSbbtWnA9F + - id: f92vXJTVaJjwDn588aQyeR sortOrder: 0 fieldKey: eventName label: Event Name @@ -25341,7 +25690,7 @@ items: choices: null dynamic: false allowNull: false - - id: oqyLaWBRrKvgipb129suEp + - id: vA8tF8UQZcjyG7exFqJrrY sortOrder: 1 fieldKey: eventProperties label: Event Properties @@ -25363,7 +25712,7 @@ items: hidden: false defaultTrigger: type = "identify" or type = "group" fields: - - id: dxeRTvLWTwQDdN6fvK5VVo + - id: 2K44AKpPrHHghVemDKpUZ2 sortOrder: 0 fieldKey: external_id label: External User ID @@ -25377,7 +25726,7 @@ items: choices: null dynamic: false allowNull: false - - id: Vht76mw1WSQtpe4F2hq9y + - id: qm2M9pTGBJSxu4DTPN4un6 sortOrder: 1 fieldKey: country label: Country @@ -25391,7 +25740,7 @@ items: choices: null dynamic: false allowNull: true - - id: t2f6CUzpAgn5XxgJk1xNxu + - id: 978rhPL2GsARwfeJoogyM9 sortOrder: 2 fieldKey: current_location label: Current Location @@ -25403,7 +25752,7 @@ items: choices: null dynamic: false allowNull: true - - id: ggD55GKgXsecAwdSxmhdMi + - id: 3FZXECZLbDuhL9ZWeL57t9 sortOrder: 3 fieldKey: custom_attributes label: Custom Attributes @@ -25419,7 +25768,7 @@ items: choices: null dynamic: false allowNull: false - - id: uvVWeQxCMHz7TdwD7DnXuS + - id: p45RAM5tj3uyaxc3ZRJntW sortOrder: 4 fieldKey: dob label: Date of Birth @@ -25431,7 +25780,7 @@ items: choices: null dynamic: false allowNull: true - - id: edhysng2wqWHGcMTuKZxqe + - id: 6kBDzwyBdmbAo71Yt8FRQG sortOrder: 5 fieldKey: email label: Email @@ -25445,7 +25794,7 @@ items: choices: null dynamic: false allowNull: true - - id: rZx6KjpoUpFHR7t2Fmiq5n + - id: 7mU9GS9a5ubvLWq3hjQGQ6 sortOrder: 6 fieldKey: email_subscribe label: Email Subscribe @@ -25460,7 +25809,7 @@ items: choices: null dynamic: false allowNull: false - - id: idp8ibzUex7Q8NRoXjRFNt + - id: w96XkTF8HxoUxqmJz3xnxK sortOrder: 7 fieldKey: first_name label: First Name @@ -25474,7 +25823,7 @@ items: choices: null dynamic: false allowNull: true - - id: wJUxu5uqed8QwikHQGJPwr + - id: 7vrAjcj9dkEY1eEh26Nhsh sortOrder: 8 fieldKey: last_name label: Last Name @@ -25488,7 +25837,7 @@ items: choices: null dynamic: false allowNull: false - - id: AuoHPe9CaefQ4FPSxmfUB + - id: 7x88YefzmGo1nzf3Fqt5Qu sortOrder: 9 fieldKey: gender label: Gender @@ -25504,7 +25853,7 @@ items: choices: null dynamic: false allowNull: true - - id: qHDUBGmgkX88vWktNt83Yq + - id: gC7H4U6XrnWjG2nde2XT5Y sortOrder: 10 fieldKey: home_city label: Home City @@ -25518,7 +25867,7 @@ items: choices: null dynamic: false allowNull: true - - id: thsnNVbYj21rf1NS8iMBHA + - id: xwPdSH6XoyGh9PXjsnzDnt sortOrder: 11 fieldKey: image_url label: Image URL @@ -25532,7 +25881,7 @@ items: choices: null dynamic: false allowNull: false - - id: u3oVoEBu4cDAU5UoWTXaML + - id: 65TyJGPtxt8Cr79UAHZxeW sortOrder: 12 fieldKey: language label: Language @@ -25544,7 +25893,7 @@ items: choices: null dynamic: false allowNull: true - - id: uUv5TJoDTBXqw7RuQmAbky + - id: gU3CAT5bF9YeTHnYpsHuzL sortOrder: 13 fieldKey: phone label: Phone Number @@ -25558,7 +25907,7 @@ items: choices: null dynamic: false allowNull: true - - id: vPztZQqR8pmaBv8aqTr5q1 + - id: ngjspPzDDQoBAT1AM46ccA sortOrder: 14 fieldKey: push_subscribe label: Push Subscribe @@ -25573,7 +25922,7 @@ items: choices: null dynamic: false allowNull: false - - id: cQon4TDMCpkYVTpVvQHZtT + - id: 7CCWhwmkj8XYMZTVQD6LoU sortOrder: 15 fieldKey: subscription_groups label: Subscription Groups @@ -25598,7 +25947,7 @@ items: hidden: false defaultTrigger: type = "track" and event = "Order Completed" fields: - - id: 8ydScjmfB9212W6BD1D3id + - id: kqe3u3DdbRr5rNjXbvNRb9 sortOrder: 0 fieldKey: purchaseProperties label: Purchase Properties @@ -25618,7 +25967,7 @@ items: choices: null dynamic: false allowNull: false - - id: 7DU4vc5BQoMQbfUBtFaLst + - id: uVjXaczgD5zGKgNB3pNyzc sortOrder: 1 fieldKey: products label: Products @@ -25633,14 +25982,6 @@ items: dynamic: false allowNull: false presets: - - actionId: uL67YU9rAsuT4cp4dNNmBu - name: Order Completed calls - fields: - purchaseProperties: - '@path': $.properties - products: - '@path': $.properties.products - trigger: type = "track" and event = "Order Completed" - actionId: fRZrfm4TC5JL3AGeRnLk3W name: Track Calls fields: @@ -25675,6 +26016,14 @@ items: subscription_groups: '@path': $.traits.braze_subscription_groups trigger: type = "identify" or type = "group" + - actionId: uL67YU9rAsuT4cp4dNNmBu + name: Order Completed calls + fields: + purchaseProperties: + '@path': $.properties + products: + '@path': $.properties.products + trigger: type = "track" and event = "Order Completed" partnerOwned: false - id: 6241e78214aad278a6322f52 display_name: Breyta CRM @@ -34972,28 +35321,26 @@ items: hidden: false presets: [] partnerOwned: true -- id: 682db61f6c600fdb90251392 - display_name: Eagle Eye (Actions) - name: Eagle Eye (Actions) - slug: eagle-eye-actions +- id: 6870f42bdaad87a11d764e91 + display_name: Eagle Eye + name: Eagle Eye + slug: eagle-eye hidden: false endpoints: - US regions: - us-west-2 - eu-west-1 - url: connections/destinations/catalog/eagle-eye-actions + url: connections/destinations/catalog/eagle-eye previous_names: - - Eagle Eye (Actions) - website: https://eagleeye.com/ + - Eagle Eye + website: http://www.segment.com status: PUBLIC_BETA - categories: - - Personalization - - Marketing Automation + categories: [] logo: - url: https://cdn-devcenter.segment.com/9ad0b782-15ac-4cec-83dc-21e2600d19b7.svg + url: https://cdn.filepicker.io/api/file/jrbUXsZDQ708akn3cVyZ mark: - url: https://cdn-devcenter.segment.com/71a5d53f-dab0-4ff8-a4c4-58d1fd840518.svg + url: https://cdn.filepicker.io/api/file/jrbUXsZDQ708akn3cVyZ methods: track: true identify: true @@ -35007,7 +35354,7 @@ items: server: true warehouse: false cloudAppObject: false - linkedAudiences: true + linkedAudiences: false components: [] browserUnbundlingSupported: false browserUnbundlingPublic: false @@ -35035,15 +35382,15 @@ items: required: true label: Connector External Key actions: - - id: SqLce3Uc3XxR9ycooEmV2 + - id: iHPP68PAPPypctEXL62Hrm name: Trigger Behavioral Action slug: triggerBehavioralAction description: Trigger behavioral actions in AIR based on tracked events platform: CLOUD hidden: false - defaultTrigger: type = "track" + defaultTrigger: type = "track" or type = "identify" fields: - - id: 73mf46ZxRXb1TG4aaDnbZz + - id: dVGYemvQ8FWEAAWn3wrFRE sortOrder: 0 fieldKey: identityValue label: User identity value @@ -35057,7 +35404,7 @@ items: choices: null dynamic: false allowNull: false - - id: p8BViqXrKD2XhcaJ6VCydo + - id: 2amJN8YQDshFHaeJi1CUHw sortOrder: 1 fieldKey: walletTransactionReference label: Wallet transaction reference @@ -35071,16 +35418,18 @@ items: choices: null dynamic: false allowNull: false - - id: 6kS7Fh9G35fxDcopSthNmW + - id: rtabdGqHL3eTEEQ1qarS8 sortOrder: 2 fieldKey: behavioralActionTriggerReferences label: Behavioral Action trigger reference type: STRING description: >- - Accepts a comma delimited list of reference strings for the Behavioral - Action to be executed. E.g.: A0001,P0001 + If connecting to an Engage Audience the default mapping should be left + as is. This field accepts a comma delimited list of reference strings + for the Behavioral Action to be executed. E.g.: A0001,P0001 placeholder: '' - defaultValue: '' + defaultValue: + '@path': $.context.personas.audience_settings.behavioralActionTriggerReferences required: true multiple: false choices: null @@ -44009,6 +44358,321 @@ items: actions: [] presets: [] partnerOwned: false +- id: 6683e1d5e37fd84efcf3bbef + display_name: First Party Dv360 + name: First Party Dv360 + slug: first-party-dv360 + hidden: false + endpoints: + - US + regions: + - us-west-2 + - eu-west-1 + url: connections/destinations/catalog/first-party-dv360 + previous_names: + - First Party Dv360 + website: http://www.segment.com + status: PUBLIC_BETA + categories: [] + logo: + url: https://cdn-devcenter.segment.com/da053d87-a568-4bae-827f-857f7f4b2aba.svg + mark: + url: https://cdn-devcenter.segment.com/31811060-3f10-46b0-94de-bf299beb94a4.svg + methods: + track: true + identify: false + group: false + alias: false + screen: false + page: false + platforms: + browser: true + mobile: false + server: true + warehouse: false + cloudAppObject: false + linkedAudiences: false + components: [] + browserUnbundlingSupported: false + browserUnbundlingPublic: false + replay: false + connection_modes: + device: + web: false + mobile: false + server: false + cloud: + web: true + mobile: false + server: true + settings: [] + actions: + - id: pMRu4ozQwh3SzjYycCzDfn + name: Add to List + slug: addToList + description: Adds to list + platform: CLOUD + hidden: true + defaultTrigger: null + fields: [] + - id: kjEdc2dNCshXomx9VDnp9 + name: Remove Customer Match Members - Mobile Device Id List + slug: removeFromAudMobileDeviceId + description: >- + Remove customer match members in Google Display & Video 360 Mobile Device + Id List Audience. + platform: CLOUD + hidden: false + defaultTrigger: event = "Audience Entered" + fields: + - id: uT3Uxyik2BSKqGb1QuTPoj + sortOrder: 0 + fieldKey: mobileDeviceIds + label: Mobile Device IDs + type: STRING + description: >- + A list of mobile device IDs defining Customer Match audience members. + The size of mobileDeviceIds mustn't be greater than 500,000. + placeholder: '' + defaultValue: + '@path': $.context.traits.mobileDeviceIds + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: texVBBbJ5ZvG5eBR49wLoL + name: Edit Customer Match Members - Mobile Device Id List + slug: addToAudMobileDeviceId + description: >- + Add or update customer match members in Google Display & Video 360 Mobile + Device Id List Audience. + platform: CLOUD + hidden: false + defaultTrigger: event = "Audience Entered" + fields: + - id: dzEWPLsY9RCMeZXPs84FcJ + sortOrder: 0 + fieldKey: mobileDeviceIds + label: Mobile Device IDs + type: STRING + description: >- + A list of mobile device IDs defining Customer Match audience members. + The size of mobileDeviceIds mustn't be greater than 500,000. + placeholder: '' + defaultValue: + '@path': $.context.traits.mobileDeviceIds + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: u4XdrL4XCgThQLiwKZKC7e + name: Edit Customer Match Members - Contact Info List + slug: addToAudContactInfo + description: >- + Add or update customer match members in Google Display & Video 360 Contact + Info List Audience. + platform: CLOUD + hidden: false + defaultTrigger: event = "Audience Entered" + fields: + - id: 9v6BVoLkJsYA7WBp7CFv1 + sortOrder: 0 + fieldKey: emails + label: Emails + type: STRING + description: >- + A list of the user's emails. If not already hashed, the system will hash + them before use. If not hashed, Segment will hash this value. + placeholder: '' + defaultValue: + '@path': $.context.traits.emails + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: nRkBkcGCPh3CkMhXRfpUo9 + sortOrder: 1 + fieldKey: phoneNumbers + label: Phone Numbers + type: STRING + description: >- + A list of the user's phone numbers. If not already hashed, the system + will hash them before use. If not hashed, Segment will hash this value. + placeholder: '' + defaultValue: + '@path': $.context.traits.phoneNumbers + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: iKhX1uinTtH1h3U4Dm4gaq + sortOrder: 2 + fieldKey: zipCodes + label: ZIP Codes + type: STRING + description: A list of the user's zip codes. + placeholder: '' + defaultValue: + '@path': $.context.traits.zipCodes + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: mUVtit9CqM9CjbQBnEUuze + sortOrder: 3 + fieldKey: firstName + label: First Name + type: STRING + description: >- + The user's first name. If not already hashed, the system will hash it + before use. If not hashed, Segment will hash this value. + placeholder: '' + defaultValue: + '@path': $.context.traits.firstName + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: m6UJjUoLKDQK9CgLw8boAR + sortOrder: 4 + fieldKey: lastName + label: Last Name + type: STRING + description: >- + The user's last name. If not already hashed, the system will hash it + before use. If not hashed, Segment will hash this value. + placeholder: '' + defaultValue: + '@path': $.context.traits.lastName + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: hDb93iDZswBJELhLyvyd4W + sortOrder: 5 + fieldKey: countryCode + label: Country Code + type: STRING + description: The country code of the user. + placeholder: '' + defaultValue: + '@path': $.context.traits..countryCode + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: vykfWPGTjXpdHZiaaSUYRC + name: Remove Customer Match Members - Contact Info List + slug: removeFromAudContactInfo + description: >- + Remove customer match members in Google Display & Video 360 Contact Info + List Audience. + platform: CLOUD + hidden: false + defaultTrigger: event = "Audience Exited" + fields: + - id: 8a2YMuRfDVjc7pM2PtNk6B + sortOrder: 0 + fieldKey: emails + label: Emails + type: STRING + description: >- + A list of the user's emails. If not already hashed, the system will hash + them before use. If not hashed, Segment will hash this value. + placeholder: '' + defaultValue: + '@path': $.context.traits.emails + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: bwznBSaBAELeAituYtxp18 + sortOrder: 1 + fieldKey: phoneNumbers + label: Phone Numbers + type: STRING + description: >- + A list of the user's phone numbers. If not already hashed, the system + will hash them before use. If not hashed, Segment will hash this value. + placeholder: '' + defaultValue: + '@path': $.context.traits.phoneNumbers + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: xk7JHGRNKm8MWqg5L3TFF1 + sortOrder: 2 + fieldKey: zipCodes + label: ZIP Codes + type: STRING + description: A list of the user's zip codes. + placeholder: '' + defaultValue: + '@path': $.context.traits.zipCodes + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: htaHz7759wvmzUeg4L7KjZ + sortOrder: 3 + fieldKey: firstName + label: First Name + type: STRING + description: >- + The user's first name. If not already hashed, the system will hash it + before use. If not hashed, Segment will hash this value. + placeholder: '' + defaultValue: + '@path': $.context.traits.firstName + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 9y9rrfjVMxHdPAkQbmGCd9 + sortOrder: 4 + fieldKey: lastName + label: Last Name + type: STRING + description: >- + The user's last name. If not already hashed, the system will hash it + before use. If not hashed, Segment will hash this value. + placeholder: '' + defaultValue: + '@path': $.context.traits.lastName + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: s9oBRJpFD1EC1LpoZSC7NS + sortOrder: 5 + fieldKey: countryCode + label: Country Code + type: STRING + description: The country code of the user. + placeholder: '' + defaultValue: + '@path': $.context.traits..countryCode + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + presets: [] + partnerOwned: false - id: 66048cbafa5a03fc49b153d3 display_name: FL0 name: FL0 @@ -113046,68 +113710,229 @@ items: description: The name of the database. required: true label: Database Name - - name: environment - type: select - defaultValue: Prod - description: The environment of the Singlestore database. - required: true - label: Environment - name: host type: string defaultValue: '' - description: The host of the Singlestore database. + description: The host of the SingleStore database. required: true label: Host - name: password type: password defaultValue: '' - description: The password of the Singlestore database. + description: The password of the SingleStore database. required: true label: Password - name: port - type: number - defaultValue: 3306 - description: The port of the Singlestore database. - required: true + type: string + defaultValue: '443' + description: The port of the SingleStore Data API. Defaults to 443. + required: false label: Port + - name: tableName + type: string + defaultValue: segment_data + description: The name of the table. Defaults to "segment_data". + required: true + label: Table Name - name: username type: string defaultValue: '' - description: The username of the Singlestore database. + description: The username of the SingleStore database. required: true label: Username actions: - id: xxgUnx4BHqGLDYCJ4TiWPW name: Send Data slug: send - description: Send data to Singlestore. + description: Send data to SingleStore. platform: CLOUD hidden: false defaultTrigger: >- type = "track" or type = "screen" or type = "identify" or type = "page" or type = "group" or type = "alias" fields: - - id: o4FSHmgGNDZjGayk4VpDqK + - id: a5ZvQfU1YXkA8MfLaf3sfP sortOrder: 0 - fieldKey: database - label: Database + fieldKey: messageid + label: Message ID type: STRING - description: The name of the SingleStore database to send data to. + description: A unique identifier for the message. placeholder: '' + defaultValue: + '@path': $.messageId required: true multiple: false choices: null - dynamic: true + dynamic: false allowNull: false - - id: pV6xn9yXzxddMKs6EU2Ps2 + - id: 3BVWwK4SMjpRnUHYUouz69 sortOrder: 1 - fieldKey: message - label: Message + fieldKey: timestamp + label: Timestamp + type: STRING + description: The timestamp of the event. + placeholder: '' + defaultValue: + '@path': $.timestamp + required: true + multiple: false + choices: null + dynamic: false + allowNull: false + - id: mQgrdtbnzK5sNMSCUuLygR + sortOrder: 2 + fieldKey: type + label: Type + type: STRING + description: >- + The type of the event (e.g., "track", "identify", "page", "screen", + "group", "alias"). + placeholder: '' + defaultValue: + '@path': $.type + required: true + multiple: false + choices: + - label: Track + value: track + - label: Identify + value: identify + - label: Page + value: page + - label: Screen + value: screen + - label: Group + value: group + - label: Alias + value: alias + dynamic: false + allowNull: false + - id: 7mFY291pmMxDqmWNKyLLkq + sortOrder: 3 + fieldKey: event + label: Event + type: STRING + description: The name of the event. Only required for "track" events. + placeholder: '' + defaultValue: + '@path': $.event + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: ddEXdVCGrKwcLemnCkFPfM + sortOrder: 4 + fieldKey: name + label: Name + type: STRING + description: The name of the page or screen. + placeholder: '' + defaultValue: + '@path': $.name + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: 4wukbEG4un3GRUgFtxbvBt + sortOrder: 5 + fieldKey: properties + label: Properties type: OBJECT - description: The complete event payload. + description: The properties of the track, page or screen event. placeholder: '' defaultValue: - '@path': $. + '@path': $.properties + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: uwD7zYDRH6YVP6G26Q78Jf + sortOrder: 6 + fieldKey: userId + label: User ID + type: STRING + description: The user ID associated with the event. + placeholder: '' + defaultValue: + '@path': $.userId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: q6GPT1YEM3kUgJdHiztGBX + sortOrder: 7 + fieldKey: anonymousId + label: Anonymous ID + type: STRING + description: The anonymous ID associated with the event. + placeholder: '' + defaultValue: + '@path': $.anonymousId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: MkEAKUcUMTejRHc8dYMDK + sortOrder: 8 + fieldKey: groupId + label: Group ID + type: STRING + description: The group ID associated with the event. + placeholder: '' + defaultValue: + '@path': $.groupId + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: bBSrBLYBuEWKU9fQfEeSPR + sortOrder: 9 + fieldKey: traits + label: Traits + type: OBJECT + description: The traits of the user associated with the event. + placeholder: '' + defaultValue: + '@if': + exists: + '@path': $.context.traits + then: + '@path': $.context.traits + else: + '@path': $.traits + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: i2gP8GAgYK4yqETJhs53Lb + sortOrder: 10 + fieldKey: context + label: Context + type: OBJECT + description: The context of the event. Contains user environment information. + placeholder: '' + defaultValue: + '@path': $.context + required: false + multiple: false + choices: null + dynamic: false + allowNull: false + - id: nndrTZhnnrQPm4YSZjbkTw + sortOrder: 11 + fieldKey: max_batch_size + label: Max Batch Size + type: NUMBER + description: The maximum number of rows to include in a batch. + placeholder: '' + defaultValue: 100 required: true multiple: false choices: null diff --git a/src/_data/catalog/destinations_private.yml b/src/_data/catalog/destinations_private.yml index 43df3f3dfa..4818d3c271 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-07-10 +# destination data last updated 2025-07-17 items: - id: 54521fd925e721e32a72eee1 display_name: Pardot diff --git a/src/_data/catalog/source_categories.yml b/src/_data/catalog/source_categories.yml index 595bb73691..d635bb5a91 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-07-10 +# source categories last updated 2025-07-17 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 a08d455fe8..e4d245ce78 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-07-10 +# sources last updated 2025-07-17 items: - id: 8HWbgPTt3k display_name: .NET diff --git a/src/connections/destinations/catalog/actions-aampe/index.md b/src/connections/destinations/catalog/actions-aampe/index.md new file mode 100644 index 0000000000..6fe112c520 --- /dev/null +++ b/src/connections/destinations/catalog/actions-aampe/index.md @@ -0,0 +1,28 @@ +--- +title: Aampe (Actions) Destination +id: 6874c64e5eda096bf3850ee0 +beta: true +--- + +[Aampe](https://aampe.com/){:target="_blank”}'s Agentic AI learns what works for each customer. Then it instantly adapts your messaging and delivers at optimal times to drive better engagement, growth and unlock valuable insights. + +By assigning a dedicated agent for each user, Aampe conducts controlled, parallelized experiments to learn user preferences and optimizes engagement for them. It’s a dynamic, self-improving system that fine-tunes every interaction, ensuring your messaging evolves as fast as your audience does. + +This destination is maintained by Aampe. For any issues with the destination, [contact the Aampe Support team](mailto:developer@aampe.com){:target="_blank”}. + +## Getting Started +1. From the Destinations catalog page in the Segment App, click **Add Destination**. +2. Search for "Aampe (Actions)" in the Destinations Catalog, and select the **Aampe (Actions)** destination. +3. Choose which Source should send data to the Aampe destination. +4. Open Aampe Composer and navigate to the [Data Integrations page](https://compose.aampe.com/configure/integrations){:target="_blank”}, click **Add Integration**, select Segment and click **Next**. +5. Copy the Segment API Key from Aampe Composer, then return to the Segment app. +6. On your Aampe destination's settings page, enter the API key that you copied from Aampe Composer. +7. Select the appropriate data region as per the privacy policy and click **Save**. + +## Supported methods + +Aampe supports the following methods, as specified in the [Segment Spec](/docs/connections/spec). + +Segment sends Track, Page, Screen calls to Aampe as an event. These are used by Aampe agents to learn preferences for your users and take action accordingly. + +Aampe also receives Identify calls and user property update calls from Segment which helps with high-level segmentation for eligible Aampe audiences. \ No newline at end of file diff --git a/src/connections/destinations/catalog/actions-nudge/index.md b/src/connections/destinations/catalog/actions-nudge/index.md new file mode 100644 index 0000000000..554e7b1978 --- /dev/null +++ b/src/connections/destinations/catalog/actions-nudge/index.md @@ -0,0 +1,98 @@ +--- +title: Nudge (Actions) Destination +id: 6863e71f2a1e1ddc4b4612bf +private: true +beta: true +hidden: true +--- + +{% include content/plan-grid.md name="actions" %} + +[Nudge](https://nudgenow.com/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners){:target="_blank”} is an AI personalization platform for marketing teams for enabling rapid personalization experimentation and for autonomously delivering 1:1 user experiences. + +This destination is maintained by the Nudge Developer Team. For any issues with the destination, [contact the Support team](mailto:support@nudgenow.com). + +## Getting started + +1. From your workspace's [Destination catalog page](https://app.segment.com/goto-my-workspace/destinations/catalog){:target="_blank”} search for **Nudge**. +2. Select **Nudge** and click **Add Destination**. +3. Select an existing Source to connect to Nudge (Actions). +4. Go to the [Nudge dashboard](https://dashboard.nudgenow.com){:target="_blank"}, and navigate to the **Settings** page. +5. Go to the **Secret Keys** section and click **Create new secret key**. +6. Give an appropriate name for the key, then select the **Backend API** option from the permissions dropdown and create the key. +7. Copy the generated key and store it somewhere safe for future reference. +8. Paste the generated API key in the **Nudge** destination settings in Segment. + +## Supported methods + +The Nudge (Actions) Destination currently supports the Identify and Track methods listed below in accordance to the core Segment Specs. Reference: [Spec Overview](/docs/connections/spec/) + +### Identify + +The Identify method lets you create or update a user in Nudge’s backend. Every Identify call should include a `userId`. See Segment's Spec for Identify for any reference: [Identify Spec](/docs/connections/spec/identify/) + +Example (using Segment's Analytics.js SDK): + +```js +analytics.identify('user123', { + name: 'Alice Smith', + email: 'alice.smith@example.com', + company: 'Acme Corp', + employees: 150 +}); +``` + +How Nudge handles Identify calls: + +* If `userId` doesn't exist, the request throws a 400 validation error as it's a required field. +* If `userId` already exists, Nudge merges or overwrites profile properties with the latest values. +* Identify calls without `userId`, or with only `anonymousId`, are dropped. + +--- + +### Track + +The Track method sends custom events and their properties into Nudge. You must include `event` name in every Track call so events can be associated with the correct user. See Segment's Spec for Track for any reference: [Track Spec](/docs/connections/spec/track/) + +Example (using Segment's Analytics.js SDK): + +```js +analytics.track('Product Viewed', { + product_id: 784, + product_sku: 'SH#79817' +}); +``` + +How Nudge handles Track calls: + +* Segment ensures the `userId` is attached to the Track call for a previously successful Identify. +* Events without a valid `userId` or with only `anonymousId` are dropped. +* All other event properties are ingested as event metadata and can be used for trigger conditions. + + +{% include components/actions-fields.html %} + +## Troubleshooting + +### Events aren't showing up in Nudge + +Events may not show up in Nudge due to one of these reasons: +* **Missing or invalid API key**: Ensure that the API key you generated under **Settings → Secret Keys → Backend API** is correctly entered in your Segment destination settings. +* **Dropped Identify/Track calls**: API requests to Nudge's servers without `userId`, or with only `anonymousId`, are automatically dropped. Verify your mapping includes the correct identifier field. + +### Timestamp or date format errors + +Nudge expects all date/time properties in UTC ISO-8601 format (Javascript Date object's ISO format). If you see failed events due to timestamp validation: + +* Confirm you’re sending dates like `"2025-05-14T07:30:00Z"`. +* Remove any timezone offsets other than `Z` (UTC). + +### Validation failures + +If requests continue to fail after checking your API key and payload: + +* Compare against Nudge’s specification from the documentation: [Nudge's Documentation](https://docs.nudgenow.com/){:target="_blank"}. +* Ensure all required fields (for example, `userId`, `event` name for Track) are present and correctly typed. + + +*If you still encounter issues, please reach out to the Nudge Developer Team or email [support@nudgenow.com](mailto:support@nudgenow.com).* diff --git a/src/connections/sources/catalog/cloud-apps/hubspot-profiles/index.md b/src/connections/destinations/catalog/actions-segment-profiles/hubspot-source.md similarity index 98% rename from src/connections/sources/catalog/cloud-apps/hubspot-profiles/index.md rename to src/connections/destinations/catalog/actions-segment-profiles/hubspot-source.md index 7cf41a897e..bb39822818 100644 --- a/src/connections/sources/catalog/cloud-apps/hubspot-profiles/index.md +++ b/src/connections/destinations/catalog/actions-segment-profiles/hubspot-source.md @@ -1,6 +1,7 @@ --- title: Connect HubSpot to Segment Profiles -plan: unify +redirect_from: + - '/connections/sources/catalog/cloud-apps/hubspot-profiles/' --- This guide explains how to set up HubSpot as a source and connect it to Segment Profiles. diff --git a/src/connections/destinations/catalog/actions-segment-profiles/index.md b/src/connections/destinations/catalog/actions-segment-profiles/index.md index 1c2c2fb174..4c6ad82bbc 100644 --- a/src/connections/destinations/catalog/actions-segment-profiles/index.md +++ b/src/connections/destinations/catalog/actions-segment-profiles/index.md @@ -4,22 +4,22 @@ hide-boilerplate: true hide-dossier: false id: 639c2dbb1309fdcad13951b6 --- -The Segment Profiles destination allows you to send your warehouse data back to Segment to create and update [Profiles](/docs/profiles/) that can then be accessed through [Profile API](/docs/profiles/profile-api/) and activated within [Twilio Engage](/docs/engage). +The Segment Profiles destination allows you to send your warehouse data back to Segment to create and update [Profiles](/docs/unify/) that can then be accessed through [Profile API](/docs/profiles/profile-api/) and activated within [Twilio Engage](/docs/engage). > success "Source compatibility" -> This destination supports connections from Reverse ETL warehouse sources, and is not compatible with other source types. +> This destination supports connections from Reverse ETL warehouse sources, [HubSpot](/docs/connections/destinations/catalog/actions-segment-profiles/hubspot-source), and [Salesforce](/docs/connections/destinations/catalog/actions-segment-profiles/salesforce-source), and is not compatible with other sources. ## Getting started ### Create a Profile space -To use this destination, you must have an active Segment Profile space. If you have not yet created a Segment Profile space, please follow the steps in the [Profiles Onboarding Guide](/docs/profiles/quickstart/). +To use this destination, you must have an active Segment Unify space. If you have not yet created a Segment Unify space, please follow the steps in the [Unify Onboarding Guide](/docs/profiles/quickstart/). ### Connect and configure the Segment Profiles destination 1. From the Segment web app, navigate to **Reverse ETL > Destinations**. 2. Click **Add Destination**. -3. Select the Segment Profiles destination, click **Next**, and select the warehouse source that will send data to the Segment Profiles destination. If you have not set up a warehouse source, follow the steps in the Reverse ETL documentation on [Getting started](/docs/reverse-etl/#getting-started). +3. Select the Segment Profiles destination, click **Next**, and select the warehouse source that will send data to the Segment Profiles destination. If you have not set up a warehouse source, follow the steps in the Reverse ETL documentation on [Getting started](/docs/reverse-etl/#getting-started). For information on how to set up HubSpot or Salesforce, see the [HubSpot](/docs/connections/destinations/catalog/actions-segment-profiles/hubspot-source) and [Salesforce](/docs/connections/destinations/catalog/actions-segment-profiles/salesforce-source) direct integration documentation. 4. On the **Settings** tab, name your destination, select an endpoint region, and click **Save Changes**. It is recommended to configure and enable all mappings before enabling the Segment Profiles destination. 5. On the **Mappings** tab, click **Add Mapping**. Select a data model and the API call type you want to map. Identify calls will create and update user profiles and Group calls will create and update account profiles. Fill in the fields on screen to create the desired mappings, and click **Create Mapping** to complete the configuration. Repeat this step to configure multiple mappings. 6. Enable the configured mapping(s). @@ -30,11 +30,11 @@ To use this destination, you must have an active Segment Profile space. If you h ## FAQ & Troubleshooting ### API Calls and MTUs -The Segment Profiles destination is not subject to API call or MTU costs. Any users or accounts created and updated by the Segment Profiles destination will not count towards your API call or MTU usage. +The Segment Profiles destination is not subject to API call or MTU costs. Any users or accounts created and updated by the Segment Profiles destination do not count towards your API call or MTU usage. -### Succesful syncs but no changes on profiles +### Successful syncs but no changes on profiles Make sure that the Endpoint Region setting matches the region of your workspace. If the region is correct and you don't see any profile changes, [contact Segment](https://segment.com/help/contact/){:target="_blank"}. ### Can I view samples of events received in Engage by the Segment Profiles Destination? -Records sent to the Segment Profiles Destination are managed through a Unify Spaces' Profile Sources. Samples of these events may be reviewed in a [Profile Source Debugger](https://segment.com/docs/unify/debugger/). For a more comprehensive analysis of the events received in Unify & Engage, consider utilizing [Profiles Sync](https://segment.com/docs/unify/profiles-sync/overview/) connected to your Data Warehouse. +Records sent to the Segment Profiles Destination are managed through a Unify Spaces' Profile Sources. Samples of these events may be reviewed in a [Profile Source Debugger](/docs/unify/debugger/). For a more comprehensive analysis of the events received in Unify & Engage, consider using [Profiles Sync](/docs/unify/profiles-sync/overview/) connected to your Data Warehouse. diff --git a/src/connections/sources/catalog/cloud-apps/salesforce-unify/index.md b/src/connections/destinations/catalog/actions-segment-profiles/salesforce-source.md similarity index 96% rename from src/connections/sources/catalog/cloud-apps/salesforce-unify/index.md rename to src/connections/destinations/catalog/actions-segment-profiles/salesforce-source.md index 93e1ba5ec9..c5c76ec0eb 100644 --- a/src/connections/sources/catalog/cloud-apps/salesforce-unify/index.md +++ b/src/connections/destinations/catalog/actions-segment-profiles/salesforce-source.md @@ -1,8 +1,8 @@ --- title: Salesforce Unify Direct Integration Guide -plan: unify redirect_from: - '/unify/salesforce-unify' + - '/connections/sources/catalog/cloud-apps/salesforce-unify/' --- This guide outlines the process for setting up Salesforce as a data source with Segment Profiles. @@ -60,7 +60,7 @@ Next, add a Segment Profiles destination: 4. Test your mapping with real data from Salesforce. 5. Save your mapping configuration. -![A screenshot of the "Select Mappings" interface in Segment, showing fields for mapping event data from a source to a destination. The interface includes options for selecting objects, customizing objects, and mapping fields such as Profile Space, User ID, Anonymous ID, Group ID, Traits, and Timestamp.](../../../images/select_mappings.png) +![A screenshot of the "Select Mappings" interface in Segment, showing fields for mapping event data from a source to a destination. The interface includes options for selecting objects, customizing objects, and mapping fields such as Profile Space, User ID, Anonymous ID, Group ID, Traits, and Timestamp.](/docs/connections/sources/images/select_mappings.png) ### 5. Enable the destination mapping and Salesforce source diff --git a/src/connections/destinations/catalog/amazon-kinesis/index.md b/src/connections/destinations/catalog/amazon-kinesis/index.md index af32a8dad2..2ade5cf926 100644 --- a/src/connections/destinations/catalog/amazon-kinesis/index.md +++ b/src/connections/destinations/catalog/amazon-kinesis/index.md @@ -8,9 +8,7 @@ id: 57da359580412f644ff33fb9 > info "Amazon Kinesis is not compatible with IP Allowlisting" > For more information, see the [IP Allowlisting](/docs/connections/destinations/#ip-allowlisting) documentation. -## Getting Started - - +## Getting started To get started: 1. Create a Kinesis stream. Follow these [instructions](http://docs.aws.amazon.com/streams/latest/dev/learning-kinesis-module-one-create-stream.html){:target="_blank"} in order to create a new AWS Kinesis Stream. @@ -53,15 +51,18 @@ To get started: 2. Enter the **Role Address**, **Stream Region**, **Stream Name**, and **Secret ID**. * **NOTE:** For security purposes, Segment sets your Workspace ID as your Secret ID. If you're using a Secret ID different from your Workspace ID, reach out to our support team so they can change it to make your account more secure. +> success "" +> Segment's Amazon Kinesis destination only transmits data in JSON format. + ## Page -If you're not familiar with the Segment Specs, take a look to understand what the [Page method](/docs/connections/spec/page/) does. An example call would look like: +If you're not familiar with the Segment Spec, take a look to understand what the [Page method](/docs/connections/spec/page/) does. An example call would look like: ```js analytics.page(); ``` ## Identify -If you're not familiar with the Segment Specs, take a look to understand what the [Identify method](/docs/connections/spec/identify/) does. An example call would look like: +If you're not familiar with the Segment Spec, take a look to understand what the [Identify method](/docs/connections/spec/identify/) does. An example call would look like: ```js analytics.identify('97980cfea0085', { @@ -71,7 +72,7 @@ analytics.identify('97980cfea0085', { ``` ## Track -If you're not familiar with the Segment Specs, take a look to understand what the [Track method](/docs/connections/spec/track/) does. An example call would look like: +If you're not familiar with the Segment Spec, take a look to understand what the [Track method](/docs/connections/spec/track/) does. An example call would look like: ```js analytics.track("User Registered", { @@ -80,8 +81,8 @@ analytics.track("User Registered", { }); ``` -### Data Model -Let's say you're connecting your Segment customer data stream to Kinesis Stream `arn:aws:kinesis:{region}:{account-id}:stream/{stream-name}`. If you send Segment the following in a `track` call: +### Data model +Let's say you're connecting your Segment customer data stream to Kinesis Stream `arn:aws:kinesis:{region}:{account-id}:stream/{stream-name}`. If you send Segment the following in a Track call: ```json { "userId": "user_1", @@ -106,9 +107,9 @@ const request = kinesis.putRecord(payload) Segment uses the `messageId` or the `userId || anonymousId` as the `PartitionKey`. The partition key is used by Amazon Kinesis to distribute data across shards. Amazon Kinesis segregates the data records that belong to a stream into multiple shards, using the partition key associated with each data record to determine which shard a given data record belongs to. ## Group -If you're not familiar with the Segment Specs, take a look to understand what the [Group method](/docs/connections/spec/group/) does. +If you're not familiar with the Segment Spec, take a look to understand what the [Group method](/docs/connections/spec/group/) does. -An example group call is shown below: +An example Group call is shown below: ```js analytics.group("0e8c78ea9d9dsasahjg", { name: "group_name", @@ -121,7 +122,9 @@ analytics.group("0e8c78ea9d9dsasahjg", { ## Troubleshooting When you get started, Segment recommends using any of the open source [Kinesis tailing utility](https://github.com/search?utf8=%E2%9C%93&q=kinesis-tail){:target="_blank"} to validate that data is flowing correctly. -## Best Practices +## Best practices + +The following best practices help you implement additional Amazon Kinesis functionality like encryption, the use of multiple data sources, and more efficient data transmission. ### Updating IAM role permissions for encryption Extra permissions need to be added to the IAM role if using at-rest encryption on the Kinesis stream. An updated role policy like below resolves issues when submitting PutRecords into Kinesis stream using encryption: @@ -141,7 +144,7 @@ Extra permissions need to be added to the IAM role if using at-rest encryption o } ``` -### Multiple Sources +### Multiple sources If you have multiple sources using Kinesis/Firehose, you have two options: ### Attach multiple sources to your IAM role diff --git a/src/connections/sources/catalog/cloud-apps/b222test/index.md b/src/connections/sources/catalog/cloud-apps/b222test/index.md deleted file mode 100644 index 69a0468aac..0000000000 --- a/src/connections/sources/catalog/cloud-apps/b222test/index.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -title: 'b222test Source' -hidden: true ---- \ No newline at end of file diff --git a/src/connections/sources/catalog/cloud-apps/hubspot/index.md b/src/connections/sources/catalog/cloud-apps/hubspot/index.md index 8eab0aa3ea..278acefc59 100644 --- a/src/connections/sources/catalog/cloud-apps/hubspot/index.md +++ b/src/connections/sources/catalog/cloud-apps/hubspot/index.md @@ -8,6 +8,9 @@ id: 2baks93o Are you trying to set up HubSpot as a destination to receive data from Segment? Go here [HubSpot Destination](/docs/connections/destinations/catalog/hubspot/). +> success "" +> Want to connect your HubSpot source directly to the Segment Profiles destination? See the [Connect HubSpot to Segment Profiles](/docs/connections/destinations/catalog/actions-segment-profiles/hubspot-source/) documentation. + ## Getting Started 1. From your workspace's `/sources` page, click `add source`. diff --git a/src/connections/sources/catalog/cloud-apps/salesforce/index.md b/src/connections/sources/catalog/cloud-apps/salesforce/index.md index c6bf178c47..c3dcc8ddd8 100644 --- a/src/connections/sources/catalog/cloud-apps/salesforce/index.md +++ b/src/connections/sources/catalog/cloud-apps/salesforce/index.md @@ -8,6 +8,9 @@ id: 2baks93n Take your company's analysis to the next level by **adding Salesforce as a Source to Segment.** Segment automatically collects objects like `Accounts`, `Campaigns`, and `Tasks` and loads them into your data warehouse.  +> success "" +> Want to connect your Salesforce source directly to the Segment Profiles destination? See the [Salesforce Unify Direct Integration Guide](/docs/connections/destinations/catalog/actions-segment-profiles/salesforce-source/) documentation. + > info "Salesforce version upgrade to 58.0" > On March 25, 2024, the Salesforce source upgraded to use Salesforce's API version 58.0. See the [version upgrade changes](#version-upgrade-changes) to learn more. diff --git a/src/connections/sources/catalog/cloud-apps/src/index.md b/src/connections/sources/catalog/cloud-apps/src/index.md deleted file mode 100644 index eaabd4027e..0000000000 --- a/src/connections/sources/catalog/cloud-apps/src/index.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -title: 'SRC Source' -hidden: true ---- \ No newline at end of file diff --git a/src/connections/sources/catalog/cloud-apps/this-is-a-test/index.md b/src/connections/sources/catalog/cloud-apps/this-is-a-test/index.md deleted file mode 100644 index eaf5eae084..0000000000 --- a/src/connections/sources/catalog/cloud-apps/this-is-a-test/index.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -title: 'this-is-a-test Source' -hidden: true ---- \ No newline at end of file diff --git a/src/connections/storage/catalog/data-lakes/index.md b/src/connections/storage/catalog/data-lakes/index.md index d05220b839..91b30ae74c 100644 --- a/src/connections/storage/catalog/data-lakes/index.md +++ b/src/connections/storage/catalog/data-lakes/index.md @@ -7,12 +7,12 @@ redirect_from: {% include content/plan-grid.md name="data-lakes" %} Segment Data Lakes provide a way to collect large quantities of data in a format that's optimized for targeted data science and data analytics workflows. You can read [more information about Data Lakes](/docs/connections/storage/data-lakes/) and learn [how they differ from Warehouses](/docs/connections/storage/data-lakes/comparison/) in Segment's Data Lakes documentation. -Segment only supports [AWS Data Lakes](/docs/connections/storage/catalog/data-lakes/#set-up-segment-data-lakes). +Segment only supports [AWS Data Lakes](/docs/connections/storage/catalog/data-lakes/#set-up-segment-data-lakes), but you can also connect to the [Databricks](/docs/connections/storage/catalog/databricks/) storage destination to ingest data into your Lakehouse. > success "" > You can also set up your Segment Data Lakes using [Lake Formation](/docs/connections/storage/data-lakes/lake-formation/), a fully managed service built on top of the AWS Glue Data Catalog. -## Set up Segment Data Lakes (AWS) +## Set up Segment Data Lakes To set up Segment Data Lakes, create your AWS resources, enable the Segment Data Lakes destination in the Segment app, and verify that your Segment data is synced to S3 and Glue. diff --git a/src/engage/audiences/index.md b/src/engage/audiences/index.md index 14dbf5300b..8b23b00bdb 100644 --- a/src/engage/audiences/index.md +++ b/src/engage/audiences/index.md @@ -424,3 +424,6 @@ No. Traits located in the `context.traits` object of a Track event aren’t avai ### How does the historical data flag work? The **Include Historical Event Data** option lets you take past event data into account and control how much of it is considered when creating real-time audiences. You can set a lookback window (for example, the “last 90 days”) to limit the processed event data, or disable it entirely to use only data arriving after creation. For batch audiences, Segment includes historical data by default. + +### Can non-Latin characters be used when creating Audiences or Computed Traits? +The Audience and Computed Trait builders only accept Latin characters. diff --git a/src/partners/destinations/build.md b/src/partners/destinations/build.md index 849ea63320..bf63ececae 100644 --- a/src/partners/destinations/build.md +++ b/src/partners/destinations/build.md @@ -11,7 +11,7 @@ Before you begin, consider the following prerequisites. ### Security -The security of customers and partners is a top priority at Segment. Before you begin building, review the [Acceptable Use Policy](https://segment.com/legal/acceptable-use-policy/), and keep in mind: +The security of customers and partners is a top priority at Segment. Before you begin building, review the [Acceptable Use Policy](https://segment.com/legal/acceptable-use-policy/){:target="_blank}, and keep in mind: - Follow a secure software-development lifecycle, which enables you to both create code that is safe for Segment customers and their end users, and maintain and raise the security of that code over time. - If you or your code comes into contact with Segment customer or end-user data for any reason, protect it with commercially reasonable methods throughout the data lifecycle, including creating, handling, transporting, and destruction. @@ -23,9 +23,11 @@ The security of customers and partners is a top priority at Segment. Before you You don't need to access a Segment dev environment to build an integration. You’ll test it locally on your machine. Destinations are written in TypeScript. For more information about TypeScript, see TypeScript's [documentation](https://www.typescriptlang.org/docs/){:target="_blank}. To work with Segment's actions repository, download and install the following: - - [node](https://nodejs.org/en/){:target="_blank"} + - [node](https://nodejs.org/en/){:target="_blank"} (_version 18.7+. Segment recommends managing Node versions with `nvm`._) - [nvm](https://github.com/nvm-sh/nvm){:target="_blank"} - - [yarn](https://yarnpkg.com/){:target="_blank"} + - [yarn](https://yarnpkg.com/){:target="_blank"} (_version 1.x_) + +If you encounter errors when setting up your development environment, ensure you're running the correct version of Node by running `nvm use`. ### Fork the repository @@ -37,16 +39,26 @@ Fork the `segmentio/action-destinations` repository, connect to NPM and Yarn, an Run the test suite to ensure the environment is properly configured. ```sh -git clone https://github.com//action-destinations.git +# Clone the repo locally +git clone cd action-destinations + npm login yarn login -# Requires node 14.17, optionally: nvm use 14.17 -yarn --ignore-engines --ignore-optional -yarn bootstrap -yarn build + +# Requires node 18.17.1, optionally: nvm use 18.17.1 +yarn --ignore-optional yarn install +yarn build + +# Run unit tests to ensure things are working! For partners who don't have access to internal packages, you can run: +yarn test-partners + +# For segment employees, you can run: yarn test + +# to reset all caches and rebuild again +yarn clean-build ``` ## Create a destination diff --git a/src/privacy/data-retention-policy.md b/src/privacy/data-retention-policy.md index f4cf16e58e..d56aaa963b 100644 --- a/src/privacy/data-retention-policy.md +++ b/src/privacy/data-retention-policy.md @@ -17,7 +17,7 @@ Segment enforces a strict data retention policy for all: ## Effective Date Segment’s enforcement of this data retention policy for active customers begins on: - **April 15, 2025** for Object Store data -- **July 15, 2025** for Archive event and Profile events data stores +- **August 15, 2025** for Archive event and Profile events data stores ## Active customers @@ -53,8 +53,8 @@ Select the default retention period for the workspace in this setting. This valu - 90 days - 180 days - 365 days -- 3 years (the default setting starting July 15, 2025) -- Unlimited (deprecated July 15, 2025) +- 3 years (the default setting starting August 15, 2025) +- Unlimited (deprecated August 15, 2025) ### What data is impacted? @@ -134,4 +134,4 @@ Segment unrecoverably deletes the workspace after 30 days of inactivity, unless ### Data deletion delays -When data reaches the end of its retention period, deletion is scheduled in accordance with Segment’s data retention policy. While Segment aims to complete the deletion process promptly, there may be occasional delays due to processing times or technical constraints. Segment is committed to initiating data deletions as soon as possible and strives to complete deletions within 7 days of the scheduled date. \ No newline at end of file +When data reaches the end of its retention period, deletion is scheduled in accordance with Segment’s data retention policy. While Segment aims to complete the deletion process promptly, there may be occasional delays due to processing times or technical constraints. Segment is committed to initiating data deletions as soon as possible and strives to complete deletions within 7 days of the scheduled date. diff --git a/src/unify/Traits/predictions/index.md b/src/unify/Traits/predictions/index.md index 00e4a0e461..13b461d764 100644 --- a/src/unify/Traits/predictions/index.md +++ b/src/unify/Traits/predictions/index.md @@ -135,4 +135,24 @@ Segment then uses this criteria to build the prediction and create specific perc ## Use cases -For use cases and information on how Segment builds prediction, read [Using Predictions](/docs/unify/traits/predictions/using-predictions/). +Once a trait successfully computes, you can send them downstream to some destinations, or use them in an audience. Predictive Traits support destinations that support this list of identifiers: + + ANONYMOUS = "anonymous_id" + USER = "user_id" + EMAIL = "email" + PHONE = "phone" + IOS_IDFA = "ios.idfa" + ANDROID_IDFA = "android.idfa" + GROUP = "group_id" + NAME = "name" + GA_CLIENT = "ga_client_id" + GOOGLE = "google_gid" + BRAZE = "braze_id" + SEGMENT = "segment_id" + +Other destinations may drop events published by Predictive Traits + +For use additional cases and information on how Segment builds prediction, read [Using Predictions](/docs/unify/traits/predictions/using-predictions/). + + + diff --git a/src/unify/data-graph/index.md b/src/unify/data-graph/index.md index d9aaf00797..bd83ad0497 100644 --- a/src/unify/data-graph/index.md +++ b/src/unify/data-graph/index.md @@ -204,8 +204,6 @@ To define your entities: To define the profile, navigate to the **Relationships** tab. You'll see a **Profile** node which is a special class of entity that represents Segment Profiles, which corresponds to the Profiles Sync tables and models. For Linked Audiences, this enables marketers to filter on profile traits, event history, etc. There can only be one profile for a Data Graph. -The Relationships tab when creating the Data Graph - Segment creates default settings for your profile that are based on your [Profiles Sync](/docs/unify/profiles-sync/profiles-sync-setup/) configuration. If you wish to update these settings, you may select the node and select **View / Edit profile**. Otherwise, you may proceed to Step 3C. @@ -230,6 +228,9 @@ Now define the relationships between your entities. Similar to the concept of [c This is the first level of relationships and a unique type of relationship between the Segment profile entity and a related entity. +The side window that opens when adding a profile to entity relationship + + Parameter | Definition --------- | ----------- `Select related entity` | The left-hand-side entity represents the Segment profile. On the right-hand-side, you can select which entity to relate it to.

Note: you can select the preview icon to preview both the Segment profile and the associated table or view representing the entity. @@ -257,6 +258,7 @@ By selecting **Compute count**, you can check the number of rows returned when j Select **Add relationship** and repeat as needed. +The Customer Accounts Relationship side screen when adding a relationship in the Data Graph ### Using the code editor Use the configuration language spec and the following features to build your Data Graph: diff --git a/src/unify/images/data-graph-add-relationship.png b/src/unify/images/data-graph-add-relationship.png new file mode 100644 index 0000000000..ba2ff8558f Binary files /dev/null and b/src/unify/images/data-graph-add-relationship.png differ diff --git a/src/unify/images/data-graph-profile-to-entity.png b/src/unify/images/data-graph-profile-to-entity.png new file mode 100644 index 0000000000..36fe5cb802 Binary files /dev/null and b/src/unify/images/data-graph-profile-to-entity.png differ