Sessions

Authenticated session minting for private experiences.

POST /v1/sessions

Mint a Session Manifest using a developer API key. Server-to-server only.

Request

POST https://api.liforma.ai/v1/sessions
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

{
  "experienceId": "exp_01DEMO1SPANISHCAFE",
  "userId": "user_123",
  "integration": {
    "returnUrl": "/dashboard"
  },
  "closeButton": {
    "visible": true,
    "position": "top-right"
  }
}

Response 200

Session Manifest JSON. Same shape as public sessions.

Authentication

Authorization: Bearer <developer_api_key>. Never expose API keys to the browser.

Parameters

FieldRequiredDescription
experienceIdYesExperience to launch
userIdNoYour user's ID for per-user context and billing
integrationNoReturn URL and close navigation
closeButtonNoClose button visibility and style

Example

curl -X POST https://api.liforma.ai/v1/sessions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"experienceId": "exp_01DEMO1SPANISHCAFE"}'