Collection model reference
The core collection model consists of the base entities and attributes collected by xDB. The contact represents the individual that interactions are collected for. The device profile indicates a browser or other user agent used when the contact interacted with a brand.
For information about using the model in the context of the xConnect Client API, see:
Core Collection Model
The core collection model consists of the base entities and attributes collected by xDB.
The contact represents the individual that interactions are collected for. The device profile indicates a browser or other user agent used when the contact interacted with a brand.
Contact
Specifies the individual person interacting with a brand.
The contact enables 0 or more identifiers with various types. You can for instance add multiple anonymous identifiers - where one enables you to track the return visits for a contact and other enables you to track advertising via DSP.
A contact with at least one identifier with an identifier type = known is considered a known contact in our system.
Id (Guid)
Required, Searchable
Specifies the unique xDB identifier for the contact.
This field is not PII therefore it can be logged in a debugging scenario.
LastModified (datetime)
Required, Searchable
Specifies the last time this record was modified.
ContactIdentifier
Specifies an alias or identifier used to indicate the contact outside of xDB. These identifiers enable us to link a contact to a CRM or other external systems.
Unique constraints: the identifier + source must be unique across all contacts. The contact identifier and source are case-sensitive.
The following are valid across all contacts: ContactId | Identifier|Source 1 | tmi | dk_activedirectory 1 | fyi | dk_activitedirectory 1 | 920420204 | twitter 2 | 390248032| twitter
The following are invalid as you cannot have a different contact ID with the same identifier and source. ContactId | Identifier | Source 1 | tmi | dk_activedirectory 1 | tmi | apple_network 2 | tmi| apple_network
IdentifierType (IdentifierType)
Required, Searchable
Indicates the type of Identifier represented by the Identifier.
Identifier (string)
PII Sensitive, Required
Specifies the identifier which links the contact to an external system. This can be a username, email address, twitter handle, or any other identifier which uniquely identifies the contact across all contacts in xDB.
The value is PII data and cannot be logged to disk.
Source (string)
Required, Searchable
Specifies the source system which holds the identifier. This is intended for customers to populate according to their usage requirements.
Interaction
Specifies a set of activities that took place during a web session, phone call or some other interaction between a contact and a brand.
The interaction defines meta-data surrounding the sequence of events specified in the EventList.
Properties like StartDateTime
and EndDateTime
are read-only and have their values calculated based on the first and last events, respectively.
Id (Guid)
Required
Specifies the unique identifier for the interaction.
DeviceProfileId (Nullable<Guid>)
Searchable
Specifies the profile of the device used during the session for this interaction.
CampaignId (Nullable<Guid>)
Searchable
Indicates the ID of the campaign which lead to the interaction. So, if you click a link from Google AdWords, this value would be set to the campaign ID associated with the AdWords campaign.
The meta-data, such as name or classification, for a campaign can be retrieved from the Marketing Operations API - Campaign Activity Definition Manager.
ChannelId (Guid)
Required, Searchable
Indicates the source of the interaction.
Meta-data, such as name or channel group, can be retrieved from the Marketing Operations API - Channel Taxonomy Manager.
VenueId (Nullable<Guid>)
Searchable
Specifies the physical location of the interaction.
Meta-data, such as name or group, can be retrieved from the Marketing Operations API - Venue Taxonomy Manager.
Intiator (InteractionInitiator)
Required, Searchable
Value = 0 - Indicates the contact started the interaction. Examples: when a contact visits a website or an IoT device in the home of the contact pushed the interaction data on behalf of the contact.
Value = 1 - Indicates the brand started the interaction. Examples: When a company sales rep calls the contact or an email is sent from ExM.
Value = 2 - indicates the intiator of the interaction is unknown.
Values other than those mentioned above should be ignored.
StartDateTime (DateTime)
Required, Searchable
Specifies when the interaction started. This field should be calculated based on the first event in the sequence when the events are ordered ascending by timestamp.
EndDateTime (DateTime)
Required, Searchable
Specifies when the interaction ended. This field is calculated based on the last event in the EventList.
EngagementValue (int)
RequiredSearchable
Specifies the total engagement value accumulated during the interaction. This is a sum of the engagement value from all events.
UserAgent (string)
Required, Searchable
Specifies the user agent used when creating or tracking this interaction.
Events (ICollection<Event>)
RequiredSearchable
Indicates all events occurring during the interaction. Order is indicated by the DateTime of the event therefore the stored order of the event is inconsequential.
LastModified (DateTime)
Required, Searchable
Specifies the most recent datetime this interaction was changed.
Interactions cannot be edited therefore this date always represents the datetime when the record was created.
Duration (Timespan)
Specifies the duration of an interaction. This is a calculated field based on StartDateTime and EndDateTime.
Event
Specifies an activity from a contact occurring during an interaction. Some examples are clicking a button on a web page, swiping right on a mobile app, completing a form, or purchasing a product.
The events are sequenced by their timestamp.
Events can also be goals or outcomes.
CustomValues (Dictionary<string, string>)
Represents any custom values stored for this event. This exists for backwards compatibility with versions 7.5-8.2. If you’re adding new data, you should consider inheriting from the event class and adding properties for your custom values.
Data (string)
Searchable
Represents any custom data stored for this event. This exists for backwards compatibility with versions 7.5-8.2. You should consider inheriting from the event class and adding properties for your custom values.
DataKey (string)
Searchable
Represents any custom data stored for this event. This exists for backwards compatibility with versions 7.5-8.2. You should consider inheriting from the event class and adding properties for your custom values.
DefinitionId (Guid)
Required, Searchable
Specifies the definition ID representing this event. See the Marketing Operations API for information on how to create these event definitions.
Duration (Timespan)
Indicates how long the event occurred.
If the value is 0 then the event was instant or the duration had no meaning.
EngagementValue (int)
Required, Searchable
Specifies the number of engagement points scored for this event. Note: this value does not always match the score value stored with the event definition. This can be set during tracking if the implementer decides to do so.
Id (Guid)
Required
Indicates the unique identifier for this event.
ParentEventId (Nullable<Guid>)
Searchable
Specifies the parent event to this event. This is useful when correlating a page view event to button click events that occurred on that page.
Text (string)
Searchable
Represents any custom text stored for this event. This exists for backwards compatibility with versions 7.5-8.2. You should consider inheriting from the event class and adding properties for your custom values.
Timestamp (DateTime)
Required, Searchable
Indicates when the event occurred. You should sort ascending by this field to determine the chronological sequence of the events.
ItemId (Guid)
DeviceProfile
The device profile specifies a mapping between a specific user agent instance and the most recent contact to use it. That is to say - the ID can be stored as a cookie on a browser then used to identify the returning contact even if they are anonymous.
Id (Guid)
Required
Specifies the ID of the device profile. This can be stored in a cookie or local storage on a mobile device to reidentify the most recent contact when they start a new session.
LastKnownContactId (Guid)
Required
Specifies the ID of the most recent contact to use this device.
LastModified (Datetime)
Required
Specifies the last time this record was changed.
Goal
Specifies a special action executed by a contact during an interaction.
The meta-data, such as name or classification, for a goal can be retrieved from the Marketing Operations API - Goal Definition Manager.
Outcome
Specifies a significant event where money usually changes hands.
The meta-data, such as name or classification, for an outcome can be retrieved from the Marketing Operations API - Outcome Definition Manager.
CurrencyCode (string)
Required, Searchable
Specifies the type of currency in the MonetaryValue. The value should be a valid code from ISO 4217.
MonetaryValue (decimal)
Required, Searchable
Specifies the financial value of the outcome. Some examples are the total purchase amount of an e-commerce transaction or the value of a contract signed between two legal entities.
InteractionInitiator
Enumeration indicating the options for the initiator of an interaction
Contact (int)
Indicates the contact (or customer) started the interaction.
Brand (int)
Indicates the brand started the interaction. This could be an email sent or phone call made to a customer.
Unknown (int)
The initiator is unknown.
ContactIdentifierType
Specifies the options for classifying a contact identifier.
Anonymous (int)
Specifies that the associated identifier is anonymous. This is useful when you want to re-identify the contact yet s/he has not yet identified with a reachable address (i.e. email address, phone number).
Known (int)
Indicates the associated identifier is known implying you can reach the contact via phone number, email address or some other address.
PageViewEvent
Indicates when a contact viewed a specific web page or content item. This replaces the legacy Pages collection found on the Tracker in previous versions.
ItemLanguage (string)
Required
Specifies the language of the content item viewed
ItemVersion (int)
Required
Specifies the version of the content item viewed
Url (string)
Indicates the public url on the request which served the page during this event.
When this value is set by the Sitecore.Analytics.Tracker, the Url and Querystring are saved.
SitecoreRenderingDevice (SitecoreDeviceData)
Contact Model - Value Facets
The diagram shows the contact model and all default value facets:
ConsentInformation
Consents (Dictionary<string, ConsentItem>)
Stores individual consent choices against a key (for example, a website name or type of processing). Each ConsentItem
defines a date and a consent choice (0 or 1). 1 means that consent has been given, and 0 means that consent has been revoked.
Address
Indicates a physical address for the contact.
AddressLine1 (string)
PII Sensitive
Specifies the first line of the address.
City (string)
Searchable
Specifies the city of the address.
StateOrProvince (string)
Searchable
Specifies the state of province of the address.
PostalCode (string)
Searchable
Specifies the zip or postal code of the address.
CountryCode (string)
Searchable
Specifies the 2-digit ISO code from ISO 3166-alpha-2 for the country.
Using this code enables marketers to easily build segments with our conditions by using an existing standard.
AddressLine2 (string)
PII Sensitive
Specifies an optional second line of the address.
AddressLine3 (string)
PII Sensitive
Specifies an optional third line of the address.
AddressLine4 (string)
PII Sensitive
Specifies the optional fourth line of the address.
GeoCoordinate (GeoCoordinate)
PII Sensitive
Specifies the geographic coordinates for the address. The value is optional. The brand must decide if they populate and therefore use this value.
AddressList
Specifies a list of addresses.
Others (Dictionary<string,Address>)
Searchable
Specifies the list of other physical addresses for this Contact. The key defines the identifier for physical address. Examples are “work”, “home”, or “personal”
PreferredAddress (Address)
Required, Searchable
PreferredKey (string)
Required, Searchable
Specifies the key that represents the prefer address
Contact
Specifies the individual person interacting with a brand.
The contact enables 0 or more identifiers with various types. You can for instance add multiple anonymous identifiers - where one enables you to track the return visits for a contact and other enables you to track advertising via DSP.
A contact with at least one identifier with an identifier type = known is considered a known contact in our system.
Id (Guid)
Required, Searchable
Specifies the unique xDB identifier for the contact.
This field is not PII therefore it can be logged in a debugging scenario.
LastModified (datetime)
Required, Searchable
Specifies the last time this record was modified.
ContactIdentifier
Specifies an alias or identifier used to indicate the contact outside of xDB. These identifiers enable us to link a contact to a CRM or other external systems.
Unique constraints: the identifier + source must be unique across all contacts. The contact identifier and source are case-sensitive.
The following are valid across all contacts: ContactId | Identifier|Source 1 | tmi | dk_activedirectory 1 | fyi | dk_activitedirectory 1 | 920420204 | twitter 2 | 390248032| twitter
The following are invalid as you cannot have a different contact id with the same identifier and source. ContactId | Identifier | Source 1 | tmi | dk_activedirectory 1 | tmi | apple_network 2 | tmi| apple_network
IdentifierType (IdentifierType)
Required, Searchable
Indicates the type of Identifier represented by the Identifier.
Identifier (string)
PII Sensitive, Required
Specifies the identifier which links the contact to an external system. This can be a username, email address, twitter handle, or any other identifier which uniquely identifies the contact across all contacts in xDB.
The value is PII data and cannot be logged to disk.
Source (string)
Required, Searchable
Specifies the source system which holds the identifier. This is intended for customers to populate according to their usage requirements.
ContactListSubscription
ListDefinitionId (Guid)
Required, Searchable
Specifies the ID of the contact list to which the contact has subscribed. This Id is defined by the ContactListDefinitionManager found in the Marketing Operations API
Added (Datetime)
Required, Searchable
Indicates when this contact list membership was added
LastModfied (Datetime)
Required, Searchable
Indicates the last time this list membership was changed.
IsActive (bool)
Required, earchable
Indicates if this list membership is active.
SourceDefinitionId (Guid)
Searchable
Indicates the source from which the contact was added to this list.
EmailAddress
SmtpAddress (string)
PII Sensitive, Required
Specifies the email address to be used when emailing this contact.
Validated (bool)
Required
Indicates the email has been validated by the contact.
BounceCount (int)
Indicates how many times this email address received a bounce notification.
EmailAddressList
Others (Dictionary<string,EmailAddress>)
Required, Searchable
Specifies the list of email addresses for this Contact. The key defines the identifier for that email address. Examples are “work”, “home”, or “personal”
PreferredEmail (EmailAddress)
PII Sensitive, Required
Specifies the preferred email address for the contact.
PreferredKey (string)
Required, Searchable
Specifies the key of the preferred email address within the list of entries.
PersonalInformation
Birthdate (Nullable<Datetime>)
PII Sensitive
Specifies the birth date for the contact.
FirstName (string)
PII Sensitive
Gender (string)
Searchable
Specifies the contact’s gender.
JobTitle (string)
Searchable
MiddleName (string)
PII Sensitive
Nickname (string)
PII Sensitive
PreferredLanguage (string)
Searchable
Indicates the language this contact prefers
Suffix (string)
Searchable
Can include
Surname (string)
PII Sensitive
Title (string)
Searchable
PhoneNumber
CountryCode (string)
Required, Searchable
Indicates the country code.
Number (string)
Required
Indicates the phone number excluding the country code and extension.
Extension (string)
PII Sensitive
Indicates the extension.
PhoneNumberList
Others (Dictionary<string,PhoneNumber>)
Searchable
Specifies a list of phone numbers stored for this contact. The key defines the identifier for Phone Number. Examples are “work”, “home”, or “mobile”
PreferredKey (string)
Required, Searchable
Specifies the key of the preferred phone number within the list of phone numbers
PreferredPhoneNumber (PhoneNumber)
Avatar
Indicates a thumbnail photo of the contact. Note, loading this with a large payload can slow the load time of contact data when requesting this facet. This is primarily designed to be a standard sized thumbnail of the contact.
Picture (byte[])
PII Sensitive, Required
MimeType (string)
Required
ListSubscriptions
Indicates all contact lists to which this contact belongs
Subscriptions (List<ContactListSubscription>)
Required, Searchable
AutomationPlanResult
AutomationPlanDefinitionId (Guid)
Indicates the definition ID of the plan that was exited
ExitDateTime (datetime)
Specifies the datetime when the contact exited.
ActivityId (Guid)
AutomationPlanExit
Contains a collection describing every time a contact exited a given automation plan.
Results (List<AutomationPlanResult>)
Searchable
Classification
ClassificationLevel (int)
Searchable
OverrideClassificationLevel (int)
Searchable
An explicitly set classification which overrides the ClassificationLevel property set by the system. For instance, Robot detection will set the classification level based on its detection algorithm, however, the override classification can be set if the contact was classified incorrectly.
AutomationPlanEnrollmentCache
Specifies a cache of the of the automation plans for this contact. This is only to be updated during automation plan processing and used for personalization.
The context key is the same one which specifies an instance of the plan and enables a developer to look up additional details for the plan instance from the MarketingAutomationClient.
ActivityEnrollments (List<AutomationPlanActivityEnrollmentCacheEntry>)
AutomationPlanActivityEnrollmentCacheEntry
ActivityId (Guid)
AutomationPlanDefinitionId (Guid)
Specifies the automation plan definition ID from the marketing operations API
ContextKey (string)
CustomValues (Dictionary<string,string>)
The custom values for the given Automation Plan.
PlanEntryDate (datetime)
Gets or sets the date and time when the contact first entered the PlanId.
ActivityEntryDate (datetime)
Gets or sets the date and time when the contact entered the ActivityId.
GeoCoordinate
Latitude (double)
Longitude (double)
Contact Model - Calculated Facets
ContactBehaviorProfile
Scores (Dictionary<Guid, ProfileScore>)
Set of ProfileScores collected for this contact. The key is the Profile Definition Id found in the Marketing Operations API.
SourceInteractionStartDateTime (DateTime)
Indicates the start date time of the interaction on which the most recent behavioral profile was calculated. That is to say when an interaction is collected, this value is compared to the incoming interaction’s start date time. If this value is greater, the contact behavior profile is not re-calculated.
EngagementMeasures
TotalInteractionCount (int)
Required, Searchable
Indicates the total interaction count for this contact.
Replaces IContactSystemInfo.VisitCount
.
TotalValue (int)
Required, Searchable
Replaces IContactSystemInfo.Value
.
MostRecentInteractionStartDateTime (DateTime)
Indicates the start date time of most recent interaction from the Contact.
MostRecentInteractionDuration (Timespan)
Indicates the most recent interaction’s duration.
TotalInteractionDuration (Timespan)
Indicates the total duration of all interactions for this Contact.
AverageInteractionDuration (Timespan)
Average interaction time for this Contact across all interactions.
KeyBehaviorCache
Campaigns (List<KeyBehaviorCacheEntry>)
Channels (List<KeyBehaviorCacheEntry>)
Goals (List<KeyBehaviorCacheEntry>)
Outcomes (List<KeyBehaviorCacheEntry>)
PageEvents (List<KeyBehaviorCacheEntry>)
Venues (List<KeyBehaviorCacheEntry>)
CustomValues (List<KeyBehaviorCacheEntry>)
Indicates custom values to be stored in the key behavior cache. It is not recommend new customers use this but rather use a calculated facet.
Contact
Specifies the individual person interacting with a brand.
The contact enables 0 or more identifiers with various types. You can for instance add multiple anonymous identifiers - where one enables you to track the return visits for a contact and other enables you to track advertising via DSP
A contact with at least one identifier with an identifier type = known is considered a known contact in our system.
Id (Guid)
Required, Searchable
Specifies the unique xDB identifier for the contact.
This field is not PII therefore it can be logged in a debugging scenario.
LastModified (datetime)
Required, Searchable
Specifies the last time this record was modified.
KeyBehaviorCacheEntry
Specifies a single entry in the KeyBehaviorCache
Data (string)
Specifies additional information for this cache entry. This value exists to enable a developer to add any sort of contextual information to aid in usage of the key behavior cache. For instance - if the cache entry represents a search, this information could the text being sought (i.e. user searched for “aston martin”)
DateTime (DateTime)
InteractionId (Guid)
Specifies the ID of the interaction which populated this cache entry.
DefinitionId (Guid)
Specifies the marketing operations definition ID for the entry.
InteractionStartDateTime (DateTime)
Specifies the start date time for the interaction which populated this cache entry.
ProfileScore
Specifies behavioral profile data scored during a session.
MatchedPatternId (Nullable<Guid>)
Indicates the ID of the pattern card matched for a profile. This match is done during tracking or from an external system. xDB will only store the matched ID for use during processing and reporting.
ProfileDefinitionId (Guid)
Specifies the ID of the profile definition defined in the Marketing Operations API.
Score (double)
Specifies the total score of all values for this profile.
ScoreCount (int)
Specifies the number of times the profile was scored during a session
Values (Dictionary<Guid, double>)
Specifies the scored values for Profile Keys for a give Profile. The key is the profile key ID and the value is the score.
Interaction Model - Web Visit
SitecoreDeviceData
Id (Guid)
Specifies the ID of the Sitecore item that describes the device.
Name (string)
Specifies the name of the device.
BrowserData
BrowserVersion (string)
Specifies the browser version.
BrowserMajorName (string)
Specifies the browser major name.
BrowserMinorName (string)
Specifies the browser minor name.
Interaction
Specifies a set of activities that took place during a web session, phone call or some other interaction between a contact and a brand.
Essentially the interaction defines meta-data surrounding the sequence of events specified in the EventList.
Properties like StartDateTime
and EndDateTime
are read-only and have their values calculated based on the first and last events, respectively.
Id (Guid)
Required
Specifies the unique identifier for the interaction.
DeviceProfileId (Nullable<Guid>)
Searchable
Specifies the profile of the device used during the session for this interaction.
CampaignId (Nullable<Guid>)
Searchable
Indicates the ID of the campaign which lead to the interaction. That is to say, if you click a link from google adwords, this value would be set to the campaign ID associated with the adwords campaign.
The meta-data, such as name or classification, for a campaign can be retrieved from the Marketing Operations API - Campaign Activity Definition Manager.
ChannelId (Guid)
Required, Searchable
Indicates the source of the interaction.
Meta-data, such as name or channel group, can be retrieved from the Marketing Operations API - Channel Taxonomy Manager.
VenueId (Nullable<Guid>)
Searchable
Specifies the physical location of the interaction.
Meta-data, such as name or group, can be retrieved from the Marketing Operations API - Venue Taxonomy Manager.
Intiator (InteractionInitiator)
Required, Searchable
Value = 1 - Indicates the contact started the interaction. Examples: when a contact visits a website or an IoT device in the home of the contact pushed the interaction data on behalf of the contact.
Value = 2 - Indicates the brand started the interaction. Examples: When a company sales rep calls the contact or an email is sent from EXM.
Values other than those mentioned above should be ignored.
StartDateTime (DateTime)
Required, Searchable
Specifies when the interaction started. This field should be calculated based on the first event in the sequence when the events are ordered ascending by timestamp.
EndDateTime (DateTime)
Required, Searchable
Specifies when the interaction ended. This field is calculated based on the last event in the EventList.
EngagementValue (int)
Required, Searchable
Specifies the total engagement value accumulated during the interaction. This is a sum of the engagement value from all events.
UserAgent (string)
Required, Searchable
Specifies the user agent used when creating or tracking this interaction.
Events (ICollection<Event>)
Required, Searchable
Indicates all events occurring during the interaction. Order is indicated by the DateTime of the event therefore the stored order of the event is inconsequential.
LastModified (DateTime)
Required, Searchable
Specifies the most recent datetime this interaction was changed.
Interactions cannot be edited. Therefore, this date will always represent the datetime when the record was created.
Duration (Timespan)
Specifies the duration of an interaction. This is a calculated field based on StartDateTime and EndDateTime.
IpInfo
Specifies metadata describing the network entry point of the contact.
Derived from GeoIP data.
This was formally WhoisInformation from GeoIP.
This is PII data. Therefore you cannot log it to disk.
AreaCode (string)
Searchable
BusinessName (string)
Searchable
City (string)
Searchable
Country (string)
Searchable
Dns (string)
Searchable
IpAddress (string)
PII Sensitive, Required
Isp (string)
Searchable
Latitude (Nullable<double>)
PII Sensitive
Longitude (Nullable<double>)
PII Sensitive
MetroCode (string)
Searchable
PostalCode (string)
Searchable
Region (string)
Searchable
Url (string)
Searchable
LocationId (Nullable<Guid>)
Indicates the derived location based on the IpInformation for this interaction
WebVisit
Information collected at the time we collect the interaction.
Language (string)
Searchable
Set to the site’s context language.
Brands should set this value during a web session if the contact chooses a different language.
OperatingSystem (OperatingSystemData)
Searchable
Referrer (string)
Searchable
It's possible that there could be PII Sensitive data in this field.
ReferringSite (string)
Searchable
(May become obsolete in future release.)
Screen (ScreenData)
SearchKeywords (string)
Searchable
Species the search keywords incoming from a search engine or other site at the start of a web session.
SiteName (string)
Searchable
Browser (BrowserData)
Searchable
IsSelfReferrer (bool)
Indicates if the web visit was referred from the same website serving the visit.
ScreenData
ScreenHeight (int)
Specifies the screen height.
ScreenWidth (int)
Specifies the screen width.
OperatingSystemData
MajorVersion (string)
MinorVersion (string)
Name (string)
ProfileScore
Specifies behavioral profile data scored during a session.
MatchedPatternId (Nullable<Guid>)
Indicates the ID of the pattern card matched for a profile. This match is done during tracking or from an external system. xDB will only store the matched ID for use during processing and reporting.
ProfileDefinitionId (Guid)
Specifies the ID of the profile definition defined in the Marketing Operations API.
Score (double)
Specifies the total score of all values for this profile.
ScoreCount (int)
Specifies the number of times the profile was scored during a session.
Values (Dictionary<Guid,double>)
Specifies the scored values for Profile Keys for a given profile. The key is the profile key ID and the value is the score.
Event
Specifies an activity from a contact occurring during an interaction. For example, clicking a button on a web page, swiping right on a mobile app, completing a form, or purchasing a product.
The events are sequenced by their timestamp.
Events can also be goals or outcomes.
CustomValues (Dictionary<string,string>)
Represents any custom values stored for this event. This exists for backwards compatibility with versions 7.5-8.2. If you are adding new data, you should consider inheriting from the event class and adding properties for your custom values.
Data (string)
Searchable
Represents any custom data stored for this event. This exists for backwards compatibility with versions 7.5-8.2. We recommend that you consider inheriting from the event class and adding properties for your custom values.
DataKey (string)
Searchable
Represents any custom data stored for this event. This exists for backwards compatibility with versions 7.5-8.2. You should consider inheriting from the event class and adding properties for your custom values.
DefinitionId (Guid)
Required, Searchable
Specifies the definition ID representing this event. See the Marketing Operations API for how to create these event definitions.
Duration (Timespan)
Indicates how long the event occurred.
If the value is 0 then the event was instant or the duration had no meaning.
EngagementValue (int)
Required, Searchable
Specifies the number of engagement points scored for this event.
This value does not always match the score value stored with the event definition. This can be set during tracking if the implementer decides to do so.
Id (Guid)
Required
Indicates the unique identifier for this event.
ParentEventId (Nullable<Guid>)
Searchable
Specifies the parent event to this event. This is useful when correlating a page view event to button click events which occurred on that page.
Text (string)
Searchable
Represents any custom text stored for this event. This exists for backwards compatibility with versions 7.5-8.2. You should consider inheriting from the event class and adding properties for your custom values.
Timestamp (DateTime)
Required, Searchable
Indicates when the event occurred. You can sort in ascending order by this field to determine the chronological sequence of the events.
ItemId (Guid)
PageViewEvent
Indicates when a contact viewed a specific web page or content item. This replaces the legacy Pages collection found on the Tracker in previous versions.
ItemLanguage (string)
Required
Specifies the language of the content item viewed
ItemVersion (int)
Required
Specifies the version of the content item viewed
Url (string)
Indicates the public url on the request which served the page during this event.
When this value is set by the Sitecore.Analytics.Tracker, the Url and Querystring are saved.
SitecoreRenderingDevice (SitecoreDeviceData)
Outcome
Specifies a significant event where money usually changes hands.
The metadata for an outcome, such as name or classification, can be retrieved from the Marketing Operations API - Outcome Definition Manager.
CurrencyCode (string)
Required, Searchable
Specifies the type of currency in the MonetaryValue. The value should be a valid code from ISO 4217.
MonetaryValue (decimal)
Required, Searchable
Specifies the financial value of the outcome. Some examples are the total purchase amount of an e-commerce transaction or the value of a contract signed between two legal entities.
Goal
Specifies a special action executed by a contact during an interaction.
The meta-data, such as name or classification, for a goal can be retrieved from the Marketing Operations API - Goal Definition Manager.
Contact
Specifies the individual person interacting with a brand.
The contact enables 0 or more identifiers with various types. You can for instance add multiple anonymous identifiers - where one enables you to track the return visits for a contact and other enables you to track advertising via DSP
A contact with at least one identifier with an identifier type = known is considered a known contact in our system.
Id (Guid)
Required, Searchable
Specifies the unique xDB identifier for the contact.
This field is not PII therefore it can be logged in a debugging scenario.
LastModified (datetime)
Required, Searchable
Specifies the last time this record was modified.
UserAgentInfo
Defines properties the user agent.
It is intentional this is a minimal set of properties to minimize disk space usage while supporting segmentation. If you need additional properties, you can query device detection based on the user agent.
DeviceType (string)
Specifies the type of device (for example: media player, mobile phone, tablet).
DeviceVendor (string)
Species the device vendor for the given useragent.
DeviceVendorHardwareModel (string)
Specifies the full model name from the device vendor.
CanSupportTouchScreen (bool)
Specifies if the device supports touch screen.
ProfileScores
Scores (Dictionary<Guid,ProfileScore>)
Required, Searchable
LocaleInfo
Specifies a set of properties specific to the locale of the contact when the interaction occurred.
GeoCoordinate (GeoCoordinate)
PII Sensitive
Specifies the GeoCoordinates at the start of the interaction.
TimezoneOffset (Timespan)
Searchable
Number of minutes the contact’s time-zone is offset from UTC. This can be used to calculate the local time the contact performed an event.
GeoCoordinate
Latitude (double)
Longitude (double)
CampaignEvent
CampaignDefinitionId (Guid)
Indicates the campaign that was triggered.
DownloadEvent
ItemId (Guid)
Indicates the content item ID that was downloaded.
SearchEvent
Keywords (string)
Specifies the keywords used for the search.