Answer one or more questions about the content supplied in state.
You can mix question types in one request. Answers use the same names as the
questions, so you can match each result to its question. The response also includes
the model used and token usage.
curl --request POST \ --url https://api.typesafe.ai/v1/systemone \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "model": "jev-latest", "state": "I was charged twice for my subscription this month. Please refund the extra charge.", "questions": { "billing": { "type": "noul", "instructions": "Is this message about billing?" } }}'
Media assets keyed by an opaque placeholder (recommend a per-image UUID). Each placeholder, wherever it appears as or inside a string in state, question instructions, or criteria, is replaced with the asset. Image assets require a vision-language model.
An image that replaces its placeholder: its bytes in data_base64 with their format, or, in a multipart request, the name of the image part that holds them. Requests with images must send the header TypeSafe-Danger-Zone-Images: true.
Probability of a yes answer or a true statement, from 0 to 1. Values near 1 favor yes or true, values near 0 favor no or false, and values near 0.5 indicate uncertainty.
Number of output tokens used to answer the questions. Output tokens are currently free of charge.
Example:
12
Example:
{ "input_tokens": 120, "output_tokens": 12 }
Was this page helpful?
curl --request POST \ --url https://api.typesafe.ai/v1/systemone \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "model": "jev-latest", "state": "I was charged twice for my subscription this month. Please refund the extra charge.", "questions": { "billing": { "type": "noul", "instructions": "Is this message about billing?" } }}'
{"docsConfig":{"theme":"sequoia","$schema":"https://mintlify.com/docs.json","name":"TypeSafe","description":"How to use TypeSafe's System One API","colors":{"primary":"#E551BA","light":"#E551BA","dark":"#E551BA"},"logo":{"light":"https://mintcdn.com/ts-docs/yUH7wuFx44xePApg/logo/light.png?fit=max\u0026auto=format\u0026n=yUH7wuFx44xePApg\u0026q=85\u0026s=5f42af6569a8cfd0a141ba55f152b7e3","dark":"https://mintcdn.com/ts-docs/yUH7wuFx44xePApg/logo/dark.png?fit=max\u0026auto=format\u0026n=yUH7wuFx44xePApg\u0026q=85\u0026s=da7ff966a1766865739eaa51259ae376"},"favicon":{"light":"https://mintcdn.com/ts-docs/2NirYCl-v96cw05F/favicon-light.png?fit=max\u0026auto=format\u0026n=2NirYCl-v96cw05F\u0026q=85\u0026s=f7df888fdc625171459534ed7ca6a0fc","dark":"https://mintcdn.com/ts-docs/2NirYCl-v96cw05F/favicon-dark.png?fit=max\u0026auto=format\u0026n=2NirYCl-v96cw05F\u0026q=85\u0026s=c97a3f0acdf0b72bab53aee67381b157"},"api":{"params":{"expanded":"all","post":["x-accepts"]},"playground":{"display":"none"},"examples":{"languages":["curl"]},"url":"full"},"appearance":{"default":"dark"},"navbar":{"primary":{"type":"button","label":"TypeSafe console","href":"https://console.typesafe.ai/home"}},"footer":{"socials":{"github":"https://github.com/typesafe-ai","discord":"https://discord.gg/typesafe","x":"https://x.com/typesafeai"}},"icons":{"library":"lucide"},"integrations":{"posthog":{"apiKey":"phc_WPXBSDV59U6jCvjp8nRaBLABHpHMgomLfKckkldgyHf","sessionRecording":true}},"contextual":{"options":["copy","view"],"display":"header"},"thumbnails":{"preset":"headline","appearance":"light","background":"https://mintcdn.com/ts-docs/UYvaCYizUmYo4ADu/images/og/background.png?fit=max\u0026auto=format\u0026n=UYvaCYizUmYo4ADu\u0026q=85\u0026s=0f37bf90b444af8d0f34b7dbedc01128","fonts":{"family":"Inter Tight Medium","source":"fonts/inter-tight-medium.ttf","format":"ttf"},"eyebrow":{"style":"pill","color":"#1E1E1E"}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ts-docs","hasAudioNarration":false,"actualSubdomain":"ts-docs","customDomains":["docs.typesafe.ai"],"gitSource":{"type":"github","owner":"typesafe-ai","repo":"docs","deployBranch":"main","contentDirectory":"mintlify-public","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae5334f7f7860e31829b02b","collectionId":"9bac85d4-a5b7-4f59-963d-9a88cb56d607","liveDeploymentHistoryId":"6ae5334f7f7860e31829b02b","schemaVersion":"v3"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae5334f7f7860e31829b02b","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"Reference","count":90},{"language":"default","tag":"Client SDKs","count":79},{"language":"default","tag":"API reference","count":75},{"language":"default","tag":"JavaScript SDK","count":64},{"language":"default","tag":"Build with Jev","count":26},{"language":"default","tag":"Cookbooks","count":25},{"language":"default","tag":"Interfaces","count":21},{"language":"default","tag":"Documentation","count":20},{"language":"default","tag":"Type Aliases","count":16},{"language":"default","tag":"Classes","count":15}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"support@typesafe.ai"}},"basePath":"","hasChatPermissions":false,"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":"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":"byok-sep-25","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":"billing-updated-9-15","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}],"starterQuestions":[{"_id":"6a8e4a2e5ffd429e392096a8","deploymentId":"6a8e3b3725a925bf49c2cb5e","questionText":"What does it mean to compose primitives together?","status":"active","generatedBy":"manual","createdAt":"2026-08-26T02:06:38.541Z","updatedAt":"2026-08-26T02:06:38.541Z","__v":0},{"_id":"6a8e49ee5ffd429e3920960f","deploymentId":"6a8e3b3725a925bf49c2cb5e","questionText":"How do I choose which primitive to use?","status":"active","generatedBy":"manual","createdAt":"2026-08-26T02:05:34.696Z","updatedAt":"2026-08-26T02:05:34.696Z","__v":0}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":":root{--ts-accent:#E551BA}@media (min-width:1024px){html:not([data-page-mode=custom]) #content-area{max-width:816px}}@media (min-width:1280px){html:not([data-page-mode=custom]) #content-area{margin-left:max(0px,calc(50vw - 408px - 18rem))}}#page-title{font-size:3.85rem;font-weight:500;line-height:95%;letter-spacing:-.04em;padding-bottom:.2rem}[data-component-name=primary-header-button],[data-component-name=primary-header-button] *{color:#fff!important}h2,h3,h4,h5,h6{padding-top:2rem;padding-bottom:.5rem;margin:0;font-weight:500}.dark h1{opacity:88%}.dark h2,.dark h3,.dark h4,.dark h5,.dark h6{color:color-mix(in srgb,#f9f6f9 70%,transparent)}#navbar a,#navbar button,#page-context-menu button,#pagination a,#search-bar-entry,#sidebar-content a,.accordion,.accordion-group,.callout,.card,.code-block,.code-block *,.code-group,.code-group *,.expandable,.expandable *,.frame,.frame img,.frame>div{border-radius:0!important;--rounded-xl:0px}body:has(#page-context-menu [aria-expanded=true]) [role=menu]{border-radius:0!important;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.5}body:has(#page-context-menu [aria-expanded=true]) [role=menuitem]{border-radius:0!important;padding:.5rem .75rem;font:inherit}body:has(#page-context-menu [aria-expanded=true]) [role=menuitem] svg,body:has(#page-context-menu [aria-expanded=true]) [role=menuitem]>div:first-child,body:has(#page-context-menu [aria-expanded=true]) [role=menuitem]>div:nth-child(2)>div+div{display:none}body:has(#page-context-menu [aria-expanded=true]) [role=menuitem]>div:nth-child(2){padding:0}body:has(#page-context-menu [aria-expanded=true]) [role=menuitem]>div:nth-child(2)>div:first-child{font:inherit}#header .eyebrow,.code-block [data-component-part=code-block-header-filename],.sidebar-group-header{font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,#111 55%,transparent)!important}.dark #header .eyebrow,.dark .code-block [data-component-part=code-block-header-filename],.dark .sidebar-group-header{letter-spacing:.09em;color:color-mix(in srgb,#f9f6f9 70%,transparent)!important;opacity:65%}#sidebar-content li[data-active]>a{background-color:#f9f6f9}.dark #pagination a:hover,.dark #sidebar-content li[data-active]>a{background-color:color-mix(in srgb,#2c272b 60%,transparent)}#content :not(pre)>code,#content [data-component-part=field-info-pill]{background-color:#f5f0f3!important;border:1px solid color-mix(in srgb,#a5a0a4 15%,transparent)!important}.dark #content :not(pre)>code,.dark #content [data-component-part=field-info-pill]{background-color:color-mix(in srgb,#2c272b 60%,transparent)!important}[data-component-part=field-required-pill]{font-family:Inter,-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif!important;color:#f9f6f9!important;background-color:#111!important;border-radius:0!important;padding-right:6px;font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dark [data-component-part=field-required-pill]{color:#111!important;background-color:color-mix(in srgb,#f9f6f9 80%,transparent)!important}#sidebar-content .nav-tag-pill-text[data-nav-tag]{color:var(--nav-tag-text)!important;background-color:var(--nav-tag-bg)!important;font-weight:600;font-size:.6875rem;letter-spacing:.01em;padding:.0625rem .3125rem;border-radius:0!important}#sidebar-content a div:has(>div>.nav-tag-pill){flex-wrap:nowrap;align-items:flex-start;column-gap:.5rem}#sidebar-content a div:has(>div>.nav-tag-pill)>span{flex:1 1 auto;hyphens:manual}#sidebar-content a div:has(>.nav-tag-pill){margin-left:auto}#sidebar-content .nav-tag-pill-text[data-nav-tag=Beginner]{--nav-tag-bg:color-mix(in srgb, #9AD1F5 33%, transparent)!important;--nav-tag-text:#065A91}.dark #sidebar-content .nav-tag-pill-text[data-nav-tag=Beginner]{--nav-tag-bg:color-mix(in srgb, #4B5FD6 28%, transparent)!important;--nav-tag-text:color-mix(in srgb, #4B5FD6 40%, #9AD1F5)!important}#sidebar-content .nav-tag-pill-text[data-nav-tag=Intermediate]{--nav-tag-bg:color-mix(in srgb, #B6E88E 50%, transparent)!important;--nav-tag-text:#245b08}.dark #sidebar-content .nav-tag-pill-text[data-nav-tag=Intermediate]{--nav-tag-bg:color-mix(in srgb, #245b08 33%, transparent)!important;--nav-tag-text:color-mix(in srgb, #B6E88E 60%, #245b08)!important}#sidebar-content .nav-tag-pill-text[data-nav-tag=Advanced]{--nav-tag-bg:color-mix(in srgb, #FF71DF 20%, transparent)!important;--nav-tag-text:#A42D71}.dark #sidebar-content .nav-tag-pill-text[data-nav-tag=Advanced]{--nav-tag-bg:color-mix(in srgb, #FF71DF 20%, transparent)!important;--nav-tag-text:color-mix(in srgb, #A42D71 15%, #F386A1)!important}.callout[data-callout-type=note]{--callout-bg:#EFF6FF;--callout-border:#BFDBFE;--callout-text:#1E40AF}.dark .callout[data-callout-type=note]{--callout-bg:#2563EB33;--callout-border:#1E3A8A;--callout-text:#93C5FD}.callout[data-callout-type=warning]{--callout-bg:#FEFCE8;--callout-border:#FEF08A;--callout-text:#854D0E}.dark .callout[data-callout-type=warning]{--callout-bg:#CA8A0433;--callout-border:#713F12;--callout-text:#FDE047}.callout[data-callout-type=info]{--callout-bg:#FAFAFA;--callout-border:#E5E5E5;--callout-text:#262626}.dark .callout[data-callout-type=info]{--callout-bg:#FFFFFF1A;--callout-border:#404040;--callout-text:#D4D4D4}.callout[data-callout-type=check],.callout[data-callout-type=tip]{--callout-bg:#F0FDF4;--callout-border:#BBF7D0;--callout-text:#166534}.dark .callout[data-callout-type=check],.dark .callout[data-callout-type=tip]{--callout-bg:#16A34A33;--callout-border:#14532D;--callout-text:#86EFAC}.callout[data-callout-type=danger]{--callout-bg:#FEF2F2;--callout-border:#FECACA;--callout-text:#991B1B}.dark .callout[data-callout-type=danger]{--callout-bg:#DC262633;--callout-border:#7F1D1D;--callout-text:#FCA5A5}.callout[data-callout-type]{background-color:var(--callout-bg);border-color:var(--callout-border)}.callout[data-callout-type] [data-component-part=callout-content],.callout[data-callout-type] [data-component-part=callout-icon] svg{color:var(--callout-text)}#pagination,.dark #pagination{--pagination-label:#E551BA;--pagination-arrow:#E551BA}#pagination [data-component-part=pagination-title]{font-weight:400;opacity:75%}#pagination [data-component-part=pagination-label]{color:var(--pagination-label)!important}#pagination [data-component-part=pagination-chevron]{color:var(--pagination-arrow)!important}#pagination a:hover{background-color:#f5f0f3}[data-component-name=mermaid-container]>.grid{display:block}[data-component-name=mermaid-container]>.grid>button:not([aria-label=\"Open fullscreen\"]){display:none}[data-component-name^=mermaid-] button,[data-component-name^=mermaid-] span{border-radius:0!important}@media (max-width:767px),(hover:none),(pointer:coarse){[data-component-name=mermaid-container]{display:flex;flex-direction:column;gap:.5rem}[data-component-name=mermaid-container]>[data-component-name=mermaid-controls-wrapper]{position:static;order:1;align-self:flex-end;opacity:1;pointer-events:auto}[data-component-name^=mermaid-] button{width:32px;height:32px;min-width:32px;min-height:32px;margin:6px}[data-component-name^=mermaid-] button:not([aria-label=\"Close fullscreen\"]){position:relative}[data-component-name^=mermaid-] button::after{content:\"\";position:absolute;inset:-7px}}[data-component-name^=mermaid-]{--mermaid-accent:var(--ts-accent);--mermaid-accent-fill:color-mix(in srgb, var(--ts-accent) 7%, transparent);--mermaid-node-fill:#ffffff;--mermaid-node-stroke:#27272a;--mermaid-text:#27272a;--mermaid-muted:#52525b;--mermaid-line:#71717a;--mermaid-label-bg:rgb(var(--background-light))}.dark [data-component-name^=mermaid-]{--mermaid-accent-fill:color-mix(in srgb, var(--ts-accent) 10%, transparent);--mermaid-node-fill:rgb(var(--background-dark));--mermaid-node-stroke:#ffffff;--mermaid-text:#fafafa;--mermaid-muted:#d4d4d8;--mermaid-line:#a1a1aa;--mermaid-label-bg:rgb(var(--background-dark))}[data-component-name^=mermaid-] :is(.node rect, .node circle, .node ellipse, .node polygon, .node path){fill:var(--mermaid-node-fill)!important;stroke:var(--mermaid-node-stroke)!important;stroke-width:1px!important}[data-component-name^=mermaid-] .cluster rect{fill:var(--mermaid-accent-fill)!important;stroke:var(--mermaid-accent)!important;stroke-width:1.5px!important}[data-component-name^=mermaid-] :is(.nodeLabel, .nodeLabel p, .label text){color:var(--mermaid-text)!important;fill:var(--mermaid-text)!important}[data-component-name^=mermaid-] .cluster-label :is(.nodeLabel, p){color:var(--mermaid-text)!important}[data-component-name^=mermaid-] :is(.flowchart-link:not([style*=\"stroke:none\"]), .marker){stroke:var(--mermaid-line)!important}[data-component-name^=mermaid-] .marker{fill:var(--mermaid-line)!important}[data-component-name^=mermaid-] :is(.edgeLabel p, .edgeLabel span){color:var(--mermaid-muted)!important;background-color:var(--mermaid-label-bg)!important}[data-component-name^=mermaid-] .labelBkg{background-color:var(--mermaid-label-bg)!important}[data-component-name^=mermaid-] .edgeLabel rect{fill:var(--mermaid-label-bg)!important}[data-component-part=field-meta]:has(>[data-component-part=field-meta-post]){display:inline-flex;flex-wrap:wrap;align-items:center}[data-component-part=field-meta]:has(>[data-component-part=field-meta-post])>[data-component-part=field-info-pill],html[data-current-path^=\"/api/\"] .primitive-param-field:has([data-component-part=field-meta-post]) div.prose.mt-6:has(>code:only-child){display:none}html [data-component-part=field-meta-post]{order:-1;font-family:paperMono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;border-radius:0!important;background-color:#f5f0f3!important;border:1px solid color-mix(in srgb,#a5a0a4 15%,transparent)!important}html.dark [data-component-part=field-meta-post]{color:#e7e5e4;background-color:color-mix(in srgb,#2c272b 60%,transparent)!important}html[data-current-path^=\"/api/\"] #content-area [data-component-part=expandable]{border:0;border-left:1px solid color-mix(in srgb,#a5a0a4 25%,transparent);margin-top:.75rem;padding-left:1rem}html[data-current-path^=\"/api/\"] #content-area [data-component-part=expandable-button],html[data-current-path^=\"/api/\"] [data-component-part=field-name]>span{display:none}html[data-current-path^=\"/api/\"] #content-area [data-component-part=expandable-content]{padding:0;border:0}.dark [data-component-name^=mermaid-]{--neon-line:#e4e4e7;--neon-green:#4ade80;--neon-blue:#60a5fa;--neon-purple:#c084fc;--neon-yellow:#facc15;--neon-orange:#fb923c;--neon-red:#f87171;--mermaid-text:#ffffff;--mermaid-muted:#e4e4e7;--mermaid-line:var(--neon-line)}.dark [data-component-name^=mermaid-] :is(.node rect, .node circle, .node ellipse, .node polygon, .node path){--neon:var(--neon-line);fill:rgb(var(--background-dark))!important;stroke:var(--neon)!important;stroke-width:1.5px!important;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--neon) 60%,transparent))}.dark [data-component-name^=mermaid-] .node polygon{stroke-width:2px!important;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--neon) 60%,transparent))}.dark [data-component-name^=mermaid-] .cluster rect{fill:color-mix(in srgb,var(--mermaid-accent) 14%,rgb(var(--background-dark)))!important;stroke:var(--mermaid-accent)!important;stroke-width:1.5px!important;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--mermaid-accent) 55%,transparent))}.dark [data-component-name^=mermaid-] .cluster rect[style*=\"fill:none\"]{filter:none}.dark [data-component-name^=mermaid-] .flowchart-link:not([style*=\"stroke:none\"]){--neon:var(--neon-line);stroke:var(--neon)!important;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--neon) 55%,transparent))}.dark [data-component-name^=mermaid-] .marker{fill:var(--mermaid-line)!important;stroke:var(--mermaid-line)!important;fill:context-stroke!important;stroke:context-stroke!important}.dark [data-component-name^=mermaid-] .node.neonGreen :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-green)}.dark [data-component-name^=mermaid-] .node.neonBlue :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-blue)}.dark [data-component-name^=mermaid-] .node.neonPurple :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-purple)}.dark [data-component-name^=mermaid-] .node.neonYellow :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-yellow)}.dark [data-component-name^=mermaid-] .node.neonOrange :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-orange)}.dark [data-component-name^=mermaid-] .node.neonRed :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-red)}.dark [data-component-name^=mermaid-] :is(.node.neonGreen, .node.neonBlue, .node.neonPurple, .node.neonYellow, .node.neonOrange, .node.neonRed) :is(rect, circle, ellipse, polygon, path){fill:color-mix(in srgb,var(--neon) 12%,rgb(var(--background-dark)))!important}.dark [data-component-name^=mermaid-] .flowchart-link[id*=-green_]{--neon:var(--neon-green)}.dark [data-component-name^=mermaid-] .flowchart-link[id*=-blue_]{--neon:var(--neon-blue)}.dark [data-component-name^=mermaid-] .flowchart-link[id*=-purple_]{--neon:var(--neon-purple)}.dark [data-component-name^=mermaid-] .flowchart-link[id*=-yellow_]{--neon:var(--neon-yellow)}.dark [data-component-name^=mermaid-] .flowchart-link[id*=-orange_]{--neon:var(--neon-orange)}.dark [data-component-name^=mermaid-] .flowchart-link[id*=-red_]{--neon:var(--neon-red)}.dark [data-component-name^=mermaid-] .label[data-id^=green_] .edgeLabel p{color:var(--neon-green)!important}.dark [data-component-name^=mermaid-] .label[data-id^=blue_] .edgeLabel p{color:var(--neon-blue)!important}.dark [data-component-name^=mermaid-] .label[data-id^=purple_] .edgeLabel p{color:var(--neon-purple)!important}.dark [data-component-name^=mermaid-] .label[data-id^=yellow_] .edgeLabel p{color:var(--neon-yellow)!important}.dark [data-component-name^=mermaid-] .label[data-id^=orange_] .edgeLabel p{color:var(--neon-orange)!important}.dark [data-component-name^=mermaid-] .label[data-id^=red_] .edgeLabel p{color:var(--neon-red)!important}:root:not(.dark) [data-component-name^=mermaid-]{--neon-green:#15803d;--neon-blue:#1d4ed8;--neon-purple:#7e22ce;--neon-yellow:#a16207;--neon-orange:#c2410c;--neon-red:#b91c1c}:root:not(.dark) [data-component-name^=mermaid-] .node.neonGreen :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-green)}:root:not(.dark) [data-component-name^=mermaid-] .node.neonBlue :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-blue)}:root:not(.dark) [data-component-name^=mermaid-] .node.neonPurple :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-purple)}:root:not(.dark) [data-component-name^=mermaid-] .node.neonYellow :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-yellow)}:root:not(.dark) [data-component-name^=mermaid-] .node.neonOrange :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-orange)}:root:not(.dark) [data-component-name^=mermaid-] .node.neonRed :is(rect, circle, ellipse, polygon, path){--neon:var(--neon-red)}:root:not(.dark) [data-component-name^=mermaid-] :is(.node.neonGreen, .node.neonBlue, .node.neonPurple, .node.neonYellow, .node.neonOrange, .node.neonRed) :is(rect, circle, ellipse, polygon, path){fill:color-mix(in srgb,var(--neon) 7%,#fff)!important;stroke:var(--neon)!important;stroke-width:1.5px!important}:root:not(.dark) [data-component-name^=mermaid-] .flowchart-link[id*=-green_]{--neon:var(--neon-green)}:root:not(.dark) [data-component-name^=mermaid-] .flowchart-link[id*=-blue_]{--neon:var(--neon-blue)}:root:not(.dark) [data-component-name^=mermaid-] .flowchart-link[id*=-purple_]{--neon:var(--neon-purple)}:root:not(.dark) [data-component-name^=mermaid-] .flowchart-link[id*=-yellow_]{--neon:var(--neon-yellow)}:root:not(.dark) [data-component-name^=mermaid-] .flowchart-link[id*=-orange_]{--neon:var(--neon-orange)}:root:not(.dark) [data-component-name^=mermaid-] .flowchart-link[id*=-red_]{--neon:var(--neon-red)}:root:not(.dark) [data-component-name^=mermaid-] .flowchart-link:is([id*=\"-green_\"], [id*=\"-blue_\"], [id*=\"-purple_\"], [id*=\"-yellow_\"], [id*=\"-orange_\"], [id*=\"-red_\"]){stroke:var(--neon)!important}:root:not(.dark) [data-component-name^=mermaid-] .marker{fill:var(--mermaid-line)!important;stroke:var(--mermaid-line)!important;fill:context-stroke!important;stroke:context-stroke!important}:root:not(.dark) [data-component-name^=mermaid-] .label[data-id^=green_] .edgeLabel p{color:var(--neon-green)!important}:root:not(.dark) [data-component-name^=mermaid-] .label[data-id^=blue_] .edgeLabel p{color:var(--neon-blue)!important}:root:not(.dark) [data-component-name^=mermaid-] .label[data-id^=purple_] .edgeLabel p{color:var(--neon-purple)!important}:root:not(.dark) [data-component-name^=mermaid-] .label[data-id^=yellow_] .edgeLabel p{color:var(--neon-yellow)!important}:root:not(.dark) [data-component-name^=mermaid-] .label[data-id^=orange_] .edgeLabel p{color:var(--neon-orange)!important}:root:not(.dark) [data-component-name^=mermaid-] .label[data-id^=red_] .edgeLabel p{color:var(--neon-red)!important}:root [data-component-name^=mermaid-] .node.junction path{d:path(\"M -2 -7 L 0 0 L -2 7 M 0 0 L 7 0\");stroke:var(--mermaid-line)!important}"},{"filePath":"sdk-signature.css","content":".sdk-signature{position:relative;margin:1.5rem 0;border:1px solid rgb(128 128 128/20%);border-radius:.75rem;background:rgb(128 128 128/5%);color:#263244}.dark .sdk-signature{color:#d6deeb}.sdk-signature pre{margin:0;padding:1.25rem 3rem 1.25rem 1.25rem;overflow-x:auto;white-space:pre;background:0 0;font-size:.875rem;line-height:1.6}.sdk-signature code{font-family:var(--font-mono, ui-monospace, monospace)}.sdk-signature a{color:inherit;text-decoration:underline;text-decoration-color:currentColor;text-underline-offset:3px;text-decoration-thickness:1px}.sdk-signature a:hover{color:#a32383}.dark .sdk-signature a:hover{color:#f68ad6}.sdk-signature :is(a, button, pre):focus-visible{outline:2px solid #e551ba;outline-offset:3px}.sdk-signature :is(.k, .kc, .kd, .kn, .kp, .kr, .kt, .o, .ow){color:#8556ad}.sdk-signature :is(.nb, .nc, .nf, .nn){color:#146e8a}.sdk-signature :is(.s, .s1, .s2, .sa, .sc, .sd, .se, .si){color:#477313}.sdk-signature :is(.mi, .mf, .mh){color:#945723}.dark .sdk-signature :is(.k, .kc, .kd, .kn, .kp, .kr, .kt, .o, .ow){color:#c792ea}.dark .sdk-signature :is(.nb, .nc, .nf, .nn){color:#82aaff}.dark .sdk-signature :is(.s, .s1, .s2, .sa, .sc, .sd, .se, .si){color:#c3e88d}.dark .sdk-signature :is(.mi, .mf, .mh){color:#f78c6c}.sdk-signature-copy{position:absolute;top:.65rem;right:.65rem;padding:.4rem;border-radius:.3rem;cursor:pointer;color:inherit;background:0 0}.sdk-signature-copy:hover{background:rgb(128 128 128/15%)}.sdk-signature-copy[data-copied]{color:#16a34a}"}],"page":{"pagePath":"api/system-one","slug":"/api/system-one","pageMetadata":{"title":"System One","description":"Answer one or more questions about the content supplied in `state`.\n\nYou can mix question types in one request. Answers use the same names as the\nquestions, so you can match each result to its question. The response also includes\nthe model used and token usage.","deprecated":null,"version":null,"openapi":"https://api.typesafe.ai/openapi.json post /v1/systemone","href":"/api/system-one","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Answer one or more questions about the content supplied in \", _jsx(_components.code, {\n children: \"state\"\n }), \".\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"You can mix question types in one request. Answers use the same names as the\\nquestions, so you can match each result to its question. The response also includes\\nthe model used and token usage.\"\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"System One","description":"Answer one or more questions about the content supplied in `state`.\n\nYou can mix question types in one request. Answers use the same names as the\nquestions, so you can match each result to its question. The response also includes\nthe model used and token usage.","deprecated":null,"version":null,"openapi":"https://api.typesafe.ai/openapi.json post /v1/systemone","href":"/api/system-one","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/ts-docs/c9d4543e120c30c8/sdk-usage-redirects.js"],"openApiReferenceData":{"operation":{"summary":"System One","description":"Answer one or more questions about the content supplied in `state`.\n\nYou can mix question types in one request. Answers use the same names as the\nquestions, so you can match each result to its question. The response also includes\nthe model used and token usage.","operationId":"systemone_v1_systemone_post","parameters":["ffe3d81d-2241-4580-a990-364477f6cb6f","a8b52fa9-1887-4a3b-9812-fa94471e74c4"],"requestBody":"7257f8fb-1724-447e-a55f-5ed45935a45f","responses":{"200":"db69d132-873b-4727-8cc3-875f67f65655","400":"9312ba46-6d64-412e-905f-09866bf1f0db","422":"14b1e88a-3b3a-4cee-99cb-ee84889bb2b5"},"security":["07eb0630-6f0e-401f-b6be-e827c8aeb8e4"],"method":"post","type":"path","servers":["150b7d87-b504-4792-a3e6-3d235f95121d"],"path":"/v1/systemone","baseUrlOptions":["https://api.typesafe.ai"],"title":"System One","codeSamples":[],"requestExampleLanguages":["bash"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","urlDisplay":"full"},"dependencies":{"parameters":{"ffe3d81d-2241-4580-a990-364477f6cb6f":{"name":"TypeSafe-Danger-Zone-Images","in":"header","description":"Set to true to use assets or box questions.","schema":{"type":"string","enum":["true"],"description":"Set to true to use assets or box questions.","uniqueKey":"","typeLabel":"enum\u003cstring>"},"example":"true"},"a8b52fa9-1887-4a3b-9812-fa94471e74c4":{"name":"TypeSafe-Danger-Zone-Long-Context","in":"header","description":"Set to true to use long context.","schema":{"type":"string","enum":["true"],"description":"Set to true to use long context.","uniqueKey":"","typeLabel":"enum\u003cstring>"},"example":"true"}},"requestBody":{"content":{"application/json":{"schema":{"properties":{"model":{"type":"string","title":"Model","description":"Name or alias of the model to use. Available names are returned by GET /v1/models.","examples":["jev-latest"],"isRequired":true,"uniqueKey":"model","typeLabel":"string"},"state":{"oneOf":[{"type":"string","title":"State","description":"The content all questions in this request refer to.","x-accepts":"string | object | array","example":"I was charged twice. Please help.","isRequired":true,"uniqueKey":"state.oneOf.0","typeLabel":"string"},{"type":"object","title":"State","description":"The content all questions in this request refer to.","x-accepts":"string | object | array","example":"I was charged twice. Please help.","additionalProperties":true,"isRequired":true,"uniqueKey":"state.oneOf.1","typeLabel":"State · object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"state.oneOf.2.items.[INDEX]","typeLabel":"any"},"title":"State","description":"The content all questions in this request refer to.","x-accepts":"string | object | array","example":"I was charged twice. Please help.","isRequired":true,"uniqueKey":"state.oneOf.2","typeLabel":"any[]"}],"isRequired":true,"uniqueKey":"state","typeLabel":"string | State · object | any[]"},"questions":{"additionalProperties":{"oneOf":[{"type":"object","title":"Noul","description":"A question about the supplied content.","required":["type"],"properties":{"type":{"type":"string","const":"noul","title":"Type","description":"Identifies a yes/no question or statement.","examples":["noul"],"isRequired":true,"uniqueKey":"questions.additionalProperties.oneOf.0.type","typeLabel":"string"},"instructions":{"oneOf":[{"type":"string","title":"Instructions","description":"The yes/no question or statement to evaluate.","x-accepts":"string | object | array","example":"Is this message spam?","uniqueKey":"questions.additionalProperties.oneOf.0.instructions.oneOf.0","typeLabel":"string"},{"type":"object","title":"Instructions","description":"The yes/no question or statement to evaluate.","x-accepts":"string | object | array","example":"Is this message spam?","additionalProperties":true,"uniqueKey":"questions.additionalProperties.oneOf.0.instructions.oneOf.1","typeLabel":"Instructions · object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"questions.additionalProperties.oneOf.0.instructions.oneOf.2.items.[INDEX]","typeLabel":"any"},"title":"Instructions","description":"The yes/no question or statement to evaluate.","x-accepts":"string | object | array","example":"Is this message spam?","uniqueKey":"questions.additionalProperties.oneOf.0.instructions.oneOf.2","typeLabel":"any[]"},{"type":"null","title":"Instructions","description":"The yes/no question or statement to evaluate.","x-accepts":"string | object | array","example":"Is this message spam?","uniqueKey":"questions.additionalProperties.oneOf.0.instructions.oneOf.3","typeLabel":"null"}],"uniqueKey":"questions.additionalProperties.oneOf.0.instructions","typeLabel":"string | Instructions · object | any[] | null"},"criteria":{"oneOf":[{"type":"object","title":"NoulCriteria","description":"Criteria clarifying what counts as a yes or no answer.","example":{"false":"A legitimate conversation","true":"Unsolicited advertising"},"properties":{"true":{"oneOf":[{"type":"string","title":"True","description":"What counts as a yes answer.","x-accepts":"string | object | array","example":"The message is unsolicited advertising.","uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.true.oneOf.0","typeLabel":"string"},{"type":"object","title":"True","description":"What counts as a yes answer.","x-accepts":"string | object | array","example":"The message is unsolicited advertising.","additionalProperties":true,"uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.true.oneOf.1","typeLabel":"True · object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.true.oneOf.2.items.[INDEX]","typeLabel":"any"},"title":"True","description":"What counts as a yes answer.","x-accepts":"string | object | array","example":"The message is unsolicited advertising.","uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.true.oneOf.2","typeLabel":"any[]"},{"type":"null","title":"True","description":"What counts as a yes answer.","x-accepts":"string | object | array","example":"The message is unsolicited advertising.","uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.true.oneOf.3","typeLabel":"null"}],"uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.true","typeLabel":"string | True · object | any[] | null"},"false":{"oneOf":[{"type":"string","title":"False","description":"What counts as a no answer.","x-accepts":"string | object | array","example":"The message is a legitimate conversation.","uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.false.oneOf.0","typeLabel":"string"},{"type":"object","title":"False","description":"What counts as a no answer.","x-accepts":"string | object | array","example":"The message is a legitimate conversation.","additionalProperties":true,"uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.false.oneOf.1","typeLabel":"False · object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.false.oneOf.2.items.[INDEX]","typeLabel":"any"},"title":"False","description":"What counts as a no answer.","x-accepts":"string | object | array","example":"The message is a legitimate conversation.","uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.false.oneOf.2","typeLabel":"any[]"},{"type":"null","title":"False","description":"What counts as a no answer.","x-accepts":"string | object | array","example":"The message is a legitimate conversation.","uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.false.oneOf.3","typeLabel":"null"}],"uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0.false","typeLabel":"string | False · object | any[] | null"}},"uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.0","typeLabel":"NoulCriteria · object"},{"type":"null","description":"Criteria clarifying what counts as a yes or no answer.","example":{"false":"A legitimate conversation","true":"Unsolicited advertising"},"uniqueKey":"questions.additionalProperties.oneOf.0.criteria.oneOf.1","typeLabel":"null"}],"uniqueKey":"questions.additionalProperties.oneOf.0.criteria","typeLabel":"NoulCriteria · object | null"}},"uniqueKey":"questions.additionalProperties.oneOf.0","typeLabel":"Noul · object"},{"type":"object","title":"Choice","description":"A question about the supplied content.","required":["type","criteria"],"properties":{"type":{"type":"string","const":"choice","title":"Type","description":"Identifies a question that selects one of the choices in criteria.","examples":["choice"],"isRequired":true,"uniqueKey":"questions.additionalProperties.oneOf.1.type","typeLabel":"string"},"criteria":{"additionalProperties":{"oneOf":[{"type":"string","x-accepts":"string | object | array","uniqueKey":"questions.additionalProperties.oneOf.1.criteria.additionalProperties.oneOf.0","typeLabel":"string"},{"type":"object","x-accepts":"string | object | array","additionalProperties":true,"uniqueKey":"questions.additionalProperties.oneOf.1.criteria.additionalProperties.oneOf.1","typeLabel":"object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"questions.additionalProperties.oneOf.1.criteria.additionalProperties.oneOf.2.items.[INDEX]","typeLabel":"any"},"x-accepts":"string | object | array","uniqueKey":"questions.additionalProperties.oneOf.1.criteria.additionalProperties.oneOf.2","typeLabel":"any[]"},{"type":"null","x-accepts":"string | object | array","uniqueKey":"questions.additionalProperties.oneOf.1.criteria.additionalProperties.oneOf.3","typeLabel":"null"}],"uniqueKey":"questions.additionalProperties.oneOf.1.criteria.additionalProperties","typeLabel":"string | object | any[] | null"},"type":"object","minProperties":1,"maxProperties":255,"title":"Criteria","description":"Choice names and descriptions of when each applies. A choice without a description is interpreted by its name alone.","examples":[{"angry":"An upset or hostile message","calm":"A neutral or polite message","excited":"An enthusiastic or eager message"}],"isRequired":true,"uniqueKey":"questions.additionalProperties.oneOf.1.criteria","typeLabel":"Criteria · object"},"instructions":{"oneOf":[{"type":"string","title":"Instructions","description":"What the model should decide when choosing an option.","x-accepts":"string | object | array","example":"What is the tone of this message?","uniqueKey":"questions.additionalProperties.oneOf.1.instructions.oneOf.0","typeLabel":"string"},{"type":"object","title":"Instructions","description":"What the model should decide when choosing an option.","x-accepts":"string | object | array","example":"What is the tone of this message?","additionalProperties":true,"uniqueKey":"questions.additionalProperties.oneOf.1.instructions.oneOf.1","typeLabel":"Instructions · object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"questions.additionalProperties.oneOf.1.instructions.oneOf.2.items.[INDEX]","typeLabel":"any"},"title":"Instructions","description":"What the model should decide when choosing an option.","x-accepts":"string | object | array","example":"What is the tone of this message?","uniqueKey":"questions.additionalProperties.oneOf.1.instructions.oneOf.2","typeLabel":"any[]"},{"type":"null","title":"Instructions","description":"What the model should decide when choosing an option.","x-accepts":"string | object | array","example":"What is the tone of this message?","uniqueKey":"questions.additionalProperties.oneOf.1.instructions.oneOf.3","typeLabel":"null"}],"uniqueKey":"questions.additionalProperties.oneOf.1.instructions","typeLabel":"string | Instructions · object | any[] | null"}},"uniqueKey":"questions.additionalProperties.oneOf.1","typeLabel":"Choice · object"},{"type":"object","title":"Score","description":"A question about the supplied content.","required":["type","criteria"],"properties":{"type":{"type":"string","const":"score","title":"Type","description":"Identifies a question that rates the content using the levels in criteria.","examples":["score"],"isRequired":true,"uniqueKey":"questions.additionalProperties.oneOf.2.type","typeLabel":"string"},"criteria":{"items":{"oneOf":[{"type":"string","x-accepts":"string | object | array","uniqueKey":"questions.additionalProperties.oneOf.2.criteria.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"object","x-accepts":"string | object | array","additionalProperties":true,"uniqueKey":"questions.additionalProperties.oneOf.2.criteria.items.[INDEX].oneOf.1","typeLabel":"object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"questions.additionalProperties.oneOf.2.criteria.items.[INDEX].oneOf.2.items.[INDEX]","typeLabel":"any"},"x-accepts":"string | object | array","uniqueKey":"questions.additionalProperties.oneOf.2.criteria.items.[INDEX].oneOf.2","typeLabel":"any[]"}],"uniqueKey":"questions.additionalProperties.oneOf.2.criteria.items.[INDEX]","typeLabel":"string | object | any[]"},"type":"array","minItems":1,"maxItems":10,"title":"Criteria","description":"Ordered descriptions of the score levels. Each description's position determines its score, starting at zero.","examples":[["Can wait","Needs attention this week","Needs attention today"]],"isRequired":true,"uniqueKey":"questions.additionalProperties.oneOf.2.criteria","typeLabel":"(string | object | any[])[]"},"instructions":{"oneOf":[{"type":"string","title":"Instructions","description":"What the model should rate.","x-accepts":"string | object | array","example":"How urgent is this message?","uniqueKey":"questions.additionalProperties.oneOf.2.instructions.oneOf.0","typeLabel":"string"},{"type":"object","title":"Instructions","description":"What the model should rate.","x-accepts":"string | object | array","example":"How urgent is this message?","additionalProperties":true,"uniqueKey":"questions.additionalProperties.oneOf.2.instructions.oneOf.1","typeLabel":"Instructions · object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"questions.additionalProperties.oneOf.2.instructions.oneOf.2.items.[INDEX]","typeLabel":"any"},"title":"Instructions","description":"What the model should rate.","x-accepts":"string | object | array","example":"How urgent is this message?","uniqueKey":"questions.additionalProperties.oneOf.2.instructions.oneOf.2","typeLabel":"any[]"},{"type":"null","title":"Instructions","description":"What the model should rate.","x-accepts":"string | object | array","example":"How urgent is this message?","uniqueKey":"questions.additionalProperties.oneOf.2.instructions.oneOf.3","typeLabel":"null"}],"uniqueKey":"questions.additionalProperties.oneOf.2.instructions","typeLabel":"string | Instructions · object | any[] | null"}},"uniqueKey":"questions.additionalProperties.oneOf.2","typeLabel":"Score · object"},{"type":"object","title":"Box","description":"A question about the supplied content.","required":["type"],"properties":{"type":{"type":"string","const":"box","title":"Type","description":"Identifies a box question.","isRequired":true,"uniqueKey":"questions.additionalProperties.oneOf.3.type","typeLabel":"string"},"instructions":{"oneOf":[{"type":"string","title":"Instructions","description":"What to locate in the image.","x-accepts":"string | object | array","uniqueKey":"questions.additionalProperties.oneOf.3.instructions.oneOf.0","typeLabel":"string"},{"type":"object","title":"Instructions","description":"What to locate in the image.","x-accepts":"string | object | array","additionalProperties":true,"uniqueKey":"questions.additionalProperties.oneOf.3.instructions.oneOf.1","typeLabel":"Instructions · object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"questions.additionalProperties.oneOf.3.instructions.oneOf.2.items.[INDEX]","typeLabel":"any"},"title":"Instructions","description":"What to locate in the image.","x-accepts":"string | object | array","uniqueKey":"questions.additionalProperties.oneOf.3.instructions.oneOf.2","typeLabel":"any[]"},{"type":"null","title":"Instructions","description":"What to locate in the image.","x-accepts":"string | object | array","uniqueKey":"questions.additionalProperties.oneOf.3.instructions.oneOf.3","typeLabel":"null"}],"uniqueKey":"questions.additionalProperties.oneOf.3.instructions","typeLabel":"string | Instructions · object | any[] | null"}},"uniqueKey":"questions.additionalProperties.oneOf.3","typeLabel":"Box · object"}],"uniqueKey":"questions.additionalProperties","typeLabel":"Noul · object | Choice · object | Score · object | Box · object"},"type":"object","minProperties":1,"title":"Questions","description":"Questions to ask about the content, each with a name you choose. The response uses those names to identify the answers.","examples":[{"billing":{"instructions":"Is this message about billing?","type":"noul"}}],"isRequired":true,"uniqueKey":"questions","typeLabel":"Questions · object"},"assets":{"additionalProperties":{"properties":{"type":{"type":"string","const":"image","title":"Type","description":"Identifies an image asset.","uniqueKey":"assets.additionalProperties.type","typeLabel":"string"},"format":{"type":"string","enum":["png","jpg","jpeg"],"title":"Format","description":"The image format, required with data_base64. The actual format is detected from the bytes.","uniqueKey":"assets.additionalProperties.format","typeLabel":"enum\u003cstring>"},"data_base64":{"type":"string","title":"Data Base64","description":"Base64-encoded image data.","uniqueKey":"assets.additionalProperties.data_base64","typeLabel":"string"},"part":{"type":"string","title":"Part","description":"In a multipart request, the name of the image part this asset uses. With part, data_base64 is ignored.","uniqueKey":"assets.additionalProperties.part","typeLabel":"string"}},"type":"object","title":"Asset","description":"An image that replaces its placeholder: its bytes in data_base64 with their format, or, in a multipart request, the name of the image part that holds them. Requests with images must send the header TypeSafe-Danger-Zone-Images: true.","uniqueKey":"assets.additionalProperties","typeLabel":"Asset · object"},"type":"object","minProperties":1,"title":"Assets","description":"Media assets keyed by an opaque placeholder (recommend a per-image UUID). Each placeholder, wherever it appears as or inside a string in state, question instructions, or criteria, is replaced with the asset. Image assets require a vision-language model.","uniqueKey":"assets","typeLabel":"Assets · object"}},"type":"object","required":["model","state","questions"],"title":"SystemOneRequest","description":"Content and named questions to evaluate together using a TypeSafe model.","uniqueKey":"","typeLabel":"SystemOneRequest · object"},"examples":{"noul":{"title":"noul","value":{"model":"jev-latest","state":"I was charged twice for my subscription this month. Please refund the extra charge.","questions":{"billing":{"type":"noul","instructions":"Is this message about billing?"}}}},"choice":{"title":"choice","value":{"model":"jev-latest","state":"I was charged twice for my subscription this month. Please refund the extra charge.","questions":{"tone":{"type":"choice","instructions":"What is the tone of this message?","criteria":{"angry":"An upset or hostile message","calm":"A neutral or polite message","excited":"An enthusiastic or eager message"}}}}},"score":{"title":"score","value":{"model":"jev-latest","state":"I was charged twice for my subscription this month. Please refund the extra charge.","questions":{"urgency":{"type":"score","instructions":"How urgent is this message?","criteria":["Can wait","Needs attention this week","Needs attention today"]}}}},"box":{"title":"box","value":{"model":"jev-preview","state":"photo","questions":{"red_rectangle":{"type":"box","instructions":"Locate the red rectangle."}},"assets":{"photo":{"type":"image","format":"png","data_base64":"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAHElEQVR4nGP4TyJgoKcGBgbsaFQDfTUQB4aDBgDAen2fpitsVAAAAABJRU5ErkJggg=="}}}}},"exampleType":"examples"},"multipart/form-data":{"schema":{"type":"object","description":"The JSON request as the first part, named request, then each image as its own part. Every image part needs a unique, non-empty name and must be used by exactly one asset's part.","properties":{"request":{"description":"The JSON request, as the first part.","contentMediaType":"application/json","contentSchema":{"$ref":"#/components/schemas/SystemOneRequest"},"type":"string","isRequired":true,"uniqueKey":"request","typeLabel":"string"}},"required":["request"],"additionalProperties":{"type":"string","description":"An image, named by the asset part that uses it.","contentMediaType":"image/*","uniqueKey":"additionalProperties","typeLabel":"file"},"uniqueKey":"","typeLabel":"object"},"encoding":{"request":{"contentType":"application/json"}},"examples":{"Example":{"title":"Example","value":{"request":"\u003cstring>"}}},"exampleType":"generated"}},"required":true,"exampleType":"examples"},"responses":{"db69d132-873b-4727-8cc3-875f67f65655":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"model":{"type":"string","title":"Model","description":"Name of the model that answered the questions. May differ from the alias supplied in the request.","examples":["jev-latest"],"isRequired":true,"uniqueKey":"model","typeLabel":"string"},"answers":{"additionalProperties":{"oneOf":[{"type":"object","title":"Noul","description":"An answer whose type matches the corresponding question.","required":["type","noul"],"properties":{"type":{"type":"string","const":"noul","title":"Type","description":"Identifies a yes/no answer.","examples":["noul"],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.0.type","typeLabel":"string"},"noul":{"type":"number","title":"Noul","description":"Probability of a yes answer or a true statement, from 0 to 1. Values near 1 favor yes or true, values near 0 favor no or false, and values near 0.5 indicate uncertainty.","examples":[0.98],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.0.noul","typeLabel":"number"}},"uniqueKey":"answers.additionalProperties.oneOf.0","typeLabel":"Noul · object"},{"type":"object","title":"Choice","description":"An answer whose type matches the corresponding question.","required":["type","choice","confidence","probabilities"],"properties":{"type":{"type":"string","const":"choice","title":"Type","description":"Identifies a selection from the requested choices.","examples":["choice"],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.1.type","typeLabel":"string"},"choice":{"type":"string","title":"Choice","description":"The name of the choice with the highest probability among the question's criteria.","examples":["angry"],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.1.choice","typeLabel":"string"},"confidence":{"type":"number","title":"Confidence","description":"Confidence in the selected choice, from 0 to 1. Higher values indicate greater certainty; use lower values to flag uncertain selections for review.","examples":[0.9],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.1.confidence","typeLabel":"number"},"probabilities":{"additionalProperties":{"type":"number","uniqueKey":"answers.additionalProperties.oneOf.1.probabilities.additionalProperties","typeLabel":"number"},"type":"object","title":"Probabilities","description":"Probability of each choice in criteria, keyed by choice name, from 0 to 1. Shows how likely the alternatives are; values sum to approximately 1.","examples":[{"angry":0.8,"calm":0.1,"excited":0.1}],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.1.probabilities","typeLabel":"Probabilities · object"}},"uniqueKey":"answers.additionalProperties.oneOf.1","typeLabel":"Choice · object"},{"type":"object","title":"Score","description":"An answer whose type matches the corresponding question.","required":["type","score","confidence","legend","probabilities"],"properties":{"type":{"type":"string","const":"score","title":"Type","description":"Identifies a rating against the requested score levels.","examples":["score"],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.2.type","typeLabel":"string"},"score":{"type":"number","title":"Score","description":"Expected score: the probability-weighted average of the rubric levels. May fall between integer levels.","examples":[1.7],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.2.score","typeLabel":"number"},"confidence":{"type":"number","title":"Confidence","description":"Confidence in the score, from 0 to 1. Higher values indicate greater certainty; use lower values to flag uncertain ratings for review.","examples":[0.9],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.2.confidence","typeLabel":"number"},"legend":{"additionalProperties":{"oneOf":[{"type":"string","x-accepts":"string | object | array","uniqueKey":"answers.additionalProperties.oneOf.2.legend.additionalProperties.oneOf.0","typeLabel":"string"},{"type":"object","x-accepts":"string | object | array","additionalProperties":true,"uniqueKey":"answers.additionalProperties.oneOf.2.legend.additionalProperties.oneOf.1","typeLabel":"object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"answers.additionalProperties.oneOf.2.legend.additionalProperties.oneOf.2.items.[INDEX]","typeLabel":"any"},"x-accepts":"string | object | array","uniqueKey":"answers.additionalProperties.oneOf.2.legend.additionalProperties.oneOf.2","typeLabel":"any[]"}],"uniqueKey":"answers.additionalProperties.oneOf.2.legend.additionalProperties","typeLabel":"string | object | any[]"},"type":"object","title":"Legend","description":"The requested criteria mapped to their score levels, so you can interpret the score.","examples":[{"0":"Can wait","1":"Needs attention this week","2":"Needs attention today"}],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.2.legend","typeLabel":"Legend · object"},"probabilities":{"additionalProperties":{"type":"number","uniqueKey":"answers.additionalProperties.oneOf.2.probabilities.additionalProperties","typeLabel":"number"},"type":"object","title":"Probabilities","description":"Probability of each score level, from 0 to 1, using the same keys as legend. Shows how likely the alternatives are; values sum to approximately 1.","examples":[{"0":0.1,"1":0.1,"2":0.8}],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.2.probabilities","typeLabel":"Probabilities · object"}},"uniqueKey":"answers.additionalProperties.oneOf.2","typeLabel":"Score · object"},{"type":"object","title":"Box","description":"An answer whose type matches the corresponding question.","required":["type","box","confidence"],"properties":{"type":{"type":"string","const":"box","title":"Type","description":"Identifies a box answer.","examples":["box"],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.3.type","typeLabel":"string"},"box":{"properties":{"top":{"type":"number","title":"Top","description":"Top edge of the box, as a fraction of image height from the top (0-1).","examples":[0.2],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.3.box.top","typeLabel":"number"},"bottom":{"type":"number","title":"Bottom","description":"Bottom edge of the box, as a fraction of image height from the top (0-1).","examples":[0.66],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.3.box.bottom","typeLabel":"number"},"left":{"type":"number","title":"Left","description":"Left edge of the box, as a fraction of image width from the left (0-1).","examples":[0.19],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.3.box.left","typeLabel":"number"},"right":{"type":"number","title":"Right","description":"Right edge of the box, as a fraction of image width from the left (0-1).","examples":[0.68],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.3.box.right","typeLabel":"number"}},"type":"object","required":["top","bottom","left","right"],"title":"BoxCoordinates","description":"The box's edges as fractions of image height and width, from 0 to 1. Each coordinate is the expected value of its edge's predicted position.","examples":[{"bottom":0.66,"left":0.19,"right":0.68,"top":0.2}],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.3.box","typeLabel":"BoxCoordinates · object"},"confidence":{"oneOf":[{"type":"number","title":"Confidence","description":"Confidence for the given box, from 0 to 1, with 1 being more confident. Null when the model does not provide confidence.","example":null,"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.3.confidence.oneOf.0","typeLabel":"number"},{"type":"null","title":"Confidence","description":"Confidence for the given box, from 0 to 1, with 1 being more confident. Null when the model does not provide confidence.","example":null,"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.3.confidence.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"answers.additionalProperties.oneOf.3.confidence","typeLabel":"number | null"}},"uniqueKey":"answers.additionalProperties.oneOf.3","typeLabel":"Box · object"}],"uniqueKey":"answers.additionalProperties","typeLabel":"Noul · object | Choice · object | Score · object | Box · object"},"type":"object","minProperties":1,"title":"Answers","description":"Answers keyed by the question names supplied in the request. Each answer's type matches its question's type.","examples":[{"billing":{"noul":0.98,"type":"noul"}}],"isRequired":true,"uniqueKey":"answers","typeLabel":"Answers · object"},"usage":{"properties":{"input_tokens":{"type":"integer","title":"Input Tokens","description":"Number of billable input tokens used to evaluate the request.","examples":[120],"isRequired":true,"uniqueKey":"usage.input_tokens","typeLabel":"integer"},"output_tokens":{"type":"integer","title":"Output Tokens","description":"Number of output tokens used to answer the questions. Output tokens are currently free of charge.","examples":[12],"isRequired":true,"uniqueKey":"usage.output_tokens","typeLabel":"integer"}},"type":"object","required":["input_tokens","output_tokens"],"title":"Usage","description":"Input and output token counts for this evaluation.","examples":[{"input_tokens":120,"output_tokens":12}],"isRequired":true,"uniqueKey":"usage","typeLabel":"Usage · object"}},"type":"object","required":["model","answers","usage"],"title":"SystemOneResponse","description":"Answers grouped by question name, with the model used and token usage.","uniqueKey":"","typeLabel":"SystemOneResponse · object"},"examples":{"noul":{"title":"noul","value":{"model":"jev-latest","answers":{"billing":{"type":"noul","noul":0.98}},"usage":{"input_tokens":120,"output_tokens":12}}},"choice":{"title":"choice","value":{"model":"jev-latest","answers":{"tone":{"type":"choice","choice":"calm","confidence":0.7,"probabilities":{"angry":0.15,"calm":0.8,"excited":0.05}}},"usage":{"input_tokens":120,"output_tokens":12}}},"score":{"title":"score","value":{"model":"jev-latest","answers":{"urgency":{"type":"score","score":1.7,"confidence":0.55,"legend":{"0":"Can wait","1":"Needs attention this week","2":"Needs attention today"},"probabilities":{"0":0.1,"1":0.1,"2":0.8}}},"usage":{"input_tokens":120,"output_tokens":12}}},"box":{"title":"box","value":{"model":"jev-preview","answers":{"red_rectangle":{"type":"box","box":{"top":0.2,"bottom":0.66,"left":0.19,"right":0.68},"confidence":null}},"usage":{"input_tokens":285,"output_tokens":20}}}},"exampleType":"examples"}},"exampleType":"examples"},"9312ba46-6d64-412e-905f-09866bf1f0db":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","title":"HTTPBadRequestError","required":["detail"],"description":"Application validation failures returned with HTTP status 400.","properties":{"detail":{"oneOf":[{"type":"string","title":"Detail","description":"Explanation of the invalid request. String details and message fields are bounded, with shortened text ending with ….","isRequired":true,"uniqueKey":"detail.oneOf.0","typeLabel":"string"},{"type":"object","title":"Detail","description":"Explanation of the invalid request. String details and message fields are bounded, with shortened text ending with ….","additionalProperties":true,"isRequired":true,"uniqueKey":"detail.oneOf.1","typeLabel":"Detail · object"}],"isRequired":true,"uniqueKey":"detail","typeLabel":"string | Detail · object"}},"uniqueKey":"","typeLabel":"HTTPBadRequestError · object"},"examples":{"Example":{"title":"Example","value":{"detail":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"14b1e88a-3b3a-4cee-99cb-ee84889bb2b5":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"oneOf":[{"type":"string","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.1","typeLabel":"integer"}],"uniqueKey":"detail.items.[INDEX].loc.items.[INDEX]","typeLabel":"string | integer"},"type":"array","title":"Location","description":"Path to the invalid value: the request location followed by field names and array indices. May be empty.","examples":[["body","questions","urgency","score","criteria"]],"isRequired":true,"uniqueKey":"detail.items.[INDEX].loc","typeLabel":"(string | integer)[]"},"msg":{"type":"string","title":"Message","description":"Human-readable explanation of the validation failure. May be shortened with ….","examples":["Field required"],"isRequired":true,"uniqueKey":"detail.items.[INDEX].msg","typeLabel":"string"},"type":{"type":"string","title":"Error Type","description":"Machine-readable validation error code.","examples":["missing"],"isRequired":true,"uniqueKey":"detail.items.[INDEX].type","typeLabel":"string"},"input":{"type":"string","title":"Input","description":"Text preview of the rejected input. May be shortened with ….","examples":["{\"type\":\"score\"}"],"uniqueKey":"detail.items.[INDEX].input","typeLabel":"string"},"ctx":{"type":"object","title":"Context","description":"Additional context used to explain the validation failure. Entries may be omitted or shortened.","examples":[{"min_length":1}],"uniqueKey":"detail.items.[INDEX].ctx","typeLabel":"Context · object"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError","description":"A request validation error at a specific field or array element.","uniqueKey":"detail.items.[INDEX]","typeLabel":"ValidationError · object"},"type":"array","title":"Detail","description":"Validation errors describing which request values are missing or invalid.","examples":[[{"loc":["body","state"],"msg":"Field required","type":"missing"}]],"uniqueKey":"detail","typeLabel":"ValidationError · object[]"}},"type":"object","title":"HTTPValidationError","description":"Request validation failures returned with HTTP status 422.","uniqueKey":"","typeLabel":"HTTPValidationError · object"},"examples":{"Example":{"title":"Example","value":{"detail":[{"loc":["body","state"],"msg":"Field required","type":"missing"}]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"07eb0630-6f0e-401f-b6be-e827c8aeb8e4":{"HTTPBearer":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"HTTPBearer"}}},"servers":{"150b7d87-b504-4792-a3e6-3d235f95121d":{"url":"https://api.typesafe.ai"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"HTTPBearer"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"HTTPBearer","name":"Authorization"}],"title":"HTTPBearer"}]},"originalFileLocation":"https://api.typesafe.ai/openapi.json"},"subdomain":"ts-docs","siteName":"TypeSafe","title":"System One - TypeSafe","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-27T00:12:07.620Z","originalFileLocation":"api/system-one.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=\"dark\"}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=\"Answer one or more questions about the content supplied in state. You can mix question types in one request. Answers use the same names as the questions, so you can match each result to its question. The response also includes the model used and token usage.\">\u003cmeta data-mint-head name=\"application-name\" content=\"TypeSafe\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ts-docs/zg2v0DiYB7xPw0I2/_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/ts-docs/zg2v0DiYB7xPw0I2/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ts-docs/zg2v0DiYB7xPw0I2/_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/ts-docs/zg2v0DiYB7xPw0I2/_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/ts-docs/zg2v0DiYB7xPw0I2/_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/ts-docs/zg2v0DiYB7xPw0I2/_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/ts-docs/zg2v0DiYB7xPw0I2/_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/ts-docs/zg2v0DiYB7xPw0I2/_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/ts-docs/zg2v0DiYB7xPw0I2/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"System One - TypeSafe\">\u003cmeta data-mint-head property=\"og:description\" content=\"Answer one or more questions about the content supplied in state. You can mix question types in one request. Answers use the same names as the questions, so you can match each result to its question. The response also includes the model used and token usage.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"TypeSafe\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.typesafe.ai/api/system-one\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ts-docs.mintlify.app/_mintlify/api/og/v2?division=API+reference\u0026amp;title=System+One\u0026amp;description=Answer+one+or+more+questions+about+the+content+supplied+in+%60state%60.%0A%0AYou+can+mix+question+types+in+one+request.+Answers+use+the+same+names+as+the%0Aquestions%2C+so+\u0026amp;theme=6e16fbe681f0b21fd86dd4bb\u0026amp;signature=feb4f0fc1d6d4c6e3f5d70f31a56b942459f4b9450167888fb37e91489d49b29\">\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=\"System One - TypeSafe\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Answer one or more questions about the content supplied in state. You can mix question types in one request. Answers use the same names as the questions, so you can match each result to its question. The response also includes the model used and token usage.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ts-docs.mintlify.app/_mintlify/api/og/v2?division=API+reference\u0026amp;title=System+One\u0026amp;description=Answer+one+or+more+questions+about+the+content+supplied+in+%60state%60.%0A%0AYou+can+mix+question+types+in+one+request.+Answers+use+the+same+names+as+the%0Aquestions%2C+so+\u0026amp;theme=6e16fbe681f0b21fd86dd4bb\u0026amp;signature=feb4f0fc1d6d4c6e3f5d70f31a56b942459f4b9450167888fb37e91489d49b29\">\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/ts-docs/zg2v0DiYB7xPw0I2/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"TypeSafe\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#E551BA\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.typesafe.ai/api/system-one\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api/system-one.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.typesafe.ai/#organization\",\"name\":\"TypeSafe\",\"url\":\"https://docs.typesafe.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/ts-docs/yUH7wuFx44xePApg/logo/light.png?fit=max\u0026auto=format\u0026n=yUH7wuFx44xePApg\u0026q=85\u0026s=5f42af6569a8cfd0a141ba55f152b7e3\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.typesafe.ai#website\",\"name\":\"TypeSafe\",\"url\":\"https://docs.typesafe.ai\",\"publisher\":{\"@id\":\"https://docs.typesafe.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.typesafe.ai/api/system-one#webpage\",\"url\":\"https://docs.typesafe.ai/api/system-one\",\"name\":\"System One\",\"description\":\"Answer one or more questions about the content supplied in state. You can mix question types in one request. Answers use the same names as the questions, so you can match each result to its question. The response also includes the model used and token usage.\",\"dateModified\":\"2026-10-27T00:12:07.620Z\",\"isPartOf\":{\"@id\":\"https://docs.typesafe.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.typesafe.ai/api/system-one#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.typesafe.ai/api/system-one#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"TypeSafe\",\"item\":\"https://docs.typesafe.ai\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"System One\",\"item\":\"https://docs.typesafe.ai/api/system-one\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.typesafe.ai/api/system-one#apireference\",\"headline\":\"System One\",\"name\":\"System One\",\"description\":\"Answer one or more questions about the content supplied in state. You can mix question types in one request. Answers use the same names as the questions, so you can match each result to its question. The response also includes the model used and token usage.\",\"url\":\"https://docs.typesafe.ai/api/system-one\",\"mainEntityOfPage\":{\"@id\":\"https://docs.typesafe.ai/api/system-one#webpage\"},\"dateModified\":\"2026-10-27T00:12:07.620Z\",\"publisher\":{\"@id\":\"https://docs.typesafe.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.typesafe.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"TypeSafe\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"TypeSafe","nav":{"global":null,"tabs":[{"tab":"Documentation","icon":"book-open","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"Build with Jev","icon":"hammer","pages":[{"title":"Build with Jev","href":"/cookbooks"}]},{"tab":"Reference","icon":"code","groups":[{"group":"Reference","pages":[{"title":"Models","href":"/models"},{"title":"Agent skill","sidebarTitle":"Agent skill","href":"/agent-skill"},{"title":"Legal","sidebarTitle":"Legal","href":"/legal"},{"group":"Model jaggedness","pages":[{"title":"Jev 1.13 jaggedness","sidebarTitle":"Jev 1.13","description":"Jev isn't perfect. Here are some jagged edges we are aware of with jev-1.13. Many of these will be fixed in later versions.","href":"/model-jaggedness/jev-1.13"}]}]},{"group":"API reference","pages":[{"title":"System One","deprecated":null,"version":null,"openapi":"https://api.typesafe.ai/openapi.json post /v1/systemone","href":"/api/system-one"},{"title":"List models","description":"List the models and aliases available to the authenticated account.\n\nPass a returned model name as `model` in a POST /v1/systemone request.","deprecated":null,"version":null,"openapi":"https://api.typesafe.ai/openapi.json get /v1/models","href":"/api/list-models"},{"title":"Request rules and errors","sidebarTitle":"Errors","href":"/api/errors"}]},{"group":"Client SDKs","pages":[{"title":"Client SDKs","href":"/sdk"},{"group":"Python SDK","pages":[{"title":"TypeSafe Python SDK","href":"/sdk/python"},{"group":"Usage","pages":[{"title":"Basic usage","href":"/sdk/python/usage/basic"},{"title":"Advanced usage","href":"/sdk/python/usage/advanced"}]},{"title":"Changelog","href":"/sdk/python/changelog"},{"group":"API reference","pages":[{"title":"API reference","href":"/sdk/python/api"},{"group":"Clients","pages":[{"title":"Asynchronous client","href":"/sdk/python/api/clients/async"},{"title":"Synchronous client","href":"/sdk/python/api/clients/sync"}]},{"group":"Types","pages":[{"title":"Questions","href":"/sdk/python/api/types/questions"},{"title":"Assets","href":"/sdk/python/api/types/assets"},{"title":"Answers and responses","href":"/sdk/python/api/types/responses"},{"title":"Retries","href":"/sdk/python/api/retries"},{"title":"Common types","href":"/sdk/python/api/types/common"}]},{"title":"Exceptions","href":"/sdk/python/api/exceptions"},{"title":"Constants","href":"/sdk/python/api/constants"}]}]},{"group":"JavaScript SDK","pages":[{"title":"JavaScript SDK","href":"/sdk/javascript"},{"title":"Changelog","href":"/sdk/javascript/changelog"},{"group":"API reference","pages":[{"title":"API reference","href":"/sdk/javascript/api"},{"group":"Classes","pages":[{"title":"Class: APIConnectionError","href":"/sdk/javascript/api/classes/APIConnectionError"},{"title":"Class: APIError","href":"/sdk/javascript/api/classes/APIError"},{"title":"Class: APIPromise\u003cT>","href":"/sdk/javascript/api/classes/APIPromise"},{"title":"Class: APITimeoutError","href":"/sdk/javascript/api/classes/APITimeoutError"},{"title":"Class: APIUserAbortError","href":"/sdk/javascript/api/classes/APIUserAbortError"},{"title":"Class: AuthenticationError","href":"/sdk/javascript/api/classes/AuthenticationError"},{"title":"Class: BadRequestError","href":"/sdk/javascript/api/classes/BadRequestError"},{"title":"Class: Image","href":"/sdk/javascript/api/classes/Image"},{"title":"Class: InternalServerError","href":"/sdk/javascript/api/classes/InternalServerError"},{"title":"Class: NotFoundError","href":"/sdk/javascript/api/classes/NotFoundError"},{"title":"Class: PermissionDeniedError","href":"/sdk/javascript/api/classes/PermissionDeniedError"},{"title":"Class: RateLimitError","href":"/sdk/javascript/api/classes/RateLimitError"},{"title":"Class: TypeSafeClient","href":"/sdk/javascript/api/classes/TypeSafeClient"},{"title":"Class: TypeSafeError","href":"/sdk/javascript/api/classes/TypeSafeError"},{"title":"Class: UnprocessableEntityError","href":"/sdk/javascript/api/classes/UnprocessableEntityError"}]},{"group":"Interfaces","pages":[{"title":"Interface: BoxCoordinates","href":"/sdk/javascript/api/interfaces/BoxCoordinates"},{"title":"Interface: BoxQuestion","href":"/sdk/javascript/api/interfaces/BoxQuestion"},{"title":"Interface: BoxResponse","href":"/sdk/javascript/api/interfaces/BoxResponse"},{"title":"Interface: ChoiceQuestion\u003cT>","href":"/sdk/javascript/api/interfaces/ChoiceQuestion"},{"title":"Interface: ChoiceResponse\u003cT>","href":"/sdk/javascript/api/interfaces/ChoiceResponse"},{"title":"Interface: Logger","href":"/sdk/javascript/api/interfaces/Logger"},{"title":"Interface: ModelCard","href":"/sdk/javascript/api/interfaces/ModelCard"},{"title":"Interface: Models","href":"/sdk/javascript/api/interfaces/Models"},{"title":"Interface: NoulQuestion","href":"/sdk/javascript/api/interfaces/NoulQuestion"},{"title":"Interface: NoulResponse","href":"/sdk/javascript/api/interfaces/NoulResponse"},{"title":"Interface: Questions","href":"/sdk/javascript/api/interfaces/Questions"},{"title":"Interface: RequestOptions","href":"/sdk/javascript/api/interfaces/RequestOptions"},{"title":"Interface: RetryPolicy","href":"/sdk/javascript/api/interfaces/RetryPolicy"},{"title":"Interface: ScoreQuestion\u003cT>","href":"/sdk/javascript/api/interfaces/ScoreQuestion"},{"title":"Interface: ScoreResponse\u003cT>","href":"/sdk/javascript/api/interfaces/ScoreResponse"},{"title":"Interface: SystemOneRequest\u003cQ>","href":"/sdk/javascript/api/interfaces/SystemOneRequest"},{"title":"Interface: SystemOneResult\u003cQ>","href":"/sdk/javascript/api/interfaces/SystemOneResult"},{"title":"Interface: TextWithAssets","href":"/sdk/javascript/api/interfaces/TextWithAssets"},{"title":"Interface: TypeSafeClientConfig","href":"/sdk/javascript/api/interfaces/TypeSafeClientConfig"},{"title":"Interface: Usage","href":"/sdk/javascript/api/interfaces/Usage"},{"title":"Interface: WithResponse\u003cT>","href":"/sdk/javascript/api/interfaces/WithResponse"}]},{"group":"Type Aliases","pages":[{"title":"Type Alias: Asset","href":"/sdk/javascript/api/type-aliases/Asset"},{"title":"Type Alias: ChoiceCriteria","href":"/sdk/javascript/api/type-aliases/ChoiceCriteria"},{"title":"Type Alias: Compression","href":"/sdk/javascript/api/type-aliases/Compression"},{"title":"Type Alias: ContentValue","href":"/sdk/javascript/api/type-aliases/ContentValue"},{"title":"Type Alias: Description","href":"/sdk/javascript/api/type-aliases/Description"},{"title":"Type Alias: EntryType","href":"/sdk/javascript/api/type-aliases/EntryType"},{"title":"Type Alias: EnvVar","href":"/sdk/javascript/api/type-aliases/EnvVar"},{"title":"Type Alias: Fetch","href":"/sdk/javascript/api/type-aliases/Fetch"},{"title":"Type Alias: JsonValue","href":"/sdk/javascript/api/type-aliases/JsonValue"},{"title":"Type Alias: LogLevel","href":"/sdk/javascript/api/type-aliases/LogLevel"},{"title":"Type Alias: Question","href":"/sdk/javascript/api/type-aliases/Question"},{"title":"Type Alias: ResultFor\u003cT>","href":"/sdk/javascript/api/type-aliases/ResultFor"},{"title":"Type Alias: ScoreCriteria","href":"/sdk/javascript/api/type-aliases/ScoreCriteria"},{"title":"Type Alias: ScoreLegend\u003cT>","href":"/sdk/javascript/api/type-aliases/ScoreLegend"},{"title":"Type Alias: ScoreOf\u003cT>","href":"/sdk/javascript/api/type-aliases/ScoreOf"},{"title":"Type Alias: SentContent\u003cT>","href":"/sdk/javascript/api/type-aliases/SentContent"}]},{"group":"Variables","pages":[{"title":"Variable: ENV","href":"/sdk/javascript/api/variables/ENV"},{"title":"Variable: LOG_LEVELS","href":"/sdk/javascript/api/variables/LOG_LEVELS"},{"title":"Variable: noul","href":"/sdk/javascript/api/variables/noul"},{"title":"Variable: score","href":"/sdk/javascript/api/variables/score"},{"title":"Variable: VERSION","href":"/sdk/javascript/api/variables/VERSION"},{"title":"Variable: withAssets","href":"/sdk/javascript/api/variables/withAssets"}]},{"group":"Functions","pages":[{"title":"Function: box()","href":"/sdk/javascript/api/functions/box"},{"title":"Function: choice()","href":"/sdk/javascript/api/functions/choice"},{"title":"Function: image()","href":"/sdk/javascript/api/functions/image"}]}]}]}]}]}]},"basePath":"","title":"System One - TypeSafe","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-m07pfKpT.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","clsx-xpJZXxdP.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BTZUMDnx.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DqdKa2R4.js"]}