Skip to main content
Sitecore Documentation
  • Learn
  • Downloads
  • Changelog
  • Roadmap
CDPCloud Portal
Sitecore CDP Developer Documentation
  • Developing with Sitecore CDP
    • Authentication
    • Base URL
    • Batch file formatting requirements
        • Guest data model
        • Send additional guest data
        • Guest extension data model
        • Guest extension data model for flight
        • Guest identifiers data model
        • Using guest profile migration
        • Guest migration data model
        • Using guest delete
        • Guest delete data model
  1. Batch API Guest
  1. Sitecore CDP Developer Documentation
  2. Batch API

Guest extension data model

When you create a batch file, ensure that you include all required attributes in addition to any attributes from the following table:

AttributeDescriptionTypeExample(s)InsertUpsertMigration
firstSeenThe first seen date for the guest.ISO 8601 Date/Time UTC"2026-03-07T16:15
.000Z"
Not supportedOptionalOptional
lastSeenThe last time the guest interacted with your brand.ISO 8601 Date/Time UTC"2026-08-23T16:17
.000Z"
Not supportedOptionalOptional
guestTypeA required Sitecore CDP attribute that represents the level of identity obtained.string (lowercase)"customer"Not supportedOptionalOptional
titleThe title of the guest.string (title case)"Br", "Brigadier", "Capt", "Colonel", "Dame", "Dr", "Elder", "Fr", "General", "Hon", "Judge", "Lord", "Master", "Miss", "Mr", "Mrs", "Ms", "Mstr", "Prof", "Rabbi", "Rev", "Shaikha", "Sheikh", "Sir", "Sister", "Sr"Not supportedOptionalOptional
firstNameThe first name of the guest.string (title case)"John"Not supportedOptionalOptional
lastNameThe last name of the guest.string (recommend title case)"Does"Not supportedOptionalOptional
genderThe gender of the guest.string (lowercase)"male", "female", "unknown"Not supportedOptionalOptional
dateOfBirthThe date of birth of the guest.ISO 8601 Date/Time UTC Validation: Date must be in the past."1985-12-24T00:00Z"Not supportedOptionalOptional
emailThe email address of the guest.string (recommend lowercase)"[email protected]"Not supportedOptionalOptional
phoneNumbersThe phone numbers of the guest.JSON array of strings[ "+353161123345", "+353861123311" ]Not supportedOptionalOptional
languageThe preferred language of the guest.string (2 letter ISO 639 language code)"EN", "FR", "DE"Not supportedOptionalOptional
nationalityThe nationality of the guest.string (title case)"Irish", "British", "Spanish", "French""Irish", "British", "Spanish", "French"Not supportedOptionalOptional
passportNumberThe passport number of the guest.string (uppercase)"PZ4A9565"Not supportedOptionalOptional
passportExpiryThe expiry date of the guest's passport.string

yyyy-MM-ddTHH
"2026-12-24T00:00Z"Not supportedOptionalNot supported
streetThe street address of the guest.JSON array of strings (title case)["Ashford House", "Tara Street", "Dublin 2"]Not supportedOptionalOptional
cityThe guest's city.string (title case)"Dublin", "London", "Madrid", "Paris"Not supportedOptionalOptional
countryThe guest's country.string (2 letter ISO 3166-1 Alpha-2 country code)"IE", "GB", "ES", "FR"Not supportedOptionalOptional (Uppercase)
postCodeThe guest's postcode.string (uppercase)"D2"Not supportedOptionalOptional
stateThe guest's state.string (title case)"Oregon"Not supportedOptionalOptional
identifiersA list of identifiers for the guest.JSON array of JSON objects[ { "provider":"CR_SYSTEM", "id":"B7524AE6-CF1C-440F-B1A2-0C9D42F5CB41", "expiryDate":"2025-08-23T16:17
.000Z" } ]
Not supportedOptionalOptional
extensionsA list of extensions associated with the guest.JSON array of JSON objects{ "name":"loyalty", "key":"default", "loyaltytier":"level2", "rewardBalance":"50125", "memberSince":"2020-10-08T00:00", "loyaltyNumber":"123456789" }RequiredRequiredRequired
extensions.nameYou must set the value to "ext".string enum"ext"RequiredRequiredRequired
extensions.keyYou must set the value to "default".string"default"RequiredRequiredRequired
extensions.attributeOne or many name/value pair attributes for custom data. The name must follow attribute naming guidelines.Supported types for the "value": string: , boolean: true or false, integer: 9, number: 99.9"loyaltytier":"level2"RequiredRequiredRequired
{
   "ref":"9d94ee11-7043-4b71-980c-a777d00a7b46",
   "schema":"guest",
   "mode":"upsert",
   "value":{
      "guestType":"customer",
      "firstSeen":"2026-03-07T16:`15:11`.000Z",
      "lastSeen":"2026-08-23T16:`17:16`.000Z",
      "identifiers":[
         {
            "provider":"IDENTITY_SYSTEM",
            "id":"B7524AE6-CF1C-440F-B1A2-0C9D42F5CB41",
            "expiryDate":"2025-08-23T16:`17:16`.000Z"
         }
      ],
      "extensions":[
         {
            "name":"ext",
            "key":"default",
            "loyaltyTier":"level2",
            "rewardBalance": 5012.25,
            "memberSince":"2020-10-08T00:00",
            "vipMember": true,
            "loyaltyNumber": 123456789
         }
      ]
   }
}
AttributeDescriptionTypeExample(s)InsertUpsertMigration
firstSeenThe first seen date for the guest.ISO 8601 Date/Time UTC"2026-03-07T16:15
.000Z"
Not supportedOptionalOptional
lastSeenThe last time the guest interacted with your brand.ISO 8601 Date/Time UTC"2026-08-23T16:17
.000Z"
Not supportedOptionalOptional
guestTypeA required Sitecore CDP attribute that represents the level of identity obtained.string (lowercase)"customer"Not supportedOptionalOptional
titleThe title of the guest.string (title case)"Br", "Brigadier", "Capt", "Colonel", "Dame", "Dr", "Elder", "Fr", "General", "Hon", "Judge", "Lord", "Master", "Miss", "Mr", "Mrs", "Ms", "Mstr", "Prof", "Rabbi", "Rev", "Shaikha", "Sheikh", "Sir", "Sister", "Sr"Not supportedOptionalOptional
firstNameThe first name of the guest.string (title case)"John"Not supportedOptionalOptional
lastNameThe last name of the guest.string (recommend title case)"Does"Not supportedOptionalOptional
genderThe gender of the guest.string (lowercase)"male", "female", "unknown"Not supportedOptionalOptional
dateOfBirthThe date of birth of the guest.ISO 8601 Date/Time UTC Validation: Date must be in the past."1985-12-24T00:00Z"Not supportedOptionalOptional
emailThe email address of the guest.string (recommend lowercase)"[email protected]"Not supportedOptionalOptional
phoneNumbersThe phone numbers of the guest.JSON array of strings[ "+353161123345", "+353861123311" ]Not supportedOptionalOptional
languageThe preferred language of the guest.string (2 letter ISO 639 language code)"EN", "FR", "DE"Not supportedOptionalOptional
nationalityThe nationality of the guest.string (title case)"Irish", "British", "Spanish", "French""Irish", "British", "Spanish", "French"Not supportedOptionalOptional
passportNumberThe passport number of the guest.string (uppercase)"PZ4A9565"Not supportedOptionalOptional
passportExpiryThe expiry date of the guest's passport.string

yyyy-MM-ddTHH
"2026-12-24T00:00Z"Not supportedOptionalNot supported
streetThe street address of the guest.JSON array of strings (title case)["Ashford House", "Tara Street", "Dublin 2"]Not supportedOptionalOptional
cityThe guest's city.string (title case)"Dublin", "London", "Madrid", "Paris"Not supportedOptionalOptional
countryThe guest's country.string (2 letter ISO 3166-1 Alpha-2 country code)"IE", "GB", "ES", "FR"Not supportedOptionalOptional (Uppercase)
postCodeThe guest's postcode.string (uppercase)"D2"Not supportedOptionalOptional
stateThe guest's state.string (title case)"Oregon"Not supportedOptionalOptional
identifiersA list of identifiers for the guest.JSON array of JSON objects[ { "provider":"CR_SYSTEM", "id":"B7524AE6-CF1C-440F-B1A2-0C9D42F5CB41", "expiryDate":"2025-08-23T16:17
.000Z" } ]
Not supportedOptionalOptional
extensionsA list of extensions associated with the guest.JSON array of JSON objects{ "name":"loyalty", "key":"default", "loyaltytier":"level2", "rewardBalance":"50125", "memberSince":"2020-10-08T00:00", "loyaltyNumber":"123456789" }RequiredRequiredRequired
extensions.nameThe name of the data extension.string (uppercase recommended)"DE12346"Not supportedRequiredRequired
extensions.keyKey that uniquely identifies the data extension.string (title case recommended)"flyWithMe"Not supportedRequiredRequired
extensions.attributeData extensions data.string (title case)
  • "tier":"gold"
  • "milesBalance":"50125"
Not supportedRequired/Optional depending on extensionOptional

Caution

Certain data extensions require all fields to be present in order to not be deleted by the import. Consult your Sitecore CDP representative if you have questions.

{
   "ref":"9d94ee11-7043-4b71-980c-a777d00a7b46",
   "schema":"guest",
   "mode":"upsert",
   "value":{
      "firstSeen":"2026-03-07T16:`15:11`.000Z",
      "lastSeen":"2026-08-23T16:`17:16`.000Z",
      "guestType":"customer",
      "title":"Mr",
      "firstName":"John",
      "lastName":"Does",
      "gender":"male",
      "dateOfBirth":"1985-12-24T00:00Z",
      "email":"[email protected]",
      "nationality":"Irish",
      "passportNumber":"PZ4A9565",
      "passportExpiry":"2026-12-24T00:00Z",
      "street":[
         "Apartment 15",
         "West Drive Avenue"
      ],
      "city":"Dublin",
      "country":"IE",
      "postCode":"D2",
      "state":"Dublin",
      "identifiers":[
         {
            "provider":"IDENTITY_SYSTEM",
            "id":"B7524AE6-CF1C-440F-B1A2-0C9D42F5CB41",
            "expiryDate":"2025-08-23T16:`17:16`.000Z"
         }
      ],
      "extensions":[
         {
            "name":"loyalty",
            "key":"flyWithMe",
            "tier":"gold",
            "milesBalance":"50125",
            "memberSince":"2020-10-08T00:00",
            "loyaltyNumber":"123456789"
         }
      ]
   }
}
If you have suggestions for improving this article, let us know!

Documentation Assistant

This assistant uses AI to generate responses based on Sitecore documentation. While it has access to official sources, answers may be incomplete or inaccurate and should not be considered official advice or support.
Powered by
k
kapa.ai
Protected by reCAPTCHA

© Copyright 2026, Sitecore A/S or a Sitecore affiliated company.
All rights reserved.

Privacy policySitecore Trust CenterTerms of use