Skip to content

Commit 6b466f9

Browse files
authored
Merge pull request #6444 from segmentio/develop
Release 24.17.2
2 parents 0dc5fbf + 1661d54 commit 6b466f9

File tree

8 files changed

+159
-11
lines changed

8 files changed

+159
-11
lines changed

src/_data/catalog/destination_categories.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# destination categories last updated 2024-04-23
2+
# destination categories last updated 2024-04-25
33
items:
44
- display_name: A/B Testing
55
slug: a-b-testing

src/_data/catalog/destinations.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# destination data last updated 2024-04-23
2+
# destination data last updated 2024-04-25
33
items:
44
- id: 637e8d185e2dec264895ea89
55
display_name: 1Flow
@@ -81623,7 +81623,7 @@ items:
8162381623
mobile: false
8162481624
server: false
8162581625
warehouse: true
81626-
cloudAppObject: false
81626+
cloudAppObject: true
8162781627
components: []
8162881628
browserUnbundlingSupported: false
8162981629
browserUnbundlingPublic: false

src/_data/catalog/destinations_private.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# destination data last updated 2024-04-23
2+
# destination data last updated 2024-04-25
33
items:
44
- id: 54521fd925e721e32a72eee1
55
display_name: Pardot

src/_data/catalog/source_categories.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# source categories last updated 2024-04-23
2+
# source categories last updated 2024-04-25
33
items:
44
- display_name: A/B Testing
55
slug: a-b-testing

src/_data/catalog/sources.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# sources last updated 2024-04-23
2+
# sources last updated 2024-04-25
33
items:
44
- id: 8HWbgPTt3k
55
display_name: .NET
Lines changed: 144 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,144 @@
1+
---
2+
title: Moloco Commerce Media Destination
3+
id: 65f05e455b125cddd886b793
4+
beta: true
5+
private: true
6+
---
7+
8+
[Moloco Commerce Media](https://www.moloco.com/products/moloco-retail-media-platform){:target="_blank”} (MCM) is a technology solution that empowers marketplaces and online retailers to build and scale a retail media business (for example, sponsored ads). Moloco’s solution helps platforms leverage and activate their first-party data to deliver highly relevant and performant ads, automate ad decision-making, and scale their ads business.
9+
10+
The Moloco Commerce Media destination can send user events collected using the Segment SDK to Moloco’s platform for a simplified performance ads integration.
11+
12+
This allows you to run performance advertising without having to build your own backend system to ingest and send user events data in realtime to Moloco.
13+
14+
## Getting started
15+
16+
### Prerequisites
17+
Before you configure the Moloco Commerce Media destination, add a source to Segment and use the [Source Debugger](/docs/connections/sources/debugger/) to verify Segment is receiving events.
18+
19+
Before you configure the Moloco Commerce Media destination, reach out to your Moloco representative about the following account information:
20+
- Moloco Platform ID
21+
- Moloco Event Service API key
22+
23+
After you obtain that account information, you can move on to the Segment app.
24+
25+
### Set up your Moloco destination
26+
1. From the Segment web console, click **Catalog**.
27+
2. On the Catalog page, search for “Moloco”, select it, and click **Add destination**.
28+
3. Choose which of your sources to connect the destination to.
29+
4. In the Moloco MCM destination settings page, fill the Platform ID and API key fields with your Moloco Platform ID and Event Service API key.
30+
5. Select “APP" if your source endpoint is a mobile app, and "SITE" if it is a website.
31+
32+
## Identify
33+
34+
Moloco strongly recommends that you identify your logged-in users using Segment's [Identify method](/docs/connections/spec/identify/) and that you hash the user ID before sending it to Moloco.
35+
36+
Please find an example Identify call below:
37+
38+
```js
39+
analytics.identify('361b1fdfbeaa9d64a13c033eb9f970dc6740f6bc', {
40+
41+
});
42+
```
43+
44+
Once a user is identified, each call to Segment's [Track method](/docs/connections/spec/track/) automatically records the user ID.
45+
Users that are not logged in can be tracked using an [anonymousID](/docs/connections/spec/identify/#anonymous-id). Moloco Commerce Media does not use anonymousIDs for users that are not logged in. Segment recommends formatting your anonymousID in UUID format.
46+
47+
> info" "
48+
> If you hash the user ID before sending it to Moloco, ensure you reuse the same hashed ID when calling other Moloco APIs.
49+
50+
51+
## Track
52+
53+
If you’re not familiar with the Segment Spec, take a look to understand what the [Track method](/docs/connections/spec/track/) does. The mappings in the Moloco Commerce Media destination are built based on the Segment [Ecommerce Spec](/docs/connections/spec/ecommerce/v2/).
54+
55+
Please find below an example call to track a product detail page (PDP) view event:
56+
57+
```js
58+
analytics.track("Product Viewed", {
59+
product_id: "1193",
60+
name: "Newage Uplift Eye Care Cream",
61+
price: 19.99
62+
currency: "USD"
63+
quantity: 1,
64+
image_url: "https://www.example.com/image.png"
65+
});
66+
```
67+
68+
## Page
69+
70+
If you’re not familiar with the Segment Spec, take a look to understand what the [Page method](/docs/connections/spec/page/) does.
71+
72+
Please find below an example call to page:
73+
74+
```js
75+
analytics.page();
76+
```
77+
78+
If you use Segment’s Web SDK, this call automatically collects the page information. Here’s an example of page information automatically collected using Segment’s Web SDK.
79+
80+
```js
81+
"page": {
82+
"path": "/account",
83+
"referrer": "",
84+
"search": "",
85+
"title": "Your Account",
86+
"url": "https://www.example.com/account"
87+
},
88+
```
89+
90+
However for iOS and Android, it won’t collect page information.
91+
92+
Moloco Commercial Media requires the [page_id](https://mcm-docs.moloco.com/docs/51-user-event-data-specifications#page_view-event-type){:target="_blank”} attribute for a PAGE_VIEW event. Using the Web SDK, the page_id can be associated with the path attribute. However for iOS/Android, Moloco Commercial Media recommends using the Page Identifier Token field.
93+
94+
The Page Identifier Token field accepts key:value pairs of strings that can identify the page.
95+
Stringification Logic is: {key}:{value}s concatenated by ";"
96+
97+
Moloco Commercial Media ignores the Page Identifier Token if page_id is passed, as page_id has a higher priority.
98+
99+
Here’s an example of a Page Identifier Token that could be tracked in a mobile app.
100+
101+
Say the input had the following schema:
102+
103+
```js
104+
...
105+
"event": "Product List Viewed",
106+
"vertical": "fruit"
107+
...
108+
```
109+
110+
and user chose the following mapping:
111+
112+
```js
113+
// "event" represents the name of the event
114+
event: properties.event
115+
// "vertical" represents which vertical the event happened on
116+
vertical: properties.vertical
117+
118+
// The combination of those two tokens can repsent
119+
// "Which action happened on which vertical"
120+
```
121+
122+
The tokens are stringified into the following:
123+
124+
```js
125+
"event:Product List Viewed;vertical:fruit"
126+
```
127+
128+
The tokens are stringified in the format of the above example because they are key-value pairs concatenated by a semicolon (;).
129+
130+
> info " "
131+
> if you decide to use the Page Identifier Token in your mobile app, reuse the same Page Identifier Token in place of page_id when calling Moloco’s APIs.
132+
133+
## Mappings
134+
135+
In the Mappings tab, some fields are chosen by default if some common fields map to Moloco Event’s fields. If the mapped key does not exist in the input data, it won’t trigger an error. Instead, the mapping will not pass any value.
136+
137+
If you are using **the default fields in a custom way**, please confirm that your mapping meets Moloco's requirements.
138+
139+
Default Mappings are not hard rules. They can be modified to your convenience.
140+
141+
{% include components/actions-fields.html %}
142+
## Monitoring
143+
144+
Once the mappings are configured correctly, you can verify the flow of events from your source to Moloco’s destination in the [Delivery Overview](/docs/connections/delivery-overview/) tab of your Moloco destination. If you correctly configured your destination, you should see a growing **Successful delivery** count.

src/connections/destinations/catalog/facebook-app-events/index.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@ rewrite: true
44
strat: facebook
55
id: 56fc7e4680412f644ff12fb9
66
---
7+
8+
> warning ""
9+
> For new implementations, [Facebook no longer recommends using App Events]([url](https://developers.facebook.com/docs/marketing-api/app-event-api/)). Instead, they suggest switching to [Facebook Conversions API (Actions)](https://segment.com/docs/connections/destinations/catalog/actions-facebook-conversions-api/) for all server-side data tracking needs.
10+
711
[Facebook App Events](https://developers.facebook.com/docs/app-events){:target="_blank"} collects required information from one of Segment's mobile SDKs ([iOS](/docs/connections/sources/catalog/libraries/mobile/ios/){:target="_blank"}, [Android](/docs/connections/sources/catalog/libraries/mobile/android/){:target="_blank"}, or [Swift](/docs/connections/sources/catalog/libraries/mobile/apple/){:target="_blank"}) and sends it from Segment's servers to Facebook App Events servers.
812

913
The iOS device-mode connection for the Facebook App Events destination is open source and [available on GitHub](https://github.com/segment-integrations/analytics-ios-integration-facebook-app-events){:target="_blank"}.
@@ -30,7 +34,7 @@ This page is about the **Facebook App Events**. For documentation on other Faceb
3034
1. From the Segment web app, click **Catalog**.
3135
2. Search for "Facebook App Events" in the Catalog, select it, and choose which of your sources to connect the destination to.
3236
3. In the destination settings, enter your Facebook App ID which can be retrieved from your [Facebook Apps dashboard](https://developers.facebook.com/apps/){:target="_blank"}.
33-
4. Once you turn on the Facebook App Events integration in your app's Segment project, we'll start sending `track` data to Facebook's App Events endpoints.
37+
4. After you turn on the Facebook App Events integration in your app's Segment project, we'll start sending `track` data to Facebook's App Events endpoints.
3438

3539
## Screen
3640

@@ -43,9 +47,9 @@ If you're not familiar with the Segment Specs, take a look to understand what th
4347
4448
Our integration also supports using Segment `screen` events as `track` events. For example, if you had a `screen` event named `Confirmation` you could map the invocation of this to a Facebook app event as you would with Segment `track` events.
4549
46-
To use this functionality you must opt into it using the integration setting named **Use Screen Events as Track Events**. Once enabled, you should start seeing `screen` events populate in Facebook App Events. The screen name you provide will be bookended with the words **Viewed** and **Screen**. So, if you have a `screen` event with the name property set to `Welcome`, it will show up in Facebook as an event called **Viewed Welcome Screen**.
50+
To use this functionality you must opt into it using the integration setting named **Use Screen Events as Track Events**. After enabling, you should start seeing `screen` events populate in Facebook App Events. The screen name you provide will be bookended with the words **Viewed** and **Screen**. So, if you have a `screen` event with the name property set to `Welcome`, it will show up in Facebook as an event called **Viewed Welcome Screen**.
4751
48-
Note, the integration will not automatically translate `screen` events to spec'd Facebook events as our `track` method does. If you would like to map these events to specific Facebook events you can do this using the **Map your events to Standard FB App Events** setting. Be sure to specify the event as **Viewed** `name` **Screen** where `name` is the name property of the `screen` event.
52+
Note: the integration will not automatically translate `screen` events to spec'd Facebook events as our `track` method does. If you would like to map these events to specific Facebook events you can do this using the **Map your events to Standard FB App Events** setting. Be sure to specify the event as **Viewed** `name` **Screen** where `name` is the name property of the `screen` event.
4953
5054
## Track
5155
@@ -246,7 +250,7 @@ You will have to be sure that the [IDFA](/docs/connections/sources/catalog/libra
246250

247251
Similarly, on Android, you'll need to include the Play Services Ads library as [mentioned here](/docs/connections/sources/catalog/libraries/mobile/android/#how-do-you-handle-unique-identifiers-) in order for the `advertisingId` to populate.
248252

249-
Once you've added these, you will start to see the `context.device.advertisingId` populate and the `context.device.adTrackingEnabled` flag set to `true` unless the user has ad tracking limited or is using a mobile ad blocker.
253+
After you've added these, you will start to see the `context.device.advertisingId` populate and the `context.device.adTrackingEnabled` flag set to `true` unless the user has ad tracking limited or is using a mobile ad blocker.
250254

251255

252256
Facebook requires that payloads include the following:

src/privacy/data-controls.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ blocked if you enable these controls.
2020

2121
If you block Segment data at the source level using these controls, the data
2222
does not enter Segment and we can not Replay it. Additionally, if you have
23-
[Privacy Controls](#privacy-controls) configured to change how you route Red and
23+
Privacy Controls configured to change how you route Red and
2424
Yellow data into or out of Segment, the standard controls respect the rules set
2525
by those Controls. For example, if you have a Privacy Control set up to block
2626
**Red** data at the Source-level, any new fields you classify in the Data Inventory as

0 commit comments

Comments
 (0)