{
"error": "avatar_unusable",
"message": "Avatar avatar-1 has no engine key and cannot be used in a session. Choose a usable avatar, or create a replacement with imageUrl, then update your session configuration or saved persona to use its avatarId. The unusable avatar can be deleted once nothing references it.",
"avatarId": "avatar-1"
}
{
"error": "billing_payment_required",
"message": "Your organization has an overdue payment. An owner can restore access from Billing.",
"recovery_url": "https://lab.anam.ai/subscription?billing=overdue"
}
{
"error": "session_region_not_available",
"message": "Session region selection is not available for this organization"
}
{
"error": "tools_not_found",
"message": "Tools not found: f56eba79-5403-40e0-9b09-6ae6c4757e21. Remove them from personaConfig.toolIds, or use the IDs of tools that exist in your organization.",
"toolIds": [
"f56eba79-5403-40e0-9b09-6ae6c4757e21"
]
}
Two authentication modes are supported via the Authorization: Bearer header:
Session token (browser clients): pass a session token minted by POST /v1/auth/session-token.
The session configuration was bound to the token when it was created, so the body only carries
optional clientMetadata. This is the flow the client-side SDKs use; you normally don’t call
this endpoint yourself.
API key (server-side SDKs): pass your API key directly and supply the session configuration
in the request body — the same shape as the /v1/auth/session-token body (personaConfig,
environment, sessionOptions, plus optional clientLabel and clientMetadata; expiresInSeconds,
maxSessions and widgetConfig do not apply). This skips the session-token exchange. Only use this from a
secure server-side context — never expose an API key in a browser.
{
"error": "avatar_unusable",
"message": "Avatar avatar-1 has no engine key and cannot be used in a session. Choose a usable avatar, or create a replacement with imageUrl, then update your session configuration or saved persona to use its avatarId. The unusable avatar can be deleted once nothing references it.",
"avatarId": "avatar-1"
}
{
"error": "billing_payment_required",
"message": "Your organization has an overdue payment. An owner can restore access from Billing.",
"recovery_url": "https://lab.anam.ai/subscription?billing=overdue"
}
{
"error": "session_region_not_available",
"message": "Session region selection is not available for this organization"
}
{
"error": "tools_not_found",
"message": "Tools not found: f56eba79-5403-40e0-9b09-6ae6c4757e21. Remove them from personaConfig.toolIds, or use the IDs of tools that exist in your organization.",
"toolIds": [
"f56eba79-5403-40e0-9b09-6ae6c4757e21"
]
}
Session persona configuration (API-key auth only). Same shape as the
/v1/auth/session-token request: supply personaId for a persona you've already
created, or avatarId/voiceId/llmId/systemPrompt for an ephemeral persona.
An avatar-only config (avatarId without voiceId and without
enableAudioPassthrough: true) is only accepted together with a LiveKit,
Agora or ElevenLabs Agent integration environment; on the default Anam
WebRTC transport send an ephemeral config with voiceId and llmId (llmId
"CUSTOMER_CLIENT_V1" for a client-side LLM) or set
enableAudioPassthrough to true. Otherwise the request fails
with 400 avatar_only_requires_integration.
Knowledge tools accept optional fixed topK (integer 1–100), minScore
(number 0–1), maxContextTokens (integer 1–200,000; content only) and
neighborChunks (integer 0–10, default 0) on each tool. Omit or set null to retain defaults. Invalid values return 400.
Inline tools are supported; each client/webhook tool's parameters (and webhook
queryParameters) JSON Schema must serialize to 10,000 bytes or less (UTF-8).
voiceGenerationOptions.pronunciationDictionaryId selects a pronunciation
dictionary for the session (see SessionPronunciationDictionary); its latest
saved entries are applied when the session starts.
Optional session options for API-key-authenticated session creation, including data retention (recording and transcripts), video quality/dimensions, AI avatar disclosure, egress, and engine-region routing. For session-token authentication, configure these options when creating the token.
Actual region that served the session. Omitted when the serving session-service does not report it.
Available options:
eu,
us
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Anam","colors":{"primary":"#ff6200","light":"#ff6200","dark":"#ff6200"},"logo":{"light":"https://mintcdn.com/anam/C1_yhmh0z2cLMID5/logo/anam-logo-black.png?fit=max\u0026auto=format\u0026n=C1_yhmh0z2cLMID5\u0026q=85\u0026s=df3c7456becff3adcf00bdee3d8b24e6","dark":"https://mintcdn.com/anam/C1_yhmh0z2cLMID5/logo/anam-logo-white.png?fit=max\u0026auto=format\u0026n=C1_yhmh0z2cLMID5\u0026q=85\u0026s=005acf7e494d6373e42ecea78ed414c6","href":"https://anam.ai"},"favicon":"https://mintcdn.com/anam/gnLapnNwnB6mzSvX/images/FaviconDarkBorderRadius.png?fit=max\u0026auto=format\u0026n=gnLapnNwnB6mzSvX\u0026q=85\u0026s=4f13a1002d44bd8912121e6d0f106116","appearance":{"default":"light"},"background":{"color":{"light":"#FFFFFF","dark":"#000000"}},"navbar":{"links":[{"href":"https://anam.ai/cookbook","label":"Cookbook"},{"href":"https://anam.ai/docs/llms-full.txt","label":"llms.txt"},{"href":"https://join.slack.com/t/anamcommunity/shared_invite/zt-4an41luvk-UH4UowegfQQR3rQbR_UHuQ","label":"Support"}],"primary":{"type":"button","label":"Sign In","href":"https://lab.anam.ai"}},"seo":{"metatags":{"og:site_name":"Anam Documentation","og:description":"Anam developer documentation. Build real-time interactive AI avatars with low-latency voice, custom personas, and multi-language support.","og:image":"/logo/anam-logo-white.png","og:logo":"/logo/anam-logo-white.png","twitter:image":"/logo/anam-logo-white.png","twitter:logo":"/logo/anam-logo-white.png"},"indexing":"navigable"},"fonts":{"heading":{"family":"Inter"},"body":{"family":"Inter"}},"styling":{"eyebrows":"breadcrumbs","codeblocks":"system","latex":false},"integrations":{"cookies":{"key":"anam_mintlify_consent","value":"granted"}},"contextual":{"options":["assistant","copy","view","claude","chatgpt"],"display":"header"},"metadata":{"timestamp":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"anam","hasAudioNarration":false,"actualSubdomain":"anam","customDomains":["anam.ai"],"gitSource":{"type":"github","owner":"anam-org","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aec94f4754501e0c6b6422b","collectionId":"9ca140ce-08c8-4c65-95a5-761bd45fb6d2","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aec94f4754501e0c6b6422b"},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aee4ff60f2546a8f021f333","clientVersion":"0.0.4076","searchFilterCounts":[{"language":"default","tag":"API Reference","count":76},{"language":"default","tag":"Overview","count":45},{"language":"default","tag":"Personas","count":37},{"language":"default","tag":"Knowledge","count":20},{"language":"default","tag":"JavaScript SDK","count":16},{"language":"default","tag":"Voices","count":14},{"language":"default","tag":"Integrations","count":12},{"language":"default","tag":"ElevenLabs Agents","count":12},{"language":"default","tag":"Sessions","count":12},{"language":"default","tag":"Embed","count":10}]},"assistantConfig":{},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".dark a[href=\"https://lab.anam.ai\"],.dark a[href=\"https://lab.anam.ai\"] *{color:#ffffff!important}.dark img[src$=\"/integrations/livekit.svg\"],.dark img[src$=\"/integrations/elevenlabs.svg\"]{filter:invert(1)}a.demo-source-link{display:inline-flex;min-height:44px;max-width:100%;align-items:center;justify-content:center;gap:10px;padding:10px 16px;border:1px solid #d4d4d4;border-radius:8px;background:#ffffff;color:#171717;font-size:14px;font-weight:500;line-height:1.5;text-decoration:none}.demo-source-link>span:first-child{display:flex;flex:none}.demo-source-link svg{background-color:currentColor}a.demo-source-link:hover{background:#f5f5f5;border-color:#a3a3a3}a.demo-source-link:active{background:#e5e5e5}a.demo-source-link:focus-visible{outline:2px solid #ff6200;outline-offset:3px}.dark a.demo-source-link{border-color:#525252;background:#171717;color:#f5f5f5}.dark a.demo-source-link:hover{border-color:#737373;background:#262626}.dark a.demo-source-link:active{background:#404040}.prebuilt-prompt{position:relative;display:grid;grid-template-columns:9.5rem 10.5rem minmax(0, 1fr);justify-content:start;align-items:center;gap:16px 12px;margin:1.75rem 0 2rem;padding:20px;border:1px solid #e5e5e5;border-radius:12px;background:#fafafa}.mdx-content>.prebuilt-prompt:first-child{margin-top:0}.prebuilt-prompt-copy{grid-column:1 / -1;min-width:0}.prebuilt-prompt-title{margin:0;color:#171717;font-size:16px;font-weight:600;letter-spacing:-0.01em;line-height:1.5}.prebuilt-prompt-description{margin:6px 0 0;color:#525252;font-size:14px;line-height:1.5}.prebuilt-prompt-button{display:inline-flex;width:9.5rem;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border:1px solid transparent;border-radius:8px;background:#171717;color:#ffffff;font:inherit;font-size:14px;font-weight:500;line-height:1.5;white-space:nowrap;cursor:pointer}.prebuilt-prompt-button:hover{background:#404040}.prebuilt-prompt-button:active{background:#525252}.prebuilt-prompt-button:focus-visible{outline:2px solid #ff6200;outline-offset:3px}.prebuilt-prompt-button[aria-disabled=\"true\"]{cursor:progress}.prebuilt-prompt-button svg{flex:none}.prebuilt-prompt-icon-check,.prebuilt-prompt-icon-error,.prebuilt-prompt-button[data-copy-state=\"copied\"] .prebuilt-prompt-icon-copy,.prebuilt-prompt-button[data-copy-state=\"error\"] .prebuilt-prompt-icon-copy{display:none}.prebuilt-prompt-button[data-copy-state=\"copied\"] .prebuilt-prompt-icon-check,.prebuilt-prompt-button[data-copy-state=\"error\"] .prebuilt-prompt-icon-error{display:initial}.prebuilt-prompt-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.dark .prebuilt-prompt{border-color:#404040;background:#171717}.dark .prebuilt-prompt-title{color:#f5f5f5}.dark .prebuilt-prompt-description{color:#bfbfbf}.dark .prebuilt-prompt-button{background:#f5f5f5;color:#171717}.dark .prebuilt-prompt-button:hover{background:#d4d4d4}.dark .prebuilt-prompt-button:active{background:#bfbfbf}@media (max-width: 480px){.prebuilt-prompt{grid-template-columns:minmax(0, 1fr);justify-content:stretch;gap:12px}.prebuilt-prompt-copy{margin-bottom:4px}.prebuilt-prompt-button{width:100%}}"},{"filePath":"anam-consent.css","content":".anam-cookie-banner{position:fixed;right:1rem;bottom:1rem;z-index:2147483647;width:min(24rem, calc(100vw - 2rem));padding:1rem;font-family:inherit;color:#111827;background:#ffffff;border:1px solid #e5e7eb;border-radius:0.75rem;box-shadow:0 0.625rem 0.9375rem -0.1875rem rgb(0 0 0 / 10%),\n 0 0.25rem 0.375rem -0.25rem rgb(0 0 0 / 10%)}.anam-cookie-banner[hidden]{display:none}.anam-cookie-banner h2{margin:0 0 0.25rem;font-size:0.8125rem;font-weight:600;line-height:1.125rem}.anam-cookie-banner p{margin:0;color:#6b7280;font-size:0.8125rem;line-height:1.125rem}.anam-cookie-banner a{color:#111827;text-underline-offset:0.2rem}.anam-cookie-actions{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.5rem;margin-top:1rem}.anam-cookie-actions button{height:2rem;min-width:0;padding:0 1rem;font-family:inherit;font-size:0.8125rem;font-weight:400;line-height:1.125rem;cursor:pointer;border-radius:0.5rem}.anam-cookie-primary{color:#111827;background:#ff6200;border:1px solid #ff6200}.anam-cookie-secondary{color:#111827;background:transparent;border:1px solid #d1d5db}.anam-cookie-primary:hover{background:#e55800;border-color:#e55800}.anam-cookie-secondary:hover{background:#f3f4f6}.anam-cookie-actions button:focus-visible{outline:2px solid #ff6200;outline-offset:2px}"}],"page":{"pagePath":"api-reference/engine/create-engine-session","slug":"/api-reference/engine/create-engine-session","pageMetadata":{"title":"create engine session","description":"Start a live persona session.\n\nTwo authentication modes are supported via the `Authorization: Bearer` header:\n\n- **Session token** (browser clients): pass a session token minted by `POST /v1/auth/session-token`.\n The session configuration was bound to the token when it was created, so the body only carries\n optional `clientMetadata`. This is the flow the client-side SDKs use; you normally don't call\n this endpoint yourself.\n- **API key** (server-side SDKs): pass your API key directly and supply the session configuration\n in the request body — the same shape as the `/v1/auth/session-token` body (`personaConfig`,\n `environment`, `sessionOptions`, plus optional `clientLabel` and `clientMetadata`; `expiresInSeconds`,\n `maxSessions` and `widgetConfig` do not apply). This skips the session-token exchange. Only use this from a\n secure server-side context — never expose an API key in a browser.\n","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/engine/session","href":"/api-reference/engine/create-engine-session","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n li: \"li\",\n p: \"p\",\n strong: \"strong\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Start a live persona session.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Two authentication modes are supported via the \", _jsx(_components.code, {\n children: \"Authorization: Bearer\"\n }), \" header:\"]\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.strong, {\n children: \"Session token\"\n }), \" (browser clients): pass a session token minted by \", _jsx(_components.code, {\n children: \"POST /v1/auth/session-token\"\n }), \".\\nThe session configuration was bound to the token when it was created, so the body only carries\\noptional \", _jsx(_components.code, {\n children: \"clientMetadata\"\n }), \". This is the flow the client-side SDKs use; you normally don’t call\\nthis endpoint yourself.\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.strong, {\n children: \"API key\"\n }), \" (server-side SDKs): pass your API key directly and supply the session configuration\\nin the request body — the same shape as the \", _jsx(_components.code, {\n children: \"/v1/auth/session-token\"\n }), \" body (\", _jsx(_components.code, {\n children: \"personaConfig\"\n }), \",\\n\", _jsx(_components.code, {\n children: \"environment\"\n }), \", \", _jsx(_components.code, {\n children: \"sessionOptions\"\n }), \", plus optional \", _jsx(_components.code, {\n children: \"clientLabel\"\n }), \" and \", _jsx(_components.code, {\n children: \"clientMetadata\"\n }), \"; \", _jsx(_components.code, {\n children: \"expiresInSeconds\"\n }), \",\\n\", _jsx(_components.code, {\n children: \"maxSessions\"\n }), \" and \", _jsx(_components.code, {\n children: \"widgetConfig\"\n }), \" do not apply). This skips the session-token exchange. Only use this from a\\nsecure server-side context — never expose an API key in a browser.\"]\n }), \"\\n\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"codeStyling":"system","config":{},"pageMetadata":{"title":"create engine session","description":"Start a live persona session.\n\nTwo authentication modes are supported via the `Authorization: Bearer` header:\n\n- **Session token** (browser clients): pass a session token minted by `POST /v1/auth/session-token`.\n The session configuration was bound to the token when it was created, so the body only carries\n optional `clientMetadata`. This is the flow the client-side SDKs use; you normally don't call\n this endpoint yourself.\n- **API key** (server-side SDKs): pass your API key directly and supply the session configuration\n in the request body — the same shape as the `/v1/auth/session-token` body (`personaConfig`,\n `environment`, `sessionOptions`, plus optional `clientLabel` and `clientMetadata`; `expiresInSeconds`,\n `maxSessions` and `widgetConfig` do not apply). This skips the session-token exchange. Only use this from a\n secure server-side context — never expose an API key in a browser.\n","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/engine/session","href":"/api-reference/engine/create-engine-session","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/anam/b2d95394aafe5d57/anam-attribution.js","/docs/_mintlify/custom/anam/e3b0c44298fc1c14/breadcrumbs.js","/docs/_mintlify/custom/anam/09f69e41a6d2a118/scripts/sync-api-reference.js","/docs/_mintlify/custom/anam/8eee8d5d8d0dc77a/anam-consent.js","/docs/_mintlify/custom/anam/1df9efd6c260b783/integration-menu-preload.js"],"openApiReferenceData":{"operation":{"description":"Start a live persona session.\n\nTwo authentication modes are supported via the `Authorization: Bearer` header:\n\n- **Session token** (browser clients): pass a session token minted by `POST /v1/auth/session-token`.\n The session configuration was bound to the token when it was created, so the body only carries\n optional `clientMetadata`. This is the flow the client-side SDKs use; you normally don't call\n this endpoint yourself.\n- **API key** (server-side SDKs): pass your API key directly and supply the session configuration\n in the request body — the same shape as the `/v1/auth/session-token` body (`personaConfig`,\n `environment`, `sessionOptions`, plus optional `clientLabel` and `clientMetadata`; `expiresInSeconds`,\n `maxSessions` and `widgetConfig` do not apply). This skips the session-token exchange. Only use this from a\n secure server-side context — never expose an API key in a browser.\n","requestBody":"ba113591-6341-47e7-bc8c-82c92de149a5","responses":{"200":"ff784ae4-a78d-484d-9e62-c896f9c27e6f","400":"a1414f2a-c343-4b44-a247-fd54b09ed277","401":"2112f86d-d207-439a-87cf-56c0050cae09","402":"64270c48-44f5-4bc4-b7f6-925312f23403","403":"4b2046e0-9162-4f34-bd09-2a0bad736664","404":"f0a95ff8-d2cc-48c7-b09b-66caf7ccb499","409":"599f09b0-3955-49e8-9ca9-3ca6f48727fa","429":"666487bd-e210-478b-8872-c74b39fe2ef7","503":"01b790d3-1b97-4d5c-8e86-bbf9c3b736b3"},"tags":["Engine"],"operationId":"createEngineSession","summary":"create engine session","x-mint":{"metadata":{"title":"create engine session"},"mcp":{"enabled":true,"name":"create-engine-session","description":"Start a live persona session.\n\nTwo authentication modes are supported via the `Authorization: Bearer` header:\n\n- **Session token** (browser clients): pass a session token minted by `POST /v1/auth/session-token`.\n The session configuration was bound to the token when it was created, so the body only carries\n optional `clientMetadata`. This is the flow the client-side SDKs use; you normally don't call\n this endpoint yourself.\n- **API key** (server-side SDKs): pass your API key directly and supply the session configuration\n in the request body — the same shape as the `/v1/auth/session-token` body (`personaConfig`,\n `environment`, `sessionOptions`, plus optional `clientLabel` and `clientMetadata`; `expiresInSeconds`,\n `maxSessions` and `widgetConfig` do not apply). This skips the session-token exchange. Only use this from a\n secure server-side context — never expose an API key in a browser.\n"}},"method":"post","type":"path","servers":["802b7150-f38f-4f50-b5e3-fd4d474eaa80"],"security":["c363502f-e3a0-4cfc-9ffa-4107ca0bf5e1"],"path":"/v1/engine/session","baseUrlOptions":["https://api.anam.ai"],"title":"create engine session","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"clientLabel":{"type":"string","description":"Label for the session, recorded for usage attribution. API-key auth only.","uniqueKey":"clientLabel","typeLabel":"string"},"personaConfig":{"type":"object","description":"Session persona configuration (API-key auth only). Same shape as the\n`/v1/auth/session-token` request: supply `personaId` for a persona you've already\ncreated, or `avatarId`/`voiceId`/`llmId`/`systemPrompt` for an ephemeral persona.\nAn avatar-only config (avatarId without voiceId and without\nenableAudioPassthrough: true) is only accepted together with a LiveKit,\nAgora or ElevenLabs Agent integration `environment`; on the default Anam\nWebRTC transport send an ephemeral config with voiceId and llmId (llmId\n\"CUSTOMER_CLIENT_V1\" for a client-side LLM) or set\nenableAudioPassthrough to true. Otherwise the request fails\nwith 400 `avatar_only_requires_integration`.\nKnowledge tools accept optional fixed `topK` (integer 1–100), `minScore`\n(number 0–1), `maxContextTokens` (integer 1–200,000; content only) and\n`neighborChunks` (integer 0–10, default 0) on each tool. Omit or set null to retain defaults. Invalid values return 400.\nInline `tools` are supported; each client/webhook tool's `parameters` (and webhook\n`queryParameters`) JSON Schema must serialize to 10,000 bytes or less (UTF-8).\n`voiceGenerationOptions.pronunciationDictionaryId` selects a pronunciation\ndictionary for the session (see `SessionPronunciationDictionary`); its latest\nsaved entries are applied when the session starts.\n","uniqueKey":"personaConfig","typeLabel":"object"},"environment":{"type":"object","description":"Optional environment configuration (e.g. LiveKit settings). API-key auth only.","properties":{"livekitUrl":{"type":"string","description":"Must be reachable from the public internet; loopback, private, link-local, reserved, documentation, cluster-internal, and single-label targets are rejected with HTTP 400. Use an absolute URL with an ASCII hostname (punycode for international names), canonical dotted-decimal IPv4, and a port from 1 to 65535 if specified. Hostnames must resolve only to public addresses; DNS is checked when the session starts. Temporary DNS failures are service errors (5xx), not invalid URL errors.","uniqueKey":"environment.livekitUrl","typeLabel":"string"}},"uniqueKey":"environment","typeLabel":"object"},"sessionOptions":{"type":"object","description":"Optional session options for API-key-authenticated session creation, including data retention (recording and transcripts), video quality/dimensions, AI avatar disclosure, egress, and engine-region routing. For session-token authentication, configure these options when creating the token.","properties":{"sessionReplay":{"type":"object","deprecated":true,"description":"Legacy control for both the recording and the transcript. Use dataRetention instead. It can be sent alongside dataRetention: enableSessionReplay false turns both off, and so does an empty sessionReplay object; enableSessionReplay true leaves each to dataRetention.","properties":{"enableSessionReplay":{"type":"boolean","deprecated":true,"description":"Record the session and store its transcript. false turns off both, the same as dataRetention with recording and transcripts set to false. Under Zero Data Retention, sending true without dataRetention returns HTTP 400; with dataRetention sent, omitted settings are off and only a dataRetention setting of true that this flag (false, or an empty sessionReplay) does not turn off is rejected.","example":true,"default":true,"uniqueKey":"sessionOptions.sessionReplay.enableSessionReplay","typeLabel":"boolean"}},"uniqueKey":"sessionOptions.sessionReplay","typeLabel":"object"},"dataRetention":{"type":"object","additionalProperties":false,"description":"Choose what Anam keeps after the session. Each setting is independent, so you can turn off the recording and keep the transcript, or the other way round. A sessionReplay sent alongside it with enableSessionReplay false, or with no value, turns both off. Zero Data Retention sessions keep neither: an omitted setting is off, and a setting of true returns HTTP 400 unless sessionReplay turns both off. Not supported for LiveKit or Agora sessions (HTTP 400).","properties":{"recording":{"type":"boolean","description":"Record the session video. When false, GET /v1/sessions/{id}/recording returns 404. With sessionOptions.egress mode daily the recording must resolve to off: set this to false, or set enableSessionReplay to false or send an empty sessionReplay.","default":true,"example":false,"uniqueKey":"sessionOptions.dataRetention.recording","typeLabel":"boolean"},"transcripts":{"type":"boolean","description":"Store the conversation transcript. When false, GET /v1/sessions/{id}/transcript returns transcriptsEnabled false and each message reads TRANSCRIPTS_DISABLED.","default":true,"example":true,"uniqueKey":"sessionOptions.dataRetention.transcripts","typeLabel":"boolean"}},"uniqueKey":"sessionOptions.dataRetention","typeLabel":"object"},"videoQuality":{"type":"string","enum":["high","auto"],"description":"'high' pins highest bitrate, 'auto' enables adaptive bitrate.","example":"high","uniqueKey":"sessionOptions.videoQuality","typeLabel":"enum\u003cstring>"},"showAIAvatarDisclosure":{"type":"boolean","description":"Show the AI avatar disclosure during the session. Defaults to false; set true to opt in. Agora sessions ignore this field.","example":true,"uniqueKey":"sessionOptions.showAIAvatarDisclosure","typeLabel":"boolean"},"region":{"type":"string","enum":["eu","us"],"description":"Requested engine region. Explicit selection works even when automatic geographic routing is disabled.","uniqueKey":"sessionOptions.region","typeLabel":"enum\u003cstring>"},"regionPolicy":{"type":"string","enum":["preferred","strict"],"default":"preferred","description":"`preferred` allows cross-region capacity failover. `strict` requires `region` and never serves the session from another region.","uniqueKey":"sessionOptions.regionPolicy","typeLabel":"enum\u003cstring>"},"videoWidth":{"type":"integer","description":"Output video frame width in pixels. Supply together with `videoHeight` (both or neither). Omit to use the avatar model's default. Supported pairs depend on the avatar model — cara-3: `720x480`; cara-4: `1152x768`. Unsupported pairs are rejected (the session is not silently downgraded).","example":1152,"uniqueKey":"sessionOptions.videoWidth","typeLabel":"integer"},"videoHeight":{"type":"integer","description":"Output video frame height in pixels. Supply together with `videoWidth` (both or neither). See `videoWidth`.","example":768,"uniqueKey":"sessionOptions.videoHeight","typeLabel":"integer"},"egress":{"type":"object","description":"Set egress to an alternative egress transport mode. The avatar's audio/video are published to\na 3rd party transport and not delivered over the native webRTC channel.\nThe WebRTC peer connection still exists for signalling and the data channel (interrupts, status).\nRequires `personaConfig.enableAudioPassthrough=true`. Discriminated on `mode`.\n","required":["mode"],"properties":{"mode":{"type":"string","enum":["daily"],"description":"Egress provider. Only `daily` is supported today.","example":"daily","isRequired":true,"uniqueKey":"sessionOptions.egress.mode","typeLabel":"enum\u003cstring>"},"daily":{"type":"object","description":"Required when `mode` is `daily`.","required":["roomUrl"],"properties":{"roomUrl":{"type":"string","format":"uri","description":"Daily room URL the avatar should join as a publisher.","example":"https://your-domain.daily.co/avatar-room","isRequired":true,"uniqueKey":"sessionOptions.egress.daily.roomUrl","typeLabel":"string\u003curi>"},"token":{"type":"string","description":"Optional Daily meeting token. Omit for public rooms.","uniqueKey":"sessionOptions.egress.daily.token","typeLabel":"string"},"userName":{"type":"string","description":"Optional display name for the avatar participant. Defaults to \"anam-avatar\".","uniqueKey":"sessionOptions.egress.daily.userName","typeLabel":"string"}},"uniqueKey":"sessionOptions.egress.daily","typeLabel":"object"}},"uniqueKey":"sessionOptions.egress","typeLabel":"object"}},"uniqueKey":"sessionOptions","typeLabel":"object"},"clientMetadata":{"type":"object","description":"Optional client metadata forwarded to the engine (e.g. supportsPubSubSignalling).","uniqueKey":"clientMetadata","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"clientLabel":"\u003cstring>","personaConfig":{},"environment":{"livekitUrl":"\u003cstring>"},"sessionOptions":{"sessionReplay":{"enableSessionReplay":true},"dataRetention":{"recording":false,"transcripts":true},"videoQuality":"high","showAIAvatarDisclosure":true,"regionPolicy":"preferred","videoWidth":1152,"videoHeight":768},"clientMetadata":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"ff784ae4-a78d-484d-9e62-c896f9c27e6f":{"description":"Session started","content":{"application/json":{"schema":{"type":"object","properties":{"sessionId":{"type":"string","format":"uuid","uniqueKey":"sessionId","typeLabel":"string\u003cuuid>"},"engineHost":{"type":"string","description":"Host of the engine serving this session. Omitted for LiveKit/Agora integrations.","uniqueKey":"engineHost","typeLabel":"string"},"engineProtocol":{"type":"string","uniqueKey":"engineProtocol","typeLabel":"string"},"signallingEndpoint":{"type":"string","uniqueKey":"signallingEndpoint","typeLabel":"string"},"clientConfig":{"type":"object","uniqueKey":"clientConfig","typeLabel":"object"},"region":{"type":"string","enum":["eu","us"],"description":"Actual region that served the session. Omitted when the serving session-service does not report it.","uniqueKey":"region","typeLabel":"enum\u003cstring>"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"sessionId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","engineHost":"\u003cstring>","engineProtocol":"\u003cstring>","signallingEndpoint":"\u003cstring>","clientConfig":{},"region":"eu"}}},"exampleType":"generated"}},"exampleType":"generated"},"a1414f2a-c343-4b44-a247-fd54b09ed277":{"description":"Invalid request body or persona configuration, including a ZDR request whose selected voice or LLM is incompatible, whose compatibility cannot be verified, that sets dataRetention.recording or dataRetention.transcripts to true without a sessionReplay that turns both off, or that sets sessionReplay.enableSessionReplay to true without dataRetention. Omitted dataRetention settings are off for ZDR sessions. Region values must be `eu` or `us`, and `regionPolicy: strict` requires an explicit `region`. Avatar-only persona configs (avatarId without voiceId and without enableAudioPassthrough: true) are rejected with `avatar_only_requires_integration` unless a LiveKit, Agora or ElevenLabs Agent integration `environment` is supplied. An avatar with no engine key (one created without an image) is rejected with `avatar_unusable`. Deleting that avatar is not enough on its own: deletion is a soft delete, a replacement created with `imageUrl` gets a new `avatarId`, and saved personas keep referencing the old one. Point the session config or saved persona at a usable `avatarId` instead. Engine 400 and 422 rejections return 400 `invalid_session_config`. `message` carries the engine's customer-facing `invalid_request_body` reason, or a fixed message for other errors. Rejected field names are returned in `invalid_fields` when the engine reports them.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","uniqueKey":"message","typeLabel":"string"},"avatarId":{"type":"string","description":"ID of the unusable avatar, when error is avatar_unusable.","uniqueKey":"avatarId","typeLabel":"string"},"invalid_fields":{"type":"array","items":{"type":"string","uniqueKey":"invalid_fields.items.[INDEX]","typeLabel":"string"},"description":"Rejected field names, when error is invalid_session_config and the engine reports them.","uniqueKey":"invalid_fields","typeLabel":"string[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"avatar_unusable","message":"Avatar avatar-1 has no engine key and cannot be used in a session. Choose a usable avatar, or create a replacement with imageUrl, then update your session configuration or saved persona to use its avatarId. The unusable avatar can be deleted once nothing references it.","avatarId":"avatar-1"},"examples":{"Example":{"title":"Example","value":{"error":"avatar_unusable","message":"Avatar avatar-1 has no engine key and cannot be used in a session. Choose a usable avatar, or create a replacement with imageUrl, then update your session configuration or saved persona to use its avatarId. The unusable avatar can be deleted once nothing references it.","avatarId":"avatar-1"}}},"exampleType":"examples"}},"exampleType":"examples"},"2112f86d-d207-439a-87cf-56c0050cae09":{"description":"Unauthorized - invalid API key, invalid/expired session token, a session token whose API key has since been deactivated or deleted, or a session token that has already started as many sessions as its `maxSessions` allows (error `Session token already used`)","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"64270c48-44f5-4bc4-b7f6-925312f23403":{"description":"The organization has an overdue payment and paid access is temporarily restricted","content":{"application/json":{"schema":{"type":"object","required":["error","message","recovery_url"],"properties":{"error":{"type":"string","enum":["billing_payment_required"],"isRequired":true,"uniqueKey":"error","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"recovery_url":{"type":"string","format":"uri","isRequired":true,"uniqueKey":"recovery_url","typeLabel":"string\u003curi>"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"billing_payment_required","message":"Your organization has an overdue payment. An owner can restore access from Billing.","recovery_url":"https://lab.anam.ai/subscription?billing=overdue"},"examples":{"Example":{"title":"Example","value":{"error":"billing_payment_required","message":"Your organization has an overdue payment. An owner can restore access from Billing.","recovery_url":"https://lab.anam.ai/subscription?billing=overdue"}}},"exampleType":"examples"}},"exampleType":"examples"},"4b2046e0-9162-4f34-bd09-2a0bad736664":{"description":"Forbidden - the API key lacks the required permission, or the organization is not entitled to a requested feature (e.g. Zero Data Retention, session region selection, gated avatar model, devSettings), or the organization belongs to a Shopify store that is no longer connected to the Anam app","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"sessionRegionNotAvailable":{"title":"sessionRegionNotAvailable","value":{"error":"session_region_not_available","message":"Session region selection is not available for this organization"}}},"exampleType":"examples"}},"exampleType":"examples"},"f0a95ff8-d2cc-48c7-b09b-66caf7ccb499":{"description":"A referenced resource does not exist in your organization, for example an unknown, archived or other-organization `voiceGenerationOptions.pronunciationDictionaryId`. `toolIds` that are unknown, deleted or another organization's are rejected with `tools_not_found`, listing them in `toolIds`.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","uniqueKey":"message","typeLabel":"string"},"toolIds":{"type":"array","items":{"type":"string","uniqueKey":"toolIds.items.[INDEX]","typeLabel":"string"},"description":"The requested tool IDs that were not found, when error is tools_not_found.","uniqueKey":"toolIds","typeLabel":"string[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"tools_not_found","message":"Tools not found: f56eba79-5403-40e0-9b09-6ae6c4757e21. Remove them from personaConfig.toolIds, or use the IDs of tools that exist in your organization.","toolIds":["f56eba79-5403-40e0-9b09-6ae6c4757e21"]},"examples":{"Example":{"title":"Example","value":{"error":"tools_not_found","message":"Tools not found: f56eba79-5403-40e0-9b09-6ae6c4757e21. Remove them from personaConfig.toolIds, or use the IDs of tools that exist in your organization.","toolIds":["f56eba79-5403-40e0-9b09-6ae6c4757e21"]}}},"exampleType":"examples"}},"exampleType":"examples"},"599f09b0-3955-49e8-9ca9-3ca6f48727fa":{"description":"The pronunciation dictionary can't be used. `DICTIONARY_UNAVAILABLE`: the saved persona's dictionary was removed; choose another for the persona and publish it. `DICTIONARY_OUTDATED`: the dictionary's saved entries no longer meet the current entry rules; fix and save it in Lab.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","enum":["DICTIONARY_UNAVAILABLE","DICTIONARY_OUTDATED"],"uniqueKey":"code","typeLabel":"enum\u003cstring>"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","message":"\u003cstring>","code":"DICTIONARY_UNAVAILABLE"}}},"exampleType":"generated"}},"exampleType":"generated"},"666487bd-e210-478b-8872-c74b39fe2ef7":{"description":"Concurrent session limit or spend cap reached","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"01b790d3-1b97-4d5c-8e86-bbf9c3b736b3":{"description":"No engines available. For `regionPolicy: strict`, this also means the requested region is unavailable or has no remaining capacity; the session is not retried in another region. A strictly pinned token also gets 503 with `error: session_store_unavailable` when that region's session storage is temporarily unavailable. Also returned with a `Retry-After` header when the API key could not be checked because of a temporary server problem; the key may be valid, so retry.","headers":{"Retry-After":{"description":"Seconds to wait before retrying. Present when the API key could not be checked.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"c363502f-e3a0-4cfc-9ffa-4107ca0bf5e1":{"BearerAuth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"802b7150-f38f-4f50-b5e3-fd4d474eaa80":{"url":"https://api.anam.ai","description":"Anam API"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"https://api.anam.ai/swagger.json"},"subdomain":"anam","siteName":"Anam","title":"create engine session - Anam","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"originalFileLocation":"api-reference/engine/create-engine-session.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Start a live persona session. Two authentication modes are supported via the Authorization: Bearer header: - Session token (browser clients): pass a session token minted by POST /v1/auth/session-token. The session configuration was bound to the token when it was created, so the body only carries optional clientMetadata. This is the flow the client-side SDKs use; you normally don\u0026#x27;t call this endpoint yourself. - API key (server-side SDKs): pass your API key directly and supply the session configuration in the request body — the same shape as the /v1/auth/session-token body (personaConfig, environment, sessionOptions, plus optional clientLabel and clientMetadata; expiresInSeconds, maxSessions and widgetConfig do not apply). This skips the session-token exchange. Only use this from a secure server-side context — never expose an API key in a browser.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Anam\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"create engine session - Anam\">\u003cmeta data-mint-head property=\"og:description\" content=\"Anam developer documentation. Build real-time interactive AI avatars with low-latency voice, custom personas, and multi-language support.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Anam Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://anam.ai/docs/api-reference/engine/create-engine-session\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://anam.mintlify.site/docs/logo/anam-logo-white.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"create engine session - Anam\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Anam developer documentation. Build real-time interactive AI avatars with low-latency voice, custom personas, and multi-language support.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://anam.mintlify.site/docs/logo/anam-logo-white.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/anam/tqFnPe6JO4uLg8KJ/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Anam\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#ff6200\">\u003cmeta data-mint-head name=\"og:logo\" content=\"/logo/anam-logo-white.png\">\u003cmeta data-mint-head name=\"twitter:logo\" content=\"/logo/anam-logo-white.png\">\u003clink data-mint-head rel=\"canonical\" href=\"https://anam.ai/docs/api-reference/engine/create-engine-session\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/api-reference/engine/create-engine-session.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://anam.ai/#organization\",\"name\":\"Anam\",\"url\":\"https://anam.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/anam/C1_yhmh0z2cLMID5/logo/anam-logo-black.png?fit=max\u0026auto=format\u0026n=C1_yhmh0z2cLMID5\u0026q=85\u0026s=df3c7456becff3adcf00bdee3d8b24e6\"}},{\"@type\":\"WebSite\",\"@id\":\"https://anam.ai/docs#website\",\"name\":\"Anam\",\"url\":\"https://anam.ai/docs\",\"publisher\":{\"@id\":\"https://anam.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://anam.ai/docs/api-reference/engine/create-engine-session#webpage\",\"url\":\"https://anam.ai/docs/api-reference/engine/create-engine-session\",\"name\":\"create engine session\",\"description\":\"Start a live persona session. Two authentication modes are supported via the Authorization: Bearer header: - Session token (browser clients): pass a session token minted by POST /v1/auth/session-token. The session configuration was bound to the token when it was created, so the body only carries optional clientMetadata. This is the flow the client-side SDKs use; you normally don't call this endpoint yourself. - API key (server-side SDKs): pass your API key directly and supply the session configuration in the request body — the same shape as the /v1/auth/session-token body (personaConfig, environment, sessionOptions, plus optional clientLabel and clientMetadata; expiresInSeconds, maxSessions and widgetConfig do not apply). This skips the session-token exchange. Only use this from a secure server-side context — never expose an API key in a browser.\",\"isPartOf\":{\"@id\":\"https://anam.ai/docs#website\"},\"breadcrumb\":{\"@id\":\"https://anam.ai/docs/api-reference/engine/create-engine-session#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://anam.ai/docs/api-reference/engine/create-engine-session#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anam\",\"item\":\"https://anam.ai/docs\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"create engine session\",\"item\":\"https://anam.ai/docs/api-reference/engine/create-engine-session\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://anam.ai/docs/api-reference/engine/create-engine-session#apireference\",\"headline\":\"create engine session\",\"name\":\"create engine session\",\"description\":\"Start a live persona session. Two authentication modes are supported via the Authorization: Bearer header: - Session token (browser clients): pass a session token minted by POST /v1/auth/session-token. The session configuration was bound to the token when it was created, so the body only carries optional clientMetadata. This is the flow the client-side SDKs use; you normally don't call this endpoint yourself. - API key (server-side SDKs): pass your API key directly and supply the session configuration in the request body — the same shape as the /v1/auth/session-token body (personaConfig, environment, sessionOptions, plus optional clientLabel and clientMetadata; expiresInSeconds, maxSessions and widgetConfig do not apply). This skips the session-token exchange. Only use this from a secure server-side context — never expose an API key in a browser.\",\"url\":\"https://anam.ai/docs/api-reference/engine/create-engine-session\",\"mainEntityOfPage\":{\"@id\":\"https://anam.ai/docs/api-reference/engine/create-engine-session#webpage\"},\"image\":\"https://anam.ai/logo/anam-logo-white.png\",\"publisher\":{\"@id\":\"https://anam.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://anam.ai/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Anam\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Anam","nav":{"global":null,"tabs":[{"tab":"Overview","align":"start","pages":[{"title":"Overview","href":"/introduction/overview"}]},{"tab":"Embed","align":"start","pages":[{"title":"Embed","href":"/embed/overview"}]},{"tab":"JavaScript SDK","align":"start","pages":[{"title":"JavaScript SDK","href":"/javascript-sdk/api-key"}]},{"tab":"Python SDK","align":"start","pages":[{"title":"Python SDK","href":"/python-sdk/overview"}]},{"tab":"Integrations","align":"start","menu":[{"item":"LiveKit","icon":"https://mintlify.s3.us-west-1.amazonaws.com/anam/images/integrations/livekit.svg","pages":[{"title":"LiveKit","href":"/integrations/livekit/overview"}]},{"item":"ElevenLabs Agents","icon":"https://mintlify.s3.us-west-1.amazonaws.com/anam/images/integrations/elevenlabs.svg","pages":[{"title":"ElevenLabs Agents","href":"/integrations/elevenlabs/agents"}]},{"item":"Other SDKs","icon":"code","pages":[{"title":"Other SDKs","href":"/integrations/sdks"}]}],"pages":[{"title":"Integrations","href":"/integrations/livekit/overview"}]},{"tab":"API Reference","align":"start","groups":[{"group":"Use the API","pages":[{"title":"Anam REST API","sidebarTitle":"Introduction","href":"/api-reference/overview"}]},{"group":"Sessions","pages":[{"title":"create session token","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/auth/session-token","href":"/api-reference/sessions/create-session-token"},{"title":"list sessions","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/sessions","href":"/api-reference/sessions/list-sessions"},{"title":"get session concurrency status","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/sessions/concurrency","href":"/api-reference/sessions/get-current-concurrency-status"},{"title":"get aggregated session analytics","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/sessions/analytics","href":"/api-reference/sessions/get-aggregated-session-analytics"},{"title":"get session","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/sessions/{id}","href":"/api-reference/sessions/get-session"},{"title":"delete session","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/sessions/{id}","href":"/api-reference/sessions/delete-session"},{"title":"get session transcript","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/sessions/{id}/transcript","href":"/api-reference/sessions/get-session-transcript"},{"title":"stop session","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/sessions/{id}/stop","href":"/api-reference/sessions/stop-session"},{"title":"delete session report","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/sessions/{id}/report","href":"/api-reference/sessions/delete-session-report"},{"title":"get session recording","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/sessions/{id}/recording","href":"/api-reference/sessions/get-session-recording"},{"title":"delete session recording","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/sessions/{id}/recording","href":"/api-reference/sessions/delete-session-recording"},{"title":"get session analytics","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/sessions/{id}/analytics","href":"/api-reference/sessions/get-session-analytics"}]},{"group":"Meetings","pages":[{"title":"list meeting invites","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/meetings/invites","href":"/api-reference/meetings/list-meeting-invites"},{"title":"create meeting invite","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/meetings/invites","href":"/api-reference/meetings/create-meeting-invite"},{"title":"get meeting invite","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/meetings/invites/{id}","href":"/api-reference/meetings/get-meeting-invite"},{"title":"cancel meeting invite","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/meetings/invites/{id}","href":"/api-reference/meetings/cancel-meeting-invite"}]},{"group":"Avatar Videos","pages":[{"title":"list avatar videos","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/avatar-videos","href":"/api-reference/avatar-videos/list-avatar-videos"},{"title":"create avatar video","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/avatar-videos","href":"/api-reference/avatar-videos/create-an-avatar-video"},{"title":"get avatar video","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/avatar-videos/{id}","href":"/api-reference/avatar-videos/get-an-avatar-video"},{"title":"cancel avatar video","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/avatar-videos/{id}/cancel","href":"/api-reference/avatar-videos/cancel-an-avatar-video"},{"title":"retry avatar video","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/avatar-videos/{id}/retry","href":"/api-reference/avatar-videos/retry-an-avatar-video"}]},{"group":"Personas","pages":[{"title":"list personas","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/personas","href":"/api-reference/personas/list-personas"},{"title":"create persona","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/personas","href":"/api-reference/personas/create-persona"},{"title":"get persona","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/personas/{id}","href":"/api-reference/personas/get-persona"},{"title":"update persona","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/personas/{id}","href":"/api-reference/personas/update-persona"},{"title":"delete persona","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/personas/{id}","href":"/api-reference/personas/delete-persona"}]},{"group":"Avatars","pages":[{"title":"list avatars","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/avatars","href":"/api-reference/avatars/list-avatars"},{"title":"create avatar","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/avatars","href":"/api-reference/avatars/create-avatar"},{"title":"get avatar","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/avatars/{id}","href":"/api-reference/avatars/get-avatar"},{"title":"update avatar","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/avatars/{id}","href":"/api-reference/avatars/update-avatar"},{"title":"delete avatar","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/avatars/{id}","href":"/api-reference/avatars/delete-avatar"}]},{"group":"Voices","pages":[{"title":"list voices","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/voices","href":"/api-reference/voices/list-voices"},{"title":"create voice","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/voices","href":"/api-reference/voices/create-voice"},{"title":"create voice import","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/voice-imports","href":"/api-reference/voices/validate-and-import-a-provider-voice"},{"title":"get ElevenLabs API key status","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/voices/elevenlabs-key","href":"/api-reference/voices/get-the-organizations-elevenlabs-api-key-status"},{"title":"save ElevenLabs API key","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/voices/elevenlabs-key","href":"/api-reference/voices/save-the-organizations-elevenlabs-api-key"},{"title":"remove ElevenLabs API key","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/voices/elevenlabs-key","href":"/api-reference/voices/remove-the-organizations-elevenlabs-api-key"},{"title":"create voice presigned upload","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/voices/presigned-upload","href":"/api-reference/voices/create-voice-presigned-upload"},{"title":"get voice","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/voices/{id}","href":"/api-reference/voices/get-voice"},{"title":"update voice","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/voices/{id}","href":"/api-reference/voices/update-voice"},{"title":"delete voice","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/voices/{id}","href":"/api-reference/voices/delete-voice"}]},{"group":"Pronunciation Dictionaries","pages":[{"title":"list pronunciation dictionaries","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/pronunciation-dictionaries","href":"/api-reference/pronunciation-dictionaries/list-pronunciation-dictionaries"},{"title":"create pronunciation dictionary","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/pronunciation-dictionaries","href":"/api-reference/pronunciation-dictionaries/create-pronunciation-dictionary"},{"title":"import pronunciation dictionary","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/pronunciation-dictionaries/import","href":"/api-reference/pronunciation-dictionaries/import-pronunciation-dictionary"},{"title":"get pronunciation dictionary","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/pronunciation-dictionaries/{id}","href":"/api-reference/pronunciation-dictionaries/get-pronunciation-dictionary"},{"title":"update pronunciation dictionary","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/pronunciation-dictionaries/{id}","href":"/api-reference/pronunciation-dictionaries/update-pronunciation-dictionary"},{"title":"delete pronunciation dictionary","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/pronunciation-dictionaries/{id}","href":"/api-reference/pronunciation-dictionaries/delete-pronunciation-dictionary"}]},{"group":"LLMs","pages":[{"title":"list llms","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/llms","href":"/api-reference/llms/list-llms"},{"title":"create llm","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/llms","href":"/api-reference/llms/create-llm"},{"title":"get llm","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/llms/{id}","href":"/api-reference/llms/get-llm"},{"title":"update llm","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/llms/{id}","href":"/api-reference/llms/update-llm"},{"title":"delete llm","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/llms/{id}","href":"/api-reference/llms/delete-llm"}]},{"group":"Knowledge","pages":[{"title":"list knowledge groups","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/knowledge/groups","href":"/api-reference/knowledge/list-knowledge-groups"},{"title":"create knowledge group","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/knowledge/groups","href":"/api-reference/knowledge/create-knowledge-group"},{"title":"get knowledge group","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/knowledge/groups/{id}","href":"/api-reference/knowledge/get-knowledge-group"},{"title":"update knowledge group","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/knowledge/groups/{id}","href":"/api-reference/knowledge/update-knowledge-group"},{"title":"delete knowledge group","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/knowledge/groups/{id}","href":"/api-reference/knowledge/delete-knowledge-group"},{"title":"search knowledge group","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/knowledge/groups/{id}/search","href":"/api-reference/knowledge/search-knowledge-group"},{"title":"list knowledge group documents","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/knowledge/groups/{id}/documents","href":"/api-reference/knowledge/list-knowledge-group-documents"},{"title":"upload knowledge group document","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/knowledge/groups/{id}/documents","href":"/api-reference/knowledge/upload-knowledge-group-document"},{"title":"get knowledge document","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/knowledge/documents/{id}","href":"/api-reference/knowledge/get-knowledge-document"},{"title":"update knowledge document","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/knowledge/documents/{id}","href":"/api-reference/knowledge/update-knowledge-document"},{"title":"delete knowledge document","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/knowledge/documents/{id}","href":"/api-reference/knowledge/delete-knowledge-document"},{"title":"get knowledge document download","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/knowledge/documents/{id}/download","href":"/api-reference/knowledge/get-knowledge-document-download"}]},{"group":"Tools","pages":[{"title":"list tools","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/tools","href":"/api-reference/tools/list-tools"},{"title":"create tool","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/tools","href":"/api-reference/tools/create-tool"},{"title":"get tool","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/tools/{id}","href":"/api-reference/tools/get-tool"},{"title":"update tool","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/tools/{id}","href":"/api-reference/tools/update-tool"},{"title":"delete tool","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/tools/{id}","href":"/api-reference/tools/delete-tool"}]},{"group":"Share Links","pages":[{"title":"list share links","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/share-links","href":"/api-reference/share-links/list-share-links"},{"title":"create share link","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/share-links","href":"/api-reference/share-links/create-share-link"},{"title":"get share link","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json get /v1/share-links/{id}","href":"/api-reference/share-links/get-share-link"},{"title":"update share link","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json put /v1/share-links/{id}","href":"/api-reference/share-links/update-share-link"},{"title":"delete share link","description":"Delete a share link by ID","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json delete /v1/share-links/{id}","href":"/api-reference/share-links/delete-share-link"}]},{"group":"Engine","pages":[{"title":"create engine session","deprecated":null,"version":null,"openapi":"https://api.anam.ai/swagger.json post /v1/engine/session","href":"/api-reference/engine/create-engine-session"}]}]},{"tab":"Changelog","align":"start","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"create engine session - Anam","buildId":"dpl_ATnXPMW25DMPUr9VBw6kL6MfBt6T","deploymentId":"dpl_ATnXPMW25DMPUr9VBw6kL6MfBt6T","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CNqlzjVB.js","utils-BqFiXZ79.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CnR4QBe6.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-BY2ZM1OO.js","snippetPresets-x-8ACO8V.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-Ch-SJE05.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CqqG_0NE.js","shallow-BXrZ2b0C.js","getApiPlaygroundDisplay-n7J_wkjq.js","CodeSnippet-CQsp4vyQ.js","CodeSnippets-BfuHqvZx.js","Page-CTxrMSpo.js","getPastedJson-BjrGIK1i.js","icon-7iLZnVOC.js","MethodPill-TBS1m84e.js","DuplicateIcon-BNMrV4Vs.js","createIcon-C5kCqeU2.js","DynamicMarkdown-Bq09mRwR.js","SectionHeading-G4Bflf5Q.js","axios-vUo_bRtp.js","Markdown-BTUds0aX.js","clsx-6wHzaN2_.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BPypQKlo.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-o6bee4ro.js"]}