sitecore Guests API

Endpoints for creating, retrieving, updating, and deleting guest profiles in Sitecore CDP. Guests represent the core customer entity storing personal, behavioral, and transactional data.

OpenAPI Specification

sitecore-guests-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Sitecore CDP REST Audit Guests API
  description: The Sitecore CDP REST API provides synchronous access to retrieve, create, update, and delete data stored in Sitecore Customer Data Platform. It exposes guest profiles, orders, order items, order contacts, order consumers, and data extensions through standard HTTP methods. Developers use this API to build integrations that read or write customer data programmatically, enabling use cases such as audience segmentation, data enrichment, and reporting. Authentication uses HTTP Basic Auth with a client key and API token obtained from the CDP instance settings. Regional server endpoints must be used based on the CDP instance's geographic deployment.
  version: v2.1
  contact:
    name: Sitecore Support
    url: https://www.sitecore.com/support
  termsOfService: https://www.sitecore.com/legal/terms-of-service
servers:
- url: https://api-engage-eu.sitecorecloud.io
  description: EU Production Server
- url: https://api-engage-us.sitecorecloud.io
  description: US Production Server
- url: https://api-engage-ap.sitecorecloud.io
  description: Asia-Pacific Production Server
- url: https://api-engage-jpe.sitecorecloud.io
  description: Japan Production Server
security:
- basicAuth: []
tags:
- name: Guests
  description: Endpoints for creating, retrieving, updating, and deleting guest profiles in Sitecore CDP. Guests represent the core customer entity storing personal, behavioral, and transactional data.
paths:
  /v2.1/guests:
    get:
      operationId: listGuests
      summary: List guests
      description: Retrieves a paginated list of guest profiles from Sitecore CDP. Returns up to 100 guests per request. Use the offset and limit parameters to paginate through results. Supports filtering by email or other identifiers using query parameters.
      tags:
      - Guests
      parameters:
      - name: email
        in: query
        description: Filter guests by email address
        required: false
        schema:
          type: string
          format: email
      - name: limit
        in: query
        description: Maximum number of guests to return (max 100)
        required: false
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 10
      - name: offset
        in: query
        description: Number of records to skip for pagination
        required: false
        schema:
          type: integer
          minimum: 0
          default: 0
      responses:
        '200':
          description: A list of guest profiles
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GuestListResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createGuest
      summary: Create a guest
      description: Creates a new guest profile in Sitecore CDP. The guest record stores identity and behavioral data used for personalization and segmentation. An email address or other identifying attributes should be provided to enable identity resolution.
      tags:
      - Guests
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateGuestRequest'
      responses:
        '201':
          description: Guest created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Guest'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /v2.1/guests/{guestRef}:
    get:
      operationId: getGuest
      summary: Get a guest
      description: Retrieves a specific guest profile by its unique reference identifier. Returns the full guest object including all stored personal and behavioral attributes.
      tags:
      - Guests
      parameters:
      - $ref: '#/components/parameters/guestRef'
      responses:
        '200':
          description: Guest profile details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Guest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateGuest
      summary: Update a guest (full)
      description: Performs a full replacement update of a guest profile. All fields in the guest object are replaced with the values provided in the request body. Fields not included in the request will be cleared.
      tags:
      - Guests
      parameters:
      - $ref: '#/components/parameters/guestRef'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateGuestRequest'
      responses:
        '200':
          description: Guest updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Guest'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    patch:
      operationId: patchGuest
      summary: Update a guest (partial)
      description: Performs a partial update of a guest profile. Only the fields provided in the request body are updated; all other fields retain their current values. Use this operation when updating a subset of guest attributes.
      tags:
      - Guests
      parameters:
      - $ref: '#/components/parameters/guestRef'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateGuestRequest'
      responses:
        '200':
          description: Guest partially updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Guest'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteGuest
      summary: Delete a guest
      description: Permanently and irreversibly deletes a guest profile and all associated data from Sitecore CDP. This operation cannot be undone. All orders, sessions, and data extensions linked to the guest are also removed.
      tags:
      - Guests
      parameters:
      - $ref: '#/components/parameters/guestRef'
      responses:
        '204':
          description: Guest deleted successfully
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  parameters:
    guestRef:
      name: guestRef
      in: path
      description: The unique reference identifier for the guest profile
      required: true
      schema:
        type: string
  responses:
    Unauthorized:
      description: Authentication credentials are missing or invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    BadRequest:
      description: The request body or parameters are invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: The requested resource was not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  schemas:
    GuestListResponse:
      type: object
      description: A paginated response containing a list of guest profiles
      properties:
        items:
          type: array
          description: The list of guests for the current page
          items:
            $ref: '#/components/schemas/Guest'
        totalCount:
          type: integer
          description: The total number of guests matching the query
        limit:
          type: integer
          description: The maximum number of items per page
        offset:
          type: integer
          description: The offset used for this page of results
    ErrorResponse:
      type: object
      description: An error response body
      properties:
        message:
          type: string
          description: A human-readable error message
        statusCode:
          type: integer
          description: The HTTP status code
        errors:
          type: array
          description: List of detailed error messages
          items:
            type: string
    GuestIdentifier:
      type: object
      description: An external identifier that links a guest to an external system
      properties:
        provider:
          type: string
          description: The name of the identity provider or source system
        id:
          type: string
          description: The identifier value from the external system
        expiryDate:
          type: string
          description: The expiry date of this identifier
          format: date-time
    CreateGuestRequest:
      type: object
      description: Request body for creating or updating a guest profile
      properties:
        email:
          type: string
          description: The email address of the guest
          format: email
        firstName:
          type: string
          description: The guest's first name
        lastName:
          type: string
          description: The guest's last name
        dateOfBirth:
          type: string
          description: The guest's date of birth in ISO 8601 format
          format: date
        gender:
          type: string
          description: The guest's gender
          enum:
          - Male
          - Female
          - Other
          - Unknown
        phoneNumbers:
          type: array
          description: Phone numbers associated with the guest
          items:
            type: string
    Guest:
      type: object
      description: The core entity of Sitecore CDP representing a customer with personal, behavioral, and transactional data used for personalization and segmentation
      properties:
        guestRef:
          type: string
          description: The unique reference identifier for the guest
        email:
          type: string
          description: The email address of the guest
          format: email
        firstName:
          type: string
          description: The guest's first name
        lastName:
          type: string
          description: The guest's last name
        dateOfBirth:
          type: string
          description: The guest's date of birth in ISO 8601 format
          format: date
        gender:
          type: string
          description: The guest's gender
          enum:
          - Male
          - Female
          - Other
          - Unknown
        phoneNumbers:
          type: array
          description: Phone numbers associated with the guest
          items:
            type: string
        createdAt:
          type: string
          description: The ISO 8601 timestamp when the guest was created
          format: date-time
        modifiedAt:
          type: string
          description: The ISO 8601 timestamp when the guest was last modified
          format: date-time
        identifiers:
          type: array
          description: External identifiers linked to this guest for identity resolution
          items:
            $ref: '#/components/schemas/GuestIdentifier'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic authentication using a client key as the username and an API token as the password. Credentials are obtained from Sitecore CDP Settings > API access.
externalDocs:
  description: Sitecore CDP REST API Documentation
  url: https://doc.sitecore.com/cdp/en/developers/api/rest-apis.html