You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/connections/reverse-etl/index.md
+66Lines changed: 66 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -109,6 +109,7 @@ To create a mapping:
109
109
5. Select a test record to preview the fields that you can map to your destination in the **Add test record** field.
110
110
6. Define how to map the record columns from your model to your destination in the **Select Mappings** section.
111
111
* You map the fields that come from your source, to fields that the destination expects to find. Fields on the destination side depend on the type of action selected.
112
+
* If you're setting up a destination action, depending on the destination, some mapping fields may require data to be in the form of an object or array. See the [supported objects and arrays for mapping](#supported-object-and-arrays).
112
113
7. Click **Create Mapping**.
113
114
8. Select the destination you’d like to enable on the **My Destinations** page under **Reverse ETL > Destinations**.
114
115
9. Turn the toggle on for the **Mapping Status**. Events that match the trigger condition in the mapping will be sent to the destination.
@@ -203,3 +204,68 @@ Column count | The maximum number of columns a single sync will process. | 512 c
203
204
Column name length | The maximum length of a record column. | 128 characters
204
205
Record JSON size | The maximum size for a record when converted to JSON (some of this limit is used by Segment). | 512 KiB
205
206
Column JSON size | The maximum size of any single column value. | 128 KiB
207
+
208
+
## Supported Object and Arrays
209
+
210
+
When you set up destination actions in Reverse ETL, depending on the destination, some mapping fields may require data to be in the form of an object or array.
211
+
212
+
### Object mapping
213
+
To send data to a mapping field that requires object data, you can choose between these two options:
214
+
215
+
Option | Details
216
+
------ | --------
217
+
Customize Object | This enables you to manually set up the mapping fields with any data from the model. If the model contains some object data, you can select properties within the object to set up the mappings as well.
218
+
Select Object | This enables you to send all nested properties within an object. The model needs to provide data in the format of the object. An example is an `Order completed` model with a `Products` column that’s in object format.
219
+
220
+
> success ""
221
+
> Certain object mapping fields have a fixed list of properties they can accept. If the names of the nested properties in your object don't match with the destination properties, the data won't send. Segment recommends you to use **Customize Object** to ensure your mapping is successful.
222
+
223
+
Example:
224
+
225
+
226
+
{
227
+
"product1": {
228
+
"productColor": "pink",
229
+
"productName": "tshirt"
230
+
},
231
+
"product2": {
232
+
"productColor": "white",
233
+
"productName": "skirt"
234
+
}
235
+
}
236
+
237
+
238
+
### Array mapping
239
+
To send data to a mapping field that requires array data, the model must to provide data in the format of an array of objects. An example is an `Order completed` model with a `Product purchased` column that’s in an array format.
240
+
241
+
Example:
242
+
243
+
244
+
[
245
+
{
246
+
"currency": "USD",
247
+
"price": 40,
248
+
"productName": "jacket",
249
+
"purchaseTime": "2021-12-17 23:43:47.102",
250
+
"quantity": 1
251
+
},
252
+
{
253
+
"currency": "USD",
254
+
"price": 5,
255
+
"productName": "socks",
256
+
"quantity": 2
257
+
}
258
+
]
259
+
260
+
261
+
To send data to a mapping field that requires array data, you can choose between these two options:
262
+
263
+
Option | Details
264
+
------ | --------
265
+
Select array | This enables you to send all nested properties within the array.
266
+
Customize array | This enables you to select the specific nested properties to send to the destination.
267
+
268
+
> success ""
269
+
> Certain array mapping fields have a fixed list of properties they can accept. If the names of the nested properties in your array don't match the destination properties, the data won't send. Segment recommends you to use the **Customize array** option to ensure your mapping is successful.
270
+
271
+
Objects in an array don't need to have the same properties. If a user selects a missing property in the input object for a mapping field, the output object will miss the property.
0 commit comments