Send additional guest data
A guest data extension is an array that enables you to specify whatever name/value pairs (attributes) you want. Guest data extensions are optional and enable your organization to capture more robust information about your guests.
The guest extension data model is linked to a guest object that enables you to extend your own requirements and custom attributes onto the guest object. You can insert one data extension within the array.
The following is a list of guidelines for using the guest data extension:
-
Place the data extension data in the
extensions
array of objects. -
The
name
attribute must beext
. Or, if you are sending guest extension data from multiple sources, it must beext1
,ext2
,ext3
,ext4
orext5
. -
The
key
attribute must bedefault
. -
A guest data extension has a maximum of 100 attributes.
The following is a list of guidelines for using attributes in the data extension:
-
The attribute name must be alphanumeric [A-Z,a-z,0-9] as per the JSON RFC 7159 specification.
-
You must write the attribute name of the data extension in camel case.
-
The attribute name must be unique across all guest data extension groups.
-
We recommend making the attribute name meaningful.
Your organization can send guest extension data from multiple source systems to Sitecore CDP. You can include a maximum 100 custom attributes in each guest data extension group.
For example, your organization might want to send guest data extensions from a loyalty system to capture loyalty data and a Customer Relationship Management (CRM) system to capture email preferences, alternative mailing addresses, and so on.
To send data from multiple source systems, you must use a different extension group name for each source system. If you do not do this, each time a source system sends guest extension data to Sitecore CDP, it will overwrite guest extension data sent from other source systems.
Your organization can use a maximum of six guest data extension groups. Each group name represents a different source system. You must use the extension group names as follows:
-
ext
-
ext1
-
ext2
-
ext3
-
ext4
-
ext5
You must specify the guest data extension group in the name attribute.
For example, if you want to send data from a loyalty system to Sitecore CDP, your organization must always use the same guest extension group name as the value in the key-value pair. Do not use the same guest extension group name to send extensions from other source systems.
Use a consistent prefix in the key name of the key-value pair. This helps users quickly find all guest data extensions from a particular source system in the batch segmentation UI. For example, if you use member
as a prefix, all member
guest data extensions display together in the UI in alphabetical order. This also ensures that you do not overwrite key-value pairs sent from other source systems. For example, a key with number
might exist for a loyalty membership and CRM system.
Users can access guest data extensions in batch segmentation, as shown in the following example:
In this example, memberCardBalance
, memberCardCategory
, and memberCardType
, become guest data extensions sent from your orgnaization's loyalty system:
{
"ref":"9d94ee11-7043-4b71-980c-a777d00a7b46",
"schema":"guest",
"mode":"upsert",
"value":{
"guestType":"customer",
"firstSeen":"2010-03-07T16:15:11.000Z",
"lastSeen":"2012-08-23T16:17:16.000Z",
"identifiers":[
{
"provider":"IDENTITY_SYSTEM",
"id":"B7524AE6-CF1C-440F-B1A2-0C9D42F5CB41",
"expiryDate":"2016-08-23T16:17:16.000Z"
}
],
"extensions":[
{
"name":"ext",
"key":"default",
"memberCardBalance": 5012.25,
"memberCardType":"vip",
"memberCardType":"platinum"
}
]
}
}