Returns every session in the root session’s tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.
Organization in which to act. Required for a tenant-scoped API key. Optional for an organization-scoped key, where it must name that same organization. The value may be an organization id or default.
Set to signed to add a short-lived url (and url_expires_at) to stored image blocks within the per-read signing budget. Omitted when signing is unavailable or the budget is exhausted; the authenticated managedAgentsGetSessionImage endpoint always works.
External event payloads hydrate by default. Set refs to return bounded stubs and private reference metadata only.
Available options:
refs
Response
A whole multi-agent session tree: every session and thread in it, plus a bounded page of the merged chronological event log. Returned when reading the tree containing a given session.
A whole multi-agent session tree: every session and thread in it, plus a bounded page of the merged chronological event log. Returned when reading the tree containing a given session.
One page of the tree's events merged into a single chronological log across all sessions. Bounded by response size, so the page length is not a fixed count.
Thread registry rows for the tree's context-isolated execution streams. Imported RL children appear when their import supplied thread names; older imports without names use session-derived fallback rows.
Cursor to pass as the starting point of the next event page. Present only when more events remain; absent on the last page.
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Labelbox","description":"Documentation for Recursion Managed Agents and the Labelbox platform.","colors":{"primary":"#36707F","light":"#7EB3C1","dark":"#274E58"},"logo":{"light":"https://mintcdn.com/labelbox-1db23ff4/badqlfNjN52ySAbU/logo/light.svg?fit=max\u0026auto=format\u0026n=badqlfNjN52ySAbU\u0026q=85\u0026s=2e7592619836dadfb7384597f9e48bec","dark":"https://mintcdn.com/labelbox-1db23ff4/badqlfNjN52ySAbU/logo/dark.svg?fit=max\u0026auto=format\u0026n=badqlfNjN52ySAbU\u0026q=85\u0026s=080727ffefbdc01f5e275a0f13cdd5c2","href":"/"},"favicon":"https://mintcdn.com/labelbox-1db23ff4/badqlfNjN52ySAbU/favicon.svg?fit=max\u0026auto=format\u0026n=badqlfNjN52ySAbU\u0026q=85\u0026s=35e9a808129eb1b044e5cc202e88eaa7","appearance":{"default":"light"},"background":{"color":{"light":"#FFFDF8","dark":"#202020"}},"navbar":{"primary":{"type":"button","label":"Open console","href":"https://recursion.labelbox.com"}},"footer":{"socials":{"github":"https://github.com/Labelbox","linkedin":"https://www.linkedin.com/company/labelbox"},"links":[{"header":"Products","items":[{"label":"Recursion","href":"/recursion"},{"label":"Horizon","href":"/horizon"}]},{"header":"Resources","items":[{"label":"Release notes","href":"/horizon/release-notes"},{"label":"Status","href":"https://status.labelbox.com"},{"label":"Blog","href":"https://labelbox.com/blog"}]},{"header":"Company","items":[{"label":"labelbox.com","href":"https://labelbox.com"},{"label":"Contact sales","href":"https://labelbox.com/sales"}]}]},"fonts":{"heading":{"family":"The Future","source":"https://labelbox.com/static/fonts/The-future/the-future-regular.woff2","format":"woff2"},"body":{"family":"IBM Plex Sans"}},"styling":{"eyebrows":"section","codeblocks":{"theme":"css-variables"},"latex":true},"integrations":{"amplitude":{"apiKey":"b375bb454cbc0ba0b780648b3f4ddc18"}},"contextual":{"options":["copy","view","chatgpt","claude","cursor","mcp"],"display":"header"},"variables":{"recursion-api-base":"https://api.recursion.labelbox.com","recursion-console-url":"https://recursion.labelbox.com","recursion-docs-mcp-url":"https://docs.labelbox.com/mcp","recursion-mcp-url":"https://api.recursion.labelbox.com/mcp"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"labelbox-1db23ff4","hasAudioNarration":false,"actualSubdomain":"labelbox-1db23ff4","customDomains":["docs.labelbox.com"],"gitSource":{"_id":"6ad7fa91692c7c940ff17a10","type":"github","owner":"labelbox","repo":"lbx-docs-mintlify","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"","isBase":true},"chroma":{"liveDeploymentHistoryId":"6aecd3e730a4ea6eb88592c0","collectionId":"8affedcc-349a-429b-a0ff-b4ebd6d0eed7","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aecd3e730a4ea6eb88592c0"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aed65c352a0950ee7962acc","clientVersion":"0.0.4074","searchFilterCounts":[{"language":"default","tag":"Recursion","count":222},{"language":"default","tag":"API reference","count":192},{"language":"default","tag":"Horizon","count":179},{"language":"default","tag":"Endpoints","count":178},{"language":"default","tag":"Guides","count":130},{"language":"default","tag":"Developer guides","count":83},{"language":"default","tag":"Import/Export","count":43},{"language":"default","tag":"Label data","count":35},{"language":"default","tag":"Sessions","count":35},{"language":"default","tag":"Environments","count":24}]},"assistantConfig":{},"basePath":"","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":"vite-origin","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":true},"customCss":[{"filePath":"styles/design-tokens.css","content":":root{--lb-color-primary-50: #eff6f8;--lb-color-primary-100: #dcecef;--lb-color-primary-200: #bcd9e0;--lb-color-primary-300: #9cc6d1;--lb-color-primary-400: #7eb3c1;--lb-color-primary-500: #5a98a7;--lb-color-primary-600: #36707f;--lb-color-primary-700: #2b5965;--lb-color-primary-800: #21454e;--lb-color-primary-900: #173138;--lb-color-secondary-50: #fbf1eb;--lb-color-secondary-100: #f4ddd0;--lb-color-secondary-200: #e7bda4;--lb-color-secondary-300: #dba47f;--lb-color-secondary-400: #d09372;--lb-color-secondary-500: #c1764f;--lb-color-secondary-600: #b15e3a;--lb-color-secondary-700: #8f4a2d;--lb-color-secondary-800: #6d3922;--lb-color-secondary-900: #4b2718;--lb-color-error-50: #fbeef0;--lb-color-error-100: #f3d4da;--lb-color-error-200: #e8aeb8;--lb-color-error-300: #df97a4;--lb-color-error-400: #db8090;--lb-color-error-500: #bd5e72;--lb-color-error-600: #9e3b52;--lb-color-error-700: #7e2f42;--lb-color-error-800: #5e2331;--lb-color-error-900: #3f1721;--lb-color-warning-50: #fdf3e4;--lb-color-warning-100: #f9e2bf;--lb-color-warning-200: #f4cd8f;--lb-color-warning-300: #efb162;--lb-color-warning-400: #e89a3e;--lb-color-warning-500: #e0892a;--lb-color-warning-600: #c2701a;--lb-color-warning-700: #9b5614;--lb-color-warning-800: #74400f;--lb-color-warning-900: #4e2b0a;--lb-color-info-50: #eef5fa;--lb-color-info-100: #d4e7f2;--lb-color-info-200: #b3d3e6;--lb-color-info-300: #9cc3df;--lb-color-info-400: #7bb0d4;--lb-color-info-500: #5390bb;--lb-color-info-600: #2f6f9e;--lb-color-info-700: #275d84;--lb-color-info-800: #1f4a6a;--lb-color-info-900: #163750;--lb-color-success-50: #eef7f2;--lb-color-success-100: #d3ece0;--lb-color-success-200: #aedcc4;--lb-color-success-300: #8fcdab;--lb-color-success-400: #74bd97;--lb-color-success-500: #519a76;--lb-color-success-600: #3a785c;--lb-color-success-700: #2f6149;--lb-color-success-800: #244a38;--lb-color-success-900: #183227;--lb-color-grey-50: #faf8f5;--lb-color-grey-100: #f1ede6;--lb-color-grey-200: #e5dfd5;--lb-color-grey-300: #d4ccbf;--lb-color-grey-400: #b0a89b;--lb-color-grey-500: #847c70;--lb-color-grey-600: #5f574d;--lb-color-grey-700: #46403a;--lb-color-grey-800: #2b2724;--lb-color-grey-900: #1a1714;--lb-color-grey-a100: #efe9e0;--lb-color-grey-a200: #e0d8cc;--lb-color-grey-a400: #b0a89b;--lb-color-grey-a700: #6b6359;--lb-font-sans:\n \"IBM Plex Sans\", \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;--lb-font-display: \"The Future\", \"IBM Plex Sans\", sans-serif;--lb-ease: cubic-bezier(0.22, 1, 0.36, 1);--lb-duration-fast: 200ms;--lb-duration-base: 300ms;--lb-duration-slow: 500ms;--lb-font-mono:\n \"IBM Plex Mono\", \"JetBrains Mono\", \"SFMono-Regular\", Menlo, Consolas,\n \"Courier New\", monospace;--lb-radius: 8px;--lb-blur-panel: blur(12px) saturate(180%);--lb-blur-scrim: blur(6px);--lb-tag-teal: #4d97a5;--lb-tag-petrol: #2f7e86;--lb-tag-sky: #5b8ec9;--lb-tag-steel: #41699e;--lb-tag-indigo: #6a6ec7;--lb-tag-violet: #8567bf;--lb-tag-plum: #9b5fae;--lb-tag-mauve: #ab7196;--lb-tag-magenta: #b85792;--lb-tag-rose: #c65f81;--lb-tag-crimson: #b94a59;--lb-tag-red: #cf6253;--lb-tag-terracotta: #c9774f;--lb-tag-clay: #a96a4a;--lb-tag-orange: #d2883c;--lb-tag-amber: #c39a39;--lb-tag-gold: #ab9a3f;--lb-tag-olive: #8b9a48;--lb-tag-moss: #6f9a4f;--lb-tag-green: #4f9e63;--lb-tag-emerald: #3a9d7e;--lb-tag-sage: #7fae93;--lb-tag-slate: #6b7a8c;--lb-tag-taupe: #9a8a78;--lb-tag-cyan: #3fa7b5;--lb-tag-navy: #3a5687;--lb-tag-periwinkle: #8a9fd6;--lb-tag-lavender: #b3a3d6;--lb-tag-fuchsia: #c473ad;--lb-tag-coral: #d97f6a;--lb-tag-peach: #dba074;--lb-tag-khaki: #bcae6a;--lb-tag-lime: #a3b94f;--lb-tag-mint: #84c4a6;--lb-tag-cocoa: #8a6a52;--lb-tag-pewter: #8c8a86;--lb-card-teal-accent: var(--lb-tag-teal);--lb-card-teal-surface: color-mix(\n in srgb,\n var(--lb-tag-teal) 14%,\n var(--lb-bg-light)\n );--lb-card-teal-border: color-mix(\n in srgb,\n var(--lb-tag-teal) 36%,\n var(--lb-border-main)\n );--lb-card-teal-glow: color-mix(\n in srgb,\n var(--lb-tag-teal) 26%,\n transparent\n );--lb-card-petrol-accent: var(--lb-tag-petrol);--lb-card-petrol-surface: color-mix(\n in srgb,\n var(--lb-tag-petrol) 14%,\n var(--lb-bg-light)\n );--lb-card-petrol-border: color-mix(\n in srgb,\n var(--lb-tag-petrol) 36%,\n var(--lb-border-main)\n );--lb-card-petrol-glow: color-mix(\n in srgb,\n var(--lb-tag-petrol) 26%,\n transparent\n );--lb-card-sky-accent: var(--lb-tag-sky);--lb-card-sky-surface: color-mix(\n in srgb,\n var(--lb-tag-sky) 14%,\n var(--lb-bg-light)\n );--lb-card-sky-border: color-mix(\n in srgb,\n var(--lb-tag-sky) 36%,\n var(--lb-border-main)\n );--lb-card-sky-glow: color-mix(\n in srgb,\n var(--lb-tag-sky) 26%,\n transparent\n );--lb-card-steel-accent: var(--lb-tag-steel);--lb-card-steel-surface: color-mix(\n in srgb,\n var(--lb-tag-steel) 14%,\n var(--lb-bg-light)\n );--lb-card-steel-border: color-mix(\n in srgb,\n var(--lb-tag-steel) 36%,\n var(--lb-border-main)\n );--lb-card-steel-glow: color-mix(\n in srgb,\n var(--lb-tag-steel) 26%,\n transparent\n );--lb-card-indigo-accent: var(--lb-tag-indigo);--lb-card-indigo-surface: color-mix(\n in srgb,\n var(--lb-tag-indigo) 14%,\n var(--lb-bg-light)\n );--lb-card-indigo-border: color-mix(\n in srgb,\n var(--lb-tag-indigo) 36%,\n var(--lb-border-main)\n );--lb-card-indigo-glow: color-mix(\n in srgb,\n var(--lb-tag-indigo) 26%,\n transparent\n );--lb-card-violet-accent: var(--lb-tag-violet);--lb-card-violet-surface: color-mix(\n in srgb,\n var(--lb-tag-violet) 14%,\n var(--lb-bg-light)\n );--lb-card-violet-border: color-mix(\n in srgb,\n var(--lb-tag-violet) 36%,\n var(--lb-border-main)\n );--lb-card-violet-glow: color-mix(\n in srgb,\n var(--lb-tag-violet) 26%,\n transparent\n );--lb-card-plum-accent: var(--lb-tag-plum);--lb-card-plum-surface: color-mix(\n in srgb,\n var(--lb-tag-plum) 14%,\n var(--lb-bg-light)\n );--lb-card-plum-border: color-mix(\n in srgb,\n var(--lb-tag-plum) 36%,\n var(--lb-border-main)\n );--lb-card-plum-glow: color-mix(\n in srgb,\n var(--lb-tag-plum) 26%,\n transparent\n );--lb-card-mauve-accent: var(--lb-tag-mauve);--lb-card-mauve-surface: color-mix(\n in srgb,\n var(--lb-tag-mauve) 14%,\n var(--lb-bg-light)\n );--lb-card-mauve-border: color-mix(\n in srgb,\n var(--lb-tag-mauve) 36%,\n var(--lb-border-main)\n );--lb-card-mauve-glow: color-mix(\n in srgb,\n var(--lb-tag-mauve) 26%,\n transparent\n );--lb-card-magenta-accent: var(--lb-tag-magenta);--lb-card-magenta-surface: color-mix(\n in srgb,\n var(--lb-tag-magenta) 14%,\n var(--lb-bg-light)\n );--lb-card-magenta-border: color-mix(\n in srgb,\n var(--lb-tag-magenta) 36%,\n var(--lb-border-main)\n );--lb-card-magenta-glow: color-mix(\n in srgb,\n var(--lb-tag-magenta) 26%,\n transparent\n );--lb-card-rose-accent: var(--lb-tag-rose);--lb-card-rose-surface: color-mix(\n in srgb,\n var(--lb-tag-rose) 14%,\n var(--lb-bg-light)\n );--lb-card-rose-border: color-mix(\n in srgb,\n var(--lb-tag-rose) 36%,\n var(--lb-border-main)\n );--lb-card-rose-glow: color-mix(\n in srgb,\n var(--lb-tag-rose) 26%,\n transparent\n );--lb-card-crimson-accent: var(--lb-tag-crimson);--lb-card-crimson-surface: color-mix(\n in srgb,\n var(--lb-tag-crimson) 14%,\n var(--lb-bg-light)\n );--lb-card-crimson-border: color-mix(\n in srgb,\n var(--lb-tag-crimson) 36%,\n var(--lb-border-main)\n );--lb-card-crimson-glow: color-mix(\n in srgb,\n var(--lb-tag-crimson) 26%,\n transparent\n );--lb-card-red-accent: var(--lb-tag-red);--lb-card-red-surface: color-mix(\n in srgb,\n var(--lb-tag-red) 14%,\n var(--lb-bg-light)\n );--lb-card-red-border: color-mix(\n in srgb,\n var(--lb-tag-red) 36%,\n var(--lb-border-main)\n );--lb-card-red-glow: color-mix(\n in srgb,\n var(--lb-tag-red) 26%,\n transparent\n );--lb-card-terracotta-accent: var(--lb-tag-terracotta);--lb-card-terracotta-surface: color-mix(\n in srgb,\n var(--lb-tag-terracotta) 14%,\n var(--lb-bg-light)\n );--lb-card-terracotta-border: color-mix(\n in srgb,\n var(--lb-tag-terracotta) 36%,\n var(--lb-border-main)\n );--lb-card-terracotta-glow: color-mix(\n in srgb,\n var(--lb-tag-terracotta) 26%,\n transparent\n );--lb-card-clay-accent: var(--lb-tag-clay);--lb-card-clay-surface: color-mix(\n in srgb,\n var(--lb-tag-clay) 14%,\n var(--lb-bg-light)\n );--lb-card-clay-border: color-mix(\n in srgb,\n var(--lb-tag-clay) 36%,\n var(--lb-border-main)\n );--lb-card-clay-glow: color-mix(\n in srgb,\n var(--lb-tag-clay) 26%,\n transparent\n );--lb-card-orange-accent: var(--lb-tag-orange);--lb-card-orange-surface: color-mix(\n in srgb,\n var(--lb-tag-orange) 14%,\n var(--lb-bg-light)\n );--lb-card-orange-border: color-mix(\n in srgb,\n var(--lb-tag-orange) 36%,\n var(--lb-border-main)\n );--lb-card-orange-glow: color-mix(\n in srgb,\n var(--lb-tag-orange) 26%,\n transparent\n );--lb-card-amber-accent: var(--lb-tag-amber);--lb-card-amber-surface: color-mix(\n in srgb,\n var(--lb-tag-amber) 14%,\n var(--lb-bg-light)\n );--lb-card-amber-border: color-mix(\n in srgb,\n var(--lb-tag-amber) 36%,\n var(--lb-border-main)\n );--lb-card-amber-glow: color-mix(\n in srgb,\n var(--lb-tag-amber) 26%,\n transparent\n );--lb-card-gold-accent: var(--lb-tag-gold);--lb-card-gold-surface: color-mix(\n in srgb,\n var(--lb-tag-gold) 14%,\n var(--lb-bg-light)\n );--lb-card-gold-border: color-mix(\n in srgb,\n var(--lb-tag-gold) 36%,\n var(--lb-border-main)\n );--lb-card-gold-glow: color-mix(\n in srgb,\n var(--lb-tag-gold) 26%,\n transparent\n );--lb-card-olive-accent: var(--lb-tag-olive);--lb-card-olive-surface: color-mix(\n in srgb,\n var(--lb-tag-olive) 14%,\n var(--lb-bg-light)\n );--lb-card-olive-border: color-mix(\n in srgb,\n var(--lb-tag-olive) 36%,\n var(--lb-border-main)\n );--lb-card-olive-glow: color-mix(\n in srgb,\n var(--lb-tag-olive) 26%,\n transparent\n );--lb-card-moss-accent: var(--lb-tag-moss);--lb-card-moss-surface: color-mix(\n in srgb,\n var(--lb-tag-moss) 14%,\n var(--lb-bg-light)\n );--lb-card-moss-border: color-mix(\n in srgb,\n var(--lb-tag-moss) 36%,\n var(--lb-border-main)\n );--lb-card-moss-glow: color-mix(\n in srgb,\n var(--lb-tag-moss) 26%,\n transparent\n );--lb-card-green-accent: var(--lb-tag-green);--lb-card-green-surface: color-mix(\n in srgb,\n var(--lb-tag-green) 14%,\n var(--lb-bg-light)\n );--lb-card-green-border: color-mix(\n in srgb,\n var(--lb-tag-green) 36%,\n var(--lb-border-main)\n );--lb-card-green-glow: color-mix(\n in srgb,\n var(--lb-tag-green) 26%,\n transparent\n );--lb-card-emerald-accent: var(--lb-tag-emerald);--lb-card-emerald-surface: color-mix(\n in srgb,\n var(--lb-tag-emerald) 14%,\n var(--lb-bg-light)\n );--lb-card-emerald-border: color-mix(\n in srgb,\n var(--lb-tag-emerald) 36%,\n var(--lb-border-main)\n );--lb-card-emerald-glow: color-mix(\n in srgb,\n var(--lb-tag-emerald) 26%,\n transparent\n );--lb-card-sage-accent: var(--lb-tag-sage);--lb-card-sage-surface: color-mix(\n in srgb,\n var(--lb-tag-sage) 14%,\n var(--lb-bg-light)\n );--lb-card-sage-border: color-mix(\n in srgb,\n var(--lb-tag-sage) 36%,\n var(--lb-border-main)\n );--lb-card-sage-glow: color-mix(\n in srgb,\n var(--lb-tag-sage) 26%,\n transparent\n );--lb-card-slate-accent: var(--lb-tag-slate);--lb-card-slate-surface: color-mix(\n in srgb,\n var(--lb-tag-slate) 14%,\n var(--lb-bg-light)\n );--lb-card-slate-border: color-mix(\n in srgb,\n var(--lb-tag-slate) 36%,\n var(--lb-border-main)\n );--lb-card-slate-glow: color-mix(\n in srgb,\n var(--lb-tag-slate) 26%,\n transparent\n );--lb-card-taupe-accent: var(--lb-tag-taupe);--lb-card-taupe-surface: color-mix(\n in srgb,\n var(--lb-tag-taupe) 14%,\n var(--lb-bg-light)\n );--lb-card-taupe-border: color-mix(\n in srgb,\n var(--lb-tag-taupe) 36%,\n var(--lb-border-main)\n );--lb-card-taupe-glow: color-mix(\n in srgb,\n var(--lb-tag-taupe) 26%,\n transparent\n );--lb-card-cyan-accent: var(--lb-tag-cyan);--lb-card-cyan-surface: color-mix(\n in srgb,\n var(--lb-tag-cyan) 14%,\n var(--lb-bg-light)\n );--lb-card-cyan-border: color-mix(\n in srgb,\n var(--lb-tag-cyan) 36%,\n var(--lb-border-main)\n );--lb-card-cyan-glow: color-mix(\n in srgb,\n var(--lb-tag-cyan) 26%,\n transparent\n );--lb-card-navy-accent: var(--lb-tag-navy);--lb-card-navy-surface: color-mix(\n in srgb,\n var(--lb-tag-navy) 14%,\n var(--lb-bg-light)\n );--lb-card-navy-border: color-mix(\n in srgb,\n var(--lb-tag-navy) 36%,\n var(--lb-border-main)\n );--lb-card-navy-glow: color-mix(\n in srgb,\n var(--lb-tag-navy) 26%,\n transparent\n );--lb-card-periwinkle-accent: var(--lb-tag-periwinkle);--lb-card-periwinkle-surface: color-mix(\n in srgb,\n var(--lb-tag-periwinkle) 14%,\n var(--lb-bg-light)\n );--lb-card-periwinkle-border: color-mix(\n in srgb,\n var(--lb-tag-periwinkle) 36%,\n var(--lb-border-main)\n );--lb-card-periwinkle-glow: color-mix(\n in srgb,\n var(--lb-tag-periwinkle) 26%,\n transparent\n );--lb-card-lavender-accent: var(--lb-tag-lavender);--lb-card-lavender-surface: color-mix(\n in srgb,\n var(--lb-tag-lavender) 14%,\n var(--lb-bg-light)\n );--lb-card-lavender-border: color-mix(\n in srgb,\n var(--lb-tag-lavender) 36%,\n var(--lb-border-main)\n );--lb-card-lavender-glow: color-mix(\n in srgb,\n var(--lb-tag-lavender) 26%,\n transparent\n );--lb-card-fuchsia-accent: var(--lb-tag-fuchsia);--lb-card-fuchsia-surface: color-mix(\n in srgb,\n var(--lb-tag-fuchsia) 14%,\n var(--lb-bg-light)\n );--lb-card-fuchsia-border: color-mix(\n in srgb,\n var(--lb-tag-fuchsia) 36%,\n var(--lb-border-main)\n );--lb-card-fuchsia-glow: color-mix(\n in srgb,\n var(--lb-tag-fuchsia) 26%,\n transparent\n );--lb-card-coral-accent: var(--lb-tag-coral);--lb-card-coral-surface: color-mix(\n in srgb,\n var(--lb-tag-coral) 14%,\n var(--lb-bg-light)\n );--lb-card-coral-border: color-mix(\n in srgb,\n var(--lb-tag-coral) 36%,\n var(--lb-border-main)\n );--lb-card-coral-glow: color-mix(\n in srgb,\n var(--lb-tag-coral) 26%,\n transparent\n );--lb-card-peach-accent: var(--lb-tag-peach);--lb-card-peach-surface: color-mix(\n in srgb,\n var(--lb-tag-peach) 14%,\n var(--lb-bg-light)\n );--lb-card-peach-border: color-mix(\n in srgb,\n var(--lb-tag-peach) 36%,\n var(--lb-border-main)\n );--lb-card-peach-glow: color-mix(\n in srgb,\n var(--lb-tag-peach) 26%,\n transparent\n );--lb-card-khaki-accent: var(--lb-tag-khaki);--lb-card-khaki-surface: color-mix(\n in srgb,\n var(--lb-tag-khaki) 14%,\n var(--lb-bg-light)\n );--lb-card-khaki-border: color-mix(\n in srgb,\n var(--lb-tag-khaki) 36%,\n var(--lb-border-main)\n );--lb-card-khaki-glow: color-mix(\n in srgb,\n var(--lb-tag-khaki) 26%,\n transparent\n );--lb-card-lime-accent: var(--lb-tag-lime);--lb-card-lime-surface: color-mix(\n in srgb,\n var(--lb-tag-lime) 14%,\n var(--lb-bg-light)\n );--lb-card-lime-border: color-mix(\n in srgb,\n var(--lb-tag-lime) 36%,\n var(--lb-border-main)\n );--lb-card-lime-glow: color-mix(\n in srgb,\n var(--lb-tag-lime) 26%,\n transparent\n );--lb-card-mint-accent: var(--lb-tag-mint);--lb-card-mint-surface: color-mix(\n in srgb,\n var(--lb-tag-mint) 14%,\n var(--lb-bg-light)\n );--lb-card-mint-border: color-mix(\n in srgb,\n var(--lb-tag-mint) 36%,\n var(--lb-border-main)\n );--lb-card-mint-glow: color-mix(\n in srgb,\n var(--lb-tag-mint) 26%,\n transparent\n );--lb-card-cocoa-accent: var(--lb-tag-cocoa);--lb-card-cocoa-surface: color-mix(\n in srgb,\n var(--lb-tag-cocoa) 14%,\n var(--lb-bg-light)\n );--lb-card-cocoa-border: color-mix(\n in srgb,\n var(--lb-tag-cocoa) 36%,\n var(--lb-border-main)\n );--lb-card-cocoa-glow: color-mix(\n in srgb,\n var(--lb-tag-cocoa) 26%,\n transparent\n );--lb-card-pewter-accent: var(--lb-tag-pewter);--lb-card-pewter-surface: color-mix(\n in srgb,\n var(--lb-tag-pewter) 14%,\n var(--lb-bg-light)\n );--lb-card-pewter-border: color-mix(\n in srgb,\n var(--lb-tag-pewter) 36%,\n var(--lb-border-main)\n );--lb-card-pewter-glow: color-mix(\n in srgb,\n var(--lb-tag-pewter) 26%,\n transparent\n )}.light{--lb-primary-main: #36707f;--lb-primary-light: #5d99a8;--lb-primary-dark: #274e58;--lb-primary-contrast-text: #ffffff;--lb-secondary-main: #b15e3a;--lb-secondary-light: #c8855f;--lb-secondary-dark: #854227;--lb-secondary-contrast-text: #ffffff;--lb-error-main: #9e3b52;--lb-error-light: #b9697a;--lb-error-dark: #6f2737;--lb-error-contrast-text: #ffffff;--lb-warning-main: #e0892a;--lb-warning-light: #eaa658;--lb-warning-dark: #a8631a;--lb-warning-contrast-text: #2a1c06;--lb-info-main: #2f6f9e;--lb-info-light: #5e93bb;--lb-info-dark: #21506f;--lb-info-contrast-text: #ffffff;--lb-success-main: #3a785c;--lb-success-light: #6aae89;--lb-success-dark: #25503c;--lb-success-contrast-text: #ffffff;--lb-text-primary: #2a2622;--lb-text-secondary: rgba(42, 38, 34, 0.74);--lb-text-muted: rgba(42, 38, 34, 0.68);--lb-text-disabled: rgba(42, 38, 34, 0.4);--lb-bg-default: var(--lb-color-grey-100);--lb-bg-paper: color-mix(\n in srgb,\n var(--lb-color-grey-100) 50%,\n var(--lb-color-grey-50)\n );--lb-bg-light: #fffdf8;--lb-divider: rgba(67, 126, 142, 0.18);--lb-border-main: rgba(67, 126, 142, 0.22);--lb-border-dark: rgba(67, 126, 142, 0.34);--lb-border-transparent: rgba(67, 126, 142, 0);--lb-action-active: rgba(42, 38, 34, 0.54);--lb-action-hover: rgba(54, 112, 127, 0.06);--lb-action-selected: rgba(54, 112, 127, 0.12);--lb-action-disabled: rgba(42, 38, 34, 0.26);--lb-action-disabled-bg: rgba(42, 38, 34, 0.12);--lb-action-focus: rgba(54, 112, 127, 0.16);--lb-focus-ring: #36707f;--lb-focus-glow: rgba(54, 112, 127, 0.24);--lb-focus-shadow:\n 0 0 0 2px var(--lb-bg-paper), 0 0 0 4px #36707f,\n 0 0 0 7px rgba(54, 112, 127, 0.24);--lb-focus-outline: 2px solid #36707f;--lb-focus-outline-offset: 2px;--lb-shadow-xs: 0 1px 2px rgba(42, 38, 34, 0.06);--lb-shadow-sm:\n 0 1px 2px rgba(42, 38, 34, 0.06), 0 2px 6px rgba(42, 38, 34, 0.06);--lb-shadow-md:\n 0 2px 6px rgba(42, 38, 34, 0.06), 0 8px 16px rgba(42, 38, 34, 0.08);--lb-shadow-lg:\n 0 6px 16px rgba(42, 38, 34, 0.08), 0 16px 32px rgba(42, 38, 34, 0.1);--lb-shadow-xl:\n 0 12px 28px rgba(42, 38, 34, 0.1), 0 28px 56px rgba(42, 38, 34, 0.14);--lb-glass-bg: color-mix(in srgb, var(--lb-bg-paper) 72%, transparent);--lb-glass-bg-subtle: color-mix(in srgb, var(--lb-bg-paper) 42%, transparent);--lb-glass-border: rgba(67, 126, 142, 0.22);--lb-scrim: rgba(42, 38, 34, 0.2);--lb-scrollbar-size: 8px;--lb-scrollbar-size-thin: 5px;--lb-scrollbar-radius: 9999px;--lb-scrollbar-track: transparent;--lb-scrollbar-rail: var(--lb-action-hover);--lb-scrollbar-thumb-border: 3px solid var(--lb-bg-default);--lb-scrollbar-fade-duration: 0.28s;--lb-scrollbar-thumb-solid: color-mix(\n in srgb,\n var(--lb-primary-main) 26%,\n transparent\n );--lb-scrollbar-thumb-solid-hover: color-mix(\n in srgb,\n var(--lb-primary-main) 52%,\n transparent\n );--lb-scrollbar-thumb-solid-active: var(--lb-primary-main);--lb-scrollbar-thumb-gradient: linear-gradient(\n 180deg,\n color-mix(in srgb, var(--lb-soft-primary-bg) 88%, var(--lb-primary-light)) 0%,\n color-mix(in srgb, var(--lb-soft-primary-bg-active) 82%, var(--lb-primary-main)) 100%\n );--lb-scrollbar-thumb-gradient-hover: linear-gradient(\n 180deg,\n var(--lb-primary-light) 0%,\n var(--lb-primary-main) 100%\n );--lb-scrollbar-thumb-gradient-active: linear-gradient(\n 180deg,\n var(--lb-primary-main) 0%,\n var(--lb-primary-dark) 100%\n );--lb-scrollbar-thumb-shadow:\n 0 1px 2px rgba(42, 38, 34, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.28);--lb-scrollbar-thumb-shadow-hover:\n 0 2px 6px rgba(42, 38, 34, 0.14), 0 0 10px var(--lb-focus-glow),\n inset 0 1px 0 rgba(255, 255, 255, 0.34);--lb-soft-primary-text: #274e58;--lb-soft-primary-bg: #dcecef;--lb-soft-primary-bg-hover: #bcd9e0;--lb-soft-primary-bg-active: #9cc6d1;--lb-soft-secondary-text: #854227;--lb-soft-secondary-bg: #f4ddd0;--lb-soft-secondary-bg-hover: #e7bda4;--lb-soft-secondary-bg-active: #dba47f;--lb-soft-error-text: #6f2737;--lb-soft-error-bg: #f3d4da;--lb-soft-error-bg-hover: #e8aeb8;--lb-soft-error-bg-active: #df97a4;--lb-soft-warning-text: #a8631a;--lb-soft-warning-bg: #f9e2bf;--lb-soft-warning-bg-hover: #f4cd8f;--lb-soft-warning-bg-active: #efb162;--lb-soft-info-text: #21506f;--lb-soft-info-bg: #d4e7f2;--lb-soft-info-bg-hover: #b3d3e6;--lb-soft-info-bg-active: #9cc3df;--lb-soft-success-text: #25503c;--lb-soft-success-bg: #d3ece0;--lb-soft-success-bg-hover: #aedcc4;--lb-soft-success-bg-active: #8fcdab}.dark{--lb-primary-main: #7eb3c1;--lb-primary-light: #a3c9d2;--lb-primary-dark: #5d99a8;--lb-primary-contrast-text: #0f242b;--lb-secondary-main: #d09372;--lb-secondary-light: #e2b095;--lb-secondary-dark: #a86f4f;--lb-secondary-contrast-text: #2b160c;--lb-error-main: #db8090;--lb-error-light: #e8a6b1;--lb-error-dark: #b3596b;--lb-error-contrast-text: #2b1015;--lb-warning-main: #e89a3e;--lb-warning-light: #f2bd78;--lb-warning-dark: #c17a22;--lb-warning-contrast-text: #2a1c06;--lb-info-main: #7bb0d4;--lb-info-light: #a6cce5;--lb-info-dark: #5891bb;--lb-info-contrast-text: #0e1f2b;--lb-success-main: #74bd97;--lb-success-light: #9ed5b6;--lb-success-dark: #4c9670;--lb-success-contrast-text: #0f2419;--lb-text-primary: #f5f5f4;--lb-text-secondary: rgba(245, 245, 244, 0.78);--lb-text-muted: rgba(245, 245, 244, 0.64);--lb-text-disabled: rgba(245, 245, 244, 0.42);--lb-bg-default: #181818;--lb-bg-paper: #202020;--lb-bg-light: #262626;--lb-divider: rgba(126, 179, 193, 0.14);--lb-border-main: rgba(126, 179, 193, 0.18);--lb-border-dark: rgba(126, 179, 193, 0.3);--lb-border-transparent: rgba(126, 179, 193, 0);--lb-action-active: rgba(245, 245, 244, 0.56);--lb-action-hover: rgba(126, 179, 193, 0.08);--lb-action-selected: rgba(126, 179, 193, 0.16);--lb-action-disabled: rgba(245, 245, 244, 0.3);--lb-action-disabled-bg: rgba(245, 245, 244, 0.12);--lb-action-focus: rgba(126, 179, 193, 0.24);--lb-focus-ring: #7eb3c1;--lb-focus-glow: rgba(126, 179, 193, 0.34);--lb-focus-shadow:\n 0 0 0 2px #202020, 0 0 0 4px #7eb3c1, 0 0 0 7px rgba(126, 179, 193, 0.34);--lb-focus-outline: 2px solid #7eb3c1;--lb-focus-outline-offset: 2px;--lb-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.22);--lb-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.22), 0 2px 4px rgba(0, 0, 0, 0.18);--lb-shadow-md: 0 2px 5px rgba(0, 0, 0, 0.22), 0 6px 12px rgba(0, 0, 0, 0.24);--lb-shadow-lg:\n 0 4px 10px rgba(0, 0, 0, 0.26), 0 12px 24px rgba(0, 0, 0, 0.3);--lb-shadow-xl:\n 0 8px 16px rgba(0, 0, 0, 0.28), 0 18px 36px rgba(0, 0, 0, 0.34);--lb-glass-bg: rgba(32, 32, 32, 0.62);--lb-glass-bg-subtle: rgba(32, 32, 32, 0.38);--lb-glass-border: rgba(126, 179, 193, 0.18);--lb-scrim: rgba(0, 0, 0, 0.45);--lb-scrollbar-size: 8px;--lb-scrollbar-size-thin: 5px;--lb-scrollbar-radius: 9999px;--lb-scrollbar-track: transparent;--lb-scrollbar-rail: var(--lb-action-hover);--lb-scrollbar-thumb-border: 3px solid var(--lb-bg-default);--lb-scrollbar-fade-duration: 0.28s;--lb-scrollbar-thumb-solid: color-mix(\n in srgb,\n var(--lb-primary-main) 30%,\n transparent\n );--lb-scrollbar-thumb-solid-hover: color-mix(\n in srgb,\n var(--lb-primary-main) 56%,\n transparent\n );--lb-scrollbar-thumb-solid-active: var(--lb-primary-main);--lb-scrollbar-thumb-gradient: linear-gradient(\n 180deg,\n color-mix(in srgb, var(--lb-soft-primary-bg) 92%, var(--lb-primary-light)) 0%,\n color-mix(in srgb, var(--lb-soft-primary-bg-hover) 88%, var(--lb-primary-main)) 100%\n );--lb-scrollbar-thumb-gradient-hover: linear-gradient(\n 180deg,\n var(--lb-primary-light) 0%,\n var(--lb-primary-main) 100%\n );--lb-scrollbar-thumb-gradient-active: linear-gradient(\n 180deg,\n var(--lb-primary-main) 0%,\n var(--lb-primary-dark) 100%\n );--lb-scrollbar-thumb-shadow:\n 0 1px 3px rgba(0, 0, 0, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.08);--lb-scrollbar-thumb-shadow-hover:\n 0 2px 8px rgba(0, 0, 0, 0.36), 0 0 12px var(--lb-focus-glow),\n inset 0 1px 0 rgba(255, 255, 255, 0.12);--lb-soft-primary-text: #a3c9d2;--lb-soft-primary-bg: rgba(126, 179, 193, 0.16);--lb-soft-primary-bg-hover: rgba(126, 179, 193, 0.26);--lb-soft-primary-bg-active: rgba(126, 179, 193, 0.32);--lb-soft-secondary-text: #e2b095;--lb-soft-secondary-bg: rgba(208, 147, 114, 0.16);--lb-soft-secondary-bg-hover: rgba(208, 147, 114, 0.26);--lb-soft-secondary-bg-active: rgba(208, 147, 114, 0.32);--lb-soft-error-text: #e8a6b1;--lb-soft-error-bg: rgba(219, 128, 144, 0.16);--lb-soft-error-bg-hover: rgba(219, 128, 144, 0.26);--lb-soft-error-bg-active: rgba(219, 128, 144, 0.32);--lb-soft-warning-text: #f2bd78;--lb-soft-warning-bg: rgba(232, 154, 62, 0.16);--lb-soft-warning-bg-hover: rgba(232, 154, 62, 0.26);--lb-soft-warning-bg-active: rgba(232, 154, 62, 0.32);--lb-soft-info-text: #a6cce5;--lb-soft-info-bg: rgba(123, 176, 212, 0.16);--lb-soft-info-bg-hover: rgba(123, 176, 212, 0.26);--lb-soft-info-bg-active: rgba(123, 176, 212, 0.32);--lb-soft-success-text: #9ed5b6;--lb-soft-success-bg: rgba(116, 189, 151, 0.16);--lb-soft-success-bg-hover: rgba(116, 189, 151, 0.26);--lb-soft-success-bg-active: rgba(116, 189, 151, 0.32)}"},{"filePath":"styles/docs-theme.css","content":"@font-face{font-family:\"The Future\";src:url(\"https://labelbox.com/static/fonts/The-future/the-future-light.woff2\") format(\"woff2\");font-weight:300;font-display:swap}@font-face{font-family:\"The Future\";src:url(\"https://labelbox.com/static/fonts/The-future/the-future-regular.woff2\") format(\"woff2\");font-weight:400;font-display:swap}@font-face{font-family:\"The Future\";src:url(\"https://labelbox.com/static/fonts/The-future/the-future-medium.woff2\") format(\"woff2\");font-weight:500 700;font-display:swap}@font-face{font-family:\"IBM Plex Mono\";src:url(\"https://labelbox.com/static/fonts/IBM-Plex-Mono/woff2/IBMPlexMono-Regular.woff2\") format(\"woff2\");font-weight:400;font-display:swap}@font-face{font-family:\"IBM Plex Mono\";src:url(\"https://labelbox.com/static/fonts/IBM-Plex-Mono/woff2/IBMPlexMono-Medium.woff2\") format(\"woff2\");font-weight:500;font-display:swap}@font-face{font-family:\"IBM Plex Mono\";src:url(\"https://labelbox.com/static/fonts/IBM-Plex-Mono/woff2/IBMPlexMono-SemiBold.woff2\") format(\"woff2\");font-weight:600 700;font-display:swap}html:root{--gray-50: 250 248 245;--gray-100: 241 237 230;--gray-200: 229 223 213;--gray-300: 212 204 191;--gray-400: 176 168 155;--gray-500: 132 124 112;--gray-600: 95 87 77;--gray-700: 70 64 58;--gray-800: 43 39 36;--gray-900: 26 23 20;--gray-950: 17 15 13;--lb-font-mono: \"IBM Plex Mono\", \"JetBrains Mono\", ui-monospace, SFMono-Regular, Menlo, monospace;--font-family-mono-custom: var(--lb-font-mono);--lb-panel: var(--lb-bg-light);--lb-code-bg: var(--lb-color-grey-900);--lb-code-border: color-mix(in srgb, var(--lb-primary-main) 22%, transparent);color-scheme:light}html.dark:root{--lb-panel: var(--lb-bg-paper);--lb-code-bg: var(--lb-bg-default);color-scheme:dark}html:root{--mint-background: var(--lb-code-bg);--mint-color-background: var(--lb-code-bg);--mint-color-text: var(--lb-color-grey-100);--mint-token-keyword: var(--lb-color-primary-300);--mint-token-string: var(--lb-color-success-300);--mint-token-string-expression: var(--lb-tag-mint);--mint-token-constant: var(--lb-color-warning-300);--mint-token-function: var(--lb-color-secondary-300);--mint-token-parameter: var(--lb-tag-lavender);--mint-token-comment: var(--lb-color-grey-500);--mint-token-punctuation: var(--lb-color-grey-400);--mint-token-link: var(--lb-color-primary-300);--mint-ansi-black: var(--lb-color-grey-800);--mint-ansi-red: var(--lb-color-error-300);--mint-ansi-green: var(--lb-color-success-300);--mint-ansi-yellow: var(--lb-color-warning-300);--mint-ansi-blue: var(--lb-color-info-300);--mint-ansi-magenta: var(--lb-tag-fuchsia);--mint-ansi-cyan: var(--lb-color-primary-300);--mint-ansi-white: var(--lb-color-grey-100);--mint-ansi-bright-black: var(--lb-color-grey-600);--mint-ansi-bright-red: var(--lb-color-error-200);--mint-ansi-bright-green: var(--lb-color-success-200);--mint-ansi-bright-yellow: var(--lb-color-warning-200);--mint-ansi-bright-blue: var(--lb-color-info-200);--mint-ansi-bright-magenta: var(--lb-tag-lavender);--mint-ansi-bright-cyan: var(--lb-color-primary-200);--mint-ansi-bright-white: var(--lb-color-grey-50)}html,body{background-color:var(--lb-panel)}::selection{background:var(--lb-soft-primary-bg-active);color:var(--lb-text-primary)}:focus-visible{outline:var(--lb-focus-outline);outline-offset:var(--lb-focus-outline-offset)}*{scrollbar-width:thin;scrollbar-color:var(--lb-scrollbar-thumb-solid) transparent}html #sidebar-content{border-color:var(--lb-divider)}html #navbar>.border-b{border-color:var(--lb-divider)}html #navbar>.bg-background-light{background:var(--lb-panel)}html img:is([src$=\"recursion-mark.svg\"],[src$=\"labelbox-mark.svg\"])[class]{object-position:-9999px 0;background-color:var(--lb-text-primary);-webkit-mask:center / contain no-repeat;mask:center / contain no-repeat}html img[src$=\"recursion-mark.svg\"][class]{-webkit-mask-image:url(\"/images/recursion-mark.svg\");mask-image:url(\"/images/recursion-mark.svg\")}html img[src$=\"labelbox-mark.svg\"][class]{-webkit-mask-image:url(\"/images/labelbox-mark.svg\");mask-image:url(\"/images/labelbox-mark.svg\")}html #navbar .nav-dropdown-products-selector-trigger{gap:0.55rem;height:2.125rem;padding:0 0.75rem 0 0.4rem;border:1px solid var(--lb-border-main);border-radius:9999px;background:var(--lb-glass-bg);color:var(--lb-text-primary);font-weight:500;transition:border-color var(--lb-duration-fast) var(--lb-ease), background-color var(--lb-duration-fast) var(--lb-ease)}html #navbar .nav-dropdown-products-selector-trigger:hover,html #navbar .nav-dropdown-products-selector-trigger[aria-expanded=\"true\"]{border-color:var(--lb-border-dark);background:var(--lb-soft-primary-bg)!important}html #navbar .nav-dropdown-products-selector-trigger>svg:first-child{box-sizing:content-box;width:0.875rem;height:0.875rem;padding:0.3rem;border-radius:9999px;background:var(--lb-primary-main);color:var(--lb-primary-contrast-text)}html .nav-dropdown-products-selector-content{border:1px solid var(--lb-border-main);border-radius:1rem;background:var(--lb-glass-bg);box-shadow:var(--lb-shadow-lg);backdrop-filter:var(--lb-blur-panel);-webkit-backdrop-filter:var(--lb-blur-panel)}html .nav-dropdown-products-selector-item{border-radius:0.75rem}html .nav-dropdown-products-selector-item:hover,html .nav-dropdown-products-selector-item[data-active]{background:var(--lb-action-hover)}html .nav-dropdown-products-selector-item-icon{color:var(--lb-primary-main)}html .nav-dropdown-products-selector-item-title{color:var(--lb-text-primary);font-weight:600}html .nav-dropdown-products-selector-item-description{color:var(--lb-text-muted)}html #navbar .navbar-link a,html #navbar a.navbar-link{color:var(--lb-text-secondary)}html #navbar .navbar-link a:hover,html #navbar a.navbar-link:hover{color:var(--lb-text-primary)}html #topbar-cta-button a,html a#topbar-cta-button{border-radius:var(--lb-radius);background:var(--lb-primary-main);color:var(--lb-primary-contrast-text);box-shadow:var(--lb-shadow-xs), inset 0 1px 0 color-mix(in srgb, var(--lb-color-grey-50) 16%, transparent);transition:background-color var(--lb-duration-fast) var(--lb-ease)}html #topbar-cta-button a:hover,html a#topbar-cta-button:hover{background:var(--lb-primary-dark)}html #topbar-cta-button a>span.absolute{display:none}html #topbar-cta-button :is(span,svg){color:var(--lb-primary-contrast-text)}html .nav-tabs-item{color:var(--lb-text-secondary)}html .nav-tabs-item:hover,html .nav-tabs-item[data-active]{color:var(--lb-text-primary)}html #navbar div:has(>#search-bar-entry){gap:0.5rem}html :is(#search-bar-entry,#assistant-entry){height:2.25rem;border:1px solid var(--lb-border-main);border-radius:9999px;background:var(--lb-bg-paper);color:var(--lb-text-muted);box-shadow:none;filter:none;transition:border-color var(--lb-duration-fast) var(--lb-ease),\n background-color var(--lb-duration-fast) var(--lb-ease)}html :is(#search-bar-entry,#assistant-entry):hover{border-color:var(--lb-border-dark);background:var(--lb-bg-paper);filter:none}html #assistant-entry>span:not(:last-child){color:var(--lb-text-secondary)}html :is(#search-bar-entry>span,#assistant-entry>span:last-child){padding:0.05rem 0.4rem;border:1px solid var(--lb-divider);border-radius:0.375rem;color:var(--lb-text-muted);font-family:var(--lb-font-mono);font-weight:500}html .sidebar-group-header{font-family:var(--lb-font-mono);font-size:0.6875rem;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--lb-text-muted)}html #sidebar-content li>a,html #sidebar-content li>button{border-radius:0.625rem;color:var(--lb-text-secondary);transition:background-color var(--lb-duration-fast) var(--lb-ease), color var(--lb-duration-fast) var(--lb-ease)}html #sidebar-content li>a:hover,html #sidebar-content li>button:hover{background:var(--lb-action-hover);color:var(--lb-text-primary)}html #sidebar-content li[data-active-nav-item]>a{position:relative;background:var(--lb-soft-primary-bg);color:var(--lb-soft-primary-text);text-shadow:none;font-weight:500}html #sidebar-content li[data-active-nav-item]>a::before{content:\"\";position:absolute;left:0.3rem;top:50%;width:3px;height:1rem;border-radius:9999px;background:var(--lb-primary-main);transform:translateY(-50%)}html .eyebrow{display:none}html #page-title{font-family:var(--lb-font-display);font-weight:400;font-size:clamp(1.875rem, 1.5rem + 0.9vw, 2.25rem);line-height:1.1;letter-spacing:-0.02em;color:var(--lb-text-primary)}html .mdx-content{--tw-prose-body: var(--lb-text-secondary);--tw-prose-headings: var(--lb-text-primary);--tw-prose-bold: var(--lb-text-primary);--tw-prose-links: var(--lb-primary-main);--tw-prose-counters: var(--lb-text-muted);--tw-prose-bullets: var(--lb-color-primary-400);--tw-prose-hr: var(--lb-divider);--tw-prose-quotes: var(--lb-text-primary);--tw-prose-quote-borders: var(--lb-primary-main);--tw-prose-th-borders: var(--lb-border-main);--tw-prose-td-borders: var(--lb-divider);--tw-prose-invert-body: var(--lb-text-secondary);--tw-prose-invert-headings: var(--lb-text-primary);--tw-prose-invert-bold: var(--lb-text-primary);--tw-prose-invert-links: var(--lb-primary-main);--tw-prose-invert-bullets: var(--lb-color-primary-400);color:var(--lb-text-secondary)}html .mdx-content :is(h2,h3,h4){font-family:var(--lb-font-display);font-weight:400;color:var(--lb-text-primary);letter-spacing:-0.012em}html .mdx-content>h2{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--lb-divider);font-size:1.625rem;line-height:1.2}html .mdx-content>h2:first-child{margin-top:0;padding-top:0;border-top:0}html .mdx-content>h3{font-size:1.25rem}html .mdx-content a:not(.card,[class*=\"not-prose\"],.hub *){color:var(--lb-primary-main);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--lb-primary-main) 35%, transparent);text-decoration-thickness:1px;text-underline-offset:3px;border-bottom:0;font-weight:500;transition:text-decoration-color var(--lb-duration-fast) var(--lb-ease)}html .mdx-content a:not(.card,[class*=\"not-prose\"],.hub *):hover{text-decoration-color:currentColor}html .mdx-content :not(pre)>code{padding:0.12em 0.4em;border:1px solid var(--lb-divider);border-radius:0.375rem;background:color-mix(in srgb, var(--lb-primary-main) 6%, var(--lb-panel));color:var(--lb-text-primary);font-family:var(--lb-font-mono);font-size:0.85em;font-weight:500}html .mdx-content :not(pre)>code::before,html .mdx-content :not(pre)>code::after{content:none}html .mdx-content table{border-collapse:separate;border-spacing:0;font-size:0.875rem}html .mdx-content thead th{background:var(--lb-bg-paper);color:var(--lb-text-primary);font-weight:600;border-bottom:1px solid var(--lb-border-main)}html .mdx-content tbody td{border-bottom:1px solid var(--lb-divider)}html .mdx-content tbody tr:hover td{background:var(--lb-action-hover)}html .mdx-content :is(thead th,tbody td){padding:0.625rem 0.875rem}html .code-block,html .code-group{border:1px solid var(--lb-code-border);border-radius:0.875rem;background:var(--lb-code-bg);box-shadow:var(--lb-shadow-md), inset 0 1px 0 color-mix(in srgb, var(--lb-color-grey-50) 5%, transparent);overflow:hidden}html .code-group .code-block{border:0;box-shadow:none}html .code-block [data-component-part=\"code-block-root\"],html .code-block pre{background-color:var(--lb-code-bg)!important}html :is(.code-block,.code-group) :is(pre,code,.line){font-family:var(--lb-font-mono)}html :is(.code-block,.code-group) :is(.whitespace-pre,pre,code,.line){white-space:pre-wrap;overflow-wrap:anywhere}html :is(.code-block,.code-group) pre>code{width:auto!important}html #content-side-layout :is(.whitespace-pre,pre,code,.line){white-space:pre;overflow-wrap:normal}html #content-side-layout pre>code{width:max-content!important}html .code-block-copy-button button{background:transparent!important;color:var(--lb-color-grey-400)}html .code-block-copy-button button:hover{color:var(--lb-color-grey-50)}html .callout{--callout-bg: var(--lb-soft-primary-bg);--callout-accent: var(--lb-primary-main);border:1px solid color-mix(in srgb, var(--callout-accent) 22%, transparent);border-radius:0.875rem;background:color-mix(in srgb, var(--callout-bg) 70%, var(--lb-panel));box-shadow:inset 3px 0 0 var(--callout-accent)}html .callout [data-component-part=\"callout-icon\"]{color:var(--callout-accent)}html .callout [data-component-part=\"callout-icon\"] svg{fill:currentColor;color:currentColor}html .callout [data-component-part=\"callout-content\"]{color:var(--lb-text-primary)}html .callout[data-callout-type=\"info\"]{--callout-bg: var(--lb-soft-info-bg);--callout-accent: var(--lb-info-main)}html .callout[data-callout-type=\"tip\"],html .callout[data-callout-type=\"check\"]{--callout-bg: var(--lb-soft-success-bg);--callout-accent: var(--lb-success-main)}html .callout[data-callout-type=\"warning\"]{--callout-bg: var(--lb-soft-warning-bg);--callout-accent: var(--lb-warning-main)}html .callout[data-callout-type=\"danger\"]{--callout-bg: var(--lb-soft-error-bg);--callout-accent: var(--lb-error-main)}html .card{border:1px solid var(--lb-border-main);border-radius:1rem;background:var(--lb-bg-light);box-shadow:var(--lb-shadow-xs);transition:transform var(--lb-duration-base) var(--lb-ease),\n box-shadow var(--lb-duration-base) var(--lb-ease),\n border-color var(--lb-duration-base) var(--lb-ease)}html .card:hover{transform:translateY(-2px);border-color:var(--lb-border-dark)!important;box-shadow:var(--lb-shadow-md), 0 0 0 4px var(--lb-card-teal-glow)}html .card [data-component-part=\"card-icon\"]{box-sizing:content-box;width:1.125rem;height:1.125rem;padding:0.5rem;border-radius:0.625rem;background:var(--lb-soft-primary-bg);color:var(--lb-soft-primary-text);fill:var(--lb-soft-primary-text)}html .card [data-component-part=\"card-icon\"]>svg{width:1.125rem;height:1.125rem;background-color:var(--lb-soft-primary-text)!important}html .card [data-component-part=\"card-title\"]{font-family:var(--lb-font-display);font-weight:500;letter-spacing:-0.005em;color:var(--lb-text-primary)}html .card [data-component-part=\"card-content\"]{color:var(--lb-text-muted);font-size:0.9375rem}html .step [data-component-part=\"step-indicator\"]{background:var(--lb-soft-primary-bg);color:var(--lb-soft-primary-text);box-shadow:0 0 0 4px var(--lb-panel), 0 0 0 5px var(--lb-border-main);font-family:var(--lb-font-mono)}html .step [data-component-part=\"step-line\"]{background:linear-gradient(var(--lb-border-dark), var(--lb-divider))}html .tabs [data-component-part=\"tabs-list\"]{border-color:var(--lb-divider)}html .tabs [data-component-part=\"tab-button\"]{color:var(--lb-text-muted)}html .tabs [data-component-part=\"tab-button\"][data-active=\"true\"]{color:var(--lb-primary-main);border-color:var(--lb-primary-main)}html .accordion,html .accordion-group{border-color:var(--lb-border-main);border-radius:0.875rem;background:var(--lb-bg-light)}html .mermaid svg{--lb-diagram-edge: color-mix(in srgb, var(--lb-primary-main) 55%, var(--lb-color-grey-400));font-family:var(--lb-font-sans)!important}html .mermaid svg :where(.node rect,.node polygon,.node circle,.node path,rect.basic,rect.actor,.cluster rect){fill:var(--lb-bg-light)!important;stroke:var(--lb-border-dark)!important;stroke-width:1px!important;rx:8px;ry:8px}html .mermaid svg .statediagram-state rect.basic{stroke:var(--lb-primary-main)!important}html .mermaid svg :is(.nodeLabel,.node .label,.node text,text.actor,.actor tspan,.cluster-label,.cluster text){color:var(--lb-text-primary)!important;fill:var(--lb-text-primary)!important;font-size:14px!important;font-weight:500!important}html .mermaid svg :is(.flowchart-link,path.transition,.edgePath path,.messageLine0,.messageLine1,line.actor-line){stroke:var(--lb-diagram-edge)!important;stroke-width:1.5px!important}html .mermaid svg line.actor-line{stroke-dasharray:3 4;stroke-width:1px!important}html .mermaid svg :is(marker path,.arrowheadPath){fill:var(--lb-diagram-edge)!important;stroke:var(--lb-diagram-edge)!important}html .mermaid svg :is(.edgeLabel,.edgeLabel p,.edgeLabel span,.labelBkg,text.messageText){background-color:var(--lb-bg-light)!important;color:var(--lb-text-secondary)!important;fill:var(--lb-text-secondary)!important;font-size:12px!important;font-weight:400!important}html .mermaid svg .edgeLabel rect{fill:var(--lb-bg-light)!important;opacity:1!important}html .mermaid svg circle.state-start,html .mermaid svg[aria-roledescription=\"stateDiagram\"] .node .outer-path>g>path{fill:var(--lb-primary-main)!important;stroke:var(--lb-primary-main)!important}html .mermaid svg[aria-roledescription=\"stateDiagram\"] .node .outer-path>path{fill:var(--lb-bg-light)!important;stroke:var(--lb-primary-main)!important}html .toc-item>a{color:var(--lb-text-muted);border-color:var(--lb-divider)}html .toc-item>a:hover{color:var(--lb-text-primary)}html .toc-item[data-active-deepest]>a{color:var(--lb-primary-main);border-color:var(--lb-primary-main)}html #pagination a{border:1px solid var(--lb-border-main);border-radius:1rem;background:var(--lb-bg-light);transition:border-color var(--lb-duration-fast) var(--lb-ease), box-shadow var(--lb-duration-fast) var(--lb-ease)}html #pagination a:hover{border-color:var(--lb-border-dark);box-shadow:var(--lb-shadow-sm)}html #footer{border-color:var(--lb-divider)}html .method-pill,html .method-nav-pill{font-family:var(--lb-font-mono);letter-spacing:0.02em}html .method-pill[class*=\"bg-green\"],html .method-nav-pill>span[class*=\"bg-green\"]{background-color:var(--lb-soft-success-bg);color:var(--lb-soft-success-text)}html .method-pill[class*=\"bg-blue\"],html .method-nav-pill>span[class*=\"bg-blue\"]{background-color:var(--lb-soft-info-bg);color:var(--lb-soft-info-text)}html .method-pill[class*=\"bg-yellow\"],html .method-pill[class*=\"bg-orange\"],html .method-nav-pill>span[class*=\"bg-yellow\"],html .method-nav-pill>span[class*=\"bg-orange\"]{background-color:var(--lb-soft-warning-bg);color:var(--lb-soft-warning-text)}html .method-pill[class*=\"bg-red\"],html .method-nav-pill>span[class*=\"bg-red\"],html [class*=\"bg-red-100/50\"][class*=\"text-red-600\"]{background-color:var(--lb-soft-error-bg);color:var(--lb-soft-error-text)}html .method-nav-pill>span[class*=\"3064E3\"]{background-color:var(--lb-primary-main);color:var(--lb-primary-contrast-text)}html .tryit-button{border-radius:10px;background-color:var(--lb-primary-main);color:var(--lb-primary-contrast-text);transition:background-color var(--lb-duration-fast) var(--lb-ease)}html .tryit-button:hover{opacity:1;background-color:var(--lb-primary-dark)}@media (prefers-reduced-motion: reduce){html .card,html .card:hover{transform:none;transition:none}}"},{"filePath":"styles/home.css","content":".hub{--hub-container: 92rem;--hub-gutter: calc(var(--spacing, 0.25rem) * 4);position:relative;color:var(--lb-text-primary);font-family:var(--lb-font-sans);overflow-x:clip}@media (min-width: 1024px){.hub{--hub-gutter: calc(var(--spacing, 0.25rem) * 9)}}html:has(.hub:not(.hub--embedded)),html:has(.hub:not(.hub--embedded)) body{background-color:var(--lb-bg-default)}html:has(.hub:not(.hub--embedded)) #navbar>.bg-background-light{background:color-mix(in srgb, var(--lb-bg-default) 82%, transparent);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2)}html:has(.hub:not(.hub--embedded)) #navbar div:has(>.nav-tabs){display:none}.hub .hub-icon{display:block;flex:none}.hub-wrap{box-sizing:border-box;width:100%;max-width:var(--hub-container);margin:0 auto;padding:0 var(--hub-gutter)}.hub-hero{padding:clamp(48px, 6vw, 96px) 0 clamp(8px, 2vw, 24px)}.hub-hero__grid{display:grid;grid-template-columns:minmax(0, 460px) minmax(0, 1fr);gap:48px;align-items:center}.hub .hub-display{margin:0;font-family:var(--lb-font-display);font-size:clamp(2.4rem, 1.1rem + 3.2vw, 3.25rem);font-weight:400;line-height:1.04;letter-spacing:-0.032em;color:var(--lb-text-primary)}.hub-display__accent{display:block;color:var(--lb-text-muted)}.hub .hub-lede{max-width:36rem;margin:22px 0 0;font-size:clamp(1.02rem, 0.98rem + 0.2vw, 1.125rem);line-height:1.6;color:var(--lb-text-secondary)}.hub-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.hub .hub-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:1px solid transparent;border-radius:10px;font-size:14.5px;font-weight:500;transition:background-color var(--lb-duration-fast) var(--lb-ease),\n border-color var(--lb-duration-fast) var(--lb-ease)}.hub .hub-btn .hub-icon{transition:transform var(--lb-duration-fast) var(--lb-ease)}.hub .hub-btn:hover .hub-icon{transform:translateX(2px)}.hub .hub-btn--primary{background:var(--lb-primary-main);color:var(--lb-primary-contrast-text)}.hub .hub-btn--primary:hover{background:var(--lb-primary-dark)}.hub .hub-btn--ghost{border-color:var(--lb-border-main);color:var(--lb-text-primary)}.hub .hub-btn--ghost:hover{border-color:var(--lb-border-dark);background:var(--lb-action-hover)}.hub-hero__copy{position:relative;z-index:20}.hub-hero__setup{display:flex;margin-top:14px}.hub-agents{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start}.hub-agents__trigger{display:inline-flex;align-items:center;gap:10px;margin-left:-12px;padding:6px 12px;border:0;border-radius:10px;background:transparent;color:var(--lb-text-secondary);font:inherit;font-size:15px;line-height:24px;cursor:pointer;transition:background-color var(--lb-duration-fast) var(--lb-ease),\n color var(--lb-duration-fast) var(--lb-ease)}.hub-agents__trigger:hover,.hub-agents__trigger[aria-expanded=\"true\"]{background:var(--lb-action-hover);color:var(--lb-text-primary)}.hub-agents__marks{display:inline-flex;align-items:center;gap:6px;color:var(--lb-text-muted)}.hub-agents__chevron{display:inline-flex;transition:transform var(--lb-duration-base) var(--lb-ease)}.hub-agents__chevron.is-open{transform:rotate(180deg)}.hub-agents__panel{position:absolute;top:calc(100% + 8px);left:-12px;z-index:30;width:min(40rem, calc(100vw - 2rem));padding:12px;border:1px solid var(--lb-border-main);border-radius:16px;background:var(--lb-bg-paper);box-shadow:var(--lb-shadow-lg);animation:hub-rise var(--lb-duration-base) var(--lb-ease) both}.hub-agents__tabs{display:flex;gap:4px}.hub-agents__tab{padding:6px 12px;border:0;border-radius:10px;background:transparent;color:var(--lb-text-secondary);font:inherit;font-size:14px;line-height:20px;cursor:pointer;transition:background-color var(--lb-duration-fast) var(--lb-ease),\n color var(--lb-duration-fast) var(--lb-ease)}.hub-agents__tab:hover{background:var(--lb-action-hover);color:var(--lb-text-primary)}.hub-agents__tab.is-active{background:var(--lb-action-selected);color:var(--lb-text-primary)}.hub-agents__code{position:relative;margin-top:12px;overflow:hidden;border:1px solid var(--lb-border-main);border-radius:10px;background:var(--lb-bg-default)}.hub .hub-agents__pre{max-height:16rem;margin:0;padding:16px 48px 32px 16px;overflow:auto;background:transparent;color:var(--lb-text-primary);font-family:var(--lb-font-mono);font-size:12.5px;line-height:20px;white-space:pre-wrap;overflow-wrap:anywhere}.hub-agents__fade{position:absolute;right:0;bottom:0;left:0;height:40px;background:linear-gradient(to top, var(--lb-bg-default), transparent);pointer-events:none}.hub-agents__copy{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:10px;background:var(--lb-bg-default);color:var(--lb-text-secondary);cursor:pointer;transition:background-color var(--lb-duration-fast) var(--lb-ease),\n color var(--lb-duration-fast) var(--lb-ease)}.hub-agents__copy:hover{background:var(--lb-action-hover);color:var(--lb-text-primary)}.hub .hub-agents__hint{margin:10px 0 0;padding:0 4px;color:var(--lb-text-muted);font-size:14px;line-height:20px}.hub-agents__guide{margin-left:6px;color:var(--lb-primary-main);font-weight:500;text-decoration:none}.hub-agents__guide:hover{text-decoration:underline}@keyframes hub-rise{from{opacity:0;transform:translateY(6px)}}.hub-hero__stage{min-width:0;padding:6px;border:1px solid var(--lb-divider);border-radius:18px;background:var(--lb-bg-paper)}.hub-console{--hub-console-canvas: var(--lb-bg-default);--hub-console-surface: var(--lb-bg-light);position:relative;width:100%;overflow:hidden;border-radius:12px;background:var(--hub-console-canvas);color:var(--lb-text-primary);font-family:var(--lb-font-sans);user-select:none}.dark .hub-console{--hub-console-surface: var(--lb-bg-paper)}.hub-console .hue-violet{--hue: var(--lb-tag-violet)}.hub-console .hue-teal{--hue: var(--lb-tag-teal)}.hub-console .hue-terracotta{--hue: var(--lb-tag-terracotta)}.hub-console .hue-sky{--hue: var(--lb-info-main)}.hub-console .hue-green{--hue: var(--lb-success-main)}.hub-console .hue-amber{--hue: var(--lb-warning-main)}.hub-console .hue-crimson{--hue: var(--lb-error-main)}.hub-console .hue-slate{--hue: var(--lb-text-muted)}.hc-stage{position:absolute;top:0;left:0;display:grid;grid-template-columns:188px minmax(0, 1fr);transform-origin:0 0;font-size:12.5px;line-height:1.35}.hc-nav{display:flex;flex-direction:column;min-height:0;padding:12px 10px;border-right:1px solid var(--lb-divider);color:var(--lb-text-secondary)}.hc-brand{display:flex;align-items:center;gap:10px;padding:2px 6px 14px;color:var(--lb-text-muted)}.hc-brand__mark{color:var(--lb-text-primary)}.hc-brand__text{display:flex;flex:1;flex-direction:column;min-width:0}.hc-brand__text b{font-size:13px;font-weight:600;color:var(--lb-text-primary)}.hc-brand__text small{font-size:10.5px;color:var(--lb-text-muted)}.hc-nav__list,.hc-nav__foot{display:flex;flex-direction:column;gap:2px}.hc-nav__foot{margin-top:auto;padding-top:10px;border-top:1px solid var(--lb-divider)}.hc-nav__item{display:flex;align-items:center;gap:10px;height:30px;padding:0 8px;border-radius:7px;font-size:13px;white-space:nowrap}.hc-nav__item>span{flex:1}.hc-nav__item.is-sub{margin-left:12px}.hc-nav__item.is-active{background:var(--lb-action-selected);color:var(--lb-text-primary)}.hc-nav__item--small{height:26px;font-size:11.5px;color:var(--lb-text-muted)}.hc-main{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0;padding:10px 14px 14px}.hc-header{display:flex;flex:none;align-items:center;gap:10px;height:40px}.hc-sqbtn{display:grid;flex:none;place-items:center;width:26px;height:26px;border:1px solid var(--lb-border-main);border-radius:7px;color:var(--lb-text-secondary)}.hc-sqbtn--sm{width:20px;height:20px;border-radius:5px}.hc-sqbtn--on{border-color:var(--lb-primary-main);color:var(--lb-primary-main)}.hc-title{font-size:14px;font-weight:600;white-space:nowrap}.hc-state{display:inline-flex;align-items:center;gap:6px;color:var(--hue);font-size:12.5px;font-weight:500;white-space:nowrap}.hc-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--hue, currentColor)}.hc-dot.is-live{animation:hc-pulse 1.2s ease-in-out infinite}.hc-id{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--lb-text-muted);font-family:var(--lb-font-mono);font-size:11.5px}.hc-metrics{display:flex;gap:22px;margin-left:auto}.hc-metric{display:flex;flex-direction:column;gap:1px;white-space:nowrap}.hc-metric small{color:var(--lb-text-muted);font-size:9.5px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase}.hc-metric b{font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums}.hc-more{color:var(--lb-text-muted)}.hc-btn{display:inline-flex;flex:none;align-items:center;justify-content:center;height:30px;padding:0 12px;border:1px solid var(--lb-border-main);border-radius:8px;background:var(--hub-console-surface);font-size:12.5px;font-weight:600;white-space:nowrap}.hc-toolbar{display:flex;flex:none;align-items:center;gap:8px;height:28px}.hc-find{display:inline-flex;align-items:center;gap:8px;width:176px;height:26px;padding:0 12px;border:1px solid var(--lb-border-main);border-radius:999px;color:var(--lb-text-muted);font-size:12px}.hc-spacer{flex:1}.hc-select{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 8px 0 10px;border:1px solid var(--lb-border-main);border-radius:7px;color:var(--lb-text-secondary);font-size:12px}.hc-zoom{display:inline-flex;gap:10px;padding:0 6px;color:var(--lb-text-secondary);font-size:11.5px;font-variant-numeric:tabular-nums}.hc-zoom i{font-style:normal;color:var(--lb-text-muted)}.hc-card{border:1px solid var(--lb-border-main);border-radius:8px;background:var(--hub-console-surface)}.hc-strip{position:relative;display:flex;flex:none;flex-direction:column;gap:6px;padding:28px 14px 18px}.hc-lane{position:relative;height:18px;border:1px solid var(--lb-divider);border-radius:999px;background:var(--lb-bg-default)}.hc-mark{position:absolute;top:3px;bottom:3px;width:3px;margin-left:-1px;border-radius:2px;background:var(--hue)}.hc-mark.is-span{margin-left:0;border-radius:3px;background:color-mix(in srgb, var(--hue) 72%, transparent)}.hc-lane__pill{position:absolute;z-index:1;top:50%;margin-left:2px;padding:1px 8px;transform:translateY(-50%);border:1px solid color-mix(in srgb, var(--hue) 55%, transparent);border-radius:999px;background:color-mix(in srgb, var(--hue) 30%, var(--hub-console-surface));color:var(--lb-text-primary);font-size:10.5px;font-weight:600;white-space:nowrap}.hc-lane__pill.is-idle{opacity:0.35}.hc-lane__end{position:absolute;top:1px;bottom:1px;width:10px;margin-left:-10px;border:1.5px solid var(--lb-text-muted);border-radius:5px}.hc-playhead{position:absolute;z-index:2;top:10px;bottom:12px;width:1px;background:var(--lb-primary-main)}.hc-playhead__time{position:absolute;top:-4px;left:50%;padding:1px 6px;transform:translateX(-50%);border:1px solid var(--lb-border-main);border-radius:4px;background:var(--lb-bg-light);font-family:var(--lb-font-mono);font-size:10px;white-space:nowrap}.hc-body{display:grid;flex:1;grid-template-columns:minmax(0, 1fr) 272px;gap:12px;min-height:0}.hc-left{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0}.hc-outcome{display:flex;flex:none;align-items:center;gap:10px;height:36px;padding:0 12px;white-space:nowrap}.hc-outcome b{font-weight:600}.hc-objective{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--lb-text-secondary)}.hc-details{color:var(--lb-text-secondary);font-size:12px;font-weight:600}.hc-transcript{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}.hc-feed{display:flex;flex:1;flex-direction:column;justify-content:flex-end;gap:6px;min-height:0;padding:10px 12px;overflow:hidden;mask-image:linear-gradient(to bottom, transparent, black 64px)}.hc-row{flex:none;animation:hc-in 420ms var(--lb-ease) both}.hc-tool{display:flex;align-items:center;gap:8px;min-width:0;height:30px;padding:0 10px;border:1px solid var(--lb-divider);border-radius:6px;color:var(--lb-text-muted);white-space:nowrap}.hc-tool b{color:var(--lb-text-primary);font-family:var(--lb-font-mono);font-size:12px;font-weight:600}.hc-arg{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--lb-text-secondary);font-family:var(--lb-font-mono);font-size:11.5px}.hc-ms{color:var(--lb-text-muted);font-family:var(--lb-font-mono);font-size:11px}.hc-thread{padding:1px 7px;border-radius:999px;background:color-mix(in srgb, var(--hue) 30%, var(--hub-console-surface));color:var(--lb-text-primary);font-size:10.5px;font-weight:600}.hc-chip{padding:2px 7px;border-radius:4px;background:var(--lb-action-selected);color:var(--lb-text-secondary);font-size:10.5px;font-weight:600}.hc-msg{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--lb-divider);border-radius:6px;line-height:1.45}.hc-msg>span{flex:1}.hc-msg>svg{color:var(--lb-text-muted)}.hc-msg.is-user{flex-direction:column;align-items:flex-start;gap:2px;border-color:color-mix(in srgb, var(--lb-info-main) 35%, transparent);background:color-mix(in srgb, var(--lb-info-main) 8%, transparent)}.hc-msg small{color:var(--lb-info-main);font-size:10.5px;font-weight:600}.hc-statusline{display:flex;align-items:center;justify-content:center;gap:6px;height:22px;color:var(--lb-text-secondary);font-size:11px;font-weight:500}.hc-composer{flex:none;padding:10px 12px 12px;border-top:1px solid var(--lb-divider)}.hc-input{height:44px;padding:9px 11px;border:1px solid var(--lb-border-main);border-radius:6px;background:var(--lb-bg-default);color:var(--lb-text-muted)}.hc-composer__foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px;color:var(--lb-text-muted);font-size:11px}.hc-send{padding:5px 14px;border-radius:6px;background:color-mix(in srgb, var(--lb-primary-main) 30%, var(--hub-console-surface));color:var(--lb-text-secondary);font-size:12px;font-weight:600}.hc-rail{display:flex;flex-direction:column;min-height:0;overflow:hidden}.hc-tabs{display:flex;flex:none;gap:14px;padding:0 12px;border-bottom:1px solid var(--lb-divider)}.hc-tabs span{margin-bottom:-1px;padding:9px 0 8px;border-bottom:2px solid transparent;color:var(--lb-text-muted);font-size:12px;font-weight:500}.hc-tabs .is-active{border-bottom-color:var(--lb-primary-main);color:var(--lb-primary-main)}.hc-sect{flex:none;padding:10px 12px 12px;border-bottom:1px solid var(--lb-divider)}.hc-sect--last{border-bottom:0}.hc-sect__title{margin-bottom:6px;font-size:12.5px;font-weight:600;color:var(--lb-text-primary)}.hub-console .hc-note{margin:0 0 6px;color:var(--lb-text-secondary);font-size:12px;line-height:1.4}.hc-kv{display:grid;grid-template-columns:104px minmax(0, 1fr);gap:8px;padding:3px 0;font-size:12px}.hc-kv span{color:var(--lb-text-secondary)}.hc-kv b{font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.hc-kv--title{grid-template-columns:minmax(0, 1fr) auto}.hc-kv--title .hc-sect__title{margin:0;color:var(--lb-text-primary)}.hc-spark{display:block;width:100%;height:44px;margin-top:6px}.hc-spark__area{fill:color-mix(in srgb, var(--lb-primary-main) 18%, transparent)}.hc-spark__line{fill:none;stroke:var(--lb-primary-main);stroke-width:1.5;vector-effect:non-scaling-stroke}.hc-stage.is-compact{grid-template-columns:minmax(0, 1fr)}.hc-stage.is-compact .hc-nav,.hc-stage.is-compact .hc-metric--model,.hc-stage:is(.is-medium,.is-compact) .hc-rail,.hc-stage:is(.is-medium,.is-compact) .hc-id,.hc-stage:is(.is-medium,.is-compact) .hc-sqbtn--sm,.hc-stage:is(.is-medium,.is-compact) .hc-more{display:none}.hc-stage:is(.is-medium,.is-compact) .hc-body{grid-template-columns:minmax(0, 1fr)}.hc-stage:is(.is-medium,.is-compact) .hc-sqbtn--on{border-color:var(--lb-border-main);color:var(--lb-text-secondary)}@keyframes hc-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes hc-pulse{50%{opacity:0.35}}.hub-section{padding:clamp(56px, 7vw, 104px) 0 0}.hub-section__head{max-width:40rem;margin-bottom:clamp(24px, 3vw, 36px)}.hub .hub-h2{margin:0;font-family:var(--lb-font-display);font-size:clamp(1.75rem, 1.25rem + 1.3vw, 2.4rem);font-weight:400;line-height:1.1;letter-spacing:-0.022em;color:var(--lb-text-primary);text-wrap:balance}.hub .hub-h2--spaced{margin:clamp(40px, 5vw, 64px) 0 20px;font-size:clamp(1.4rem, 1.15rem + 0.7vw, 1.75rem)}.hub .hub-section__desc{max-width:36rem;margin:12px 0 0;font-size:1.0625rem;line-height:1.6;color:var(--lb-text-secondary)}.hub-paths{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:1px;overflow:hidden;border:1px solid var(--lb-divider);border-radius:14px;background:var(--lb-divider)}.hub .hub-path{display:flex;flex-direction:column;min-height:208px;padding:24px;background:var(--lb-bg-light);color:var(--lb-text-primary);transition:background-color var(--lb-duration-fast) var(--lb-ease)}.hub .hub-path:hover{background:color-mix(in srgb, var(--lb-action-hover) 60%, var(--lb-bg-light))}.hub-path__icon{color:var(--lb-text-secondary)}.hub-path__title{margin-top:28px;font-size:15.5px;font-weight:600;letter-spacing:-0.005em}.hub-path__desc{flex:1;margin-top:6px;font-size:14px;line-height:1.55;color:var(--lb-text-secondary)}.hub-path__cta{display:inline-flex;align-items:center;gap:6px;margin-top:20px;font-size:13.5px;font-weight:500;color:var(--lb-primary-main)}.hub-path__cta .hub-icon{transition:transform var(--lb-duration-fast) var(--lb-ease)}.hub .hub-path:hover .hub-path__cta .hub-icon{transform:translateX(3px)}.hub-split{display:grid;grid-template-columns:minmax(0, 0.82fr) minmax(0, 1.18fr);gap:clamp(28px, 5vw, 72px);align-items:center}.hub-links{display:flex;flex-wrap:wrap;gap:22px;margin-top:26px}.hub .hub-link{display:inline-flex;align-items:center;gap:6px;color:var(--lb-primary-main);font-size:14.5px;font-weight:500}.hub .hub-link .hub-icon{transition:transform var(--lb-duration-fast) var(--lb-ease)}.hub .hub-link:hover .hub-icon{transform:translateX(3px)}html .hub-split__code .code-group{margin:0;box-shadow:none}.hub-caps{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));column-gap:32px}.hub .hub-cap{display:flex;gap:12px;padding:18px 0 20px;border-top:1px solid var(--lb-divider);color:var(--lb-text-primary)}.hub-cap__icon{margin-top:2px;color:var(--lb-text-muted);transition:color var(--lb-duration-fast) var(--lb-ease)}.hub .hub-cap:hover .hub-cap__icon,.hub .hub-cap:hover .hub-cap__title{color:var(--lb-primary-main)}.hub-cap__title,.hub-band__title{display:flex;align-items:center;gap:6px;font-size:14.5px;font-weight:600;transition:color var(--lb-duration-fast) var(--lb-ease)}.hub-cap__text,.hub-band__text{display:block;margin-top:3px;font-size:13.5px;line-height:1.45;color:var(--lb-text-secondary)}.hub-band{display:grid;grid-template-columns:minmax(0, 0.9fr) minmax(0, 1.1fr);gap:clamp(28px, 5vw, 72px);padding:clamp(28px, 4vw, 52px);border:1px solid var(--lb-border-main);border-radius:18px;background:var(--lb-panel);color:var(--lb-text-primary)}.hub-band__copy{align-self:center}.hub-band__links{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));column-gap:28px}.hub .hub-band__link{display:block;padding:16px 0 18px;border-top:1px solid var(--lb-divider);color:var(--lb-text-primary)}.hub-band__title .hub-icon{color:var(--lb-text-muted);transition:transform var(--lb-duration-fast) var(--lb-ease)}.hub .hub-band__link:hover .hub-band__title{color:var(--lb-primary-main)}.hub .hub-band__link:hover .hub-band__title .hub-icon{transform:translateX(2px);color:var(--lb-primary-main)}.hub-foot{margin-top:clamp(64px, 8vw, 112px);padding:28px 0 44px;border-top:1px solid var(--lb-divider)}.hub-foot__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.hub-foot__brand{display:inline-flex;align-items:center;gap:8px;color:var(--lb-text-primary);font-size:14px;font-weight:600}.hub-foot__links{display:flex;flex-wrap:wrap;gap:8px 22px}.hub .hub-foot__links a{font-size:14px;color:var(--lb-text-secondary);transition:color var(--lb-duration-fast) var(--lb-ease)}.hub .hub-foot__links a:hover{color:var(--lb-text-primary)}.hub--embedded{margin-top:8px}.hub--embedded .hub-paths{grid-template-columns:repeat(3, minmax(0, 1fr))}.hub--embedded .hub-path{min-height:196px;background:var(--lb-panel)}.hub--embedded .hub-split{margin-top:clamp(40px, 5vw, 64px);padding:clamp(24px, 3vw, 36px);border:1px solid var(--lb-divider);border-radius:14px}.hub--embedded .hub-caps{grid-template-columns:repeat(3, minmax(0, 1fr))}@media (max-width: 1180px){.hub-hero__grid{grid-template-columns:minmax(0, 1fr);gap:clamp(40px, 6vw, 56px)}.hub-hero__copy{max-width:40rem}}@media (max-width: 1100px){.hub-paths{grid-template-columns:repeat(2, minmax(0, 1fr))}.hub-caps{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media (max-width: 1023px){.hub-split,.hub-band{grid-template-columns:minmax(0, 1fr)}}@media (max-width: 640px){.hub-paths,.hub--embedded .hub-paths,.hub-band__links{grid-template-columns:minmax(0, 1fr)}.hub-caps,.hub--embedded .hub-caps{grid-template-columns:repeat(2, minmax(0, 1fr))}.hub .hub-path,.hub--embedded .hub-path{min-height:0}.hub-path__title{margin-top:18px}.hub-hero__stage{padding:4px;border-radius:14px}}@media (prefers-reduced-motion: reduce){.hc-row,.hc-dot.is-live,.hub-agents__panel{animation:none}}"}],"page":{"pagePath":"api-reference/sessions/get-root-session-tree-and-timeline","slug":"/api-reference/sessions/get-root-session-tree-and-timeline","pageMetadata":{"title":"Get root session tree and timeline","description":"Returns every session in the root session's tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/tree","href":"/api-reference/sessions/get-root-session-tree-and-timeline","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Returns every session in the root session’s tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.\"\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":{"theme":"css-variables"},"config":{},"pageMetadata":{"title":"Get root session tree and timeline","description":"Returns every session in the root session's tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/tree","href":"/api-reference/sessions/get-root-session-tree-and-timeline","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/labelbox-1db23ff4/9ed4bd14b1b0eec8/navbar.js"],"openApiReferenceData":{"operation":{"tags":["Sessions"],"summary":"Get root session tree and timeline","description":"Returns every session in the root session's tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.","operationId":"managedAgentsGetSessionTree","parameters":["5bd53596-2cc3-48c9-9cb2-a3727be54f42","3dc8b23b-5048-4e39-83da-0ca78e3240a8","7080cb6d-b283-4651-ae01-86f583507e0e","4d548c61-713f-4e51-8015-9df33edcbaa5","7bddaa04-f034-4d07-9ee7-831b955309c9","7970c4b5-c589-4956-a904-7dfb70ee1c9e"],"responses":{"200":"5238340b-874b-4760-9ec1-941981572eee","400":"1d6305ac-41f3-4a7b-88fa-a23a5063523e","401":"23913d2e-694d-4c3f-a2e1-53e6de709cc1","403":"e6e60613-ca6d-4995-8e30-3cc714c7b2e5","404":"09217ab2-c416-43e1-baa1-7dc1b5e51536","413":"208b4cce-d865-4d57-85be-314ed4bb4bcf","429":"165ad875-e341-48cf-b0dc-fc57017c9968","500":"b6c2fb47-a881-4ac0-b8a4-c0491172adfb","502":"6ee9b250-0977-4f9d-a20b-da43cd0fe300","503":"de5a156e-f12b-44f6-8cf7-0d90cb7e8a58","504":"d76d5a10-1b43-425a-8fbe-8091c2f978ed"},"method":"get","type":"path","servers":["438e7fce-d7ab-4563-a4eb-167eb2badf70"],"security":["e07ad77a-80a2-47bf-8762-db4312010bf0"],"path":"/managed-agents/v1/sessions/{sessionId}/tree","baseUrlOptions":["https://api.recursion.labelbox.com"],"title":"Get root session tree and timeline","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"5bd53596-2cc3-48c9-9cb2-a3727be54f42":{"description":"Opt-in compatibility mode. images rehydrates private image refs under strict response caps; omitted by default.","in":"query","name":"hydrate","schema":{"description":"Opt-in compatibility mode. images rehydrates private image refs under strict response caps; omitted by default.","enum":["images"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"3dc8b23b-5048-4e39-83da-0ca78e3240a8":{"description":"Set to signed to add a short-lived url (and url_expires_at) to stored image blocks within the per-read signing budget. Omitted when signing is unavailable or the budget is exhausted; the authenticated managedAgentsGetSessionImage endpoint always works.","in":"query","name":"image_urls","schema":{"description":"Set to signed to add a short-lived url (and url_expires_at) to stored image blocks within the per-read signing budget. Omitted when signing is unavailable or the budget is exhausted; the authenticated managedAgentsGetSessionImage endpoint always works.","enum":["signed"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"7080cb6d-b283-4651-ae01-86f583507e0e":{"description":"External event payloads hydrate by default. Set refs to return bounded stubs and private reference metadata only.","in":"query","name":"payloads","schema":{"description":"External event payloads hydrate by default. Set refs to return bounded stubs and private reference metadata only.","enum":["refs"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"4d548c61-713f-4e51-8015-9df33edcbaa5":{"description":"Any session id (UUID) in the tree; the read resolves to its root session.","in":"path","name":"sessionId","required":true,"schema":{"description":"Any session id (UUID) in the tree; the read resolves to its root session.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}},"7bddaa04-f034-4d07-9ee7-831b955309c9":{"name":"x-tenant-id","in":"header","required":false,"description":"Optional tenant consistency check. When present, it must name the tenant bound to the API key, including when x-organization-id is `default`.","schema":{"type":"string","minLength":1,"isRequired":false,"description":"Optional tenant consistency check. When present, it must name the tenant bound to the API key, including when x-organization-id is `default`.","uniqueKey":"","typeLabel":"string"}},"7970c4b5-c589-4956-a904-7dfb70ee1c9e":{"name":"x-organization-id","in":"header","required":false,"description":"Organization in which to act. Required for a tenant-scoped API key. Optional for an organization-scoped key, where it must name that same organization. The value may be an organization id or `default`.","schema":{"type":"string","minLength":1,"isRequired":false,"description":"Organization in which to act. Required for a tenant-scoped API key. Optional for an organization-scoped key, where it must name that same organization. The value may be an organization id or `default`.","uniqueKey":"","typeLabel":"string"}}},"responses":{"5238340b-874b-4760-9ec1-941981572eee":{"content":{"application/json":{"schema":{"description":"A whole multi-agent session tree: every session and thread in it, plus a bounded page of the merged chronological event log. Returned when reading the tree containing a given session.","properties":{"events":{"oneOf":[{"description":"One page of the tree's events merged into a single chronological log across all sessions. Bounded by response size, so the page length is not a fixed count.","items":{"description":"One durable entry in a session's transcript: a message, a tool call or result, an approval, or a status change, with the provider message body and the token accounting for the call that produced it. Returned when listing or streaming a session's events.","properties":{"actor":{"description":"Who produced this event, as a namespaced identifier: human:… for a person, system:… for the service itself, or an agent identity.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].actor","typeLabel":"string"},"content":{"description":"The event's content blocks in this API's format. They are rebuilt for each model provider, and block types a provider request does not support never reach the model.","properties":{"blocks":{"oneOf":[{"description":"Ordered content blocks of this message, in the provider's content-block form. Empty for events that carry no message body.","items":{"description":"One block of message content: text, image, tool_use, tool_result, thinking, or a provider passthrough. The type field says which fields apply. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","properties":{"type":{"description":"Block discriminator: text, image, document (a user-sent block naming a file by id, inlined as text when the message is accepted), tool_use, tool_result, thinking, redacted_thinking, or a provider passthrough type. Which of the other fields apply depends on this value.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].type","typeLabel":"string"},"byte_size":{"description":"Decoded image byte size.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].byte_size","typeLabel":"integer\u003cint64>"},"content":{"description":"Nested blocks carrying a tool_result payload, so a tool can return both text and images.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].content","typeLabel":"array"},"context":{"description":"A document block's context: what the model should know about the document before reading it, disclosed as its first paragraph.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].context","typeLabel":"string"},"data":{"description":"Base64 image bytes. Omitted from default reads and present only for legacy storage or explicit hydrate=images responses.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].data","typeLabel":"string"},"encrypted_content":{"description":"Sealed reasoning payload for providers that return reasoning encrypted. Opaque to clients; replay it verbatim.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].encrypted_content","typeLabel":"string"},"height":{"description":"Validated image height in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].height","typeLabel":"integer"},"id":{"description":"Provider-assigned id of a tool_use block. Echo it back as tool_use_id on the matching tool_result.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].id","typeLabel":"string"},"input":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Tool arguments the model produced for a tool_use block, matching that tool's input schema.","type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].input","typeLabel":"object"},"is_error":{"description":"True when a tool_result reports that the tool call failed; the nested content then carries the error detail.","type":"boolean","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].is_error","typeLabel":"boolean"},"media_type":{"description":"Declared media type; inline computer-use images allow image/jpeg, image/png, and image/webp.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].media_type","typeLabel":"string"},"name":{"description":"Name of the tool the model is invoking, on a tool_use block.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].name","typeLabel":"string"},"omitted_bytes":{"description":"Original byte count reported by a redacted image placeholder.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].omitted_bytes","typeLabel":"integer\u003cint64>"},"payload":{"oneOf":[{"type":"null","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].payload.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].payload.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].payload.oneOf.2","typeLabel":"string"},{"type":"integer","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].payload.oneOf.3","typeLabel":"integer"},{"type":"number","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].payload.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].payload.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].payload.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].payload.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].payload","typeLabel":"null | boolean | string | integer | number | any[] | object"},"provider":{"description":"Provider that emitted a passthrough block, e.g. anthropic or openai, telling readers how to interpret payload.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider","typeLabel":"string"},"provider_payload":{"oneOf":[{"type":"null","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider_payload.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider_payload.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider_payload.oneOf.2","typeLabel":"string"},{"type":"integer","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider_payload.oneOf.3","typeLabel":"integer"},{"type":"number","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider_payload.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider_payload.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider_payload.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider_payload.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].provider_payload","typeLabel":"null | boolean | string | integer | number | any[] | object"},"redacted":{"description":"True when the block's content was withheld (redacted thinking, or an image dropped by redaction); the remaining fields describe what was removed.","type":"boolean","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].redacted","typeLabel":"boolean"},"semantic_hint":{"description":"Coarse hint about what an unmodeled provider block represents, so a reader can render it without provider-specific logic.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].semantic_hint","typeLabel":"string"},"sha256":{"description":"Lowercase SHA-256 digest of decoded image bytes.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].sha256","typeLabel":"string"},"signature":{"description":"Provider-issued signature over a thinking block, or the thought signature a Gemini tool_use block was issued with, required for the provider to accept that block on a later turn. Opaque; replay it verbatim.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].signature","typeLabel":"string"},"source":{"description":"Where a user-sent image or document block's bytes came from when they were named rather than sent inline: {type: \"file\", file_id}. Kept on the stored block as provenance after the bytes were copied into the session; an image block then also carries the session's own uri.","properties":{"file_id":{"type":"string","minLength":1,"description":"Nonempty id of an unexpired file in the caller's organization.","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].source.file_id","typeLabel":"string"},"type":{"type":"string","const":"file","description":"Always file.","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].source.type","typeLabel":"string"}},"required":["type","file_id"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].source","typeLabel":"object"},"summary":{"description":"Readable summary blocks a provider returns alongside sealed or long-form reasoning.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].summary","typeLabel":"array"},"text":{"description":"Text of a text block, or the reasoning text of a thinking block.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].text","typeLabel":"string"},"title":{"description":"A document block's title, disclosed to the model beside the document.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].title","typeLabel":"string"},"tool_use_id":{"description":"Id of the tool_use block that this tool_result answers.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].tool_use_id","typeLabel":"string"},"uri":{"description":"Private typed content reference. Fetch it through managedAgentsGetSessionImage; clients cannot read this URI directly.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].uri","typeLabel":"string"},"url":{"description":"Short-lived HTTPS URL for the image bytes. Present only when the read asked for image_urls=signed and the deployment has signing configured. Never stored; fetch a fresh read after url_expires_at.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].url","typeLabel":"string"},"url_expires_at":{"description":"When url stops working. Absent whenever url is.","format":"date-time","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].url_expires_at","typeLabel":"string\u003cdate-time>"},"width":{"description":"Validated image width in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX].width","typeLabel":"integer"}},"required":["type"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.0","typeLabel":"object[]"},{"description":"Ordered content blocks of this message, in the provider's content-block form. Empty for events that carry no message body.","items":{"description":"One block of message content: text, image, tool_use, tool_result, thinking, or a provider passthrough. The type field says which fields apply. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","properties":{"byte_size":{"description":"Decoded image byte size.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"content":{"description":"Nested blocks carrying a tool_result payload, so a tool can return both text and images.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array"},"context":{"description":"A document block's context: what the model should know about the document before reading it, disclosed as its first paragraph.","type":"string"},"data":{"description":"Base64 image bytes. Omitted from default reads and present only for legacy storage or explicit hydrate=images responses.","type":"string"},"encrypted_content":{"description":"Sealed reasoning payload for providers that return reasoning encrypted. Opaque to clients; replay it verbatim.","type":"string"},"height":{"description":"Validated image height in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"id":{"description":"Provider-assigned id of a tool_use block. Echo it back as tool_use_id on the matching tool_result.","type":"string"},"input":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Tool arguments the model produced for a tool_use block, matching that tool's input schema.","type":"object"},"is_error":{"description":"True when a tool_result reports that the tool call failed; the nested content then carries the error detail.","type":"boolean"},"media_type":{"description":"Declared media type; inline computer-use images allow image/jpeg, image/png, and image/webp.","type":"string"},"name":{"description":"Name of the tool the model is invoking, on a tool_use block.","type":"string"},"omitted_bytes":{"description":"Original byte count reported by a redacted image placeholder.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"payload":{"oneOf":[{"type":"null","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"boolean","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"string","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"integer","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"array","items":{"oneOf":[{}]},"description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"object","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."}]},"provider":{"description":"Provider that emitted a passthrough block, e.g. anthropic or openai, telling readers how to interpret payload.","type":"string"},"provider_payload":{"oneOf":[{"type":"null","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"boolean","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"string","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"integer","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"array","items":{"oneOf":[{}]},"description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"object","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."}]},"redacted":{"description":"True when the block's content was withheld (redacted thinking, or an image dropped by redaction); the remaining fields describe what was removed.","type":"boolean"},"semantic_hint":{"description":"Coarse hint about what an unmodeled provider block represents, so a reader can render it without provider-specific logic.","type":"string"},"sha256":{"description":"Lowercase SHA-256 digest of decoded image bytes.","type":"string"},"signature":{"description":"Provider-issued signature over a thinking block, or the thought signature a Gemini tool_use block was issued with, required for the provider to accept that block on a later turn. Opaque; replay it verbatim.","type":"string"},"source":{"description":"Where a user-sent image or document block's bytes came from when they were named rather than sent inline: {type: \"file\", file_id}. Kept on the stored block as provenance after the bytes were copied into the session; an image block then also carries the session's own uri.","properties":{"file_id":{"type":"string","minLength":1,"description":"Nonempty id of an unexpired file in the caller's organization."},"type":{"type":"string","const":"file","description":"Always file."}},"required":["type","file_id"],"type":"object","additionalProperties":false},"summary":{"description":"Readable summary blocks a provider returns alongside sealed or long-form reasoning.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array"},"text":{"description":"Text of a text block, or the reasoning text of a thinking block.","type":"string"},"title":{"description":"A document block's title, disclosed to the model beside the document.","type":"string"},"tool_use_id":{"description":"Id of the tool_use block that this tool_result answers.","type":"string"},"type":{"description":"Block discriminator: text, image, document (a user-sent block naming a file by id, inlined as text when the message is accepted), tool_use, tool_result, thinking, redacted_thinking, or a provider passthrough type. Which of the other fields apply depends on this value.","type":"string"},"uri":{"description":"Private typed content reference. Fetch it through managedAgentsGetSessionImage; clients cannot read this URI directly.","type":"string"},"url":{"description":"Short-lived HTTPS URL for the image bytes. Present only when the read asked for image_urls=signed and the deployment has signing configured. Never stored; fetch a fresh read after url_expires_at.","type":"string"},"url_expires_at":{"description":"When url stops working. Absent whenever url is.","format":"date-time","type":"string"},"width":{"description":"Validated image width in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["type"],"type":"object","additionalProperties":false},"type":"null","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.blocks","typeLabel":"object[] | null"},"assistantInteraction":{"description":"One state of a typed request an assistant put in front of the reader: questions, a solution blueprint, or a plan of changes. Present on the approval_request events of an assistant session, one per state the interaction passes through.","properties":{"digest":{"description":"Digest of this revision's content. A decision names it so a person decides exactly what they were shown.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.digest","typeLabel":"string"},"interactionId":{"description":"Stable id of the interaction. Revisions of a blueprint or plan keep it.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.interactionId","typeLabel":"string"},"kind":{"description":"What is being asked: questions, a solution blueprint, or a plan of changes.","enum":["question","blueprint","plan"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.kind","typeLabel":"enum\u003cstring>"},"origin":{"description":"Who wrote this revision: the assistant, or the person through an inline edit.","enum":["assistant","user"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.origin","typeLabel":"enum\u003cstring>"},"requestedAt":{"description":"When this revision was put in front of the reader.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.requestedAt","typeLabel":"string\u003cdate-time>"},"revision":{"description":"Revision number, starting at 1. Only the latest revision of a pending interaction can be decided.","minimum":1,"type":"integer","maximum":9007199254740991,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.revision","typeLabel":"integer"},"status":{"description":"Lifecycle state of the interaction.","enum":["pending","answered","accepted","revision_requested","cancelled","superseded","executing","completed","failed"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.status","typeLabel":"enum\u003cstring>"},"title":{"description":"Short heading for the interaction.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.title","typeLabel":"string"},"blueprint":{"description":"The solution design, on a blueprint interaction.","properties":{"agents":{"description":"The agents and the part each plays.","items":{"description":"One agent of a blueprint and the part it plays.","properties":{"role":{"description":"The agent's role.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.agents.items.[INDEX].role","typeLabel":"string"},"model":{"description":"The model it runs on, when chosen.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.agents.items.[INDEX].model","typeLabel":"string"},"responsibilities":{"description":"What it does.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.agents.items.[INDEX].responsibilities","typeLabel":"string"}},"required":["role"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.agents.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.agents","typeLabel":"object[]"},"capabilities":{"description":"Platform capabilities the design uses, each resolved against the capability catalog.","items":{"description":"One platform capability a blueprint uses, resolved against the capability catalog.","properties":{"capabilityId":{"description":"Id from the capability catalog.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.capabilities.items.[INDEX].capabilityId","typeLabel":"string"},"kind":{"description":"Capability kind, resolved by the server.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.capabilities.items.[INDEX].kind","typeLabel":"string"},"name":{"description":"Customer-facing name, resolved by the server.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.capabilities.items.[INDEX].name","typeLabel":"string"},"status":{"description":"Its status in this organization, resolved by the server.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.capabilities.items.[INDEX].status","typeLabel":"string"},"purpose":{"description":"Why the design uses it.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.capabilities.items.[INDEX].purpose","typeLabel":"string"}},"required":["capabilityId","name","kind","status"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.capabilities.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.capabilities","typeLabel":"object[]"},"trigger":{"description":"What starts the work.","properties":{"kind":{"description":"Manual, on a schedule, or on an outside event.","enum":["manual","schedule","event"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.trigger.kind","typeLabel":"enum\u003cstring>"},"detail":{"description":"The schedule or the event, in words.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.trigger.detail","typeLabel":"string"}},"required":["kind"],"type":"object","additionalProperties":false,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.trigger","typeLabel":"object"},"checkpoints":{"description":"Where a person reviews or decides.","items":{"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.checkpoints.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.checkpoints","typeLabel":"string[]"},"costClass":{"description":"Rough running cost.","enum":["low","medium","high"],"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.costClass","typeLabel":"enum\u003cstring>"},"environment":{"description":"The environment the agents run in, in words.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.environment","typeLabel":"string"},"evaluation":{"description":"How success is judged.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.evaluation","typeLabel":"string"},"gaps":{"description":"What the platform cannot do directly, said plainly.","items":{"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.gaps.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.gaps","typeLabel":"string[]"},"outputs":{"description":"What the work produces.","items":{"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.outputs.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint.outputs","typeLabel":"string[]"}},"required":["trigger","agents","capabilities"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.blueprint","typeLabel":"object"},"decision":{"description":"The person's decision, once one was made.","properties":{"decidedAt":{"description":"When the decision was recorded.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.decidedAt","typeLabel":"string\u003cdate-time>"},"decision":{"description":"What was decided. superseded_by_interaction means the assistant replaced the interaction with a different one before the reader decided.","enum":["answered","accepted","approved","revision_requested","cancelled","superseded_by_interaction"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.decision","typeLabel":"enum\u003cstring>"},"answers":{"description":"Answers, on a question interaction.","items":{"description":"The reader's answer to one question.","properties":{"questionId":{"description":"The question answered.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.answers.items.[INDEX].questionId","typeLabel":"string"},"optionIds":{"description":"Selected option ids, for select, picker and confirm questions (confirm answers with yes or no).","items":{"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.answers.items.[INDEX].optionIds.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.answers.items.[INDEX].optionIds","typeLabel":"string[]"},"text":{"description":"Free text, for text questions or an Other answer.","maxLength":4000,"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.answers.items.[INDEX].text","typeLabel":"string"}},"required":["questionId"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.answers.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.answers","typeLabel":"object[]"},"comments":{"description":"Comments pinned to steps or fields, with a revision request.","items":{"description":"A comment pinned to a step or field of a blueprint or plan.","properties":{"text":{"description":"The comment.","maxLength":2000,"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.comments.items.[INDEX].text","typeLabel":"string"},"field":{"description":"The field commented on.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.comments.items.[INDEX].field","typeLabel":"string"},"stepId":{"description":"The step commented on.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.comments.items.[INDEX].stepId","typeLabel":"string"}},"required":["text"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.comments.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.comments","typeLabel":"object[]"},"decidedBy":{"description":"The user who decided.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.decidedBy","typeLabel":"string"},"note":{"description":"The reader's note.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision.note","typeLabel":"string"}},"required":["decision","decidedAt"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.decision","typeLabel":"object"},"plan":{"description":"The changes, on a plan interaction.","properties":{"steps":{"description":"Changes in execution order.","items":{"description":"One change of a plan: an action and the exact request it runs on approval.","properties":{"action":{"description":"The action, from the closed set the assistant can propose.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].action","typeLabel":"string"},"costClass":{"description":"Whether approving the step can spend credit.","enum":["none","model_spend"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].costClass","typeLabel":"enum\u003cstring>"},"enabled":{"description":"Whether the step runs on approval.","type":"boolean","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].enabled","typeLabel":"boolean"},"input":{"oneOf":[{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"The action's request, as the server validated and normalized it. A value {\"$ref\": \"steps.\u003cstepId>.\u003cfield>\"} is filled from an earlier step's result.","type":"object","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"The action's request, as the server validated and normalized it. A value {\"$ref\": \"steps.\u003cstepId>.\u003cfield>\"} is filled from an earlier step's result.","type":"null","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].input","typeLabel":"object | null"},"stepId":{"description":"Id of the step within the plan; later steps refer to its outputs by it.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].stepId","typeLabel":"string"},"title":{"description":"What the step does, in words.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].title","typeLabel":"string"},"dependsOn":{"description":"Earlier steps whose results this step uses.","items":{"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].dependsOn.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].dependsOn","typeLabel":"string[]"},"fields":{"description":"How to render the step's input as a form.","items":{"description":"How a console renders one field of a plan step's input.","properties":{"label":{"description":"Field label.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].label","typeLabel":"string"},"name":{"description":"Top-level key in the step input.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].name","typeLabel":"string"},"widget":{"description":"The control to render.","enum":["text","long_text","markdown","code","select","multi_select","model_picker","environment_picker","agent_picker","skill_picker","vault_reference","key_list","number","boolean","resources","json"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].widget","typeLabel":"enum\u003cstring>"},"help":{"description":"Short guidance shown with the field.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].help","typeLabel":"string"},"options":{"description":"Choices for select and picker widgets, resolved by the server.","items":{"description":"One choice of a select or picker question, or of a plan field.","properties":{"label":{"description":"What the reader sees.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].options.items.[INDEX].label","typeLabel":"string"},"optionId":{"description":"Id to answer with.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].options.items.[INDEX].optionId","typeLabel":"string"},"description":{"description":"Optional detail shown under the label.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].options.items.[INDEX].description","typeLabel":"string"}},"required":["optionId","label"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].options.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].options","typeLabel":"object[]"},"required":{"description":"Whether the field must have a value.","type":"boolean","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX].required","typeLabel":"boolean"}},"required":["name","label","widget"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].fields","typeLabel":"object[]"},"optional":{"description":"Whether the reader may turn the step off.","type":"boolean","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].optional","typeLabel":"boolean"},"warnings":{"description":"Things the reader should know before approving.","items":{"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].warnings.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX].warnings","typeLabel":"string[]"}},"required":["stepId","action","title","enabled","input","costClass"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.steps","typeLabel":"object[]"},"prerequisites":{"description":"Setup the plan cannot do itself; approval waits for each one the server can check.","items":{"description":"Setup a plan cannot do itself; approval waits for it when the server can check it.","properties":{"kind":{"description":"What the reader has to do. The server checks connect_integration and needs_admin when they name a capability; add_vault_credential is a reminder it cannot check.","enum":["connect_integration","add_vault_credential","needs_admin"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.prerequisites.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"label":{"description":"What to do, in words.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.prerequisites.items.[INDEX].label","typeLabel":"string"},"prerequisiteId":{"description":"Id within the plan.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.prerequisites.items.[INDEX].prerequisiteId","typeLabel":"string"},"satisfied":{"description":"Whether the server found it done when this revision was written; false for a prerequisite it cannot check.","type":"boolean","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.prerequisites.items.[INDEX].satisfied","typeLabel":"boolean"},"capabilityId":{"description":"The capability it unlocks.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.prerequisites.items.[INDEX].capabilityId","typeLabel":"string"},"detail":{"description":"Why, and anything to choose while doing it.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.prerequisites.items.[INDEX].detail","typeLabel":"string"},"link":{"description":"Console path that starts the setup.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.prerequisites.items.[INDEX].link","typeLabel":"string"}},"required":["prerequisiteId","kind","label","satisfied"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.prerequisites.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan.prerequisites","typeLabel":"object[]"}},"required":["steps"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.plan","typeLabel":"object"},"questions":{"description":"The questions, on a question interaction.","items":{"description":"One typed question of a question interaction.","properties":{"input":{"description":"How the question is answered.","enum":["single_select","multi_select","short_text","long_text","confirm","picker"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].input","typeLabel":"enum\u003cstring>"},"prompt":{"description":"The question.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].prompt","typeLabel":"string"},"questionId":{"description":"Id of the question within the interaction.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].questionId","typeLabel":"string"},"allowOther":{"description":"Whether a select question also accepts a free-text answer.","type":"boolean","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].allowOther","typeLabel":"boolean"},"multiple":{"description":"Whether a picker question accepts more than one resource.","type":"boolean","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].multiple","typeLabel":"boolean"},"optional":{"description":"Whether the question may be left unanswered.","type":"boolean","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].optional","typeLabel":"boolean"},"options":{"description":"The choices of a select or picker question. Picker options are resolved by the server from resources the reader can access.","items":{"description":"One choice of a select or picker question, or of a plan field.","properties":{"label":{"description":"What the reader sees.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].options.items.[INDEX].label","typeLabel":"string"},"optionId":{"description":"Id to answer with.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].options.items.[INDEX].optionId","typeLabel":"string"},"description":{"description":"Optional detail shown under the label.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].options.items.[INDEX].description","typeLabel":"string"}},"required":["optionId","label"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].options.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].options","typeLabel":"object[]"},"picker":{"description":"Which kind of resource a picker question selects.","enum":["agent","environment","skill","vault","model","agent_template","environment_template"],"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX].picker","typeLabel":"enum\u003cstring>"}},"required":["questionId","prompt","input"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.questions","typeLabel":"object[]"},"stepResults":{"description":"What each approved step did, once a plan executes.","items":{"description":"What one approved plan step did.","properties":{"status":{"description":"How it ended, or running while it runs. uncertain means the outcome could not be confirmed and the step was not retried.","enum":["running","completed","failed","skipped","uncertain"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.stepResults.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"stepId":{"description":"The plan step this result is for.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.stepResults.items.[INDEX].stepId","typeLabel":"string"},"link":{"description":"Console path to it.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.stepResults.items.[INDEX].link","typeLabel":"string"},"message":{"description":"Detail, or the error.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.stepResults.items.[INDEX].message","typeLabel":"string"},"resourceId":{"description":"The id of what it created or changed.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.stepResults.items.[INDEX].resourceId","typeLabel":"string"},"resourceKind":{"description":"What it created or changed.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.stepResults.items.[INDEX].resourceKind","typeLabel":"string"}},"required":["stepId","status"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.stepResults.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.stepResults","typeLabel":"object[]"},"summary":{"description":"One or two sentences on why this is being asked.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction.summary","typeLabel":"string"}},"required":["interactionId","kind","revision","digest","status","origin","title","requestedAt"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.assistantInteraction","typeLabel":"object"},"evaluation_budget_reached":{"additionalProperties":false,"description":"Cost cap and targets stopped or left unadmitted when the run reached it.","properties":{"affected_target_session_ids":{"description":"Target sessions stopped or not admitted because the cap was reached.","items":{"format":"uuid","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_budget_reached.affected_target_session_ids.items.[INDEX]","typeLabel":"string\u003cuuid>"},"minItems":1,"type":"array","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_budget_reached.affected_target_session_ids","typeLabel":"string\u003cuuid>[]"},"max_tree_cost_usd":{"description":"Exact decimal USD tree cap that stopped further admission.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_budget_reached.max_tree_cost_usd","typeLabel":"string"}},"required":["max_tree_cost_usd","affected_target_session_ids"],"type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_budget_reached","typeLabel":"object"},"evaluation_plan_frozen":{"additionalProperties":false,"description":"Frozen target, rubric, concurrency, and cost plan for an evaluation run.","properties":{"criteria":{"description":"Ordered rubric criteria frozen from the evaluator version.","items":{"additionalProperties":false,"description":"One stable rubric criterion frozen from the evaluator version for the complete run.","properties":{"criterion_key":{"description":"Stable rubric key used to join verdicts across the run.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.criteria.items.[INDEX].criterion_key","typeLabel":"string"},"criterion_text":{"description":"Frozen rubric instruction evaluated for every target.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.criteria.items.[INDEX].criterion_text","typeLabel":"string"}},"required":["criterion_key","criterion_text"],"type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.criteria.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.criteria","typeLabel":"object[]"},"max_concurrent_threads":{"description":"Maximum evaluation children admitted concurrently for this run.","minimum":1,"type":"integer","maximum":9007199254740991,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.max_concurrent_threads","typeLabel":"integer"},"targets":{"description":"Ordered target sessions and their immutable transcript snapshots.","items":{"additionalProperties":false,"description":"One root target and the immutable transcript boundary frozen into an evaluation plan.","properties":{"snapshot_event_id":{"description":"Canonical event id at or before which the target transcript is frozen.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.targets.items.[INDEX].snapshot_event_id","typeLabel":"string\u003cuuid>"},"target_session_id":{"description":"Root session selected as an immutable evaluation target.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.targets.items.[INDEX].target_session_id","typeLabel":"string\u003cuuid>"}},"required":["target_session_id","snapshot_event_id"],"type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.targets.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.targets","typeLabel":"object[]"},"max_tree_cost_usd":{"description":"Optional exact decimal USD cap on billed cost shared by the evaluation tree.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen.max_tree_cost_usd","typeLabel":"string"}},"required":["targets","criteria","max_concurrent_threads"],"type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_plan_frozen","typeLabel":"object"},"evaluation_run_finished":{"additionalProperties":false,"description":"Terminal counts and systemic failure state for the evaluation run.","properties":{"targets_budget_reached":{"description":"Number of targets stopped or not admitted after the cost cap was reached.","minimum":0,"type":"integer","maximum":9007199254740991,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_run_finished.targets_budget_reached","typeLabel":"integer"},"targets_skipped":{"description":"Number of targets whose processing ended without a completed verdict audit.","minimum":0,"type":"integer","maximum":9007199254740991,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_run_finished.targets_skipped","typeLabel":"integer"},"targets_total":{"description":"Number of target snapshots frozen in the plan.","minimum":0,"type":"integer","maximum":9007199254740991,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_run_finished.targets_total","typeLabel":"integer"},"terminal_status":{"description":"Final lifecycle state of the evaluation run.","enum":["completed","failed","cancelled"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_run_finished.terminal_status","typeLabel":"enum\u003cstring>"},"verdicts_recorded":{"description":"Number of completed verdict audit events recorded for this run.","minimum":0,"type":"integer","maximum":9007199254740991,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_run_finished.verdicts_recorded","typeLabel":"integer"},"failure_code":{"description":"Stable systemic failure classification for a failed run.","enum":["plan_failed","cleanup_failed","accounting_failed","audit_failed","finalization_failed"],"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_run_finished.failure_code","typeLabel":"enum\u003cstring>"},"failure_message":{"description":"Sanitized explanation of the systemic run failure.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_run_finished.failure_message","typeLabel":"string"}},"required":["terminal_status","targets_total","verdicts_recorded","targets_skipped","targets_budget_reached"],"type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_run_finished","typeLabel":"object"},"evaluation_target_skipped":{"additionalProperties":false,"description":"Sanitized outcome for a target whose processing ended without a completed verdict audit.","properties":{"reason":{"description":"Sanitized operator-readable explanation of the skip.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_skipped.reason","typeLabel":"string"},"reason_code":{"description":"Stable machine-readable classification of the skipped target.","enum":["child_create_failed","child_run_failed","verdict_invalid","cleanup_or_accounting_failed"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_skipped.reason_code","typeLabel":"enum\u003cstring>"},"snapshot_event_id":{"description":"Canonical transcript event boundary frozen for the skipped target.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_skipped.snapshot_event_id","typeLabel":"string\u003cuuid>"},"target_session_id":{"description":"Root target whose processing ended without a completed verdict audit.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_skipped.target_session_id","typeLabel":"string\u003cuuid>"},"child_session_id":{"description":"Evaluation child identity when creation reached that stage.","format":"uuid","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_skipped.child_session_id","typeLabel":"string\u003cuuid>"}},"required":["target_session_id","snapshot_event_id","reason_code","reason"],"type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_skipped","typeLabel":"object"},"evaluation_target_started":{"additionalProperties":false,"description":"Identity and clone state for one admitted evaluation target.","properties":{"child_session_id":{"description":"Evaluation child session created for this target.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_started.child_session_id","typeLabel":"string\u003cuuid>"},"clone_state":{"description":"Whether the child received a ready clone or needed no sandbox.","enum":["ready","sandboxless"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_started.clone_state","typeLabel":"enum\u003cstring>"},"evaluation_id":{"description":"Immutable verdict identity reserved for this target.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_started.evaluation_id","typeLabel":"string\u003cuuid>"},"snapshot_event_id":{"description":"Canonical event id bounding the immutable target transcript snapshot.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_started.snapshot_event_id","typeLabel":"string\u003cuuid>"},"target_session_id":{"description":"Root session whose frozen snapshot is being evaluated.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_started.target_session_id","typeLabel":"string\u003cuuid>"},"sandbox_provider":{"description":"Provider of the isolated clone when the target has a sandbox.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_started.sandbox_provider","typeLabel":"string"}},"required":["target_session_id","snapshot_event_id","child_session_id","evaluation_id","clone_state"],"type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_target_started","typeLabel":"object"},"evaluation_verdict_recorded":{"additionalProperties":false,"description":"Audit reference to one authoritative immutable evaluation verdict.","properties":{"child_session_id":{"description":"Evaluation child session that produced the verdict.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded.child_session_id","typeLabel":"string\u003cuuid>"},"cost_completeness":{"description":"Whether every cost component is final and priced.","enum":["complete","pending","unpriced","partial","legacy_partial","indeterminate"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded.cost_completeness","typeLabel":"enum\u003cstring>"},"cost_usd":{"description":"Exact canonical decimal USD attributed to this evaluation.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded.cost_usd","typeLabel":"string"},"evaluation_id":{"description":"Immutable evaluation row that remains authoritative.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded.evaluation_id","typeLabel":"string\u003cuuid>"},"failed_criterion_keys":{"description":"Sorted unique rubric keys whose verdict is fail.","items":{"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded.failed_criterion_keys.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueItems":true,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded.failed_criterion_keys","typeLabel":"string[]"},"result":{"description":"Overall verdict derived from the frozen criterion results.","enum":["pass","fail","not_applicable","not_evaluable"],"type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded.result","typeLabel":"enum\u003cstring>"},"snapshot_event_id":{"description":"Canonical event id bounding the transcript evidence considered.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded.snapshot_event_id","typeLabel":"string\u003cuuid>"},"target_session_id":{"description":"Root session evaluated by this immutable verdict.","format":"uuid","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded.target_session_id","typeLabel":"string\u003cuuid>"}},"required":["target_session_id","snapshot_event_id","child_session_id","evaluation_id","result","failed_criterion_keys","cost_usd","cost_completeness"],"type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.evaluation_verdict_recorded","typeLabel":"object"},"metadata":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Extra key/value detail about this event that is not part of the message body, such as the ingest subtype or the sandbox working directory.","type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].content.metadata","typeLabel":"object"},"plan":{"description":"Plan items reported by the agent, present on a plan_update event.","items":{"description":"One step of a plan or to-do list an agent reported while working. Appears on an event's content when the agent's harness emits a plan; the service records it without acting on it.","properties":{"content":{"description":"Text of the planned step as the agent wrote it.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.plan.items.[INDEX].content","typeLabel":"string"},"id":{"description":"Identifier for this plan entry, stable across the turns that update it.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.plan.items.[INDEX].id","typeLabel":"string"},"status":{"description":"Progress value the agent reported for this step. Passed through as written and not interpreted by the service.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.plan.items.[INDEX].status","typeLabel":"string"}},"required":["id","content","status"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.plan.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.plan","typeLabel":"object[]"},"stop_reason":{"description":"The provider's own stop_reason for the assistant turn, recorded verbatim, e.g. end_turn, tool_use, or max_tokens. Absent on events that are not a model response.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content.stop_reason","typeLabel":"string"},"tools":{"description":"Tool definitions that were in scope for the turn, as sent to the provider. Recorded on the session's system message so a transcript shows what the model could call.","items":{"description":"One tool as it was offered to the model, in the Anthropic and OpenAI tool-definition vocabulary. Recorded on the event for a model turn so a reader can see exactly what the model could call.","properties":{"description":{"description":"Natural-language explanation of what the tool does and when to use it, supplied to the model verbatim.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].description","typeLabel":"string"},"input_schema":{"oneOf":[{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"JSON Schema for the tool's arguments. Passed to the model provider unchanged.","type":"object","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"JSON Schema for the tool's arguments. Passed to the model provider unchanged.","type":"null","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].input_schema","typeLabel":"object | null"},"name":{"description":"Tool name the model calls, matching the name on the resulting tool_use content block.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX].name","typeLabel":"string"}},"required":["name","description","input_schema"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.tools.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"events.oneOf.0.items.[INDEX].content.tools","typeLabel":"object[]"},"usage":{"description":"Token counts the provider reported for the call that produced this message. Absent when the event is not a model response.","properties":{"cache_read_tokens":{"description":"Prompt tokens served from the provider's prompt cache, billed at the cached rate.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.usage.cache_read_tokens","typeLabel":"integer\u003cint64>"},"cache_write_tokens":{"description":"Prompt tokens written into the provider's prompt cache.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.usage.cache_write_tokens","typeLabel":"integer\u003cint64>"},"cost_usd":{"description":"Not set on current events. Read the event's cost_micros for cost.","format":"double","type":"number","uniqueKey":"events.oneOf.0.items.[INDEX].content.usage.cost_usd","typeLabel":"number\u003cdouble>"},"input_tokens":{"description":"Prompt tokens billed for this unit of work.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.usage.input_tokens","typeLabel":"integer\u003cint64>"},"output_tokens":{"description":"Completion tokens billed for this unit of work.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content.usage.output_tokens","typeLabel":"integer\u003cint64>"}},"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].content.usage","typeLabel":"object"}},"required":["blocks"],"type":"object","additionalProperties":false,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].content","typeLabel":"object"},"created_at":{"description":"RFC 3339 timestamp of when this record was created. Server-assigned.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].created_at","typeLabel":"string\u003cdate-time>"},"event_id":{"description":"Identifier for this event (UUID). Server-assigned unless the append supplied one. Chronologically sortable, and the column a transcript is ordered by.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].event_id","typeLabel":"string"},"event_type":{"description":"What kind of event this is. One of message, tool_invocation, tool_result, approval_request, approval_decision, summary, plan_update, session_status, artifact, advisor_intervention, outcome_evaluation, or program_call.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].event_type","typeLabel":"string"},"inference_config":{"description":"Settings recorded for this inference. A recorded temperature or top_p was not sent to the model.","properties":{"max_tokens":{"description":"Upper bound on tokens the model may generate for one assistant turn (the provider's max_tokens). Omit or 0 to use the model reference's default.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.max_tokens","typeLabel":"integer\u003cint64>"},"provider_params":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Recognized provider-specific settings are thinking, thinkingDisplay and output_config for native Anthropic messages; thinkingConfig for native Gemini; and promptCache, promptCacheTTL and promptCacheSharedTTL for prompt caching. Unknown top-level keys are ignored, not passed through. Omitting all three cache settings enables automatic policy: explicit caching stays enabled and eligible Anthropic requests may use 1h shared retention when recent usage and current pricing evidence predict savings; otherwise shared retention is 5m. Setting promptCache or either TTL explicitly keeps operator-configured retention. promptCache true enables explicit markers; false disables them and ignores both TTL settings. With caching enabled, both TTL settings accept only 5m or 1h on models using native Anthropic messages. promptCacheTTL defaults to 5m for user-context anchors and history. promptCacheSharedTTL controls tools and system instructions, defaults to promptCacheTTL under explicit configuration, and cannot be shorter than promptCacheTTL. Authored thinking objects and enabled cache TTL settings are validated at agent/version writes and session start.","type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.provider_params","typeLabel":"object"},"reasoning_effort":{"description":"Provider-native reasoning depth value. For a model from the models catalog, use one of its supportedReasoningEfforts; omit it to follow the provider's current default.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.reasoning_effort","typeLabel":"string"},"temperature":{"description":"Accepted and stored, but not sent to the model, so it has no effect.","type":"number","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.temperature","typeLabel":"number"},"top_p":{"description":"Accepted and stored, but not sent to the model, so it has no effect.","type":"number","uniqueKey":"events.oneOf.0.items.[INDEX].inference_config.top_p","typeLabel":"number"}},"type":"object","additionalProperties":false,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].inference_config","typeLabel":"object"},"schema_version":{"description":"Event schema version this row was written under. Server-assigned; readers should tolerate unknown newer values.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].schema_version","typeLabel":"integer"},"session_id":{"description":"Session this event belongs to (UUID).","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].session_id","typeLabel":"string"},"agent_id":{"description":"Agent that produced this event (UUID).","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].agent_id","typeLabel":"string"},"cache_read_tokens":{"description":"Prompt tokens served from the provider's prompt cache, billed at the cached rate.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].cache_read_tokens","typeLabel":"integer\u003cint64>"},"cache_write_tokens":{"description":"Prompt tokens written into the provider's prompt cache.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].cache_write_tokens","typeLabel":"integer\u003cint64>"},"causal_event_id":{"description":"Event that caused this one (UUID). Unlike parent_event_id this expresses causality rather than nesting.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].causal_event_id","typeLabel":"string"},"content_hydration_status":{"description":"Read-time status when external EventContent was hydrated or could not be hydrated.","enum":["hydrated","refs_only","missing","corrupt","unavailable","oversized"],"type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content_hydration_status","typeLabel":"enum\u003cstring>"},"content_payload_bytes":{"description":"Byte size of the canonical external EventContent JSON.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].content_payload_bytes","typeLabel":"integer\u003cint64>"},"content_payload_ref":{"description":"Private whole-event content reference. Read the content through managedAgentsGetSessionEventContent; this reference cannot be fetched directly.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content_payload_ref","typeLabel":"string"},"content_payload_sha256":{"description":"Lowercase SHA-256 digest of the canonical external EventContent JSON.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content_payload_sha256","typeLabel":"string"},"content_ref":{"description":"Image cleanup prefix or typed multi-image envelope. This is independent of whole-event payload storage.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].content_ref","typeLabel":"string"},"cost_micros":{"description":"Accrued cost in micro-USD (1,000,000 = 1 USD). Integer to avoid float rounding across many small charges.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].cost_micros","typeLabel":"integer\u003cint64>"},"environment_id":{"description":"Sandbox environment the producing session was executing in (UUID).","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].environment_id","typeLabel":"string"},"event_status":{"description":"Outcome marker for events that can fail: pending, completed, warning, or error. Empty when not applicable.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].event_status","typeLabel":"string"},"finish_reason":{"description":"Why the provider stopped generating, in the provider vocabulary (for example end_turn, max_tokens, tool_use). Passed through verbatim.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].finish_reason","typeLabel":"string"},"input_tokens":{"description":"Prompt tokens billed for this unit of work.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].input_tokens","typeLabel":"integer\u003cint64>"},"latency_ms":{"description":"Wall-clock duration of the provider call in milliseconds.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].latency_ms","typeLabel":"integer\u003cint64>"},"model":{"description":"Snapshot of the model reference as it was at call time, so a later model change does not rewrite history.","properties":{"model":{"description":"Provider's own model id as sent on the wire, e.g. model-name or provider/model-name.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].model.model","typeLabel":"string"},"provider":{"description":"Provider family that served the call, e.g. anthropic, openai, vertex, or mock. Carries the same value as provider_type and is kept for older readers.","type":"string","isRequired":true,"uniqueKey":"events.oneOf.0.items.[INDEX].model.provider","typeLabel":"string"},"base_url":{"description":"Endpoint the request was sent to, for models not served at their provider's default endpoint. Empty means the provider's default endpoint.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].model.base_url","typeLabel":"string"},"capabilities":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Declared model capability flags, e.g. tool use, vision, or extended thinking support, as recorded from the catalog entry at call time.","type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].model.capabilities","typeLabel":"object"},"context_window":{"description":"Maximum total tokens the model accepts in one request, prompt plus completion, as recorded from the catalog entry at call time. 0 means unknown.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].model.context_window","typeLabel":"integer\u003cint64>"},"max_output_tokens":{"description":"Maximum completion tokens the model can emit in one response, as recorded from the catalog entry at call time. 0 means unknown.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].model.max_output_tokens","typeLabel":"integer\u003cint64>"},"metadata":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Extra key/value data copied from the catalog entry. Some keys are read by the service to shape the request, such as base_url and reasoning_style.","type":"object","uniqueKey":"events.oneOf.0.items.[INDEX].model.metadata","typeLabel":"object"},"model_ref_id":{"description":"Model reference in the catalog this snapshot was resolved from (UUID). Empty when the session named a models-catalog id instead of a catalog entry.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].model.model_ref_id","typeLabel":"string"},"model_version":{"description":"Provider-specific version or snapshot pin recorded alongside the model id, when the catalog entry declares one.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].model.model_version","typeLabel":"string"},"provider_id":{"description":"Model provider record whose credentials and base URL were used (UUID).","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].model.provider_id","typeLabel":"string"},"provider_type":{"description":"Provider family that served the call, e.g. anthropic, openai, vertex, or mock. Selects which wire protocol the request used.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].model.provider_type","typeLabel":"string"},"serving_backend":{"description":"Serving stack behind a self-hosted model, e.g. vllm. Empty for models called through a hosted provider API.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].model.serving_backend","typeLabel":"string"}},"required":["provider","model"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX].model","typeLabel":"object"},"model_ref_id":{"description":"Canonical model reference used for this inference (UUID). Empty on events not produced by a model call.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].model_ref_id","typeLabel":"string"},"organization_id":{"description":"Organization that owns this record. Resolved from the API key; never accepted from the caller.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].organization_id","typeLabel":"string"},"output_tokens":{"description":"Completion tokens billed for this unit of work.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].output_tokens","typeLabel":"integer\u003cint64>"},"parent_event_id":{"description":"Event this one is nested under in the transcript tree (UUID), for example a tool result under its invocation.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].parent_event_id","typeLabel":"string"},"prompt_tokens":{"description":"Estimated tokens this event contributes when rendered into a future provider request. A memoized estimate for context-budget planning, not billed provider usage.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"uniqueKey":"events.oneOf.0.items.[INDEX].prompt_tokens","typeLabel":"integer\u003cint64>"},"provider_model_id":{"description":"Provider's own model identifier as sent on the wire, which may differ from the canonical model reference.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].provider_model_id","typeLabel":"string"},"provider_request_id":{"description":"Provider's request identifier for this inference, for correlating with provider-side logs.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].provider_request_id","typeLabel":"string"},"provider_type":{"description":"Model provider family that served this inference, for example anthropic, openai, or vertex.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].provider_type","typeLabel":"string"},"role":{"description":"Message role in the provider vocabulary: system, user, or assistant. Set on message events; empty on events that are not turns.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].role","typeLabel":"string"},"sandbox_instance_id":{"description":"Concrete sandbox instance the event was produced on. Provider-assigned, not a UUID.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].sandbox_instance_id","typeLabel":"string"},"thread_id":{"description":"Thread within a multi-agent session that produced this event (UUID). Empty on a single-agent session.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].thread_id","typeLabel":"string"},"tool_name":{"description":"Name of the tool being invoked or reporting a result. Set on tool events only.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].tool_name","typeLabel":"string"},"tool_use_id":{"description":"Provider's tool-call identifier, correlating a tool_invocation with its tool_result.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].tool_use_id","typeLabel":"string"},"turn_id":{"description":"Groups every event produced within one model turn.","type":"string","uniqueKey":"events.oneOf.0.items.[INDEX].turn_id","typeLabel":"string"}},"required":["schema_version","event_type","actor","content","inference_config","session_id","event_id","created_at"],"type":"object","additionalProperties":false,"uniqueKey":"events.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"events.oneOf.0","typeLabel":"object[]"},{"description":"One page of the tree's events merged into a single chronological log across all sessions. Bounded by response size, so the page length is not a fixed count.","items":{"description":"One durable entry in a session's transcript: a message, a tool call or result, an approval, or a status change, with the provider message body and the token accounting for the call that produced it. Returned when listing or streaming a session's events.","properties":{"actor":{"description":"Who produced this event, as a namespaced identifier: human:… for a person, system:… for the service itself, or an agent identity.","type":"string"},"agent_id":{"description":"Agent that produced this event (UUID).","type":"string"},"cache_read_tokens":{"description":"Prompt tokens served from the provider's prompt cache, billed at the cached rate.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"cache_write_tokens":{"description":"Prompt tokens written into the provider's prompt cache.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"causal_event_id":{"description":"Event that caused this one (UUID). Unlike parent_event_id this expresses causality rather than nesting.","type":"string"},"content":{"description":"The event's content blocks in this API's format. They are rebuilt for each model provider, and block types a provider request does not support never reach the model.","properties":{"assistantInteraction":{"description":"One state of a typed request an assistant put in front of the reader: questions, a solution blueprint, or a plan of changes. Present on the approval_request events of an assistant session, one per state the interaction passes through.","properties":{"blueprint":{"description":"The solution design, on a blueprint interaction.","properties":{"agents":{"description":"The agents and the part each plays.","items":{"description":"One agent of a blueprint and the part it plays.","properties":{"model":{"description":"The model it runs on, when chosen.","type":"string"},"responsibilities":{"description":"What it does.","type":"string"},"role":{"description":"The agent's role.","type":"string"}},"required":["role"],"type":"object","additionalProperties":false},"type":"array"},"capabilities":{"description":"Platform capabilities the design uses, each resolved against the capability catalog.","items":{"description":"One platform capability a blueprint uses, resolved against the capability catalog.","properties":{"capabilityId":{"description":"Id from the capability catalog.","type":"string"},"kind":{"description":"Capability kind, resolved by the server.","type":"string"},"name":{"description":"Customer-facing name, resolved by the server.","type":"string"},"purpose":{"description":"Why the design uses it.","type":"string"},"status":{"description":"Its status in this organization, resolved by the server.","type":"string"}},"required":["capabilityId","name","kind","status"],"type":"object","additionalProperties":false},"type":"array"},"checkpoints":{"description":"Where a person reviews or decides.","items":{"type":"string"},"type":"array"},"costClass":{"description":"Rough running cost.","enum":["low","medium","high"],"type":"string"},"environment":{"description":"The environment the agents run in, in words.","type":"string"},"evaluation":{"description":"How success is judged.","type":"string"},"gaps":{"description":"What the platform cannot do directly, said plainly.","items":{"type":"string"},"type":"array"},"outputs":{"description":"What the work produces.","items":{"type":"string"},"type":"array"},"trigger":{"description":"What starts the work.","properties":{"detail":{"description":"The schedule or the event, in words.","type":"string"},"kind":{"description":"Manual, on a schedule, or on an outside event.","enum":["manual","schedule","event"],"type":"string"}},"required":["kind"],"type":"object","additionalProperties":false}},"required":["trigger","agents","capabilities"],"type":"object","additionalProperties":false},"decision":{"description":"The person's decision, once one was made.","properties":{"answers":{"description":"Answers, on a question interaction.","items":{"description":"The reader's answer to one question.","properties":{"optionIds":{"description":"Selected option ids, for select, picker and confirm questions (confirm answers with yes or no).","items":{"type":"string"},"type":"array"},"questionId":{"description":"The question answered.","type":"string"},"text":{"description":"Free text, for text questions or an Other answer.","maxLength":4000,"type":"string"}},"required":["questionId"],"type":"object","additionalProperties":false},"type":"array"},"comments":{"description":"Comments pinned to steps or fields, with a revision request.","items":{"description":"A comment pinned to a step or field of a blueprint or plan.","properties":{"field":{"description":"The field commented on.","type":"string"},"stepId":{"description":"The step commented on.","type":"string"},"text":{"description":"The comment.","maxLength":2000,"type":"string"}},"required":["text"],"type":"object","additionalProperties":false},"type":"array"},"decidedAt":{"description":"When the decision was recorded.","format":"date-time","type":"string"},"decidedBy":{"description":"The user who decided.","type":"string"},"decision":{"description":"What was decided. superseded_by_interaction means the assistant replaced the interaction with a different one before the reader decided.","enum":["answered","accepted","approved","revision_requested","cancelled","superseded_by_interaction"],"type":"string"},"note":{"description":"The reader's note.","type":"string"}},"required":["decision","decidedAt"],"type":"object","additionalProperties":false},"digest":{"description":"Digest of this revision's content. A decision names it so a person decides exactly what they were shown.","type":"string"},"interactionId":{"description":"Stable id of the interaction. Revisions of a blueprint or plan keep it.","type":"string"},"kind":{"description":"What is being asked: questions, a solution blueprint, or a plan of changes.","enum":["question","blueprint","plan"],"type":"string"},"origin":{"description":"Who wrote this revision: the assistant, or the person through an inline edit.","enum":["assistant","user"],"type":"string"},"plan":{"description":"The changes, on a plan interaction.","properties":{"prerequisites":{"description":"Setup the plan cannot do itself; approval waits for each one the server can check.","items":{"description":"Setup a plan cannot do itself; approval waits for it when the server can check it.","properties":{"capabilityId":{"description":"The capability it unlocks.","type":"string"},"detail":{"description":"Why, and anything to choose while doing it.","type":"string"},"kind":{"description":"What the reader has to do. The server checks connect_integration and needs_admin when they name a capability; add_vault_credential is a reminder it cannot check.","enum":["connect_integration","add_vault_credential","needs_admin"],"type":"string"},"label":{"description":"What to do, in words.","type":"string"},"link":{"description":"Console path that starts the setup.","type":"string"},"prerequisiteId":{"description":"Id within the plan.","type":"string"},"satisfied":{"description":"Whether the server found it done when this revision was written; false for a prerequisite it cannot check.","type":"boolean"}},"required":["prerequisiteId","kind","label","satisfied"],"type":"object","additionalProperties":false},"type":"array"},"steps":{"description":"Changes in execution order.","items":{"description":"One change of a plan: an action and the exact request it runs on approval.","properties":{"action":{"description":"The action, from the closed set the assistant can propose.","type":"string"},"costClass":{"description":"Whether approving the step can spend credit.","enum":["none","model_spend"],"type":"string"},"dependsOn":{"description":"Earlier steps whose results this step uses.","items":{"type":"string"},"type":"array"},"enabled":{"description":"Whether the step runs on approval.","type":"boolean"},"fields":{"description":"How to render the step's input as a form.","items":{"description":"How a console renders one field of a plan step's input.","properties":{"help":{"description":"Short guidance shown with the field.","type":"string"},"label":{"description":"Field label.","type":"string"},"name":{"description":"Top-level key in the step input.","type":"string"},"options":{"description":"Choices for select and picker widgets, resolved by the server.","items":{"description":"One choice of a select or picker question, or of a plan field.","properties":{"description":{"description":"Optional detail shown under the label.","type":"string"},"label":{"description":"What the reader sees.","type":"string"},"optionId":{"description":"Id to answer with.","type":"string"}},"required":["optionId","label"],"type":"object","additionalProperties":false},"type":"array"},"required":{"description":"Whether the field must have a value.","type":"boolean"},"widget":{"description":"The control to render.","enum":["text","long_text","markdown","code","select","multi_select","model_picker","environment_picker","agent_picker","skill_picker","vault_reference","key_list","number","boolean","resources","json"],"type":"string"}},"required":["name","label","widget"],"type":"object","additionalProperties":false},"type":"array"},"input":{"oneOf":[{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"The action's request, as the server validated and normalized it. A value {\"$ref\": \"steps.\u003cstepId>.\u003cfield>\"} is filled from an earlier step's result.","type":"object"},{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"The action's request, as the server validated and normalized it. A value {\"$ref\": \"steps.\u003cstepId>.\u003cfield>\"} is filled from an earlier step's result.","type":"null"}]},"optional":{"description":"Whether the reader may turn the step off.","type":"boolean"},"stepId":{"description":"Id of the step within the plan; later steps refer to its outputs by it.","type":"string"},"title":{"description":"What the step does, in words.","type":"string"},"warnings":{"description":"Things the reader should know before approving.","items":{"type":"string"},"type":"array"}},"required":["stepId","action","title","enabled","input","costClass"],"type":"object","additionalProperties":false},"type":"array"}},"required":["steps"],"type":"object","additionalProperties":false},"questions":{"description":"The questions, on a question interaction.","items":{"description":"One typed question of a question interaction.","properties":{"allowOther":{"description":"Whether a select question also accepts a free-text answer.","type":"boolean"},"input":{"description":"How the question is answered.","enum":["single_select","multi_select","short_text","long_text","confirm","picker"],"type":"string"},"multiple":{"description":"Whether a picker question accepts more than one resource.","type":"boolean"},"optional":{"description":"Whether the question may be left unanswered.","type":"boolean"},"options":{"description":"The choices of a select or picker question. Picker options are resolved by the server from resources the reader can access.","items":{"description":"One choice of a select or picker question, or of a plan field.","properties":{"description":{"description":"Optional detail shown under the label.","type":"string"},"label":{"description":"What the reader sees.","type":"string"},"optionId":{"description":"Id to answer with.","type":"string"}},"required":["optionId","label"],"type":"object","additionalProperties":false},"type":"array"},"picker":{"description":"Which kind of resource a picker question selects.","enum":["agent","environment","skill","vault","model","agent_template","environment_template"],"type":"string"},"prompt":{"description":"The question.","type":"string"},"questionId":{"description":"Id of the question within the interaction.","type":"string"}},"required":["questionId","prompt","input"],"type":"object","additionalProperties":false},"type":"array"},"requestedAt":{"description":"When this revision was put in front of the reader.","format":"date-time","type":"string"},"revision":{"description":"Revision number, starting at 1. Only the latest revision of a pending interaction can be decided.","minimum":1,"type":"integer","maximum":9007199254740991},"status":{"description":"Lifecycle state of the interaction.","enum":["pending","answered","accepted","revision_requested","cancelled","superseded","executing","completed","failed"],"type":"string"},"stepResults":{"description":"What each approved step did, once a plan executes.","items":{"description":"What one approved plan step did.","properties":{"link":{"description":"Console path to it.","type":"string"},"message":{"description":"Detail, or the error.","type":"string"},"resourceId":{"description":"The id of what it created or changed.","type":"string"},"resourceKind":{"description":"What it created or changed.","type":"string"},"status":{"description":"How it ended, or running while it runs. uncertain means the outcome could not be confirmed and the step was not retried.","enum":["running","completed","failed","skipped","uncertain"],"type":"string"},"stepId":{"description":"The plan step this result is for.","type":"string"}},"required":["stepId","status"],"type":"object","additionalProperties":false},"type":"array"},"summary":{"description":"One or two sentences on why this is being asked.","type":"string"},"title":{"description":"Short heading for the interaction.","type":"string"}},"required":["interactionId","kind","revision","digest","status","origin","title","requestedAt"],"type":"object","additionalProperties":false},"blocks":{"oneOf":[{"description":"Ordered content blocks of this message, in the provider's content-block form. Empty for events that carry no message body.","items":{"description":"One block of message content: text, image, tool_use, tool_result, thinking, or a provider passthrough. The type field says which fields apply. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","properties":{"byte_size":{"description":"Decoded image byte size.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"content":{"description":"Nested blocks carrying a tool_result payload, so a tool can return both text and images.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array"},"context":{"description":"A document block's context: what the model should know about the document before reading it, disclosed as its first paragraph.","type":"string"},"data":{"description":"Base64 image bytes. Omitted from default reads and present only for legacy storage or explicit hydrate=images responses.","type":"string"},"encrypted_content":{"description":"Sealed reasoning payload for providers that return reasoning encrypted. Opaque to clients; replay it verbatim.","type":"string"},"height":{"description":"Validated image height in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"id":{"description":"Provider-assigned id of a tool_use block. Echo it back as tool_use_id on the matching tool_result.","type":"string"},"input":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Tool arguments the model produced for a tool_use block, matching that tool's input schema.","type":"object"},"is_error":{"description":"True when a tool_result reports that the tool call failed; the nested content then carries the error detail.","type":"boolean"},"media_type":{"description":"Declared media type; inline computer-use images allow image/jpeg, image/png, and image/webp.","type":"string"},"name":{"description":"Name of the tool the model is invoking, on a tool_use block.","type":"string"},"omitted_bytes":{"description":"Original byte count reported by a redacted image placeholder.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"payload":{"oneOf":[{"type":"null","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"boolean","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"string","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"integer","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"array","items":{"oneOf":[{}]},"description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"object","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."}]},"provider":{"description":"Provider that emitted a passthrough block, e.g. anthropic or openai, telling readers how to interpret payload.","type":"string"},"provider_payload":{"oneOf":[{"type":"null","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"boolean","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"string","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"integer","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"array","items":{"oneOf":[{}]},"description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"object","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."}]},"redacted":{"description":"True when the block's content was withheld (redacted thinking, or an image dropped by redaction); the remaining fields describe what was removed.","type":"boolean"},"semantic_hint":{"description":"Coarse hint about what an unmodeled provider block represents, so a reader can render it without provider-specific logic.","type":"string"},"sha256":{"description":"Lowercase SHA-256 digest of decoded image bytes.","type":"string"},"signature":{"description":"Provider-issued signature over a thinking block, or the thought signature a Gemini tool_use block was issued with, required for the provider to accept that block on a later turn. Opaque; replay it verbatim.","type":"string"},"source":{"description":"Where a user-sent image or document block's bytes came from when they were named rather than sent inline: {type: \"file\", file_id}. Kept on the stored block as provenance after the bytes were copied into the session; an image block then also carries the session's own uri.","properties":{"file_id":{"type":"string","minLength":1,"description":"Nonempty id of an unexpired file in the caller's organization."},"type":{"type":"string","const":"file","description":"Always file."}},"required":["type","file_id"],"type":"object","additionalProperties":false},"summary":{"description":"Readable summary blocks a provider returns alongside sealed or long-form reasoning.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array"},"text":{"description":"Text of a text block, or the reasoning text of a thinking block.","type":"string"},"title":{"description":"A document block's title, disclosed to the model beside the document.","type":"string"},"tool_use_id":{"description":"Id of the tool_use block that this tool_result answers.","type":"string"},"type":{"description":"Block discriminator: text, image, document (a user-sent block naming a file by id, inlined as text when the message is accepted), tool_use, tool_result, thinking, redacted_thinking, or a provider passthrough type. Which of the other fields apply depends on this value.","type":"string"},"uri":{"description":"Private typed content reference. Fetch it through managedAgentsGetSessionImage; clients cannot read this URI directly.","type":"string"},"url":{"description":"Short-lived HTTPS URL for the image bytes. Present only when the read asked for image_urls=signed and the deployment has signing configured. Never stored; fetch a fresh read after url_expires_at.","type":"string"},"url_expires_at":{"description":"When url stops working. Absent whenever url is.","format":"date-time","type":"string"},"width":{"description":"Validated image width in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["type"],"type":"object","additionalProperties":false},"type":"array"},{"description":"Ordered content blocks of this message, in the provider's content-block form. Empty for events that carry no message body.","items":{"description":"One block of message content: text, image, tool_use, tool_result, thinking, or a provider passthrough. The type field says which fields apply. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","properties":{"byte_size":{"description":"Decoded image byte size.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"content":{"description":"Nested blocks carrying a tool_result payload, so a tool can return both text and images.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array"},"context":{"description":"A document block's context: what the model should know about the document before reading it, disclosed as its first paragraph.","type":"string"},"data":{"description":"Base64 image bytes. Omitted from default reads and present only for legacy storage or explicit hydrate=images responses.","type":"string"},"encrypted_content":{"description":"Sealed reasoning payload for providers that return reasoning encrypted. Opaque to clients; replay it verbatim.","type":"string"},"height":{"description":"Validated image height in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"id":{"description":"Provider-assigned id of a tool_use block. Echo it back as tool_use_id on the matching tool_result.","type":"string"},"input":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Tool arguments the model produced for a tool_use block, matching that tool's input schema.","type":"object"},"is_error":{"description":"True when a tool_result reports that the tool call failed; the nested content then carries the error detail.","type":"boolean"},"media_type":{"description":"Declared media type; inline computer-use images allow image/jpeg, image/png, and image/webp.","type":"string"},"name":{"description":"Name of the tool the model is invoking, on a tool_use block.","type":"string"},"omitted_bytes":{"description":"Original byte count reported by a redacted image placeholder.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"payload":{"oneOf":[{"type":"null","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"boolean","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"string","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"integer","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"array","items":{"oneOf":[{}]},"description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"object","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."}]},"provider":{"description":"Provider that emitted a passthrough block, e.g. anthropic or openai, telling readers how to interpret payload.","type":"string"},"provider_payload":{"oneOf":[{"type":"null","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"boolean","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"string","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"integer","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"array","items":{"oneOf":[{}]},"description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"object","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."}]},"redacted":{"description":"True when the block's content was withheld (redacted thinking, or an image dropped by redaction); the remaining fields describe what was removed.","type":"boolean"},"semantic_hint":{"description":"Coarse hint about what an unmodeled provider block represents, so a reader can render it without provider-specific logic.","type":"string"},"sha256":{"description":"Lowercase SHA-256 digest of decoded image bytes.","type":"string"},"signature":{"description":"Provider-issued signature over a thinking block, or the thought signature a Gemini tool_use block was issued with, required for the provider to accept that block on a later turn. Opaque; replay it verbatim.","type":"string"},"source":{"description":"Where a user-sent image or document block's bytes came from when they were named rather than sent inline: {type: \"file\", file_id}. Kept on the stored block as provenance after the bytes were copied into the session; an image block then also carries the session's own uri.","properties":{"file_id":{"type":"string","minLength":1,"description":"Nonempty id of an unexpired file in the caller's organization."},"type":{"type":"string","const":"file","description":"Always file."}},"required":["type","file_id"],"type":"object","additionalProperties":false},"summary":{"description":"Readable summary blocks a provider returns alongside sealed or long-form reasoning.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array"},"text":{"description":"Text of a text block, or the reasoning text of a thinking block.","type":"string"},"title":{"description":"A document block's title, disclosed to the model beside the document.","type":"string"},"tool_use_id":{"description":"Id of the tool_use block that this tool_result answers.","type":"string"},"type":{"description":"Block discriminator: text, image, document (a user-sent block naming a file by id, inlined as text when the message is accepted), tool_use, tool_result, thinking, redacted_thinking, or a provider passthrough type. Which of the other fields apply depends on this value.","type":"string"},"uri":{"description":"Private typed content reference. Fetch it through managedAgentsGetSessionImage; clients cannot read this URI directly.","type":"string"},"url":{"description":"Short-lived HTTPS URL for the image bytes. Present only when the read asked for image_urls=signed and the deployment has signing configured. Never stored; fetch a fresh read after url_expires_at.","type":"string"},"url_expires_at":{"description":"When url stops working. Absent whenever url is.","format":"date-time","type":"string"},"width":{"description":"Validated image width in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["type"],"type":"object","additionalProperties":false},"type":"null"}]},"evaluation_budget_reached":{"additionalProperties":false,"description":"Cost cap and targets stopped or left unadmitted when the run reached it.","properties":{"affected_target_session_ids":{"description":"Target sessions stopped or not admitted because the cap was reached.","items":{"format":"uuid","type":"string"},"minItems":1,"type":"array"},"max_tree_cost_usd":{"description":"Exact decimal USD tree cap that stopped further admission.","type":"string"}},"required":["max_tree_cost_usd","affected_target_session_ids"],"type":"object"},"evaluation_plan_frozen":{"additionalProperties":false,"description":"Frozen target, rubric, concurrency, and cost plan for an evaluation run.","properties":{"criteria":{"description":"Ordered rubric criteria frozen from the evaluator version.","items":{"additionalProperties":false,"description":"One stable rubric criterion frozen from the evaluator version for the complete run.","properties":{"criterion_key":{"description":"Stable rubric key used to join verdicts across the run.","type":"string"},"criterion_text":{"description":"Frozen rubric instruction evaluated for every target.","type":"string"}},"required":["criterion_key","criterion_text"],"type":"object"},"type":"array"},"max_concurrent_threads":{"description":"Maximum evaluation children admitted concurrently for this run.","minimum":1,"type":"integer","maximum":9007199254740991},"max_tree_cost_usd":{"description":"Optional exact decimal USD cap on billed cost shared by the evaluation tree.","type":"string"},"targets":{"description":"Ordered target sessions and their immutable transcript snapshots.","items":{"additionalProperties":false,"description":"One root target and the immutable transcript boundary frozen into an evaluation plan.","properties":{"snapshot_event_id":{"description":"Canonical event id at or before which the target transcript is frozen.","format":"uuid","type":"string"},"target_session_id":{"description":"Root session selected as an immutable evaluation target.","format":"uuid","type":"string"}},"required":["target_session_id","snapshot_event_id"],"type":"object"},"type":"array"}},"required":["targets","criteria","max_concurrent_threads"],"type":"object"},"evaluation_run_finished":{"additionalProperties":false,"description":"Terminal counts and systemic failure state for the evaluation run.","properties":{"failure_code":{"description":"Stable systemic failure classification for a failed run.","enum":["plan_failed","cleanup_failed","accounting_failed","audit_failed","finalization_failed"],"type":"string"},"failure_message":{"description":"Sanitized explanation of the systemic run failure.","type":"string"},"targets_budget_reached":{"description":"Number of targets stopped or not admitted after the cost cap was reached.","minimum":0,"type":"integer","maximum":9007199254740991},"targets_skipped":{"description":"Number of targets whose processing ended without a completed verdict audit.","minimum":0,"type":"integer","maximum":9007199254740991},"targets_total":{"description":"Number of target snapshots frozen in the plan.","minimum":0,"type":"integer","maximum":9007199254740991},"terminal_status":{"description":"Final lifecycle state of the evaluation run.","enum":["completed","failed","cancelled"],"type":"string"},"verdicts_recorded":{"description":"Number of completed verdict audit events recorded for this run.","minimum":0,"type":"integer","maximum":9007199254740991}},"required":["terminal_status","targets_total","verdicts_recorded","targets_skipped","targets_budget_reached"],"type":"object"},"evaluation_target_skipped":{"additionalProperties":false,"description":"Sanitized outcome for a target whose processing ended without a completed verdict audit.","properties":{"child_session_id":{"description":"Evaluation child identity when creation reached that stage.","format":"uuid","type":"string"},"reason":{"description":"Sanitized operator-readable explanation of the skip.","type":"string"},"reason_code":{"description":"Stable machine-readable classification of the skipped target.","enum":["child_create_failed","child_run_failed","verdict_invalid","cleanup_or_accounting_failed"],"type":"string"},"snapshot_event_id":{"description":"Canonical transcript event boundary frozen for the skipped target.","format":"uuid","type":"string"},"target_session_id":{"description":"Root target whose processing ended without a completed verdict audit.","format":"uuid","type":"string"}},"required":["target_session_id","snapshot_event_id","reason_code","reason"],"type":"object"},"evaluation_target_started":{"additionalProperties":false,"description":"Identity and clone state for one admitted evaluation target.","properties":{"child_session_id":{"description":"Evaluation child session created for this target.","format":"uuid","type":"string"},"clone_state":{"description":"Whether the child received a ready clone or needed no sandbox.","enum":["ready","sandboxless"],"type":"string"},"evaluation_id":{"description":"Immutable verdict identity reserved for this target.","format":"uuid","type":"string"},"sandbox_provider":{"description":"Provider of the isolated clone when the target has a sandbox.","type":"string"},"snapshot_event_id":{"description":"Canonical event id bounding the immutable target transcript snapshot.","format":"uuid","type":"string"},"target_session_id":{"description":"Root session whose frozen snapshot is being evaluated.","format":"uuid","type":"string"}},"required":["target_session_id","snapshot_event_id","child_session_id","evaluation_id","clone_state"],"type":"object"},"evaluation_verdict_recorded":{"additionalProperties":false,"description":"Audit reference to one authoritative immutable evaluation verdict.","properties":{"child_session_id":{"description":"Evaluation child session that produced the verdict.","format":"uuid","type":"string"},"cost_completeness":{"description":"Whether every cost component is final and priced.","enum":["complete","pending","unpriced","partial","legacy_partial","indeterminate"],"type":"string"},"cost_usd":{"description":"Exact canonical decimal USD attributed to this evaluation.","type":"string"},"evaluation_id":{"description":"Immutable evaluation row that remains authoritative.","format":"uuid","type":"string"},"failed_criterion_keys":{"description":"Sorted unique rubric keys whose verdict is fail.","items":{"type":"string"},"type":"array","uniqueItems":true},"result":{"description":"Overall verdict derived from the frozen criterion results.","enum":["pass","fail","not_applicable","not_evaluable"],"type":"string"},"snapshot_event_id":{"description":"Canonical event id bounding the transcript evidence considered.","format":"uuid","type":"string"},"target_session_id":{"description":"Root session evaluated by this immutable verdict.","format":"uuid","type":"string"}},"required":["target_session_id","snapshot_event_id","child_session_id","evaluation_id","result","failed_criterion_keys","cost_usd","cost_completeness"],"type":"object"},"metadata":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Extra key/value detail about this event that is not part of the message body, such as the ingest subtype or the sandbox working directory.","type":"object"},"plan":{"description":"Plan items reported by the agent, present on a plan_update event.","items":{"description":"One step of a plan or to-do list an agent reported while working. Appears on an event's content when the agent's harness emits a plan; the service records it without acting on it.","properties":{"content":{"description":"Text of the planned step as the agent wrote it.","type":"string"},"id":{"description":"Identifier for this plan entry, stable across the turns that update it.","type":"string"},"status":{"description":"Progress value the agent reported for this step. Passed through as written and not interpreted by the service.","type":"string"}},"required":["id","content","status"],"type":"object","additionalProperties":false},"type":"array"},"stop_reason":{"description":"The provider's own stop_reason for the assistant turn, recorded verbatim, e.g. end_turn, tool_use, or max_tokens. Absent on events that are not a model response.","type":"string"},"tools":{"description":"Tool definitions that were in scope for the turn, as sent to the provider. Recorded on the session's system message so a transcript shows what the model could call.","items":{"description":"One tool as it was offered to the model, in the Anthropic and OpenAI tool-definition vocabulary. Recorded on the event for a model turn so a reader can see exactly what the model could call.","properties":{"description":{"description":"Natural-language explanation of what the tool does and when to use it, supplied to the model verbatim.","type":"string"},"input_schema":{"oneOf":[{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"JSON Schema for the tool's arguments. Passed to the model provider unchanged.","type":"object"},{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"JSON Schema for the tool's arguments. Passed to the model provider unchanged.","type":"null"}]},"name":{"description":"Tool name the model calls, matching the name on the resulting tool_use content block.","type":"string"}},"required":["name","description","input_schema"],"type":"object","additionalProperties":false},"type":"array"},"usage":{"description":"Token counts the provider reported for the call that produced this message. Absent when the event is not a model response.","properties":{"cache_read_tokens":{"description":"Prompt tokens served from the provider's prompt cache, billed at the cached rate.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"cache_write_tokens":{"description":"Prompt tokens written into the provider's prompt cache.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"cost_usd":{"description":"Not set on current events. Read the event's cost_micros for cost.","format":"double","type":"number"},"input_tokens":{"description":"Prompt tokens billed for this unit of work.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"output_tokens":{"description":"Completion tokens billed for this unit of work.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"type":"object","additionalProperties":false}},"required":["blocks"],"type":"object","additionalProperties":false},"content_hydration_status":{"description":"Read-time status when external EventContent was hydrated or could not be hydrated.","enum":["hydrated","refs_only","missing","corrupt","unavailable","oversized"],"type":"string"},"content_payload_bytes":{"description":"Byte size of the canonical external EventContent JSON.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"content_payload_ref":{"description":"Private whole-event content reference. Read the content through managedAgentsGetSessionEventContent; this reference cannot be fetched directly.","type":"string"},"content_payload_sha256":{"description":"Lowercase SHA-256 digest of the canonical external EventContent JSON.","type":"string"},"content_ref":{"description":"Image cleanup prefix or typed multi-image envelope. This is independent of whole-event payload storage.","type":"string"},"cost_micros":{"description":"Accrued cost in micro-USD (1,000,000 = 1 USD). Integer to avoid float rounding across many small charges.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created_at":{"description":"RFC 3339 timestamp of when this record was created. Server-assigned.","format":"date-time","type":"string"},"environment_id":{"description":"Sandbox environment the producing session was executing in (UUID).","type":"string"},"event_id":{"description":"Identifier for this event (UUID). Server-assigned unless the append supplied one. Chronologically sortable, and the column a transcript is ordered by.","type":"string"},"event_status":{"description":"Outcome marker for events that can fail: pending, completed, warning, or error. Empty when not applicable.","type":"string"},"event_type":{"description":"What kind of event this is. One of message, tool_invocation, tool_result, approval_request, approval_decision, summary, plan_update, session_status, artifact, advisor_intervention, outcome_evaluation, or program_call.","type":"string"},"finish_reason":{"description":"Why the provider stopped generating, in the provider vocabulary (for example end_turn, max_tokens, tool_use). Passed through verbatim.","type":"string"},"inference_config":{"description":"Settings recorded for this inference. A recorded temperature or top_p was not sent to the model.","properties":{"max_tokens":{"description":"Upper bound on tokens the model may generate for one assistant turn (the provider's max_tokens). Omit or 0 to use the model reference's default.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"provider_params":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Recognized provider-specific settings are thinking, thinkingDisplay and output_config for native Anthropic messages; thinkingConfig for native Gemini; and promptCache, promptCacheTTL and promptCacheSharedTTL for prompt caching. Unknown top-level keys are ignored, not passed through. Omitting all three cache settings enables automatic policy: explicit caching stays enabled and eligible Anthropic requests may use 1h shared retention when recent usage and current pricing evidence predict savings; otherwise shared retention is 5m. Setting promptCache or either TTL explicitly keeps operator-configured retention. promptCache true enables explicit markers; false disables them and ignores both TTL settings. With caching enabled, both TTL settings accept only 5m or 1h on models using native Anthropic messages. promptCacheTTL defaults to 5m for user-context anchors and history. promptCacheSharedTTL controls tools and system instructions, defaults to promptCacheTTL under explicit configuration, and cannot be shorter than promptCacheTTL. Authored thinking objects and enabled cache TTL settings are validated at agent/version writes and session start.","type":"object"},"reasoning_effort":{"description":"Provider-native reasoning depth value. For a model from the models catalog, use one of its supportedReasoningEfforts; omit it to follow the provider's current default.","type":"string"},"temperature":{"description":"Accepted and stored, but not sent to the model, so it has no effect.","type":"number"},"top_p":{"description":"Accepted and stored, but not sent to the model, so it has no effect.","type":"number"}},"type":"object","additionalProperties":false},"input_tokens":{"description":"Prompt tokens billed for this unit of work.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"latency_ms":{"description":"Wall-clock duration of the provider call in milliseconds.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"model":{"description":"Snapshot of the model reference as it was at call time, so a later model change does not rewrite history.","properties":{"base_url":{"description":"Endpoint the request was sent to, for models not served at their provider's default endpoint. Empty means the provider's default endpoint.","type":"string"},"capabilities":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Declared model capability flags, e.g. tool use, vision, or extended thinking support, as recorded from the catalog entry at call time.","type":"object"},"context_window":{"description":"Maximum total tokens the model accepts in one request, prompt plus completion, as recorded from the catalog entry at call time. 0 means unknown.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"max_output_tokens":{"description":"Maximum completion tokens the model can emit in one response, as recorded from the catalog entry at call time. 0 means unknown.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"metadata":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Extra key/value data copied from the catalog entry. Some keys are read by the service to shape the request, such as base_url and reasoning_style.","type":"object"},"model":{"description":"Provider's own model id as sent on the wire, e.g. model-name or provider/model-name.","type":"string"},"model_ref_id":{"description":"Model reference in the catalog this snapshot was resolved from (UUID). Empty when the session named a models-catalog id instead of a catalog entry.","type":"string"},"model_version":{"description":"Provider-specific version or snapshot pin recorded alongside the model id, when the catalog entry declares one.","type":"string"},"provider":{"description":"Provider family that served the call, e.g. anthropic, openai, vertex, or mock. Carries the same value as provider_type and is kept for older readers.","type":"string"},"provider_id":{"description":"Model provider record whose credentials and base URL were used (UUID).","type":"string"},"provider_type":{"description":"Provider family that served the call, e.g. anthropic, openai, vertex, or mock. Selects which wire protocol the request used.","type":"string"},"serving_backend":{"description":"Serving stack behind a self-hosted model, e.g. vllm. Empty for models called through a hosted provider API.","type":"string"}},"required":["provider","model"],"type":"object","additionalProperties":false},"model_ref_id":{"description":"Canonical model reference used for this inference (UUID). Empty on events not produced by a model call.","type":"string"},"organization_id":{"description":"Organization that owns this record. Resolved from the API key; never accepted from the caller.","type":"string"},"output_tokens":{"description":"Completion tokens billed for this unit of work.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"parent_event_id":{"description":"Event this one is nested under in the transcript tree (UUID), for example a tool result under its invocation.","type":"string"},"prompt_tokens":{"description":"Estimated tokens this event contributes when rendered into a future provider request. A memoized estimate for context-budget planning, not billed provider usage.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"provider_model_id":{"description":"Provider's own model identifier as sent on the wire, which may differ from the canonical model reference.","type":"string"},"provider_request_id":{"description":"Provider's request identifier for this inference, for correlating with provider-side logs.","type":"string"},"provider_type":{"description":"Model provider family that served this inference, for example anthropic, openai, or vertex.","type":"string"},"role":{"description":"Message role in the provider vocabulary: system, user, or assistant. Set on message events; empty on events that are not turns.","type":"string"},"sandbox_instance_id":{"description":"Concrete sandbox instance the event was produced on. Provider-assigned, not a UUID.","type":"string"},"schema_version":{"description":"Event schema version this row was written under. Server-assigned; readers should tolerate unknown newer values.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"session_id":{"description":"Session this event belongs to (UUID).","type":"string"},"thread_id":{"description":"Thread within a multi-agent session that produced this event (UUID). Empty on a single-agent session.","type":"string"},"tool_name":{"description":"Name of the tool being invoked or reporting a result. Set on tool events only.","type":"string"},"tool_use_id":{"description":"Provider's tool-call identifier, correlating a tool_invocation with its tool_result.","type":"string"},"turn_id":{"description":"Groups every event produced within one model turn.","type":"string"}},"required":["schema_version","event_type","actor","content","inference_config","session_id","event_id","created_at"],"type":"object","additionalProperties":false},"type":"null","isRequired":true,"uniqueKey":"events.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"events","typeLabel":"object[] | null"},"root_session_id":{"description":"Root session of the multi-agent tree this result covers (UUID). Equal to session_id for a root session.","type":"string","isRequired":true,"uniqueKey":"root_session_id","typeLabel":"string"},"sessions":{"oneOf":[{"description":"Every session in the tree, root and subagents alike. Always complete; only the event log is paged.","items":{"description":"One durable agent run: its lifecycle status (active, awaiting_human, completed, failed, cancelled), the agent version, environment, model, and credentials it was pinned to, and its place in a multi-agent tree. Returned when starting, reading, or listing sessions; imported RL rollouts appear as sessions too and run no agent loop.","properties":{"computer_use":{"description":"Whether this session has a computer-enabled environment and a display that passed its readiness probe.","type":"boolean","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].computer_use","typeLabel":"boolean"},"config":{"oneOf":[{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Resolved per-session runtime settings written at start, including the snapshotted MCP servers and tool bindings, multi-agent roster, and delegation depth limits. The settings an agent version owns change only when the session moves to another version of its agent. Read-only to callers.","type":"object","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.0","typeLabel":"object"},{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Resolved per-session runtime settings written at start, including the snapshotted MCP servers and tool bindings, multi-agent roster, and delegation depth limits. The settings an agent version owns change only when the session moves to another version of its agent. Read-only to callers.","type":"null","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].config.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].config","typeLabel":"object | null"},"created_at":{"description":"RFC 3339 timestamp of when this record was created. Server-assigned.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].created_at","typeLabel":"string\u003cdate-time>"},"credential_refs":{"oneOf":[{"description":"Explicit allowlist of individual credentials the session may use; null or empty when none are listed. Read credential_refs_configured to tell an intentionally empty allowlist from a legacy session granted whole vaults.","items":{"description":"A pointer to one credential inside one vault. Used to grant a session specific credentials rather than every credential in a vault.","properties":{"credential_id":{"description":"Credential to select inside vault_id.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].credential_refs.oneOf.0.items.[INDEX].credential_id","typeLabel":"string"},"vault_id":{"description":"Vault holding the credential. Required, because credential ids are unique only within a vault.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].credential_refs.oneOf.0.items.[INDEX].vault_id","typeLabel":"string"}},"required":["vault_id","credential_id"],"type":"object","additionalProperties":false,"uniqueKey":"sessions.oneOf.0.items.[INDEX].credential_refs.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","x-recursion-nullable-collection":"null-is-domain-value","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].credential_refs.oneOf.0","typeLabel":"object[]"},{"description":"Explicit allowlist of individual credentials the session may use; null or empty when none are listed. Read credential_refs_configured to tell an intentionally empty allowlist from a legacy session granted whole vaults.","items":{"description":"A pointer to one credential inside one vault. Used to grant a session specific credentials rather than every credential in a vault.","properties":{"credential_id":{"description":"Credential to select inside vault_id.","type":"string"},"vault_id":{"description":"Vault holding the credential. Required, because credential ids are unique only within a vault.","type":"string"}},"required":["vault_id","credential_id"],"type":"object","additionalProperties":false},"type":"null","x-recursion-nullable-collection":"null-is-domain-value","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].credential_refs.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].credential_refs","typeLabel":"object[] | null"},"credential_refs_configured":{"description":"True when credential_refs is an explicit allowlist. False on legacy sessions granted every credential in their vaults, which would otherwise be indistinguishable from an empty allowlist.","type":"boolean","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].credential_refs_configured","typeLabel":"boolean"},"kind":{"description":"What produced the session: api_call, chat, subagent (delegated by another session), session_analyst (a platform-started read-only assistant), or evaluation (a root that inspects a captured target snapshot).","enum":["api_call","chat","rollout","subagent","benchmark","evaluation","reflection","session_analyst"],"type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"organization_id":{"description":"Organization that owns this record. Resolved from the API key; never accepted from the caller.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].organization_id","typeLabel":"string"},"root_session_id":{"description":"Root session of the multi-agent tree this session belongs to (UUID). Equal to session_id for a root session.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].root_session_id","typeLabel":"string"},"session_id":{"description":"Identifier for this session (UUID). Server-assigned.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].session_id","typeLabel":"string"},"session_path":{"description":"Position of this session within its tree, as a slash-delimited path of session ids. \"/\" for a root session.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].session_path","typeLabel":"string"},"status":{"description":"Coarse session state shared with RL rollout imports: active, awaiting_human (for a rollout, carries no score), completed, failed, or cancelled. For where a running agent loop is, read execution_state instead.","enum":["active","awaiting_human","completed","failed","cancelled"],"type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"updated_at":{"description":"RFC 3339 timestamp of the last change to this record. Server-assigned.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].updated_at","typeLabel":"string\u003cdate-time>"},"access_policy":{"type":"string","enum":["platform_internal"],"description":"Present only when reading a platform-managed session directly; these sessions are omitted from session lists.","uniqueKey":"sessions.oneOf.0.items.[INDEX].access_policy","typeLabel":"enum\u003cstring>"},"active_handoff":{"description":"Current browser handoff, including its exclusive driver claim and deadline. Absent when no browser handoff is active. Never contains the short-lived access URL.","properties":{"deadline_at":{"description":"When the handoff automatically expires and the agent resumes.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].active_handoff.deadline_at","typeLabel":"string\u003cdate-time>"},"handoff_id":{"description":"Stable identifier for this browser handoff.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].active_handoff.handoff_id","typeLabel":"string"},"reason":{"description":"Why the agent asked a person to take over the shared browser.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].active_handoff.reason","typeLabel":"string"},"requested_at":{"description":"When the agent requested the handoff.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].active_handoff.requested_at","typeLabel":"string\u003cdate-time>"},"state":{"description":"Whether nobody has opened access yet, one person currently owns the display, or hand-back/deadline resolution is being delivered.","enum":["awaiting_user","user_driving","resolved"],"type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].active_handoff.state","typeLabel":"enum\u003cstring>"},"access_expires_at":{"description":"Latest time the current display access remains usable; never later than deadline_at.","format":"date-time","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].active_handoff.access_expires_at","typeLabel":"string\u003cdate-time>"},"wake_cause":{"description":"Resolution cause once resolved: user_handed_back, deadline_elapsed, cancelled, or interrupted.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].active_handoff.wake_cause","typeLabel":"string"}},"required":["handoff_id","reason","requested_at","deadline_at","state"],"type":"object","additionalProperties":false,"uniqueKey":"sessions.oneOf.0.items.[INDEX].active_handoff","typeLabel":"object"},"agent_id":{"description":"Agent this session runs (UUID). Empty for imported sessions that were not started from an agent.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_id","typeLabel":"string"},"agent_snapshot":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"The definition of the agent version this session runs, frozen so later edits to the agent cannot change this session's behavior. Written at start; it changes only when the session moves to another version of its agent, which agent_version_id shows.","type":"object","uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_snapshot","typeLabel":"object"},"agent_version_id":{"description":"Agent version this session runs (UUID), pinned at start so a later edit to the agent cannot change a running session. It changes only when the session moves to another version of its agent.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].agent_version_id","typeLabel":"string"},"budget":{"description":"The session tree's budget and what the tree has spent toward it, on a root session read in full. Omitted when the session has none, and on summary and list reads.","properties":{"continuesOnRaise":{"description":"Whether raising or removing the budget of a session paused at it continues the session right away. False for a session bound to a Slack thread, which continues on its next reply there.","readOnly":true,"type":"boolean","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].budget.continuesOnRaise","typeLabel":"boolean"},"maxCostUsd":{"description":"The budget in US dollars, with two decimals.","examples":["10.00"],"pattern":"^(0|[1-9][0-9]{0,5})(\\.[0-9]{1,2})?$","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].budget.maxCostUsd","typeLabel":"string"},"agentCapUsd":{"description":"The agent's multiagent.limits.max_tree_cost_usd, in US dollars with two decimals: the most this budget can be set to. A session whose budget reached it stays paused; start a new session, or raise the agent's cap for sessions started after.","examples":["25.00"],"readOnly":true,"type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].budget.agentCapUsd","typeLabel":"string"},"spentUsd":{"description":"What the session tree has spent, plus any linked outcome grading sessions charged to the same budget on Recursion, in US dollars with two decimals, at the billed price the budget is enforced at (models, tools and sandbox compute). Present on a full read of the root; absent when the spend could not be read. A session that paused at its budget can read a little past it: the request that crossed it completes.","examples":["4.20"],"readOnly":true,"type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].budget.spentUsd","typeLabel":"string"}},"required":["maxCostUsd","continuesOnRaise"],"type":"object","additionalProperties":false,"uniqueKey":"sessions.oneOf.0.items.[INDEX].budget","typeLabel":"object"},"concurrency_slot_held":{"description":"Whether this root session currently occupies the agent's max_concurrent_sessions slot. True while admitted and non-terminal. False exclusively while an active queued root waits to start. Omitted for unlimited agents, child sessions, legacy rows, and terminal or deleted sessions.","type":"boolean","uniqueKey":"sessions.oneOf.0.items.[INDEX].concurrency_slot_held","typeLabel":"boolean"},"costState":{"description":"final once the session has ended, its sandbox has stopped, and every charge has settled: costUsd will not change unless the session is resumed. so_far while it can still grow. Present exactly when costUsd is.","enum":["final","so_far"],"type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].costState","typeLabel":"enum\u003cstring>"},"costUsd":{"description":"Billed cost of this session's whole tree as an exact canonical decimal USD string. On Recursion, a writer's cost also includes linked cloned outcome evaluation roots, counting each ledger charge once; manual evaluations remain independent. On other surfaces, cost remains tree-only. Compute still running is included as an estimate; the figure is final once every included tree has ended and settled. Returned by managedAgentsGetSession and managedAgentsListSessions only, and absent when it cannot be read.","examples":["1.234567"],"type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].costUsd","typeLabel":"string"},"effective_model":{"description":"Provider-qualified model string this session runs, including any per-session model override. Written at start; it changes only when the session moves to another version of its agent. Prefer this over resolving model_ref_id or the current agent version when displaying the model a session runs.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].effective_model","typeLabel":"string"},"environment_id":{"description":"Environment whose sandbox definition this session runs in (UUID).","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].environment_id","typeLabel":"string"},"execution_state":{"description":"Where the agent loop is. Empty for sessions without a loop, such as imported rollouts. provisioning includes any automatic setup-image refresh before sandbox creation. A failure that can't be retried, such as a failed setup script, fails the session with the reason in failure. This field, read from the session itself, is the authoritative status -- a session's event stream is written on a separate path and can lag it, so an empty event list does not mean the session is still starting.","enum":["provisioning","queued","running","idle","completed"],"type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].execution_state","typeLabel":"enum\u003cstring>"},"external_source_id":{"description":"Identifier of the session's counterpart in the external_source_type system, so a caller can find the session again from that side. Set together with external_source_type.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].external_source_id","typeLabel":"string"},"external_source_type":{"description":"Kind of external system this session is correlated to, e.g. slack_thread. Set together with external_source_id and filterable when listing sessions.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].external_source_type","typeLabel":"string"},"failure":{"description":"Structured terminal failure. Omitted for healthy sessions and legacy rows.","properties":{"at":{"description":"Time the terminal failure was persisted.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].failure.at","typeLabel":"string\u003cdate-time>"},"category":{"description":"Who can act on this failure: transient (wait or retry), caller_error (change the request or configuration, retrying as-is will not help), or internal (report it). retryable=false with category=caller_error is a fixable mistake, not an outage. A retryable failure is never caller_error: if the platform will retry, changing the request is not the fix.","enum":["transient","caller_error","internal"],"type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].failure.category","typeLabel":"enum\u003cstring>"},"code":{"description":"Stable machine-readable failure code.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].failure.code","typeLabel":"string"},"message":{"description":"Sanitized bounded operator-facing message; never contains raw provider response bodies or credentials.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].failure.message","typeLabel":"string"},"phase":{"description":"Lifecycle phase that failed, such as provisioning, setup, workflow, or model.","type":"string","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].failure.phase","typeLabel":"string"},"retryable":{"description":"Whether the platform will retry, or a retry of the same request may succeed on its own. False does not mean permanently broken -- read category to tell a transient condition from a request the caller must change.","type":"boolean","isRequired":true,"uniqueKey":"sessions.oneOf.0.items.[INDEX].failure.retryable","typeLabel":"boolean"}},"required":["phase","code","message","retryable","category","at"],"type":"object","additionalProperties":false,"uniqueKey":"sessions.oneOf.0.items.[INDEX].failure","typeLabel":"object"},"forked_at_event_id":{"description":"Event in the parent session (UUID) this session was forked from, so the fork's starting context is identifiable. Set only on forks.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].forked_at_event_id","typeLabel":"string"},"last_activity_at":{"description":"RFC 3339 timestamp of when the agent loop last made progress. Distinct from updated_at, which any metadata write touches. Absent for sessions that run no loop.","format":"date-time","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].last_activity_at","typeLabel":"string\u003cdate-time>"},"metadata":{"additionalProperties":{"type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].metadata.additionalProperties","typeLabel":"string"},"description":"Caller-defined string key/value pairs supplied when the session was started, e.g. ids from your own system. Immutable, present on root sessions only, and filterable with metadata=key:value or metadata_key=key on GET /managed-agents/v1/sessions. At most 32 entries; keys use letters, digits, '_', '.', and '-' up to 64 characters; values are 1-512 characters.","type":"object","uniqueKey":"sessions.oneOf.0.items.[INDEX].metadata","typeLabel":"object"},"model_ref_id":{"description":"Model reference the session's turns run on (UUID), resolved from the agent version or the start request. Written at start; it changes only when the session moves to another version of its agent.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].model_ref_id","typeLabel":"string"},"model_snapshot":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"The resolved model reference and inference settings this session runs, frozen for the same reason as agent_snapshot. Written at start; it changes only when the session moves to another version of its agent.","type":"object","uniqueKey":"sessions.oneOf.0.items.[INDEX].model_snapshot","typeLabel":"object"},"parent_session_id":{"description":"Session that created this one (UUID) — the delegating session for a subagent, or the source session for a fork. Empty on a root session.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].parent_session_id","typeLabel":"string"},"project_id":{"description":"Billing project this session is attributed to: the project_id sent on session start, the default_project_id of its agent, or the project of the session it was started from. Omitted when the session names no project.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].project_id","typeLabel":"string"},"sandbox_instance_id":{"description":"Provider-assigned id of the sandbox instance serving this session. Empty before provisioning finishes; historical self_hosted sessions may also have no instance id.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].sandbox_instance_id","typeLabel":"string"},"sandbox_provider":{"description":"Sandbox runtime that provisioned this session's compute, from the supported sandbox providers list.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].sandbox_provider","typeLabel":"string"},"source_refs":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Secondary provenance ids from the originating system beyond the primary external source, e.g. an imported rollout's problem, problem-version, and run ids.","type":"object","uniqueKey":"sessions.oneOf.0.items.[INDEX].source_refs","typeLabel":"object"},"stop_reason":{"description":"Why the loop is not running. Set whenever execution_state is idle or completed. sleeping means the agent chose to wait and the session resumes on the next message or at wake_at; awaiting_subagents means a coordinator is waiting on delegated work; out_of_credit and tenant_suspended pause before new work and continue on the next message after the tenant is admitted again; an out_of_credit pause from the last 72 hours also continues on its own within about a minute once the tenant is admitted again; budget_reached means the session tree reached its budget and paused before its next model request, and raising or removing the session's budget continues it, except a session bound to a Slack thread, which continues on its next reply there.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].stop_reason","typeLabel":"string"},"user_id":{"description":"User the session was started on behalf of, resolved from the request scope.","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].user_id","typeLabel":"string"},"vault_ids":{"description":"Vaults (UUIDs) the session may draw credentials from. Combine with credential_refs to narrow the grant to specific credentials.","items":{"type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].vault_ids.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"sessions.oneOf.0.items.[INDEX].vault_ids","typeLabel":"string[]"},"wake_at":{"description":"RFC 3339 timestamp at which a sleeping session wakes itself if nobody messages it first. Absent unless the agent scheduled a timed wait.","format":"date-time","type":"string","uniqueKey":"sessions.oneOf.0.items.[INDEX].wake_at","typeLabel":"string\u003cdate-time>"}},"required":["root_session_id","session_path","session_id","organization_id","kind","status","computer_use","credential_refs","credential_refs_configured","config","created_at","updated_at"],"type":"object","additionalProperties":false,"uniqueKey":"sessions.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"sessions.oneOf.0","typeLabel":"object[]"},{"description":"Every session in the tree, root and subagents alike. Always complete; only the event log is paged.","items":{"description":"One durable agent run: its lifecycle status (active, awaiting_human, completed, failed, cancelled), the agent version, environment, model, and credentials it was pinned to, and its place in a multi-agent tree. Returned when starting, reading, or listing sessions; imported RL rollouts appear as sessions too and run no agent loop.","properties":{"access_policy":{"type":"string","enum":["platform_internal"],"description":"Present only when reading a platform-managed session directly; these sessions are omitted from session lists."},"active_handoff":{"description":"Current browser handoff, including its exclusive driver claim and deadline. Absent when no browser handoff is active. Never contains the short-lived access URL.","properties":{"access_expires_at":{"description":"Latest time the current display access remains usable; never later than deadline_at.","format":"date-time","type":"string"},"deadline_at":{"description":"When the handoff automatically expires and the agent resumes.","format":"date-time","type":"string"},"handoff_id":{"description":"Stable identifier for this browser handoff.","type":"string"},"reason":{"description":"Why the agent asked a person to take over the shared browser.","type":"string"},"requested_at":{"description":"When the agent requested the handoff.","format":"date-time","type":"string"},"state":{"description":"Whether nobody has opened access yet, one person currently owns the display, or hand-back/deadline resolution is being delivered.","enum":["awaiting_user","user_driving","resolved"],"type":"string"},"wake_cause":{"description":"Resolution cause once resolved: user_handed_back, deadline_elapsed, cancelled, or interrupted.","type":"string"}},"required":["handoff_id","reason","requested_at","deadline_at","state"],"type":"object","additionalProperties":false},"agent_id":{"description":"Agent this session runs (UUID). Empty for imported sessions that were not started from an agent.","type":"string"},"agent_snapshot":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"The definition of the agent version this session runs, frozen so later edits to the agent cannot change this session's behavior. Written at start; it changes only when the session moves to another version of its agent, which agent_version_id shows.","type":"object"},"agent_version_id":{"description":"Agent version this session runs (UUID), pinned at start so a later edit to the agent cannot change a running session. It changes only when the session moves to another version of its agent.","type":"string"},"budget":{"description":"The session tree's budget and what the tree has spent toward it, on a root session read in full. Omitted when the session has none, and on summary and list reads.","properties":{"agentCapUsd":{"description":"The agent's multiagent.limits.max_tree_cost_usd, in US dollars with two decimals: the most this budget can be set to. A session whose budget reached it stays paused; start a new session, or raise the agent's cap for sessions started after.","examples":["25.00"],"readOnly":true,"type":"string"},"continuesOnRaise":{"description":"Whether raising or removing the budget of a session paused at it continues the session right away. False for a session bound to a Slack thread, which continues on its next reply there.","readOnly":true,"type":"boolean"},"maxCostUsd":{"description":"The budget in US dollars, with two decimals.","examples":["10.00"],"pattern":"^(0|[1-9][0-9]{0,5})(\\.[0-9]{1,2})?$","type":"string"},"spentUsd":{"description":"What the session tree has spent, plus any linked outcome grading sessions charged to the same budget on Recursion, in US dollars with two decimals, at the billed price the budget is enforced at (models, tools and sandbox compute). Present on a full read of the root; absent when the spend could not be read. A session that paused at its budget can read a little past it: the request that crossed it completes.","examples":["4.20"],"readOnly":true,"type":"string"}},"required":["maxCostUsd","continuesOnRaise"],"type":"object","additionalProperties":false},"computer_use":{"description":"Whether this session has a computer-enabled environment and a display that passed its readiness probe.","type":"boolean"},"concurrency_slot_held":{"description":"Whether this root session currently occupies the agent's max_concurrent_sessions slot. True while admitted and non-terminal. False exclusively while an active queued root waits to start. Omitted for unlimited agents, child sessions, legacy rows, and terminal or deleted sessions.","type":"boolean"},"config":{"oneOf":[{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Resolved per-session runtime settings written at start, including the snapshotted MCP servers and tool bindings, multi-agent roster, and delegation depth limits. The settings an agent version owns change only when the session moves to another version of its agent. Read-only to callers.","type":"object"},{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Resolved per-session runtime settings written at start, including the snapshotted MCP servers and tool bindings, multi-agent roster, and delegation depth limits. The settings an agent version owns change only when the session moves to another version of its agent. Read-only to callers.","type":"null"}]},"costState":{"description":"final once the session has ended, its sandbox has stopped, and every charge has settled: costUsd will not change unless the session is resumed. so_far while it can still grow. Present exactly when costUsd is.","enum":["final","so_far"],"type":"string"},"costUsd":{"description":"Billed cost of this session's whole tree as an exact canonical decimal USD string. On Recursion, a writer's cost also includes linked cloned outcome evaluation roots, counting each ledger charge once; manual evaluations remain independent. On other surfaces, cost remains tree-only. Compute still running is included as an estimate; the figure is final once every included tree has ended and settled. Returned by managedAgentsGetSession and managedAgentsListSessions only, and absent when it cannot be read.","examples":["1.234567"],"type":"string"},"created_at":{"description":"RFC 3339 timestamp of when this record was created. Server-assigned.","format":"date-time","type":"string"},"credential_refs":{"oneOf":[{"description":"Explicit allowlist of individual credentials the session may use; null or empty when none are listed. Read credential_refs_configured to tell an intentionally empty allowlist from a legacy session granted whole vaults.","items":{"description":"A pointer to one credential inside one vault. Used to grant a session specific credentials rather than every credential in a vault.","properties":{"credential_id":{"description":"Credential to select inside vault_id.","type":"string"},"vault_id":{"description":"Vault holding the credential. Required, because credential ids are unique only within a vault.","type":"string"}},"required":["vault_id","credential_id"],"type":"object","additionalProperties":false},"type":"array","x-recursion-nullable-collection":"null-is-domain-value"},{"description":"Explicit allowlist of individual credentials the session may use; null or empty when none are listed. Read credential_refs_configured to tell an intentionally empty allowlist from a legacy session granted whole vaults.","items":{"description":"A pointer to one credential inside one vault. Used to grant a session specific credentials rather than every credential in a vault.","properties":{"credential_id":{"description":"Credential to select inside vault_id.","type":"string"},"vault_id":{"description":"Vault holding the credential. Required, because credential ids are unique only within a vault.","type":"string"}},"required":["vault_id","credential_id"],"type":"object","additionalProperties":false},"type":"null","x-recursion-nullable-collection":"null-is-domain-value"}]},"credential_refs_configured":{"description":"True when credential_refs is an explicit allowlist. False on legacy sessions granted every credential in their vaults, which would otherwise be indistinguishable from an empty allowlist.","type":"boolean"},"effective_model":{"description":"Provider-qualified model string this session runs, including any per-session model override. Written at start; it changes only when the session moves to another version of its agent. Prefer this over resolving model_ref_id or the current agent version when displaying the model a session runs.","type":"string"},"environment_id":{"description":"Environment whose sandbox definition this session runs in (UUID).","type":"string"},"execution_state":{"description":"Where the agent loop is. Empty for sessions without a loop, such as imported rollouts. provisioning includes any automatic setup-image refresh before sandbox creation. A failure that can't be retried, such as a failed setup script, fails the session with the reason in failure. This field, read from the session itself, is the authoritative status -- a session's event stream is written on a separate path and can lag it, so an empty event list does not mean the session is still starting.","enum":["provisioning","queued","running","idle","completed"],"type":"string"},"external_source_id":{"description":"Identifier of the session's counterpart in the external_source_type system, so a caller can find the session again from that side. Set together with external_source_type.","type":"string"},"external_source_type":{"description":"Kind of external system this session is correlated to, e.g. slack_thread. Set together with external_source_id and filterable when listing sessions.","type":"string"},"failure":{"description":"Structured terminal failure. Omitted for healthy sessions and legacy rows.","properties":{"at":{"description":"Time the terminal failure was persisted.","format":"date-time","type":"string"},"category":{"description":"Who can act on this failure: transient (wait or retry), caller_error (change the request or configuration, retrying as-is will not help), or internal (report it). retryable=false with category=caller_error is a fixable mistake, not an outage. A retryable failure is never caller_error: if the platform will retry, changing the request is not the fix.","enum":["transient","caller_error","internal"],"type":"string"},"code":{"description":"Stable machine-readable failure code.","type":"string"},"message":{"description":"Sanitized bounded operator-facing message; never contains raw provider response bodies or credentials.","type":"string"},"phase":{"description":"Lifecycle phase that failed, such as provisioning, setup, workflow, or model.","type":"string"},"retryable":{"description":"Whether the platform will retry, or a retry of the same request may succeed on its own. False does not mean permanently broken -- read category to tell a transient condition from a request the caller must change.","type":"boolean"}},"required":["phase","code","message","retryable","category","at"],"type":"object","additionalProperties":false},"forked_at_event_id":{"description":"Event in the parent session (UUID) this session was forked from, so the fork's starting context is identifiable. Set only on forks.","type":"string"},"kind":{"description":"What produced the session: api_call, chat, subagent (delegated by another session), session_analyst (a platform-started read-only assistant), or evaluation (a root that inspects a captured target snapshot).","enum":["api_call","chat","rollout","subagent","benchmark","evaluation","reflection","session_analyst"],"type":"string"},"last_activity_at":{"description":"RFC 3339 timestamp of when the agent loop last made progress. Distinct from updated_at, which any metadata write touches. Absent for sessions that run no loop.","format":"date-time","type":"string"},"metadata":{"additionalProperties":{"type":"string"},"description":"Caller-defined string key/value pairs supplied when the session was started, e.g. ids from your own system. Immutable, present on root sessions only, and filterable with metadata=key:value or metadata_key=key on GET /managed-agents/v1/sessions. At most 32 entries; keys use letters, digits, '_', '.', and '-' up to 64 characters; values are 1-512 characters.","type":"object"},"model_ref_id":{"description":"Model reference the session's turns run on (UUID), resolved from the agent version or the start request. Written at start; it changes only when the session moves to another version of its agent.","type":"string"},"model_snapshot":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"The resolved model reference and inference settings this session runs, frozen for the same reason as agent_snapshot. Written at start; it changes only when the session moves to another version of its agent.","type":"object"},"organization_id":{"description":"Organization that owns this record. Resolved from the API key; never accepted from the caller.","type":"string"},"parent_session_id":{"description":"Session that created this one (UUID) — the delegating session for a subagent, or the source session for a fork. Empty on a root session.","type":"string"},"project_id":{"description":"Billing project this session is attributed to: the project_id sent on session start, the default_project_id of its agent, or the project of the session it was started from. Omitted when the session names no project.","type":"string"},"root_session_id":{"description":"Root session of the multi-agent tree this session belongs to (UUID). Equal to session_id for a root session.","type":"string"},"sandbox_instance_id":{"description":"Provider-assigned id of the sandbox instance serving this session. Empty before provisioning finishes; historical self_hosted sessions may also have no instance id.","type":"string"},"sandbox_provider":{"description":"Sandbox runtime that provisioned this session's compute, from the supported sandbox providers list.","type":"string"},"session_id":{"description":"Identifier for this session (UUID). Server-assigned.","type":"string"},"session_path":{"description":"Position of this session within its tree, as a slash-delimited path of session ids. \"/\" for a root session.","type":"string"},"source_refs":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Secondary provenance ids from the originating system beyond the primary external source, e.g. an imported rollout's problem, problem-version, and run ids.","type":"object"},"status":{"description":"Coarse session state shared with RL rollout imports: active, awaiting_human (for a rollout, carries no score), completed, failed, or cancelled. For where a running agent loop is, read execution_state instead.","enum":["active","awaiting_human","completed","failed","cancelled"],"type":"string"},"stop_reason":{"description":"Why the loop is not running. Set whenever execution_state is idle or completed. sleeping means the agent chose to wait and the session resumes on the next message or at wake_at; awaiting_subagents means a coordinator is waiting on delegated work; out_of_credit and tenant_suspended pause before new work and continue on the next message after the tenant is admitted again; an out_of_credit pause from the last 72 hours also continues on its own within about a minute once the tenant is admitted again; budget_reached means the session tree reached its budget and paused before its next model request, and raising or removing the session's budget continues it, except a session bound to a Slack thread, which continues on its next reply there.","type":"string"},"updated_at":{"description":"RFC 3339 timestamp of the last change to this record. Server-assigned.","format":"date-time","type":"string"},"user_id":{"description":"User the session was started on behalf of, resolved from the request scope.","type":"string"},"vault_ids":{"description":"Vaults (UUIDs) the session may draw credentials from. Combine with credential_refs to narrow the grant to specific credentials.","items":{"type":"string"},"type":"array"},"wake_at":{"description":"RFC 3339 timestamp at which a sleeping session wakes itself if nobody messages it first. Absent unless the agent scheduled a timed wait.","format":"date-time","type":"string"}},"required":["root_session_id","session_path","session_id","organization_id","kind","status","computer_use","credential_refs","credential_refs_configured","config","created_at","updated_at"],"type":"object","additionalProperties":false},"type":"null","isRequired":true,"uniqueKey":"sessions.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sessions","typeLabel":"object[] | null"},"threads":{"oneOf":[{"description":"Thread registry rows for the tree's context-isolated execution streams. Imported RL children appear when their import supplied thread names; older imports without names use session-derived fallback rows.","items":{"description":"One context-isolated execution stream inside a multi-agent session tree, as registered in the thread registry. Returned when listing a session's threads or reading a whole session tree.","properties":{"agent_id":{"description":"Agent this thread runs (UUID).","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].agent_id","typeLabel":"string"},"created_at":{"description":"RFC 3339 timestamp of when this record was created. Server-assigned.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].created_at","typeLabel":"string\u003cdate-time>"},"role":{"description":"What the thread exists to do within the tree, for example subagent, grader, or advisor. Not a chat message role.","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].role","typeLabel":"string"},"root_session_id":{"description":"Root session of the multi-agent tree this thread belongs to (UUID). Equal to session_id for a root session.","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].root_session_id","typeLabel":"string"},"session_id":{"description":"Session this thread belongs to (UUID).","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].session_id","typeLabel":"string"},"session_path":{"description":"Slash-joined session ids from below the tree root down to the session storing this thread's events: \"/\" for the root, \"/child-id\" for its child.","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].session_path","typeLabel":"string"},"status":{"description":"Thread lifecycle: running (executing now), idle (awaiting more input), or terminated (finished; see stop_reason).","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].status","typeLabel":"string"},"thread_id":{"description":"Identifier for this thread within its session tree (UUID). Server-assigned. For a subagent thread it is the child session id, so the thread and the session carrying its events resolve each other directly.","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].thread_id","typeLabel":"string"},"thread_path":{"description":"Slash-joined ancestry of this thread within the tree, used to order threads for display. Defaults to session_path when the thread has no deeper nesting of its own.","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].thread_path","typeLabel":"string"},"updated_at":{"description":"RFC 3339 timestamp of the last change to this record. Server-assigned.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"threads.oneOf.0.items.[INDEX].updated_at","typeLabel":"string\u003cdate-time>"},"agent_version_id":{"description":"Agent version this thread runs (UUID). Absent when the thread was not pinned to a specific version.","type":"string","uniqueKey":"threads.oneOf.0.items.[INDEX].agent_version_id","typeLabel":"string"},"archived_at":{"description":"RFC 3339 timestamp of when this thread was archived and stopped appearing as an active stream. Absent while the thread is not archived.","format":"date-time","type":"string","uniqueKey":"threads.oneOf.0.items.[INDEX].archived_at","typeLabel":"string\u003cdate-time>"},"name":{"description":"Human-readable label for this thread, supplied when it was spawned. Optional and never interpreted by the service.","type":"string","uniqueKey":"threads.oneOf.0.items.[INDEX].name","typeLabel":"string"},"parent_session_id":{"description":"Session the spawning thread belongs to (UUID). Absent on the tree's top-level thread.","type":"string","uniqueKey":"threads.oneOf.0.items.[INDEX].parent_session_id","typeLabel":"string"},"parent_thread_id":{"description":"Thread that spawned this one (UUID). Absent on the tree's top-level thread.","type":"string","uniqueKey":"threads.oneOf.0.items.[INDEX].parent_thread_id","typeLabel":"string"},"stop_reason":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Structured reason the thread last stopped, forwarded from the agent loop, for example {\"type\": \"end_turn\"} or {\"type\": \"error\", \"message\": ...}. Absent while the thread has not stopped.","type":"object","uniqueKey":"threads.oneOf.0.items.[INDEX].stop_reason","typeLabel":"object"}},"required":["root_session_id","session_path","thread_id","session_id","agent_id","thread_path","role","status","created_at","updated_at"],"type":"object","additionalProperties":false,"uniqueKey":"threads.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"threads.oneOf.0","typeLabel":"object[]"},{"description":"Thread registry rows for the tree's context-isolated execution streams. Imported RL children appear when their import supplied thread names; older imports without names use session-derived fallback rows.","items":{"description":"One context-isolated execution stream inside a multi-agent session tree, as registered in the thread registry. Returned when listing a session's threads or reading a whole session tree.","properties":{"agent_id":{"description":"Agent this thread runs (UUID).","type":"string"},"agent_version_id":{"description":"Agent version this thread runs (UUID). Absent when the thread was not pinned to a specific version.","type":"string"},"archived_at":{"description":"RFC 3339 timestamp of when this thread was archived and stopped appearing as an active stream. Absent while the thread is not archived.","format":"date-time","type":"string"},"created_at":{"description":"RFC 3339 timestamp of when this record was created. Server-assigned.","format":"date-time","type":"string"},"name":{"description":"Human-readable label for this thread, supplied when it was spawned. Optional and never interpreted by the service.","type":"string"},"parent_session_id":{"description":"Session the spawning thread belongs to (UUID). Absent on the tree's top-level thread.","type":"string"},"parent_thread_id":{"description":"Thread that spawned this one (UUID). Absent on the tree's top-level thread.","type":"string"},"role":{"description":"What the thread exists to do within the tree, for example subagent, grader, or advisor. Not a chat message role.","type":"string"},"root_session_id":{"description":"Root session of the multi-agent tree this thread belongs to (UUID). Equal to session_id for a root session.","type":"string"},"session_id":{"description":"Session this thread belongs to (UUID).","type":"string"},"session_path":{"description":"Slash-joined session ids from below the tree root down to the session storing this thread's events: \"/\" for the root, \"/child-id\" for its child.","type":"string"},"status":{"description":"Thread lifecycle: running (executing now), idle (awaiting more input), or terminated (finished; see stop_reason).","type":"string"},"stop_reason":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Structured reason the thread last stopped, forwarded from the agent loop, for example {\"type\": \"end_turn\"} or {\"type\": \"error\", \"message\": ...}. Absent while the thread has not stopped.","type":"object"},"thread_id":{"description":"Identifier for this thread within its session tree (UUID). Server-assigned. For a subagent thread it is the child session id, so the thread and the session carrying its events resolve each other directly.","type":"string"},"thread_path":{"description":"Slash-joined ancestry of this thread within the tree, used to order threads for display. Defaults to session_path when the thread has no deeper nesting of its own.","type":"string"},"updated_at":{"description":"RFC 3339 timestamp of the last change to this record. Server-assigned.","format":"date-time","type":"string"}},"required":["root_session_id","session_path","thread_id","session_id","agent_id","thread_path","role","status","created_at","updated_at"],"type":"object","additionalProperties":false},"type":"null","isRequired":true,"uniqueKey":"threads.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"threads","typeLabel":"object[] | null"},"next_event_id":{"description":"Cursor to pass as the starting point of the next event page. Present only when more events remain; absent on the last page.","type":"string","uniqueKey":"next_event_id","typeLabel":"string"}},"required":["root_session_id","sessions","threads","events"],"type":"object","additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"events":[{"actor":"\u003cstring>","content":{"blocks":[{"type":"\u003cstring>","byte_size":0,"content":"\u003carray>","context":"\u003cstring>","data":"\u003cstring>","encrypted_content":"\u003cstring>","height":0,"id":"\u003cstring>","input":{},"is_error":true,"media_type":"\u003cstring>","name":"\u003cstring>","omitted_bytes":0,"payload":true,"provider":"\u003cstring>","provider_payload":true,"redacted":true,"semantic_hint":"\u003cstring>","sha256":"\u003cstring>","signature":"\u003cstring>","source":{"file_id":"\u003cstring>","type":"file"},"summary":"\u003carray>","text":"\u003cstring>","title":"\u003cstring>","tool_use_id":"\u003cstring>","uri":"\u003cstring>","url":"\u003cstring>","url_expires_at":"2023-11-07T05:31:56Z","width":0}],"assistantInteraction":{"digest":"\u003cstring>","interactionId":"\u003cstring>","kind":"question","origin":"assistant","requestedAt":"2023-11-07T05:31:56Z","revision":4503599627370496,"status":"pending","title":"\u003cstring>","blueprint":{"agents":[{"role":"\u003cstring>","model":"\u003cstring>","responsibilities":"\u003cstring>"}],"capabilities":[{"capabilityId":"\u003cstring>","kind":"\u003cstring>","name":"\u003cstring>","status":"\u003cstring>","purpose":"\u003cstring>"}],"trigger":{"kind":"manual","detail":"\u003cstring>"},"checkpoints":["\u003cstring>"],"costClass":"low","environment":"\u003cstring>","evaluation":"\u003cstring>","gaps":["\u003cstring>"],"outputs":["\u003cstring>"]},"decision":{"decidedAt":"2023-11-07T05:31:56Z","decision":"answered","answers":[{"questionId":"\u003cstring>","optionIds":["\u003cstring>"],"text":"\u003cstring>"}],"comments":[{"text":"\u003cstring>","field":"\u003cstring>","stepId":"\u003cstring>"}],"decidedBy":"\u003cstring>","note":"\u003cstring>"},"plan":{"steps":[{"action":"\u003cstring>","costClass":"none","enabled":true,"input":{},"stepId":"\u003cstring>","title":"\u003cstring>","dependsOn":["\u003cstring>"],"fields":[{"label":"\u003cstring>","name":"\u003cstring>","widget":"text","help":"\u003cstring>","options":[{"label":"\u003cstring>","optionId":"\u003cstring>","description":"\u003cstring>"}],"required":true}],"optional":true,"warnings":["\u003cstring>"]}],"prerequisites":[{"kind":"connect_integration","label":"\u003cstring>","prerequisiteId":"\u003cstring>","satisfied":true,"capabilityId":"\u003cstring>","detail":"\u003cstring>","link":"\u003cstring>"}]},"questions":[{"input":"single_select","prompt":"\u003cstring>","questionId":"\u003cstring>","allowOther":true,"multiple":true,"optional":true,"options":[{"label":"\u003cstring>","optionId":"\u003cstring>","description":"\u003cstring>"}],"picker":"agent"}],"stepResults":[{"status":"running","stepId":"\u003cstring>","link":"\u003cstring>","message":"\u003cstring>","resourceId":"\u003cstring>","resourceKind":"\u003cstring>"}],"summary":"\u003cstring>"},"evaluation_budget_reached":{"affected_target_session_ids":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"max_tree_cost_usd":"\u003cstring>"},"evaluation_plan_frozen":{"criteria":[{"criterion_key":"\u003cstring>","criterion_text":"\u003cstring>"}],"max_concurrent_threads":4503599627370496,"targets":[{"snapshot_event_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","target_session_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"}],"max_tree_cost_usd":"\u003cstring>"},"evaluation_run_finished":{"targets_budget_reached":4503599627370495,"targets_skipped":4503599627370495,"targets_total":4503599627370495,"terminal_status":"completed","verdicts_recorded":4503599627370495,"failure_code":"plan_failed","failure_message":"\u003cstring>"},"evaluation_target_skipped":{"reason":"\u003cstring>","reason_code":"child_create_failed","snapshot_event_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","target_session_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","child_session_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"evaluation_target_started":{"child_session_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","clone_state":"ready","evaluation_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","snapshot_event_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","target_session_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","sandbox_provider":"\u003cstring>"},"evaluation_verdict_recorded":{"child_session_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","cost_completeness":"complete","cost_usd":"\u003cstring>","evaluation_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","failed_criterion_keys":["\u003cstring>"],"result":"pass","snapshot_event_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","target_session_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"metadata":{},"plan":[{"content":"\u003cstring>","id":"\u003cstring>","status":"\u003cstring>"}],"stop_reason":"\u003cstring>","tools":[{"description":"\u003cstring>","input_schema":{},"name":"\u003cstring>"}],"usage":{"cache_read_tokens":0,"cache_write_tokens":0,"cost_usd":123,"input_tokens":0,"output_tokens":0}},"created_at":"2023-11-07T05:31:56Z","event_id":"\u003cstring>","event_type":"\u003cstring>","inference_config":{"max_tokens":0,"provider_params":{},"reasoning_effort":"\u003cstring>","temperature":123,"top_p":123},"schema_version":0,"session_id":"\u003cstring>","agent_id":"\u003cstring>","cache_read_tokens":0,"cache_write_tokens":0,"causal_event_id":"\u003cstring>","content_hydration_status":"hydrated","content_payload_bytes":0,"content_payload_ref":"\u003cstring>","content_payload_sha256":"\u003cstring>","content_ref":"\u003cstring>","cost_micros":0,"environment_id":"\u003cstring>","event_status":"\u003cstring>","finish_reason":"\u003cstring>","input_tokens":0,"latency_ms":0,"model":{"model":"\u003cstring>","provider":"\u003cstring>","base_url":"\u003cstring>","capabilities":{},"context_window":0,"max_output_tokens":0,"metadata":{},"model_ref_id":"\u003cstring>","model_version":"\u003cstring>","provider_id":"\u003cstring>","provider_type":"\u003cstring>","serving_backend":"\u003cstring>"},"model_ref_id":"\u003cstring>","organization_id":"\u003cstring>","output_tokens":0,"parent_event_id":"\u003cstring>","prompt_tokens":0,"provider_model_id":"\u003cstring>","provider_request_id":"\u003cstring>","provider_type":"\u003cstring>","role":"\u003cstring>","sandbox_instance_id":"\u003cstring>","thread_id":"\u003cstring>","tool_name":"\u003cstring>","tool_use_id":"\u003cstring>","turn_id":"\u003cstring>"}],"root_session_id":"\u003cstring>","sessions":[{"computer_use":true,"config":{},"created_at":"2023-11-07T05:31:56Z","credential_refs":[{"credential_id":"\u003cstring>","vault_id":"\u003cstring>"}],"credential_refs_configured":true,"kind":"api_call","organization_id":"\u003cstring>","root_session_id":"\u003cstring>","session_id":"\u003cstring>","session_path":"\u003cstring>","status":"active","updated_at":"2023-11-07T05:31:56Z","access_policy":"platform_internal","active_handoff":{"deadline_at":"2023-11-07T05:31:56Z","handoff_id":"\u003cstring>","reason":"\u003cstring>","requested_at":"2023-11-07T05:31:56Z","state":"awaiting_user","access_expires_at":"2023-11-07T05:31:56Z","wake_cause":"\u003cstring>"},"agent_id":"\u003cstring>","agent_snapshot":{},"agent_version_id":"\u003cstring>","budget":{"continuesOnRaise":true,"maxCostUsd":"10.00","agentCapUsd":"25.00","spentUsd":"4.20"},"concurrency_slot_held":true,"costState":"final","costUsd":"1.234567","effective_model":"\u003cstring>","environment_id":"\u003cstring>","execution_state":"provisioning","external_source_id":"\u003cstring>","external_source_type":"\u003cstring>","failure":{"at":"2023-11-07T05:31:56Z","category":"transient","code":"\u003cstring>","message":"\u003cstring>","phase":"\u003cstring>","retryable":true},"forked_at_event_id":"\u003cstring>","last_activity_at":"2023-11-07T05:31:56Z","metadata":{},"model_ref_id":"\u003cstring>","model_snapshot":{},"parent_session_id":"\u003cstring>","project_id":"\u003cstring>","sandbox_instance_id":"\u003cstring>","sandbox_provider":"\u003cstring>","source_refs":{},"stop_reason":"\u003cstring>","user_id":"\u003cstring>","vault_ids":["\u003cstring>"],"wake_at":"2023-11-07T05:31:56Z"}],"threads":[{"agent_id":"\u003cstring>","created_at":"2023-11-07T05:31:56Z","role":"\u003cstring>","root_session_id":"\u003cstring>","session_id":"\u003cstring>","session_path":"\u003cstring>","status":"\u003cstring>","thread_id":"\u003cstring>","thread_path":"\u003cstring>","updated_at":"2023-11-07T05:31:56Z","agent_version_id":"\u003cstring>","archived_at":"2023-11-07T05:31:56Z","name":"\u003cstring>","parent_session_id":"\u003cstring>","parent_thread_id":"\u003cstring>","stop_reason":{}}],"next_event_id":"\u003cstring>"}}},"exampleType":"generated"}},"description":"A whole multi-agent session tree: every session and thread in it, plus a bounded page of the merged chronological event log. Returned when reading the tree containing a given session.","headers":{"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"exampleType":"generated"},"1d6305ac-41f3-4a7b-88fa-a23a5063523e":{"description":"Bad Request.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["invalid_request"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"details","typeLabel":"object"}},"required":["code","message"],"additionalProperties":false,"description":"Standard flat error response.","x-recursion-error-codes":["invalid_request"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"invalid_request","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"headers":{"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"exampleType":"generated"},"23913d2e-694d-4c3f-a2e1-53e6de709cc1":{"description":"Unauthorized.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["unauthorized"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"details","typeLabel":"object"}},"required":["code","message"],"additionalProperties":false,"description":"Standard flat error response.","x-recursion-error-codes":["unauthorized"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"unauthorized","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"headers":{"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"exampleType":"generated"},"e6e60613-ca6d-4995-8e30-3cc714c7b2e5":{"description":"Forbidden.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["forbidden"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"details","typeLabel":"object"}},"required":["code","message"],"additionalProperties":false,"description":"Standard flat error response.","x-recursion-error-codes":["forbidden"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"forbidden","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"headers":{"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"exampleType":"generated"},"09217ab2-c416-43e1-baa1-7dc1b5e51536":{"description":"Not Found.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["not_found"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"details","typeLabel":"object"}},"required":["code","message"],"additionalProperties":false,"description":"Standard flat error response.","x-recursion-error-codes":["not_found"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"not_found","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"headers":{"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"exampleType":"generated"},"208b4cce-d865-4d57-85be-314ed4bb4bcf":{"description":"Payload Too Large.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["payload_too_large"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"details","typeLabel":"object"}},"required":["code","message"],"additionalProperties":false,"description":"Standard flat error response.","x-recursion-error-codes":["payload_too_large"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"payload_too_large","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"headers":{"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"exampleType":"generated"},"165ad875-e341-48cf-b0dc-fc57017c9968":{"headers":{"Retry-After":{"description":"When to retry, as delay seconds or an HTTP date.","schema":{"type":"string"}},"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"description":"Too Many Requests.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["rate_limit_exceeded"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"details","typeLabel":"object"}},"required":["code","message"],"additionalProperties":false,"description":"Standard flat error response.","x-recursion-error-codes":["rate_limit_exceeded"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"rate_limit_exceeded","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"exampleType":"generated"},"b6c2fb47-a881-4ac0-b8a4-c0491172adfb":{"description":"Internal Server Error.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["internal_error"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"details","typeLabel":"object"}},"required":["code","message"],"additionalProperties":false,"description":"Standard flat error response.","x-recursion-error-codes":["internal_error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"internal_error","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"headers":{"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"exampleType":"generated"},"6ee9b250-0977-4f9d-a20b-da43cd0fe300":{"description":"A dependent service returned an invalid response.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["bad_gateway"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"details","typeLabel":"object"}},"required":["code","message"],"additionalProperties":false,"description":"Standard flat error response.","x-recursion-error-codes":["bad_gateway"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"bad_gateway","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"headers":{"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"exampleType":"generated"},"de5a156e-f12b-44f6-8cf7-0d90cb7e8a58":{"description":"Service Unavailable.","content":{"application/json":{"schema":{"oneOf":[{"type":"object","description":"Standard flat error response.","required":["code","message"],"x-recursion-error-codes":["content_store_unavailable","content_store_unconfigured","managed_agents_unavailable","service_unavailable"],"properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["content_store_unavailable"],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"oneOf.0.details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"oneOf.0.details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"oneOf.0.details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"oneOf.0.details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.0.details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.0.details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.0.details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"oneOf.0.details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.0.details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"oneOf.0.details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.0.details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.0.details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"oneOf.0.details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"oneOf.0.details","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Standard flat error response.","required":["code","message"],"x-recursion-error-codes":["content_store_unavailable","content_store_unconfigured","managed_agents_unavailable","service_unavailable"],"properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["content_store_unconfigured"],"isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"oneOf.1.details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"oneOf.1.details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.1.details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"oneOf.1.details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"oneOf.1.details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.1.details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.1.details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.1.details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"oneOf.1.details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.1.details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"oneOf.1.details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.1.details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.1.details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"oneOf.1.details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"oneOf.1.details","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","description":"Standard flat error response.","required":["code","message"],"x-recursion-error-codes":["content_store_unavailable","content_store_unconfigured","managed_agents_unavailable","service_unavailable"],"properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["managed_agents_unavailable"],"isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"oneOf.2.message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"oneOf.2.details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"oneOf.2.details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.2.details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"oneOf.2.details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"oneOf.2.details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.2.details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.2.details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.2.details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"oneOf.2.details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.2.details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"oneOf.2.details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.2.details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.2.details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"oneOf.2.details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"oneOf.2.details","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","description":"Standard flat error response.","required":["code","message"],"x-recursion-error-codes":["content_store_unavailable","content_store_unconfigured","managed_agents_unavailable","service_unavailable"],"properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["service_unavailable"],"isRequired":true,"uniqueKey":"oneOf.3.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"oneOf.3.message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"oneOf.3.details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"oneOf.3.details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.3.details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"oneOf.3.details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"oneOf.3.details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.3.details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.3.details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.3.details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"oneOf.3.details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.3.details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"oneOf.3.details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.3.details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"oneOf.3.details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"oneOf.3.details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"oneOf.3.details","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"oneOf.3","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"content_store_unavailable","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"headers":{"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"exampleType":"generated"},"d76d5a10-1b43-425a-8fbe-8091c2f978ed":{"headers":{"Retry-After":{"description":"When to retry, as delay seconds or an HTTP date.","schema":{"type":"string"}},"recursion-organization-id":{"description":"Organization id resolved for this request.","schema":{"type":"string","minLength":1}},"recursion-tenant-id":{"description":"Tenant id resolved for this request.","schema":{"type":"string","minLength":1}}},"description":"A dependent service timed out.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1,"description":"Stable machine-readable error code.","enum":["gateway_timeout"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","minLength":1,"description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"details":{"type":"object","properties":{"field":{"description":"Request field or header responsible for the error, when one can be identified.","type":"string","uniqueKey":"details.field","typeLabel":"string"},"issues":{"description":"Boundary-validation failures as path-prefixed human-readable messages.","type":"array","items":{"type":"string","uniqueKey":"details.issues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.issues","typeLabel":"string[]"},"requestId":{"description":"Request correlation identifier for support and log lookup.","type":"string","uniqueKey":"details.requestId","typeLabel":"string"},"retryable":{"description":"Server advice about failure transience. `true` means transient, `false` means non-transient, and absence gives no advice. Automatic replay is allowed only when this field is not `false` and the operation-specific retry and idempotency contract permits replay.","type":"boolean","uniqueKey":"details.retryable","typeLabel":"boolean"}},"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.0","typeLabel":"null"},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991,"uniqueKey":"details.additionalProperties.oneOf.3","typeLabel":"integer"},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.4","typeLabel":"number"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"details.additionalProperties.oneOf.5.items.[INDEX]","typeLabel":"any"},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.5","typeLabel":"any[]"},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","uniqueKey":"details.additionalProperties.oneOf.6","typeLabel":"object"}],"uniqueKey":"details.additionalProperties","typeLabel":"null | boolean | string | integer | number | any[] | object"},"description":"Optional structured error details. Reserved transport fields are typed; code-specific fields remain forward compatible.","uniqueKey":"details","typeLabel":"object"}},"required":["code","message"],"additionalProperties":false,"description":"Standard flat error response.","x-recursion-error-codes":["gateway_timeout"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"gateway_timeout","message":"\u003cstring>","details":{"field":"\u003cstring>","issues":["\u003cstring>"],"requestId":"\u003cstring>","retryable":true}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"e07ad77a-80a2-47bf-8762-db4312010bf0":{"bearerAuth":{"type":"http","scheme":"bearer","description":"A Recursion API key, created in the console under API keys.","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"438e7fce-d7ab-4563-a4eb-167eb2badf70":{"url":"https://api.recursion.labelbox.com"}},"schemas":{"be7bc162-a24e-4406-acd7-fe98ca6495c7":{"description":"One block of message content: text, image, tool_use, tool_result, thinking, or a provider passthrough. The type field says which fields apply. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","properties":{"type":{"description":"Block discriminator: text, image, document (a user-sent block naming a file by id, inlined as text when the message is accepted), tool_use, tool_result, thinking, redacted_thinking, or a provider passthrough type. Which of the other fields apply depends on this value.","type":"string","isRequired":true},"byte_size":{"description":"Decoded image byte size.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"content":{"description":"Nested blocks carrying a tool_result payload, so a tool can return both text and images.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array"},"context":{"description":"A document block's context: what the model should know about the document before reading it, disclosed as its first paragraph.","type":"string"},"data":{"description":"Base64 image bytes. Omitted from default reads and present only for legacy storage or explicit hydrate=images responses.","type":"string"},"encrypted_content":{"description":"Sealed reasoning payload for providers that return reasoning encrypted. Opaque to clients; replay it verbatim.","type":"string"},"height":{"description":"Validated image height in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"id":{"description":"Provider-assigned id of a tool_use block. Echo it back as tool_use_id on the matching tool_result.","type":"string"},"input":{"additionalProperties":{"oneOf":[{"type":"null","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"boolean","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"string","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"integer","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"array","items":{"oneOf":[{}]},"description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."},{"type":"object","description":"A JSON value whose integer members stay within the exact ECMAScript safe-integer range at every nesting level."}]},"description":"Tool arguments the model produced for a tool_use block, matching that tool's input schema.","type":"object"},"is_error":{"description":"True when a tool_result reports that the tool call failed; the nested content then carries the error detail.","type":"boolean"},"media_type":{"description":"Declared media type; inline computer-use images allow image/jpeg, image/png, and image/webp.","type":"string"},"name":{"description":"Name of the tool the model is invoking, on a tool_use block.","type":"string"},"omitted_bytes":{"description":"Original byte count reported by a redacted image placeholder.","format":"int64","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"payload":{"oneOf":[{"type":"null","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"boolean","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"string","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"integer","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"array","items":{"oneOf":[{}]},"description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."},{"type":"object","description":"Provider-native block body, stored verbatim for block types this schema does not model. Blocks are rebuilt for each model provider, and block types a provider request does not support never reach the model."}]},"provider":{"description":"Provider that emitted a passthrough block, e.g. anthropic or openai, telling readers how to interpret payload.","type":"string"},"provider_payload":{"oneOf":[{"type":"null","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"boolean","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"string","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"integer","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay.","maximum":9007199254740991,"minimum":-9007199254740991},{"type":"number","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"array","items":{"oneOf":[{}]},"description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."},{"type":"object","description":"Original provider block exactly as received, kept alongside the normalized fields for lossless replay."}]},"redacted":{"description":"True when the block's content was withheld (redacted thinking, or an image dropped by redaction); the remaining fields describe what was removed.","type":"boolean"},"semantic_hint":{"description":"Coarse hint about what an unmodeled provider block represents, so a reader can render it without provider-specific logic.","type":"string"},"sha256":{"description":"Lowercase SHA-256 digest of decoded image bytes.","type":"string"},"signature":{"description":"Provider-issued signature over a thinking block, or the thought signature a Gemini tool_use block was issued with, required for the provider to accept that block on a later turn. Opaque; replay it verbatim.","type":"string"},"source":{"description":"Where a user-sent image or document block's bytes came from when they were named rather than sent inline: {type: \"file\", file_id}. Kept on the stored block as provenance after the bytes were copied into the session; an image block then also carries the session's own uri.","properties":{"file_id":{"type":"string","minLength":1,"description":"Nonempty id of an unexpired file in the caller's organization.","isRequired":true},"type":{"type":"string","const":"file","description":"Always file.","isRequired":true}},"required":["type","file_id"],"type":"object","additionalProperties":false},"summary":{"description":"Readable summary blocks a provider returns alongside sealed or long-form reasoning.","items":{"$circularRef":"be7bc162-a24e-4406-acd7-fe98ca6495c7"},"type":"array"},"text":{"description":"Text of a text block, or the reasoning text of a thinking block.","type":"string"},"title":{"description":"A document block's title, disclosed to the model beside the document.","type":"string"},"tool_use_id":{"description":"Id of the tool_use block that this tool_result answers.","type":"string"},"uri":{"description":"Private typed content reference. Fetch it through managedAgentsGetSessionImage; clients cannot read this URI directly.","type":"string"},"url":{"description":"Short-lived HTTPS URL for the image bytes. Present only when the read asked for image_urls=signed and the deployment has signing configured. Never stored; fetch a fresh read after url_expires_at.","type":"string"},"url_expires_at":{"description":"When url stops working. Absent whenever url is.","format":"date-time","type":"string"},"width":{"description":"Validated image width in pixels.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["type"],"type":"object","additionalProperties":false}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"A Recursion API key, created in the console under API keys.","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"A Recursion API key, created in the console under API keys.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"recursion/openapi.yaml"},"subdomain":"labelbox-1db23ff4","siteName":"Labelbox","title":"Get root session tree and timeline - Labelbox","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-06T05:29:54.071Z","originalFileLocation":"api-reference/sessions/get-root-session-tree-and-timeline.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=\"Returns every session in the root session\u0026#x27;s tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Labelbox\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_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=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get root session tree and timeline - Labelbox\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns every session in the root session\u0026#x27;s tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Labelbox\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://labelbox-1db23ff4.mintlify.site/_mintlify/api/og/v2?division=Sessions\u0026amp;title=Get+root+session+tree+and+timeline\u0026amp;description=Returns+every+session+in+the+root+session%27s+tree%2C+its+threads%2C+and+the+first+bounded+page+of+the+merged+chronological+event+log.+When+next_event_id+is+set%2C+more\u0026amp;theme=f571ec5c82cb5a5bd7bfc07f\u0026amp;signature=411b2ff9ac78b7cb55eb96237b4e2318fe10e77efe50d6b92047c2a212e14116\">\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=\"Get root session tree and timeline - Labelbox\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns every session in the root session\u0026#x27;s tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://labelbox-1db23ff4.mintlify.site/_mintlify/api/og/v2?division=Sessions\u0026amp;title=Get+root+session+tree+and+timeline\u0026amp;description=Returns+every+session+in+the+root+session%27s+tree%2C+its+threads%2C+and+the+first+bounded+page+of+the+merged+chronological+event+log.+When+next_event_id+is+set%2C+more\u0026amp;theme=f571ec5c82cb5a5bd7bfc07f\u0026amp;signature=411b2ff9ac78b7cb55eb96237b4e2318fe10e77efe50d6b92047c2a212e14116\">\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=\"/mintlify-assets/_mintlify/favicons/labelbox-1db23ff4/8cFhcrRhzqCDD_l2/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Labelbox\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#36707F\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/sessions/get-root-session-tree-and-timeline.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.labelbox.com/#organization\",\"name\":\"Labelbox\",\"url\":\"https://docs.labelbox.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/labelbox-1db23ff4/badqlfNjN52ySAbU/logo/light.svg?fit=max\u0026auto=format\u0026n=badqlfNjN52ySAbU\u0026q=85\u0026s=2e7592619836dadfb7384597f9e48bec\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.labelbox.com#website\",\"name\":\"Labelbox\",\"url\":\"https://docs.labelbox.com\",\"publisher\":{\"@id\":\"https://docs.labelbox.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline#webpage\",\"url\":\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline\",\"name\":\"Get root session tree and timeline\",\"description\":\"Returns every session in the root session's tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.\",\"dateModified\":\"2026-11-06T05:29:54.071Z\",\"isPartOf\":{\"@id\":\"https://docs.labelbox.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.labelbox.com/api-reference/environments/list-environments\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sessions\",\"item\":\"https://docs.labelbox.com/api-reference/sessions/list-sessions\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Get root session tree and timeline\",\"item\":\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline#apireference\",\"headline\":\"Get root session tree and timeline\",\"name\":\"Get root session tree and timeline\",\"description\":\"Returns every session in the root session's tree, its threads, and the first bounded page of the merged chronological event log. When next_event_id is set, more events remain and should be fetched with managedAgentsListSessionEvents rather than by re-reading the tree. Any session id in the tree is accepted; the read resolves to its root.\",\"url\":\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline\",\"mainEntityOfPage\":{\"@id\":\"https://docs.labelbox.com/api-reference/sessions/get-root-session-tree-and-timeline#webpage\"},\"dateModified\":\"2026-11-06T05:29:54.071Z\",\"publisher\":{\"@id\":\"https://docs.labelbox.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.labelbox.com#website\"}}]}\u003c/script>","siteName":"Labelbox","nav":{"global":null,"products":[{"product":"Recursion","icon":"https://mintlify.s3.us-west-1.amazonaws.com/labelbox-1db23ff4/images/recursion-mark.svg","description":"Managed agents that work in your apps, learn, and run on schedule","tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/recursion"}]},{"tab":"API reference","groups":[{"group":"API reference","pages":[{"title":"API conventions","href":"/recursion/api"},{"title":"Limits","href":"/recursion/limits"},{"title":"Errors","href":"/recursion/errors"},{"title":"Event types and states","sidebarTitle":"Event types and states","href":"/recursion/reference"},{"title":"Glossary","href":"/recursion/glossary"},{"title":"Security","href":"/recursion/security"},{"title":"Troubleshooting","href":"/recursion/troubleshooting"}]},{"group":"Endpoints","pages":[{"group":"Environments","pages":[{"title":"List environments","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/environments","href":"/api-reference/environments/list-environments"},{"title":"Create environment","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/environments","href":"/api-reference/environments/create-environment"},{"title":"Get environment","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/environments/{environmentId}","href":"/api-reference/environments/get-environment"},{"title":"Soft delete environment","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/environments/{environmentId}","href":"/api-reference/environments/soft-delete-environment"},{"title":"Update environment","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml patch /managed-agents/v1/environments/{environmentId}","href":"/api-reference/environments/update-environment"},{"title":"List setup runs","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/environments/{environmentId}/setup-runs","href":"/api-reference/environments/list-setup-runs"},{"title":"Run and verify the environment's setup script","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/environments/{environmentId}/setup-runs","href":"/api-reference/environments/run-and-verify-the-environments-setup-script"},{"title":"Get a setup run, optionally waiting for it to finish","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/environments/{environmentId}/setup-runs/{setupRunId}","href":"/api-reference/environments/get-a-setup-run-optionally-waiting-for-it-to-finish"},{"title":"Read or tail a setup run's log","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/environments/{environmentId}/setup-runs/{setupRunId}/log","href":"/api-reference/environments/read-or-tail-a-setup-runs-log"},{"title":"Cancel a setup run","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/environments/{environmentId}/setup-runs/{setupRunId}/cancel","href":"/api-reference/environments/cancel-a-setup-run"},{"title":"List environments","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/environments","href":"/api-reference/environments/list-environments-1"},{"title":"Create environment","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v2/environments","href":"/api-reference/environments/create-environment-1"},{"title":"Get environment","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/environments/{environmentId}","href":"/api-reference/environments/get-environment-1"},{"title":"Soft delete environment","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v2/environments/{environmentId}","href":"/api-reference/environments/soft-delete-environment-1"},{"title":"Update environment","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml patch /managed-agents/v2/environments/{environmentId}","href":"/api-reference/environments/update-environment-1"},{"title":"List setup runs","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/environments/{environmentId}/setup-runs","href":"/api-reference/environments/list-setup-runs-1"},{"title":"Run and verify the environment's setup script","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v2/environments/{environmentId}/setup-runs","href":"/api-reference/environments/run-and-verify-the-environments-setup-script-1"},{"title":"Get a setup run, optionally waiting for it to finish","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/environments/{environmentId}/setup-runs/{setupRunId}","href":"/api-reference/environments/get-a-setup-run-optionally-waiting-for-it-to-finish-1"},{"title":"Read or tail a setup run's log","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/environments/{environmentId}/setup-runs/{setupRunId}/log","href":"/api-reference/environments/read-or-tail-a-setup-runs-log-1"},{"title":"Cancel a setup run","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v2/environments/{environmentId}/setup-runs/{setupRunId}/cancel","href":"/api-reference/environments/cancel-a-setup-run-1"},{"title":"List portable environment templates","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/environment-templates","href":"/api-reference/environments/list-portable-environment-templates"},{"title":"List portable environment templates","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/environment-templates","href":"/api-reference/environments/list-portable-environment-templates-1"},{"title":"List supported sandbox providers","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sandbox-providers","href":"/api-reference/environments/list-supported-sandbox-providers"},{"title":"List supported sandbox providers","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/sandbox-providers","href":"/api-reference/environments/list-supported-sandbox-providers-1"}]},{"group":"Agents","pages":[{"title":"List agents","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents","href":"/api-reference/agents/list-agents"},{"title":"Create an agent and immutable version","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/agents","href":"/api-reference/agents/create-an-agent-and-immutable-version"},{"title":"Get one agent","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}","href":"/api-reference/agents/get-one-agent"},{"title":"Soft delete agent","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/agents/{agentId}","href":"/api-reference/agents/soft-delete-agent"},{"title":"List agents","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/agents","href":"/api-reference/agents/list-agents-1"},{"title":"Create an agent and immutable version","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v2/agents","href":"/api-reference/agents/create-an-agent-and-immutable-version-1"},{"title":"Get one agent","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/agents/{agentId}","href":"/api-reference/agents/get-one-agent-1"},{"title":"Soft delete agent","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v2/agents/{agentId}","href":"/api-reference/agents/soft-delete-agent-1"},{"title":"Open the analyst for an agent's sessions","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/agents/{agentId}/analyst","href":"/api-reference/agents/open-the-analyst-for-an-agents-sessions"},{"title":"List an agent's immutable version history","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}/versions","href":"/api-reference/agents/list-an-agents-immutable-version-history"},{"title":"Create a new immutable agent version","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/agents/{agentId}/versions","href":"/api-reference/agents/create-a-new-immutable-agent-version"},{"title":"Get one immutable agent version","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}/versions/{agentVersionId}","href":"/api-reference/agents/get-one-immutable-agent-version"},{"title":"List an agent's immutable version history","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/agents/{agentId}/versions","href":"/api-reference/agents/list-an-agents-immutable-version-history-1"},{"title":"Create a new immutable agent version","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v2/agents/{agentId}/versions","href":"/api-reference/agents/create-a-new-immutable-agent-version-1"},{"title":"Get one immutable agent version","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/agents/{agentId}/versions/{agentVersionId}","href":"/api-reference/agents/get-one-immutable-agent-version-1"},{"title":"List static agent templates","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agent-templates","href":"/api-reference/agents/list-static-agent-templates"},{"title":"List static agent templates","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/agent-templates","href":"/api-reference/agents/list-static-agent-templates-1"},{"title":"Search an agent's file history","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/agents/{agentId}/files/search","href":"/api-reference/agents/search-an-agents-file-history"},{"title":"Get one file of an agent's file history","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}/files/{fileId}","href":"/api-reference/agents/get-one-file-of-an-agents-file-history"},{"title":"Get what an agent's skills cost the prompt","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}/skill-disclosure","href":"/api-reference/agents/get-what-an-agents-skills-cost-the-prompt"},{"title":"Preview importing an agent export file","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v2/agents/import-preview","href":"/api-reference/agents/preview-importing-an-agent-export-file"},{"title":"Import an agent export file","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v2/agents/import","href":"/api-reference/agents/import-an-agent-export-file"}]},{"group":"Tags","pages":[{"title":"Replace an agent's complete tag set","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml put /managed-agents/v1/agents/{agentId}/tags","href":"/api-reference/tags/replace-an-agents-complete-tag-set"},{"title":"Apply one tag to an agent","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml put /managed-agents/v1/agents/{agentId}/tags/{tagId}","href":"/api-reference/tags/apply-one-tag-to-an-agent"},{"title":"Remove one tag from an agent","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/agents/{agentId}/tags/{tagId}","href":"/api-reference/tags/remove-one-tag-from-an-agent"},{"title":"List organization tags","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/tags","href":"/api-reference/tags/list-organization-tags"},{"title":"Create an organization tag","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/tags","href":"/api-reference/tags/create-an-organization-tag"},{"title":"Get one organization tag","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/tags/{tagId}","href":"/api-reference/tags/get-one-organization-tag"},{"title":"Soft delete a tag","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/tags/{tagId}","href":"/api-reference/tags/soft-delete-a-tag"},{"title":"Update a tag definition","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml patch /managed-agents/v1/tags/{tagId}","href":"/api-reference/tags/update-a-tag-definition"}]},{"group":"Skills","pages":[{"title":"List skills","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/skills","href":"/api-reference/skills/list-skills"},{"title":"Create a skill from a document","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/skills","href":"/api-reference/skills/create-a-skill-from-a-document"},{"title":"Publish a skill from a bundle upload","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/skills/upload","href":"/api-reference/skills/publish-a-skill-from-a-bundle-upload"},{"title":"Preview what a skill set costs the prompt","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/skills/disclosure-preview","href":"/api-reference/skills/preview-what-a-skill-set-costs-the-prompt"},{"title":"Get one skill","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/skills/{skillId}","href":"/api-reference/skills/get-one-skill"},{"title":"Soft delete skill","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/skills/{skillId}","href":"/api-reference/skills/soft-delete-skill"},{"title":"Refile a skill into a catalog group","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml patch /managed-agents/v1/skills/{skillId}","href":"/api-reference/skills/refile-a-skill-into-a-catalog-group"},{"title":"List a skill's immutable version history","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/skills/{skillId}/versions","href":"/api-reference/skills/list-a-skills-immutable-version-history"},{"title":"Publish a skill version from a document","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/skills/{skillId}/versions","href":"/api-reference/skills/publish-a-skill-version-from-a-document"},{"title":"Publish a skill version from a bundle upload","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/skills/{skillId}/versions/upload","href":"/api-reference/skills/publish-a-skill-version-from-a-bundle-upload"},{"title":"Get one immutable skill version","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/skills/{skillId}/versions/{skillVersionId}","href":"/api-reference/skills/get-one-immutable-skill-version"},{"title":"Download a skill version's bundle","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/skills/{skillId}/versions/{skillVersionId}/content","href":"/api-reference/skills/download-a-skill-versions-bundle"},{"title":"List skill groups","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/skill-groups","href":"/api-reference/skills/list-skill-groups"},{"title":"Create a skill group","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/skill-groups","href":"/api-reference/skills/create-a-skill-group"},{"title":"Get one skill group","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/skill-groups/{skillGroupId}","href":"/api-reference/skills/get-one-skill-group"},{"title":"Delete a skill group","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/skill-groups/{skillGroupId}","href":"/api-reference/skills/delete-a-skill-group"},{"title":"Update a skill group","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml patch /managed-agents/v1/skill-groups/{skillGroupId}","href":"/api-reference/skills/update-a-skill-group"},{"title":"List the skills in a group","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/skill-groups/{skillGroupId}/skills","href":"/api-reference/skills/list-the-skills-in-a-group"}]},{"group":"Sessions","pages":[{"title":"List sessions","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions","href":"/api-reference/sessions/list-sessions"},{"title":"Start a managed session","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/sessions","href":"/api-reference/sessions/start-a-managed-session"},{"title":"Snapshot every root session created in a window","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/gestalt","href":"/api-reference/sessions/snapshot-every-root-session-created-in-a-window"},{"title":"Stream changes to the sessions gestalt as Server-Sent Events","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/gestalt/stream","href":"/api-reference/sessions/stream-changes-to-the-sessions-gestalt-as-server-sent-events"},{"title":"Roll up token and cost totals for a batch of sessions","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/usage","href":"/api-reference/sessions/roll-up-token-and-cost-totals-for-a-batch-of-sessions"},{"title":"List the caller-defined metadata keys sessions carry","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/metadata-keys","href":"/api-reference/sessions/list-the-caller-defined-metadata-keys-sessions-carry"},{"title":"List the values one caller-defined metadata key takes","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/metadata-values","href":"/api-reference/sessions/list-the-values-one-caller-defined-metadata-key-takes"},{"title":"Get session","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}","href":"/api-reference/sessions/get-session"},{"title":"Soft delete a session subtree (events retained)","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/sessions/{sessionId}","href":"/api-reference/sessions/soft-delete-a-session-subtree-events-retained"},{"title":"Open the session analyst for a session","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/sessions/{sessionId}/analyst","href":"/api-reference/sessions/open-the-session-analyst-for-a-session"},{"title":"Open the organization assistant","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/assistant","href":"/api-reference/sessions/open-the-organization-assistant"},{"title":"Decide on an assistant interaction","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/sessions/{sessionId}/interactions/{interactionId}/decide","href":"/api-reference/sessions/decide-on-an-assistant-interaction"},{"title":"Get the team board","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/board","href":"/api-reference/sessions/get-the-team-board"},{"title":"Read sandbox CPU, memory, and GPU usage for a session tree","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/resource-samples","href":"/api-reference/sessions/read-sandbox-cpu-memory-and-gpu-usage-for-a-session-tree"},{"title":"Get root timeline events","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/events","href":"/api-reference/sessions/get-root-timeline-events"},{"title":"Append user/system events to a session","description":"Accepts ordered user and system messages and returns how many were accepted. A running session is woken so the agent sees them, and a finished session resumes to act on them; delivery_state reports how they were delivered. Events are appended in the order given. An omitted or empty events array yields exactly one user turn built from message; the request fails with 400 only when every entry sent was dropped, leaving nothing to append. A top-level image or document block may name a file with source {type: file, file_id}: an unknown, expired, or foreign file answers 404 on that block's source.file_id, a file the block cannot carry (a file whose bytes are not an image on an image block, a binary on a document block, a document over 512 KiB, more than 1 MiB of documents in one event, more than 100 such blocks, or more than 32 MiB of catalog bytes in one request) answers 400 there, and nothing is appended to the transcript; copies of files resolved before the refusal are kept with the session and removed once nothing references them. Without file storage such a block answers 503 file_storage_unconfigured. An optional Idempotency-Key makes a retry after an ambiguous transport failure replay the first response instead of appending the events again. When the tenant is out of credit, a message returns 403 session_start_not_admitted with details.reason out_of_credit and nothing is appended; add credits and send it again. A suspended tenant gets the same 403 with details.reason tenant_suspended.","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/sessions/{sessionId}/events","href":"/api-reference/sessions/append-usersystem-events-to-a-session"},{"title":"Get root session tree and timeline","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/tree","href":"/api-reference/sessions/get-root-session-tree-and-timeline"},{"title":"List session threads","description":"Returns every thread in the session's tree, including one synthesized thread per session that has no explicit thread rows, sorted by thread path. Any session id in the tree is accepted; the read resolves to its root.","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/threads","href":"/api-reference/sessions/list-session-threads"},{"title":"Get session thread","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/threads/{threadId}","href":"/api-reference/sessions/get-session-thread"},{"title":"Stream session events as Server-Sent Events","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/events/stream","href":"/api-reference/sessions/stream-session-events-as-server-sent-events"},{"title":"Stream one authenticated complete event content document","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/events/{eventId}/content","href":"/api-reference/sessions/stream-one-authenticated-complete-event-content-document"},{"title":"Get one private session image","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/images","href":"/api-reference/sessions/get-one-private-session-image"},{"title":"Hard stop a session immediately","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/sessions/{sessionId}/cancel","href":"/api-reference/sessions/hard-stop-a-session-immediately"},{"title":"Interrupt a running session","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/sessions/{sessionId}/interrupt","href":"/api-reference/sessions/interrupt-a-running-session"},{"title":"Interrupt a session and send a replacement instruction","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/sessions/{sessionId}/interrupt-and-send","href":"/api-reference/sessions/interrupt-a-session-and-send-a-replacement-instruction"},{"title":"List input a session has accepted but not read","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/pending-inputs","href":"/api-reference/sessions/list-input-a-session-has-accepted-but-not-read"},{"title":"List a session's outcomes and grading history","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/outcomes","href":"/api-reference/sessions/list-a-sessions-outcomes-and-grading-history"},{"title":"Define what done looks like for a session","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/sessions/{sessionId}/outcomes","href":"/api-reference/sessions/define-what-done-looks-like-for-a-session"},{"title":"Get the agent version a session runs","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/sessions/{sessionId}/agent-version","href":"/api-reference/sessions/get-the-agent-version-a-session-runs"},{"title":"Move a session to another version of its agent","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml put /managed-agents/v1/sessions/{sessionId}/agent-version","href":"/api-reference/sessions/move-a-session-to-another-version-of-its-agent"},{"title":"Move an agent's live sessions to its latest version","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/agents/{agentId}/upgrade-sessions","href":"/api-reference/sessions/move-an-agents-live-sessions-to-its-latest-version"},{"title":"Get an agent's session upgrade","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}/session-upgrade","href":"/api-reference/sessions/get-an-agents-session-upgrade"},{"title":"Stop an agent's running session upgrade","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/agents/{agentId}/session-upgrade/cancel","href":"/api-reference/sessions/stop-an-agents-running-session-upgrade"},{"title":"Set a session's budget","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml put /managed-agents/v1/sessions/{sessionId}/budget","href":"/api-reference/sessions/set-a-sessions-budget"},{"title":"Remove a session's budget","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/sessions/{sessionId}/budget","href":"/api-reference/sessions/remove-a-sessions-budget"}]},{"group":"Memory","pages":[{"title":"List memory status for every agent","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agent-memories","href":"/api-reference/memory/list-memory-status-for-every-agent"},{"title":"Get an agent's memory summary","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agent-memories/{agentId}","href":"/api-reference/memory/get-an-agents-memory-summary"},{"title":"Search an agent's current memories","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}/memories","href":"/api-reference/memory/search-an-agents-current-memories"},{"title":"Search an agent's current memories","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/agents/{agentId}/memories","href":"/api-reference/memory/search-an-agents-current-memories-1"},{"title":"Get an agent's memory settings","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}/memory/settings","href":"/api-reference/memory/get-an-agents-memory-settings"},{"title":"Update an agent's memory settings","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml patch /managed-agents/v1/agents/{agentId}/memory/settings","href":"/api-reference/memory/update-an-agents-memory-settings"},{"title":"List an agent's memory runs","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}/memory/runs","href":"/api-reference/memory/list-an-agents-memory-runs"},{"title":"Get one memory job run","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/agents/{agentId}/memory/runs/{runId}","href":"/api-reference/memory/get-one-memory-job-run"},{"title":"Read one memory","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/memory-stores/{memoryStoreId}/memories/{memoryId}","href":"/api-reference/memory/read-one-memory"},{"title":"Delete a memory","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/memory-stores/{memoryStoreId}/memories/{memoryId}","href":"/api-reference/memory/delete-a-memory"},{"title":"List memory versions","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/memory-stores/{memoryStoreId}/memory-versions","href":"/api-reference/memory/list-memory-versions"},{"title":"Get one memory version","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/memory-stores/{memoryStoreId}/memory-versions/{memoryVersionId}","href":"/api-reference/memory/get-one-memory-version"},{"title":"List memory store revisions","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/memory-stores/{memoryStoreId}/revisions","href":"/api-reference/memory/list-memory-store-revisions"}]},{"group":"Evaluations","pages":[{"title":"List immutable evaluation verdicts","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/evaluations","href":"/api-reference/evaluations/list-immutable-evaluation-verdicts"},{"title":"Start one evaluation session per target","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/evaluations","href":"/api-reference/evaluations/start-one-evaluation-session-per-target"},{"title":"List evaluation runs","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/evaluation-runs","href":"/api-reference/evaluations/list-evaluation-runs"}]},{"group":"Vaults","pages":[{"title":"List credential vaults","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/vaults","href":"/api-reference/vaults/list-credential-vaults"},{"title":"Create a credential vault","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/vaults","href":"/api-reference/vaults/create-a-credential-vault"},{"title":"List credential vaults","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/vaults","href":"/api-reference/vaults/list-credential-vaults-1"},{"title":"Get a credential vault","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/vaults/{vaultId}","href":"/api-reference/vaults/get-a-credential-vault"},{"title":"Soft delete a vault and hide its credentials","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/vaults/{vaultId}","href":"/api-reference/vaults/soft-delete-a-vault-and-hide-its-credentials"},{"title":"Rename a vault or replace its metadata","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml patch /managed-agents/v1/vaults/{vaultId}","href":"/api-reference/vaults/rename-a-vault-or-replace-its-metadata"},{"title":"Get a credential vault","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/vaults/{vaultId}","href":"/api-reference/vaults/get-a-credential-vault-1"},{"title":"List a vault's credential references","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/vaults/{vaultId}/credentials","href":"/api-reference/vaults/list-a-vaults-credential-references"},{"title":"Register a credential reference in a vault","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/vaults/{vaultId}/credentials","href":"/api-reference/vaults/register-a-credential-reference-in-a-vault"},{"title":"List a vault's credential references","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/vaults/{vaultId}/credentials","href":"/api-reference/vaults/list-a-vaults-credential-references-1"},{"title":"Get one credential reference","deprecated":true,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/vaults/{vaultId}/credentials/{credentialId}","href":"/api-reference/vaults/get-one-credential-reference"},{"title":"Soft delete a credential reference","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/vaults/{vaultId}/credentials/{credentialId}","href":"/api-reference/vaults/soft-delete-a-credential-reference"},{"title":"Rename a credential or rotate its reference","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml patch /managed-agents/v1/vaults/{vaultId}/credentials/{credentialId}","href":"/api-reference/vaults/rename-a-credential-or-rotate-its-reference"},{"title":"Get one credential reference","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v2/vaults/{vaultId}/credentials/{credentialId}","href":"/api-reference/vaults/get-one-credential-reference-1"},{"title":"Test an MCP server connection and list its tools","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/mcp/probe","href":"/api-reference/vaults/test-an-mcp-server-connection-and-list-its-tools"}]},{"group":"Event Sources","pages":[{"title":"Check IMAP OAuth website sign-in availability","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/imap-oauth/availability","href":"/api-reference/event-sources/check-imap-oauth-website-sign-in-availability"},{"title":"Start website sign-in for an IMAP OAuth credential","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/vaults/{vaultId}/credentials/{credentialId}/imap-oauth/start","href":"/api-reference/event-sources/start-website-sign-in-for-an-imap-oauth-credential"},{"title":"Complete website sign-in for an IMAP OAuth credential","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/imap-oauth/complete","href":"/api-reference/event-sources/complete-website-sign-in-for-an-imap-oauth-credential"},{"title":"List event sources","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/event-sources","href":"/api-reference/event-sources/list-event-sources"},{"title":"Create a paused event source","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/event-sources","href":"/api-reference/event-sources/create-a-paused-event-source"},{"title":"Get an event source","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/event-sources/{eventSourceId}","href":"/api-reference/event-sources/get-an-event-source"},{"title":"Replace an event source configuration","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml put /managed-agents/v1/event-sources/{eventSourceId}","href":"/api-reference/event-sources/replace-an-event-source-configuration"},{"title":"Delete an unused event source","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/event-sources/{eventSourceId}","href":"/api-reference/event-sources/delete-an-unused-event-source"},{"title":"Get volatile event-source status","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/event-sources/{eventSourceId}/status","href":"/api-reference/event-sources/get-volatile-event-source-status"},{"title":"Pause event admission from a source","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/event-sources/{eventSourceId}/pause","href":"/api-reference/event-sources/pause-event-admission-from-a-source"},{"title":"Resume event admission from a source","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/event-sources/{eventSourceId}/resume","href":"/api-reference/event-sources/resume-event-admission-from-a-source"}]},{"group":"Integrations","pages":[{"title":"List the native integrations this deployment supports","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/integrations/providers","href":"/api-reference/integrations/list-the-native-integrations-this-deployment-supports"},{"title":"Begin authorizing a third-party account connection","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/integrations/{provider}/install","href":"/api-reference/integrations/begin-authorizing-a-third-party-account-connection"},{"title":"Finish connecting provider accounts after the authorization redirect","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/integrations/install/complete","href":"/api-reference/integrations/finish-connecting-provider-accounts-after-the-authorization-redirect"},{"title":"List connected third-party accounts","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/integrations/connections","href":"/api-reference/integrations/list-connected-third-party-accounts"},{"title":"Get one connected account","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/integrations/connections/{connectionId}","href":"/api-reference/integrations/get-one-connected-account"},{"title":"Disconnect an account and retire the grants that used it","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/integrations/connections/{connectionId}","href":"/api-reference/integrations/disconnect-an-account-and-retire-the-grants-that-used-it"},{"title":"Check a connection against the provider and try minting a token","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/integrations/connections/{connectionId}/probe","href":"/api-reference/integrations/check-a-connection-against-the-provider-and-try-minting-a-token"},{"title":"List the repositories a connection can reach, for the grant picker","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/integrations/connections/{connectionId}/repositories","href":"/api-reference/integrations/list-the-repositories-a-connection-can-reach-for-the-grant-picker"},{"title":"List pull requests for a connected repository","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/integrations/connections/{connectionId}/repositories/{repositoryOwner}/{repositoryName}/pull-requests","href":"/api-reference/integrations/list-pull-requests-for-a-connected-repository"},{"title":"Get the connected Slack bot's bounded channel-selection catalog","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/integrations/connections/{connectionId}/channel-catalog","href":"/api-reference/integrations/get-the-connected-slack-bots-bounded-channel-selection-catalog"},{"title":"Get the connected Slack workspace's bounded member catalog","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/integrations/connections/{connectionId}/member-catalog","href":"/api-reference/integrations/get-the-connected-slack-workspaces-bounded-member-catalog"}]},{"group":"Models","pages":[{"title":"List the models agents can run on","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/models","href":"/api-reference/models/list-the-models-agents-can-run-on"}]},{"group":"Automations","pages":[{"title":"List canonical automations","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/automations","href":"/api-reference/automations/list-canonical-automations"},{"title":"Create a paused canonical automation","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/automations","href":"/api-reference/automations/create-a-paused-canonical-automation"},{"title":"Get a canonical automation","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/automations/{automationId}","href":"/api-reference/automations/get-a-canonical-automation"},{"title":"Replace a canonical automation aggregate","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml put /managed-agents/v1/automations/{automationId}","href":"/api-reference/automations/replace-a-canonical-automation-aggregate"},{"title":"Delete a canonical automation","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml delete /managed-agents/v1/automations/{automationId}","href":"/api-reference/automations/delete-a-canonical-automation"},{"title":"Get automation schedule status","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/automations/{automationId}/status","href":"/api-reference/automations/get-automation-schedule-status"},{"title":"Run a canonical automation manually","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/automations/{automationId}/runs","href":"/api-reference/automations/run-a-canonical-automation-manually"},{"title":"Pause canonical automation admission","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/automations/{automationId}/pause","href":"/api-reference/automations/pause-canonical-automation-admission"},{"title":"Resume canonical automation admission","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/automations/{automationId}/resume","href":"/api-reference/automations/resume-canonical-automation-admission"},{"title":"List canonical automation runs","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/automation-runs","href":"/api-reference/automations/list-canonical-automation-runs"},{"title":"Get one canonical automation run","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/automation-runs/{automationRunId}","href":"/api-reference/automations/get-one-canonical-automation-run"},{"title":"Test an AI filter on a sample message","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/automation-classifier-tests","href":"/api-reference/automations/test-an-ai-filter-on-a-sample-message"},{"title":"Get an automation run's result","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/automation-runs/{automationRunId}/result","href":"/api-reference/automations/get-an-automation-runs-result"}]},{"group":"Files","pages":[{"title":"List files","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/files","href":"/api-reference/files/list-files"},{"title":"Upload a file","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml post /managed-agents/v1/files","href":"/api-reference/files/upload-a-file"},{"title":"Get one file","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/files/{fileId}","href":"/api-reference/files/get-one-file"},{"title":"Download a file's bytes","deprecated":null,"version":null,"openapi":"/recursion/openapi.yaml get /managed-agents/v1/files/{fileId}/content","href":"/api-reference/files/download-a-files-bytes"}]}]}]}]},{"product":"Horizon","icon":"https://mintlify.s3.us-west-1.amazonaws.com/labelbox-1db23ff4/images/labelbox-mark.svg","description":"RL environments, evals, labeling, and the Python SDK","pages":[{"title":"Horizon","href":"/horizon"}]}]},"basePath":"","title":"Get root session tree and timeline - Labelbox","buildId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","deploymentId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Myd8dsju.js","utils-C2HkQgW0.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-8rSppmTv.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B6MjiCFm.js","snippetPresets-DwrSAONL.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-1-a5UQKQ.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C541m7wZ.js","shallow-CWELCZ77.js","getApiPlaygroundDisplay-CTo5Zn03.js","CodeSnippet-D--dzvnl.js","CodeSnippets-DM3cXEDh.js","Page-CxAy5y67.js","getPastedJson-C-VECgcL.js","icon-BPq2-Mg3.js","MethodPill-D9J5cUHd.js","DuplicateIcon-BqHaxUnD.js","createIcon-CIbcZHp9.js","DynamicMarkdown-BKiHAm_d.js","SectionHeading-DstQXt3H.js","axios-vUo_bRtp.js","Markdown-CpxgzsKA.js","clsx-C5EfhVm0.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CJ9Oly2E.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Mk6P3qvh.js"]}