> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orbit.devotel.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Resolve personalized slot content

> Returns the best-matching content variant for a named on-page slot, shaped to the current visitor's segment. Called from the Orbit Web SDK with the tenant's PUBLIC API key. Orbit resolves the visitor (by phone, email, or anonymous id) to their segment, then picks the highest-priority active variant for the slot that matches that segment, falling back to the segment-less default. Responses are privately cacheable for 60 seconds.



## OpenAPI

````yaml /openapi.yaml get /sdk/personalize
openapi: 3.1.0
info:
  title: Devotel CPaaS API
  description: Orbit by Devotel — Communications Platform as a Service API
  version: 1.0.0
  contact:
    name: Devotel
    url: https://devotel.io
    email: support@devotel.io
  license:
    name: Proprietary
servers:
  - url: https://api.orbit.devotel.io
    description: Production
security:
  - Bearer: []
  - ApiKey: []
tags:
  - name: Messages
    description: >-
      Send and manage messages across all channels (SMS, WhatsApp, RCS, Email,
      Viber, etc.)
  - name: Fax
    description: >-
      List and track fax (MMS/T.38) transmissions on Telnyx-backed fax numbers
      (sending flows through the Messaging API)
  - name: Agents
    description: AI agent creation, configuration, and execution
  - name: Voice
    description: Voice calls, IVR, conferencing, and SIP trunking
  - name: OnCall
    description: On-call rotations and escalation policy planning for incident alerting
  - name: Webhooks
    description: Webhook endpoint management and delivery logs
  - name: Numbers
    description: Phone number search, provisioning, and configuration
  - name: Brand Identity
    description: >-
      Unified cross-channel brand trust posture (10DLC, toll-free, WhatsApp,
      RCS, branded calling, number KYC)
  - name: Contacts
    description: Contact management, segmentation, and lifecycle tracking
  - name: Campaigns
    description: Marketing campaign orchestration and analytics
  - name: Flows
    description: Automation flow builder and execution engine
  - name: Templates
    description: Message template management and approval workflows
  - name: Settings
    description: Organization, channel, and user preference settings
  - name: Verify
    description: OTP generation and verification across channels
  - name: Push
    description: Push notification delivery via FCM and APNs
  - name: Integrations
    description: Third-party service connections and OAuth management
  - name: CDP
    description: >-
      Customer Data Platform — activation surface (CRM object sync, streaming
      destinations, ad-audience activation)
  - name: Files
    description: >-
      Server-to-server media upload, listing, retrieval, and deletion
      (signed-URL backed)
  - name: Commerce
    description: >-
      Omnichannel conversational-commerce — persistent cart + checkout state
      machine, channel-agnostic hosted pay-by-link, native WhatsApp checkout,
      and AP2-style agent payment mandates.
  - name: Sync
    description: >-
      Real-time shared-state primitive (Twilio Sync parity) — Documents, Maps,
      Lists, and ephemeral Streams, with change events relayed over the
      /api/v1/ws/sync WebSocket gateway
  - name: Risk
    description: >-
      Unified cross-channel Trust & Fraud risk scoring — fuses SMS-pumping,
      URL-reputation, Verify Fraud Guard, and Voice Biometrics signals into one
      composite verdict queryable before a send or a call.
  - name: Orby
    description: >-
      In-dashboard Orby operator assistant: streamed assistant turns,
      conversation threads, product knowledge-base search, and the tool-action
      approval gate. Available to signed-in operators only (dashboard session
      auth — API-key requests are rejected).
paths:
  /sdk/personalize:
    get:
      summary: Resolve personalized slot content
      description: >-
        Returns the best-matching content variant for a named on-page slot,
        shaped to the current visitor's segment. Called from the Orbit Web SDK
        with the tenant's PUBLIC API key. Orbit resolves the visitor (by phone,
        email, or anonymous id) to their segment, then picks the
        highest-priority active variant for the slot that matches that segment,
        falling back to the segment-less default. Responses are privately
        cacheable for 60 seconds.
      parameters:
        - schema:
            type: string
          in: header
          name: x-api-key
          required: true
          description: The tenant public API key with the pk_ prefix.
        - schema:
            type: string
          in: query
          name: slot
          required: true
          description: The slot identifier to resolve content for.
        - schema:
            type: string
          in: query
          name: anonymous_id
          required: false
          description: The visitor anonymous id, used to resolve their segment.
        - schema:
            type: string
          in: query
          name: phone
          required: false
          description: Known visitor phone, used to resolve their segment.
        - schema:
            type: string
          in: query
          name: email
          required: false
          description: Known visitor email, used to resolve their segment.
      responses:
        '200':
          description: >-
            The resolved slot content for the visitor's segment (empty content
            when no variant matches).
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      slot:
                        type: string
                      segment:
                        type: string
                        nullable: true
                      content:
                        type: string
                      cta_url:
                        type: string
                        nullable: true
                      cta_text:
                        type: string
                        nullable: true
                      variant:
                        type: string
                        nullable: true
                  meta:
                    type: object
              example:
                data:
                  slot: hero_banner
                  segment: high_intent
                  content: Ready to upgrade? Start your Pro trial today.
                  cta_url: https://example.com/upgrade
                  cta_text: Start free trial
                  variant: variant_a
                meta:
                  request_id: req_1a2b3c4d
                  timestamp: '2026-08-09T12:00:00.000Z'
components:
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Dashboard JWT token from Clerk
    ApiKey:
      type: apiKey
      name: X-API-Key
      in: header
      description: Server-to-server API key (dv_live_sk_*)

````