sitecore · Schema

Sitecore CDP Guest

Schema representing a guest profile in Sitecore Customer Data Platform. Guests are the core entity storing personal, behavioral, and transactional data used for personalization, segmentation, and reporting.

Properties

Name Type Description
guestRef string The unique reference identifier for the guest, assigned by Sitecore CDP upon creation
email string The email address of the guest, used as the primary identifier for identity resolution
firstName string The guest's first name as stored in the CDP profile
lastName string The guest's last name as stored in the CDP profile
dateOfBirth string The guest's date of birth in ISO 8601 date format (YYYY-MM-DD)
gender string The guest's gender identity
phoneNumbers array Phone numbers associated with the guest profile
identifiers array External identifiers that link this guest to source systems for identity resolution
dataExtensions object Named sets of custom key-value pairs attached to the guest profile for storing additional structured information
orders array Order records associated with this guest capturing purchase history
sessions array Behavioral sessions recorded for this guest capturing browsing and interaction events
createdAt string The ISO 8601 timestamp when the guest profile was created in CDP
modifiedAt string The ISO 8601 timestamp when the guest profile was last modified
View JSON Schema on GitHub

JSON Schema

sitecore-cdp-guest-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://sitecore.com/schemas/cdp/guest.json",
  "title": "Sitecore CDP Guest",
  "description": "Schema representing a guest profile in Sitecore Customer Data Platform. Guests are the core entity storing personal, behavioral, and transactional data used for personalization, segmentation, and reporting.",
  "type": "object",
  "required": [],
  "properties": {
    "guestRef": {
      "type": "string",
      "description": "The unique reference identifier for the guest, assigned by Sitecore CDP upon creation"
    },
    "email": {
      "type": "string",
      "description": "The email address of the guest, used as the primary identifier for identity resolution",
      "format": "email"
    },
    "firstName": {
      "type": "string",
      "description": "The guest's first name as stored in the CDP profile",
      "maxLength": 100
    },
    "lastName": {
      "type": "string",
      "description": "The guest's last name as stored in the CDP profile",
      "maxLength": 100
    },
    "dateOfBirth": {
      "type": "string",
      "description": "The guest's date of birth in ISO 8601 date format (YYYY-MM-DD)",
      "format": "date"
    },
    "gender": {
      "type": "string",
      "description": "The guest's gender identity",
      "enum": ["Male", "Female", "Other", "Unknown"]
    },
    "phoneNumbers": {
      "type": "array",
      "description": "Phone numbers associated with the guest profile",
      "items": {
        "type": "string",
        "description": "A phone number in E.164 or local format"
      }
    },
    "identifiers": {
      "type": "array",
      "description": "External identifiers that link this guest to source systems for identity resolution",
      "items": {
        "$ref": "#/$defs/GuestIdentifier"
      }
    },
    "dataExtensions": {
      "type": "object",
      "description": "Named sets of custom key-value pairs attached to the guest profile for storing additional structured information",
      "additionalProperties": {
        "$ref": "#/$defs/DataExtension"
      }
    },
    "orders": {
      "type": "array",
      "description": "Order records associated with this guest capturing purchase history",
      "items": {
        "$ref": "#/$defs/Order"
      }
    },
    "sessions": {
      "type": "array",
      "description": "Behavioral sessions recorded for this guest capturing browsing and interaction events",
      "items": {
        "$ref": "#/$defs/Session"
      }
    },
    "createdAt": {
      "type": "string",
      "description": "The ISO 8601 timestamp when the guest profile was created in CDP",
      "format": "date-time"
    },
    "modifiedAt": {
      "type": "string",
      "description": "The ISO 8601 timestamp when the guest profile was last modified",
      "format": "date-time"
    }
  },
  "$defs": {
    "GuestIdentifier": {
      "type": "object",
      "description": "An external identifier linking a guest to a specific source system or identity provider",
      "required": ["provider", "id"],
      "properties": {
        "provider": {
          "type": "string",
          "description": "The name of the identity provider or source system (e.g., email, phone, loyalty)"
        },
        "id": {
          "type": "string",
          "description": "The identifier value from the external system"
        },
        "expiryDate": {
          "type": "string",
          "description": "The ISO 8601 timestamp after which this identifier is no longer valid",
          "format": "date-time"
        }
      }
    },
    "DataExtension": {
      "type": "object",
      "description": "A named set of custom key-value pairs attached to a guest or order record for storing additional structured information",
      "properties": {
        "name": {
          "type": "string",
          "description": "The name identifying this data extension, unique per guest"
        },
        "key": {
          "type": "string",
          "description": "The key for a specific field within the data extension"
        },
        "value": {
          "type": "string",
          "description": "The string value associated with the key in this data extension"
        }
      }
    },
    "Order": {
      "type": "object",
      "description": "A purchase transaction record associated with a guest profile",
      "required": ["referenceId", "orderedAt"],
      "properties": {
        "orderRef": {
          "type": "string",
          "description": "The unique reference identifier assigned by CDP for this order"
        },
        "referenceId": {
          "type": "string",
          "description": "The external order reference identifier from the commerce platform. Immutable after creation."
        },
        "status": {
          "type": "string",
          "description": "The current fulfillment status of the order",
          "enum": ["PENDING", "CONFIRMED", "SHIPPED", "DELIVERED", "CANCELED"]
        },
        "currencyCode": {
          "type": "string",
          "description": "The ISO 4217 currency code for order monetary values",
          "pattern": "^[A-Z]{3}$",
          "example": "USD"
        },
        "totalPrice": {
          "type": "number",
          "description": "The total price of the order including taxes and shipping",
          "minimum": 0
        },
        "orderedAt": {
          "type": "string",
          "description": "The ISO 8601 timestamp when the order was placed. Immutable after creation.",
          "format": "date-time"
        },
        "createdAt": {
          "type": "string",
          "description": "The ISO 8601 timestamp when the order record was created in CDP",
          "format": "date-time"
        },
        "items": {
          "type": "array",
          "description": "The product line items included in this order",
          "items": {
            "$ref": "#/$defs/OrderItem"
          }
        }
      }
    },
    "OrderItem": {
      "type": "object",
      "description": "A product line item within a guest order",
      "required": ["sku", "quantity"],
      "properties": {
        "itemRef": {
          "type": "string",
          "description": "The unique reference identifier for this order item in CDP"
        },
        "sku": {
          "type": "string",
          "description": "The product stock keeping unit (SKU) or identifier"
        },
        "name": {
          "type": "string",
          "description": "The display name of the product at time of purchase"
        },
        "quantity": {
          "type": "integer",
          "description": "The quantity of the product purchased in this line item",
          "minimum": 1
        },
        "price": {
          "type": "number",
          "description": "The unit price of the product at time of purchase",
          "minimum": 0
        },
        "totalPrice": {
          "type": "number",
          "description": "The total price for this line item (unit price multiplied by quantity)",
          "minimum": 0
        }
      }
    },
    "Session": {
      "type": "object",
      "description": "A behavioral session capturing a guest's activity within a visit to the application",
      "properties": {
        "sessionRef": {
          "type": "string",
          "description": "The unique reference identifier for this session in CDP"
        },
        "channel": {
          "type": "string",
          "description": "The channel through which the session was recorded",
          "enum": ["WEB", "MOBILE_WEB", "MOBILE_APP", "SERVER_SIDE"]
        },
        "status": {
          "type": "string",
          "description": "The current status of the session",
          "enum": ["OPEN", "CLOSED"]
        },
        "startedAt": {
          "type": "string",
          "description": "The ISO 8601 timestamp when the session started",
          "format": "date-time"
        },
        "endedAt": {
          "type": "string",
          "description": "The ISO 8601 timestamp when the session ended",
          "format": "date-time"
        },
        "events": {
          "type": "array",
          "description": "Behavioral events captured during this session",
          "items": {
            "$ref": "#/$defs/StreamEvent"
          }
        }
      }
    },
    "StreamEvent": {
      "type": "object",
      "description": "A behavioral event captured from the Sitecore CDP Stream API within a guest session",
      "required": ["type", "channel"],
      "properties": {
        "meta_ref": {
          "type": "string",
          "description": "The unique identifier for this event record in CDP"
        },
        "type": {
          "type": "string",
          "description": "The type of behavioral event",
          "enum": ["VIEW", "IDENTITY", "ORDER_CHECKOUT", "ADD", "CONFIRM", "CHECKOUT", "PAYMENT", "CLEAR_CART", "SEARCH", "TRACKING"]
        },
        "channel": {
          "type": "string",
          "description": "The channel from which the event was received",
          "enum": ["WEB", "MOBILE_WEB", "MOBILE_APP", "SERVER_SIDE"]
        },
        "currency": {
          "type": "string",
          "description": "The ISO 4217 currency code for monetary values in this event",
          "pattern": "^[A-Z]{3}$"
        },
        "page": {
          "type": "string",
          "description": "The URL of the page where the event occurred",
          "format": "uri"
        },
        "createdAt": {
          "type": "string",
          "description": "The ISO 8601 timestamp when the event was recorded in CDP",
          "format": "date-time"
        },
        "ext": {
          "type": "object",
          "description": "Custom extension data attached to the event. One extension per event type.",
          "additionalProperties": true
        }
      }
    }
  }
}