Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.kaireonai.com/llms.txt

Use this file to discover all available pages before exploring further.

GET /api/v1/customers//unified-profile

Returns a comprehensive profile for a customer, aggregating data from multiple sources into named sections. Supports selective section loading for performance.

Path Parameters

ParameterTypeDescription
customerIdstringCustomer identifier

Query Parameters

ParameterTypeRequiredDescription
formatstringNoSet to structured to return the new structured profile format with demographics, interactions, clv, metrics, and suppressions sections. If omitted, the legacy section-based format is used.
sectionsstringNoComma-separated list of sections to include (legacy format only). If omitted, all sections are returned.

Available Sections

SectionDescription
identitiesIdentity links (email, phone, device IDs) with confidence scores
interactionsRecent interaction history (last 20 events)
segmentsCustomer segment memberships
journeysActive and completed journey enrollments
experimentsExperiment variant assignments
consentConsent and preference records

Example

# Full profile (legacy section-based format)
curl https://playground.kaireonai.com/api/v1/customers/CUST001/unified-profile \
  -H "X-Tenant-Id: my-tenant"

# Selective sections (legacy format)
curl "https://playground.kaireonai.com/api/v1/customers/CUST001/unified-profile?sections=identities,interactions" \
  -H "X-Tenant-Id: my-tenant"

# Structured format
curl "https://playground.kaireonai.com/api/v1/customers/CUST001/unified-profile?format=structured" \
  -H "X-Tenant-Id: my-tenant"

Response

{
  "customerId": "CUST001",
  "tenantId": "my-tenant",
  "sections": [
    {
      "name": "identities",
      "data": [
        { "type": "email", "value": "john@example.com", "confidence": 1.0 },
        { "type": "phone", "value": "+1234567890", "confidence": 0.95 }
      ]
    },
    {
      "name": "interactions",
      "data": [
        {
          "id": "ih_001",
          "offerId": "off_001",
          "channelId": "ch_001",
          "interactionType": "impression",
          "timestamp": "2026-03-28T10:30:00Z"
        }
      ]
    },
    {
      "name": "segments",
      "data": [
        { "segmentId": "seg_001", "segmentName": "High Value", "memberSince": "2026-01-15T00:00:00Z" }
      ]
    }
  ],
  "computedAt": "2026-03-30T12:00:00.000Z"
}

Extension Point

Custom profile sections can be registered server-side via the profile-section extension API. This allows plugins and extensions to contribute additional data to the unified profile.

Roles

admin, editor, viewer See also: Customers | Identity | Profiles