Admit a workflow as a durable job — by served name, or as immutable snapshot bytes
Two forms, one admission (ADR-131). {"workflow": "<name>"} names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional access on that form is CLI --access for this job only. A snapshot body is the world nika check <file> --json --sdk-snapshot prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident’s unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.
POST
/
v1
/
jobs
Admit a workflow as a durable job — by served name, or as immutable snapshot bytes
The by-name form (ADR-131): a workflow the served registry lists (GET /v1/workflows · project-root-relative, .nika). The resident captures its world exactly as a schedule does — the one owner of the snapshot and its digest domain. Idempotency binds to these request bytes. Optional access is the same pin as CLI --access (a pin is a pin). Absent: the resident's unpinned plan. Snapshot bodies reject both access and inputs overlays, including null or empty maps. Optional inputs are literal JSON values checked against declared keys, types and required values before a job exists; strings are never CLI @env instructions or expressions.
queued and running: the resident owns the execution. interrupted: execution ownership was lost and effect settlement is unknown — an EVIDENCE state (the journal is INCOMPLETE), never a run state (ADR-129). paused, succeeded, failed and cancelled: the run's own settlement, the words its terminal frame carries (ADR-128).
Reported journal delivery loss, independent of execution status. The reason classifies the mirror's first error without exposing OS text or paths. Absence is not a claim that a journal exists.
The run's settlement (ADR-128), built once by the runtime and projected whole: the state word every door speaks, why, the elapsed time on the kernel clock, the task tally, the spend with its qualifier, the failure named. Unknown cost is never zero: total_cost_usd is absent when nothing was metered. Present on the terminal event and durable job response of a job whose runtime settled; absent when the resident lost the execution (interrupted) or refused it before any task. Reattachment and idempotent admission replay project the same hash-bound terminal event, never a new settlement.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Nika","description":"Nika turns repeatable AI work into a .nika file you keep: checked before it runs, run with the model you choose, proven afterwards.","colors":{"primary":"#2f6bff","light":"#8db4ff","dark":"#2f6bff"},"logo":{"light":"https://mintcdn.com/supernovae-acdf3706/3ObRrFNWymK8fsLG/images/logo-light.svg?fit=max\u0026auto=format\u0026n=3ObRrFNWymK8fsLG\u0026q=85\u0026s=73b2f60862ed01f97cfa045151df991e","dark":"https://mintcdn.com/supernovae-acdf3706/3ObRrFNWymK8fsLG/images/logo-dark.svg?fit=max\u0026auto=format\u0026n=3ObRrFNWymK8fsLG\u0026q=85\u0026s=ae6d5ed9959c0ecb505ee6dd3bf66fe1","href":"/introduction"},"favicon":"https://mintcdn.com/supernovae-acdf3706/3ObRrFNWymK8fsLG/images/favicon.svg?fit=max\u0026auto=format\u0026n=3ObRrFNWymK8fsLG\u0026q=85\u0026s=e2b5356160334944fea5bc30352f8b97","appearance":{"default":"dark"},"background":{"decoration":"gradient","color":{"light":"#F4F6FC","dark":"#08090b"}},"navbar":{"links":[{"href":"/getting-started/installation","label":"Install"},{"href":"https://nika.sh","label":"nika.sh"},{"href":"https://github.com/supernovae-st/nika","type":"github"}],"primary":{"type":"button","label":"Build with the SDK","href":"/sdk/start/quickstart"}},"footer":{"socials":{"github":"https://github.com/supernovae-st/nika","x":"https://x.com/ThibautMelen"},"links":[{"header":"Nika","items":[{"label":"Site","href":"https://nika.sh"},{"label":"Current status","href":"/reference/status"},{"label":"Constellation","href":"/reference/constellation"}]},{"header":"Build","items":[{"label":"Language spec (Apache-2.0)","href":"https://github.com/supernovae-st/nika-spec"},{"label":"Source (AGPL)","href":"https://github.com/supernovae-st/nika"},{"label":"TypeScript SDK","href":"/sdk/overview"},{"label":"Homebrew tap","href":"https://github.com/supernovae-st/homebrew-tap"}]},{"header":"Studio","items":[{"label":"SuperNovae","href":"https://supernovae.studio"}]}]},"search":{"prompt":"Search Nika docs…"},"seo":{"metatags":{"og:image":"https://docs.nika.sh/images/og-card.png","twitter:card":"summary_large_image"}},"fonts":{"family":"Inter"},"styling":{"eyebrows":"section","codeblocks":"system","latex":true},"banner":{"content":"New here? Write a workflow, run it, inspect a real result. No account or API key. [Start here →](/introduction)","dismissible":true},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"metadata":{"timestamp":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"supernovae-acdf3706","hasAudioNarration":false,"actualSubdomain":"supernovae-acdf3706","customDomains":["docs.nika.sh"],"gitSource":{"type":"github","owner":"supernovae-st","repo":"nika-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae1e0448ead5bbc3c1c8f55","collectionId":"6273a903-37d8-4d59-82f8-106da69c6101","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae1e0448ead5bbc3c1c8f55"},"feedback":{"thumbs":true,"agentFeedback":true,"edits":true,"issues":true},"entitlements":{},"buildId":"6ae1e0448ead5bbc3c1c8f55","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"Reference","count":157},{"language":"default","tag":"Language fields","count":108},{"language":"default","tag":"Guide","count":63},{"language":"default","tag":"SDK","count":54},{"language":"default","tag":"Examples","count":33},{"language":"default","tag":"Tool contracts","count":30},{"language":"default","tag":"Verbs and models","count":29},{"language":"default","tag":"Agents \u0026 integrations","count":28},{"language":"default","tag":"Remote API","count":24},{"language":"default","tag":"Tasks and dependencies","count":22}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"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},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"global.css","content":"@keyframes sdk-doc-particles{to{transform:translate3d(.4rem,-.55rem,0);opacity:.42}}.mermaid svg,.prose .mermaid svg,[data-mermaid] svg,div.mermaid,pre.mermaid{background:0 0!important}.mermaid .edgeLabel{background-color:transparent!important;color:#b8b2aa!important}.mermaid .edgePaths path,.mermaid .flowchart-link{stroke:#4a4540!important}.mermaid{display:flex;justify-content:center;padding:.75rem 0}.card,[class*=card] a{transition:border-color .2s ease,transform .2s ease}.card:hover{border-color:rgba(159,208,255,.45)!important;transform:translateY(-1px)}.dark pre{background-color:#0a1226!important}#banner,[data-component=banner]{background:linear-gradient(90deg,#0a1226,#04050d)!important;color:#cfe6ff!important}#banner a,[data-component=banner] a{color:#9fd0ff!important}.sdk-flight{--sdk-flight-ink:#cfe6ff;--sdk-flight-signal:#8db4ff;position:relative;isolation:isolate;overflow:hidden;margin:1.75rem 0;border:1px solid rgb(141 180 255/.24);border-radius:.55rem;background:radial-gradient(80% 120% at 92% -18%,rgb(47 107 255/.14),transparent 58%),linear-gradient(180deg,transparent 0 94%,rgb(141 180 255/.055) 94% 94.5%,transparent 94.5%),linear-gradient(90deg,rgb(141 180 255/.035) 1px,transparent 1px) 0 0/2rem 2rem,linear-gradient(rgb(141 180 255/.035) 1px,transparent 1px) 0 0/2rem 2rem,linear-gradient(145deg,rgb(10 18 38/.96),rgb(4 5 13/.98));box-shadow:inset 0 1px 0 rgb(255 255 255/.055),inset 0 0 5rem rgb(47 107 255/.06),0 2rem 5rem -3.4rem rgb(47 107 255/.62)}.sdk-flight::before{content:\"\";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(circle at 9% 24%,rgb(159 208 255/.7) 0 1px,transparent 1.4px),radial-gradient(circle at 23% 78%,rgb(159 208 255/.38) 0 1px,transparent 1.4px),radial-gradient(circle at 34% 47%,rgb(159 208 255/.3) 0 .8px,transparent 1.3px),radial-gradient(circle at 46% 19%,rgb(159 208 255/.5) 0 1px,transparent 1.4px),radial-gradient(circle at 57% 88%,rgb(159 208 255/.34) 0 .8px,transparent 1.3px),radial-gradient(circle at 68% 68%,rgb(159 208 255/.42) 0 1px,transparent 1.4px),radial-gradient(circle at 77% 16%,rgb(159 208 255/.32) 0 .8px,transparent 1.3px),radial-gradient(circle at 88% 31%,rgb(159 208 255/.62) 0 1px,transparent 1.4px),radial-gradient(circle at 94% 82%,rgb(159 208 255/.36) 0 .8px,transparent 1.3px);opacity:.7;animation:sdk-doc-particles 9s ease-in-out infinite alternate}.sdk-flight::after{content:\"\";position:absolute;top:.8rem;right:.8rem;width:.55rem;height:.55rem;border-top:1px solid rgb(159 208 255/.52);border-right:1px solid rgb(159 208 255/.52)}.sdk-flight>span{display:block;padding:.72rem 1rem .68rem;border-bottom:1px solid rgb(141 180 255/.16);background:linear-gradient(90deg,rgb(47 107 255/.055),transparent 58%);font:.66rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.17em;color:var(--sdk-flight-signal);text-transform:uppercase}.sdk-flight>span::before{content:\"[ SYS ]\";margin-right:.7rem;color:rgb(207 230 255/.46)}.dark .sdk-flight pre,.sdk-flight pre{overflow-x:auto;margin:0!important;padding:clamp(1.15rem,3vw,2rem)!important;border:0!important;background:0 0!important;scrollbar-color:rgb(141 180 255/.32) transparent;color:var(--sdk-flight-ink)!important;font-size:clamp(.71rem,1.5vw,.84rem)!important;line-height:1.75!important;text-shadow:0 0 1.25rem rgb(141 180 255/.18)}.sdk-flight pre:focus-visible{outline:1px solid rgb(141 180 255/.72)!important;outline-offset:-.25rem}.dark .sdk-flight-compact pre,.sdk-flight-compact pre{padding-block:1.15rem!important}@media (prefers-reduced-motion:reduce){.sdk-flight::before{animation:none}}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.prose{line-height:1.6}.prose p{max-width:72ch;text-wrap:pretty}.prose li,.prose p{overflow-wrap:break-word}.prose :is(h1, h2, h3){line-height:1.15;letter-spacing:-.018em;text-wrap:balance;scroll-margin-top:13.5rem}.prose :is(h4, h5, h6){line-height:1.25;scroll-margin-top:13.5rem}@media (min-width:768px){.prose :is(h1, h2, h3, h4, h5, h6){scroll-margin-top:10rem}}.prose table{font-variant-numeric:tabular-nums}.prose a{text-underline-position:from-font;text-decoration-thickness:from-font}.card:focus-visible,.prose a:focus-visible,[class*=card] a:focus-visible,button:focus-visible,pre:focus-visible{outline:2px solid #2f6bff;outline-offset:2px}.dark .card:focus-visible,.dark .prose a:focus-visible,.dark [class*=card] a:focus-visible,.dark button:focus-visible,.dark pre:focus-visible{outline-color:#8db4ff}.dark pre,pre{line-height:1.65}@media (max-width:640px){input,select,textarea{font-size:16px}.card:hover{transform:none}}@media (prefers-reduced-motion:reduce){.card,[class*=card] a{transition:none}.card:hover{transform:none}}::selection{background:rgb(47 107 255/.22);color:#08090b}.dark ::selection{background:rgb(47 107 255/.38);color:#cfe6ff}"}],"page":{"pagePath":"api-reference/admit-a-workflow-as-a-durable-job-—-by-served-name-or-as-immutable-snapshot-bytes","slug":"/api-reference/admit-a-workflow-as-a-durable-job-—-by-served-name-or-as-immutable-snapshot-bytes","pageMetadata":{"title":"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes","description":"Two forms, one admission (ADR-131). `{\"workflow\": \"\u003cname>\"}` names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional `access` on that form is CLI `--access` for this job only. A snapshot body is the world `nika check \u003cfile> --json --sdk-snapshot` prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident's unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/jobs","href":"/api-reference/admit-a-workflow-as-a-durable-job-—-by-served-name-or-as-immutable-snapshot-bytes","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {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(_components.p, {\n children: [\"Two forms, one admission (ADR-131). \", _jsx(_components.code, {\n children: \"{\\\"workflow\\\": \\\"\u003cname>\\\"}\"\n }), \" names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional \", _jsx(_components.code, {\n children: \"access\"\n }), \" on that form is CLI \", _jsx(_components.code, {\n children: \"--access\"\n }), \" for this job only. A snapshot body is the world \", _jsx(_components.code, {\n children: \"nika check \u003cfile> --json --sdk-snapshot\"\n }), \" prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident’s unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"codeStyling":"system","config":{},"pageMetadata":{"title":"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes","description":"Two forms, one admission (ADR-131). `{\"workflow\": \"\u003cname>\"}` names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional `access` on that form is CLI `--access` for this job only. A snapshot body is the world `nika check \u003cfile> --json --sdk-snapshot` prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident's unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/jobs","href":"/api-reference/admit-a-workflow-as-a-durable-job-—-by-served-name-or-as-immutable-snapshot-bytes","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Two forms, one admission (ADR-131). `{\"workflow\": \"\u003cname>\"}` names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional `access` on that form is CLI `--access` for this job only. A snapshot body is the world `nika check \u003cfile> --json --sdk-snapshot` prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident's unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.","parameters":["f1295165-02e6-47ad-8901-f975d1631223"],"requestBody":"9c54e0fb-b1ff-43df-bac8-6e6eaa585725","responses":{"200":"fac70b24-347d-4fcc-9e0a-8f067a612fbc","202":"eac57753-8eef-4f84-836f-9c2ae0e2186f","400":"47346091-2600-4e1d-b6e0-55a7ac12ebb9","401":"a55c304d-e96a-4d49-a14c-252652847354","404":"3f363614-243a-4205-9e7d-c607aeaeaaa7","408":"7fe7adb0-14af-4d32-9dee-9f9f63f22648","409":"8c665915-8c15-40d0-901e-0d9d58309b0b","413":"3e94b99a-b18c-49e3-aa21-24491cfeb7eb","415":"5b185bbc-b62e-446c-9021-156c4859334e","422":"67c252e3-4102-4792-bddb-67ac4b158a1d","503":"62ee13b5-928d-4846-9402-4803675f7d7f","507":"fa940cb2-e4fb-4537-a9ff-e2c610e9146f"},"summary":"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes","method":"post","type":"path","servers":["878b58fd-1897-43b5-b844-719a7d9a4bd1"],"security":["3bc7d619-e3f3-461f-ba4e-93a626e72764"],"path":"/v1/jobs","baseUrlOptions":["http://127.0.0.1"],"title":"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"f1295165-02e6-47ad-8901-f975d1631223":{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":255,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}}},"requestBody":{"content":{"application/json":{"schema":{"oneOf":[{"type":"object","description":"The by-name form (ADR-131): a workflow the served registry lists (GET /v1/workflows · project-root-relative, `.nika`). The resident captures its world exactly as a schedule does — the one owner of the snapshot and its digest domain. Idempotency binds to these request bytes. Optional `access` is the same pin as CLI `--access` (a pin is a pin). Absent: the resident's unpinned plan. Snapshot bodies reject both access and inputs overlays, including null or empty maps. Optional inputs are literal JSON values checked against declared keys, types and required values before a job exists; strings are never CLI @env instructions or expressions.","required":["workflow"],"properties":{"workflow":{"maxLength":4096,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.0.workflow","typeLabel":"string"},"access":{"description":"Access pin, same vocabulary as `--access` (class or harness id). A pin never silently substitutes a metered seat.","maxLength":64,"minLength":1,"type":"string","uniqueKey":"oneOf.0.access","typeLabel":"string"},"inputs":{"additionalProperties":true,"description":"Literal JSON overrides for declared workflow inputs. Unknown keys, wrong types and missing required values refuse with 422; defaults remain authored. A present null is refused. Inputs bind exact request identity and survive durable queue recovery; workflow bytes are unchanged.","type":"object","uniqueKey":"oneOf.0.inputs","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Immutable byte-owned execution world — the body `nika check \u003cfile> --json --sdk-snapshot` prints (the engine is the one producer; a client never hashes). Unit bytes are canonical lowercase hexadecimal. `digest` and every unit `digest` are OPTIONAL caller-supplied integrity digests (canonical lowercase SHA-256 · a content assertion, never a signature): absent, the resident computes them and the receipt carries the result; present, they must match the bytes or the request is refused as `snapshot_tampered`. The decoded unit aggregate is limited to 16 MiB and the complete encoded request to 33 MiB. This object is the request body itself, not a path-bearing wrapper.","required":["format_version","root","units"],"properties":{"format_version":{"const":1,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.format_version","typeLabel":"integer"},"root":{"maxLength":4096,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.root","typeLabel":"string"},"units":{"items":{"additionalProperties":false,"properties":{"bytes_hex":{"pattern":"^(?:[0-9a-f]{2})*$","type":"string","isRequired":true,"uniqueKey":"oneOf.1.units.items.[INDEX].bytes_hex","typeLabel":"string"},"kind":{"description":"0 root (the admitted workflow) · 1 child (a transitively invoked workflow) · 2 skill (an Agent Skill document) · 3 import (an opaque import the caller supplied)","maximum":3,"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"oneOf.1.units.items.[INDEX].kind","typeLabel":"integer"},"path":{"maxLength":4096,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.units.items.[INDEX].path","typeLabel":"string"},"digest":{"description":"Optional caller-supplied integrity digest of the unit (never a signature)","pattern":"^[0-9a-f]{64}$","type":"string","uniqueKey":"oneOf.1.units.items.[INDEX].digest","typeLabel":"string"}},"required":["path","kind","bytes_hex"],"type":"object","uniqueKey":"oneOf.1.units.items.[INDEX]","typeLabel":"object"},"maxItems":256,"type":"array","isRequired":true,"uniqueKey":"oneOf.1.units","typeLabel":"object[]"},"digest":{"description":"Optional caller-supplied integrity digest of the world (never a signature)","pattern":"^[0-9a-f]{64}$","type":"string","uniqueKey":"oneOf.1.digest","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"workflow":"\u003cstring>","access":"\u003cstring>","inputs":{}}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"fac70b24-347d-4fcc-9e0a-8f067a612fbc":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"id","typeLabel":"string\u003cuuid>"},"status":{"description":"queued and running: the resident owns the execution. interrupted: execution ownership was lost and effect settlement is unknown — an EVIDENCE state (the journal is INCOMPLETE), never a run state (ADR-129). paused, succeeded, failed and cancelled: the run's own settlement, the words its terminal frame carries (ADR-128).","enum":["queued","running","interrupted","paused","succeeded","failed","cancelled"],"type":"string","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"error","typeLabel":"object"},"evidence":{"additionalProperties":false,"description":"Reported journal delivery loss, independent of execution status. The reason classifies the mirror's first error without exposing OS text or paths. Absence is not a claim that a journal exists.","properties":{"reason":{"enum":["write_failed","record_refused"],"type":"string","isRequired":true,"uniqueKey":"evidence.reason","typeLabel":"enum\u003cstring>"},"status":{"const":"mirror_lost","type":"string","isRequired":true,"uniqueKey":"evidence.status","typeLabel":"string"}},"required":["status","reason"],"type":"object","uniqueKey":"evidence","typeLabel":"object"},"execution_id":{"type":"string","uniqueKey":"execution_id","typeLabel":"string"},"outputs":{"additionalProperties":true,"description":"Declared workflow outputs; present only after settlement when supplied by the execution adapter","type":"object","uniqueKey":"outputs","typeLabel":"object"},"receipt":{"additionalProperties":false,"description":"Terminal binding to the exact immutable admitted execution","properties":{"execution_id":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"receipt.execution_id","typeLabel":"string"},"job_id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"receipt.job_id","typeLabel":"string\u003cuuid>"},"snapshot_digest":{"pattern":"^[0-9a-f]{64}$","type":"string","isRequired":true,"uniqueKey":"receipt.snapshot_digest","typeLabel":"string"},"trace_id":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"receipt.trace_id","typeLabel":"string"},"chain_head":{"minLength":1,"type":"string","uniqueKey":"receipt.chain_head","typeLabel":"string"},"origin":{"oneOf":[{"type":"object","required":["kind"],"properties":{"kind":{"const":"manual","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.0.kind","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"receipt.origin.oneOf.0","typeLabel":"object"},{"type":"object","required":["kind","schedule_origin","schedule_id","schedule_revision","slot_id","decision","scheduled_for","fired_at","arm_generation"],"properties":{"arm_generation":{"pattern":"^[0-9a-f]{64}$","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.arm_generation","typeLabel":"string"},"decision":{"enum":["scheduled","catch_up"],"type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.decision","typeLabel":"enum\u003cstring>"},"fired_at":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.fired_at","typeLabel":"string\u003cdate-time>"},"kind":{"const":"schedule","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.kind","typeLabel":"string"},"schedule_id":{"description":"Origin-local identifier, bounded to 255 UTF-8 bytes by the server","maxLength":255,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.schedule_id","typeLabel":"string"},"schedule_origin":{"enum":["project","api"],"type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.schedule_origin","typeLabel":"enum\u003cstring>"},"schedule_revision":{"pattern":"^sha256:[0-9a-f]{64}$","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.schedule_revision","typeLabel":"string"},"scheduled_for":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.scheduled_for","typeLabel":"string\u003cdate-time>"},"slot_id":{"pattern":"^[0-9a-f]{64}$","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.slot_id","typeLabel":"string"},"missed_count":{"description":"How many slots that silence holds","minimum":1,"type":"integer","uniqueKey":"receipt.origin.oneOf.1.missed_count","typeLabel":"integer"},"missed_first":{"description":"First slot of the silence a catch-up-once run answers for, on a catch_up firing only; scheduled_for is its last slot","format":"date-time","type":"string","uniqueKey":"receipt.origin.oneOf.1.missed_first","typeLabel":"string\u003cdate-time>"}},"additionalProperties":false,"uniqueKey":"receipt.origin.oneOf.1","typeLabel":"object"}],"uniqueKey":"receipt.origin","typeLabel":"object"}},"required":["job_id","execution_id","trace_id","snapshot_digest"],"type":"object","uniqueKey":"receipt","typeLabel":"object"},"settlement":{"additionalProperties":false,"description":"The run's settlement (ADR-128), built once by the runtime and projected whole: the state word every door speaks, why, the elapsed time on the kernel clock, the task tally, the spend with its qualifier, the failure named. Unknown cost is never zero: `total_cost_usd` is absent when nothing was metered. Present on the terminal event and durable job response of a job whose runtime settled; absent when the resident lost the execution (interrupted) or refused it before any task. Reattachment and idempotent admission replay project the same hash-bound terminal event, never a new settlement.","properties":{"cause":{"enum":["normal","human_gate","task_failed","output_contract","budget","operator","refused"],"type":"string","isRequired":true,"uniqueKey":"settlement.cause","typeLabel":"enum\u003cstring>"},"spend":{"additionalProperties":false,"properties":{"priced_calls":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.spend.priced_calls","typeLabel":"integer"},"qualifier":{"enum":["priced","partially_priced","unpriced","unmetered"],"type":"string","isRequired":true,"uniqueKey":"settlement.spend.qualifier","typeLabel":"enum\u003cstring>"},"unpriced_calls":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.spend.unpriced_calls","typeLabel":"integer"},"by_source":{"additionalProperties":{"type":"number","uniqueKey":"settlement.spend.by_source.additionalProperties","typeLabel":"number"},"type":"object","uniqueKey":"settlement.spend.by_source","typeLabel":"object"},"pricing_as_of":{"type":"string","uniqueKey":"settlement.spend.pricing_as_of","typeLabel":"string"},"total_cost_usd":{"description":"Present only when at least one leaf metered real spend","minimum":0,"type":"number","uniqueKey":"settlement.spend.total_cost_usd","typeLabel":"number"}},"required":["priced_calls","unpriced_calls","qualifier"],"type":"object","isRequired":true,"uniqueKey":"settlement.spend","typeLabel":"object"},"status":{"enum":["succeeded","failed","paused","cancelled"],"type":"string","isRequired":true,"uniqueKey":"settlement.status","typeLabel":"enum\u003cstring>"},"elapsed_ms":{"minimum":0,"type":"integer","uniqueKey":"settlement.elapsed_ms","typeLabel":"integer"},"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"settlement.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"settlement.error.message","typeLabel":"string"},"task":{"description":"The task that failed · absent for a run-level cause","type":"string","uniqueKey":"settlement.error.task","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"settlement.error","typeLabel":"object"},"stopped_calls":{"description":"Every MCP call the run stopped waiting for, on every path (a task's timeout, an operator Stop, a task that continued or recovered after it): the task, the tool as the workflow names it, the call's id, and whether the call left. `unknown`: the call reached the server, which may have acted, so an effect's outcome is unknown; `not_sent`: it was stopped before it was sent. Absent when the run stopped no MCP call.","items":{"additionalProperties":false,"properties":{"call_id":{"type":"string","isRequired":true,"uniqueKey":"settlement.stopped_calls.items.[INDEX].call_id","typeLabel":"string"},"outcome":{"enum":["unknown","not_sent"],"type":"string","isRequired":true,"uniqueKey":"settlement.stopped_calls.items.[INDEX].outcome","typeLabel":"enum\u003cstring>"},"task":{"type":"string","isRequired":true,"uniqueKey":"settlement.stopped_calls.items.[INDEX].task","typeLabel":"string"},"tool":{"description":"`mcp:\u003cserver>/\u003ctool>`","type":"string","isRequired":true,"uniqueKey":"settlement.stopped_calls.items.[INDEX].tool","typeLabel":"string"}},"required":["task","tool","call_id","outcome"],"type":"object","uniqueKey":"settlement.stopped_calls.items.[INDEX]","typeLabel":"object"},"minItems":1,"type":"array","uniqueKey":"settlement.stopped_calls","typeLabel":"object[]"},"tasks":{"additionalProperties":false,"properties":{"cancelled":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.cancelled","typeLabel":"integer"},"failed":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.failed","typeLabel":"integer"},"never_started":{"description":"Cancelled at the boundary without ever starting (counted in `cancelled` too)","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.never_started","typeLabel":"integer"},"ok":{"description":"A recovered task IS a success (counted here too)","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.ok","typeLabel":"integer"},"recovered":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.recovered","typeLabel":"integer"},"skipped":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.skipped","typeLabel":"integer"},"total":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.total","typeLabel":"integer"}},"required":["total","ok","failed","recovered","skipped","cancelled","never_started"],"type":"object","uniqueKey":"settlement.tasks","typeLabel":"object"}},"required":["status","cause","spend"],"type":"object","uniqueKey":"settlement","typeLabel":"object"},"trace_id":{"type":"string","uniqueKey":"trace_id","typeLabel":"string"}},"required":["id","status"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","status":"queued","error":{"code":"\u003cstring>","message":"\u003cstring>"},"evidence":{"reason":"write_failed","status":"mirror_lost"},"execution_id":"\u003cstring>","outputs":{},"receipt":{"execution_id":"\u003cstring>","job_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","snapshot_digest":"\u003cstring>","trace_id":"\u003cstring>","chain_head":"\u003cstring>","origin":{"kind":"manual"}},"settlement":{"cause":"normal","spend":{"priced_calls":1,"qualifier":"priced","unpriced_calls":1,"by_source":{},"pricing_as_of":"\u003cstring>","total_cost_usd":1},"status":"succeeded","elapsed_ms":1,"error":{"code":"\u003cstring>","message":"\u003cstring>","task":"\u003cstring>"},"stopped_calls":[{"call_id":"\u003cstring>","outcome":"unknown","task":"\u003cstring>","tool":"\u003cstring>"}],"tasks":{"cancelled":1,"failed":1,"never_started":1,"ok":1,"recovered":1,"skipped":1,"total":1}},"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Idempotent replay","exampleType":"generated"},"eac57753-8eef-4f84-836f-9c2ae0e2186f":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"id","typeLabel":"string\u003cuuid>"},"status":{"description":"queued and running: the resident owns the execution. interrupted: execution ownership was lost and effect settlement is unknown — an EVIDENCE state (the journal is INCOMPLETE), never a run state (ADR-129). paused, succeeded, failed and cancelled: the run's own settlement, the words its terminal frame carries (ADR-128).","enum":["queued","running","interrupted","paused","succeeded","failed","cancelled"],"type":"string","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"error","typeLabel":"object"},"evidence":{"additionalProperties":false,"description":"Reported journal delivery loss, independent of execution status. The reason classifies the mirror's first error without exposing OS text or paths. Absence is not a claim that a journal exists.","properties":{"reason":{"enum":["write_failed","record_refused"],"type":"string","isRequired":true,"uniqueKey":"evidence.reason","typeLabel":"enum\u003cstring>"},"status":{"const":"mirror_lost","type":"string","isRequired":true,"uniqueKey":"evidence.status","typeLabel":"string"}},"required":["status","reason"],"type":"object","uniqueKey":"evidence","typeLabel":"object"},"execution_id":{"type":"string","uniqueKey":"execution_id","typeLabel":"string"},"outputs":{"additionalProperties":true,"description":"Declared workflow outputs; present only after settlement when supplied by the execution adapter","type":"object","uniqueKey":"outputs","typeLabel":"object"},"receipt":{"additionalProperties":false,"description":"Terminal binding to the exact immutable admitted execution","properties":{"execution_id":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"receipt.execution_id","typeLabel":"string"},"job_id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"receipt.job_id","typeLabel":"string\u003cuuid>"},"snapshot_digest":{"pattern":"^[0-9a-f]{64}$","type":"string","isRequired":true,"uniqueKey":"receipt.snapshot_digest","typeLabel":"string"},"trace_id":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"receipt.trace_id","typeLabel":"string"},"chain_head":{"minLength":1,"type":"string","uniqueKey":"receipt.chain_head","typeLabel":"string"},"origin":{"oneOf":[{"type":"object","required":["kind"],"properties":{"kind":{"const":"manual","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.0.kind","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"receipt.origin.oneOf.0","typeLabel":"object"},{"type":"object","required":["kind","schedule_origin","schedule_id","schedule_revision","slot_id","decision","scheduled_for","fired_at","arm_generation"],"properties":{"arm_generation":{"pattern":"^[0-9a-f]{64}$","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.arm_generation","typeLabel":"string"},"decision":{"enum":["scheduled","catch_up"],"type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.decision","typeLabel":"enum\u003cstring>"},"fired_at":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.fired_at","typeLabel":"string\u003cdate-time>"},"kind":{"const":"schedule","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.kind","typeLabel":"string"},"schedule_id":{"description":"Origin-local identifier, bounded to 255 UTF-8 bytes by the server","maxLength":255,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.schedule_id","typeLabel":"string"},"schedule_origin":{"enum":["project","api"],"type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.schedule_origin","typeLabel":"enum\u003cstring>"},"schedule_revision":{"pattern":"^sha256:[0-9a-f]{64}$","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.schedule_revision","typeLabel":"string"},"scheduled_for":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.scheduled_for","typeLabel":"string\u003cdate-time>"},"slot_id":{"pattern":"^[0-9a-f]{64}$","type":"string","isRequired":true,"uniqueKey":"receipt.origin.oneOf.1.slot_id","typeLabel":"string"},"missed_count":{"description":"How many slots that silence holds","minimum":1,"type":"integer","uniqueKey":"receipt.origin.oneOf.1.missed_count","typeLabel":"integer"},"missed_first":{"description":"First slot of the silence a catch-up-once run answers for, on a catch_up firing only; scheduled_for is its last slot","format":"date-time","type":"string","uniqueKey":"receipt.origin.oneOf.1.missed_first","typeLabel":"string\u003cdate-time>"}},"additionalProperties":false,"uniqueKey":"receipt.origin.oneOf.1","typeLabel":"object"}],"uniqueKey":"receipt.origin","typeLabel":"object"}},"required":["job_id","execution_id","trace_id","snapshot_digest"],"type":"object","uniqueKey":"receipt","typeLabel":"object"},"settlement":{"additionalProperties":false,"description":"The run's settlement (ADR-128), built once by the runtime and projected whole: the state word every door speaks, why, the elapsed time on the kernel clock, the task tally, the spend with its qualifier, the failure named. Unknown cost is never zero: `total_cost_usd` is absent when nothing was metered. Present on the terminal event and durable job response of a job whose runtime settled; absent when the resident lost the execution (interrupted) or refused it before any task. Reattachment and idempotent admission replay project the same hash-bound terminal event, never a new settlement.","properties":{"cause":{"enum":["normal","human_gate","task_failed","output_contract","budget","operator","refused"],"type":"string","isRequired":true,"uniqueKey":"settlement.cause","typeLabel":"enum\u003cstring>"},"spend":{"additionalProperties":false,"properties":{"priced_calls":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.spend.priced_calls","typeLabel":"integer"},"qualifier":{"enum":["priced","partially_priced","unpriced","unmetered"],"type":"string","isRequired":true,"uniqueKey":"settlement.spend.qualifier","typeLabel":"enum\u003cstring>"},"unpriced_calls":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.spend.unpriced_calls","typeLabel":"integer"},"by_source":{"additionalProperties":{"type":"number","uniqueKey":"settlement.spend.by_source.additionalProperties","typeLabel":"number"},"type":"object","uniqueKey":"settlement.spend.by_source","typeLabel":"object"},"pricing_as_of":{"type":"string","uniqueKey":"settlement.spend.pricing_as_of","typeLabel":"string"},"total_cost_usd":{"description":"Present only when at least one leaf metered real spend","minimum":0,"type":"number","uniqueKey":"settlement.spend.total_cost_usd","typeLabel":"number"}},"required":["priced_calls","unpriced_calls","qualifier"],"type":"object","isRequired":true,"uniqueKey":"settlement.spend","typeLabel":"object"},"status":{"enum":["succeeded","failed","paused","cancelled"],"type":"string","isRequired":true,"uniqueKey":"settlement.status","typeLabel":"enum\u003cstring>"},"elapsed_ms":{"minimum":0,"type":"integer","uniqueKey":"settlement.elapsed_ms","typeLabel":"integer"},"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"settlement.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"settlement.error.message","typeLabel":"string"},"task":{"description":"The task that failed · absent for a run-level cause","type":"string","uniqueKey":"settlement.error.task","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"settlement.error","typeLabel":"object"},"stopped_calls":{"description":"Every MCP call the run stopped waiting for, on every path (a task's timeout, an operator Stop, a task that continued or recovered after it): the task, the tool as the workflow names it, the call's id, and whether the call left. `unknown`: the call reached the server, which may have acted, so an effect's outcome is unknown; `not_sent`: it was stopped before it was sent. Absent when the run stopped no MCP call.","items":{"additionalProperties":false,"properties":{"call_id":{"type":"string","isRequired":true,"uniqueKey":"settlement.stopped_calls.items.[INDEX].call_id","typeLabel":"string"},"outcome":{"enum":["unknown","not_sent"],"type":"string","isRequired":true,"uniqueKey":"settlement.stopped_calls.items.[INDEX].outcome","typeLabel":"enum\u003cstring>"},"task":{"type":"string","isRequired":true,"uniqueKey":"settlement.stopped_calls.items.[INDEX].task","typeLabel":"string"},"tool":{"description":"`mcp:\u003cserver>/\u003ctool>`","type":"string","isRequired":true,"uniqueKey":"settlement.stopped_calls.items.[INDEX].tool","typeLabel":"string"}},"required":["task","tool","call_id","outcome"],"type":"object","uniqueKey":"settlement.stopped_calls.items.[INDEX]","typeLabel":"object"},"minItems":1,"type":"array","uniqueKey":"settlement.stopped_calls","typeLabel":"object[]"},"tasks":{"additionalProperties":false,"properties":{"cancelled":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.cancelled","typeLabel":"integer"},"failed":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.failed","typeLabel":"integer"},"never_started":{"description":"Cancelled at the boundary without ever starting (counted in `cancelled` too)","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.never_started","typeLabel":"integer"},"ok":{"description":"A recovered task IS a success (counted here too)","minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.ok","typeLabel":"integer"},"recovered":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.recovered","typeLabel":"integer"},"skipped":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.skipped","typeLabel":"integer"},"total":{"minimum":0,"type":"integer","isRequired":true,"uniqueKey":"settlement.tasks.total","typeLabel":"integer"}},"required":["total","ok","failed","recovered","skipped","cancelled","never_started"],"type":"object","uniqueKey":"settlement.tasks","typeLabel":"object"}},"required":["status","cause","spend"],"type":"object","uniqueKey":"settlement","typeLabel":"object"},"trace_id":{"type":"string","uniqueKey":"trace_id","typeLabel":"string"}},"required":["id","status"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","status":"queued","error":{"code":"\u003cstring>","message":"\u003cstring>"},"evidence":{"reason":"write_failed","status":"mirror_lost"},"execution_id":"\u003cstring>","outputs":{},"receipt":{"execution_id":"\u003cstring>","job_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","snapshot_digest":"\u003cstring>","trace_id":"\u003cstring>","chain_head":"\u003cstring>","origin":{"kind":"manual"}},"settlement":{"cause":"normal","spend":{"priced_calls":1,"qualifier":"priced","unpriced_calls":1,"by_source":{},"pricing_as_of":"\u003cstring>","total_cost_usd":1},"status":"succeeded","elapsed_ms":1,"error":{"code":"\u003cstring>","message":"\u003cstring>","task":"\u003cstring>"},"stopped_calls":[{"call_id":"\u003cstring>","outcome":"unknown","task":"\u003cstring>","tool":"\u003cstring>"}],"tasks":{"cancelled":1,"failed":1,"never_started":1,"ok":1,"recovered":1,"skipped":1,"total":1}},"trace_id":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Created","exampleType":"generated"},"47346091-2600-4e1d-b6e0-55a7ac12ebb9":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"Invalid idempotency key","exampleType":"generated"},"a55c304d-e96a-4d49-a14c-252652847354":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"Error envelope","exampleType":"generated"},"3f363614-243a-4205-9e7d-c607aeaeaaa7":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"No workflow by that name under the served registry (by-name form)","exampleType":"generated"},"7fe7adb0-14af-4d32-9dee-9f9f63f22648":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"Request deadline","exampleType":"generated"},"8c665915-8c15-40d0-901e-0d9d58309b0b":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"Idempotency key already bound to another request","exampleType":"generated"},"3e94b99a-b18c-49e3-aa21-24491cfeb7eb":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"Encoded body or decoded snapshot resource limit","exampleType":"generated"},"5b185bbc-b62e-446c-9021-156c4859334e":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"Content-Type or Content-Encoding refused","exampleType":"generated"},"67c252e3-4102-4792-bddb-67ac4b158a1d":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"Malformed, unsupported, tampered, or semantically refused snapshot","exampleType":"generated"},"62ee13b5-928d-4846-9402-4803675f7d7f":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"Execution queue or durable store unavailable","exampleType":"generated"},"fa940cb2-e4fb-4537-a9ff-e2c610e9146f":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"}},"required":["code","message"],"type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"Durable job capacity exhausted","exampleType":"generated"}},"security":{"3bc7d619-e3f3-461f-ba4e-93a626e72764":{"bearerAuth":{"description":"Exactly one Authorization: Bearer value from the token file","scheme":"bearer","type":"http","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"878b58fd-1897-43b5-b844-719a7d9a4bd1":{"url":"http://127.0.0.1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"description":"Exactly one Authorization: Bearer value from the token file","scheme":"bearer","type":"http","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Exactly one Authorization: Bearer value from the token file","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"supernovae-acdf3706","siteName":"Nika","title":"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes - Nika","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-28T11:02:49.107Z","originalFileLocation":"api-reference/admit-a-workflow-as-a-durable-job-—-by-served-name-or-as-immutable-snapshot-bytes.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=\"Two forms, one admission (ADR-131). {\u0026quot;workflow\u0026quot;: \u0026quot;\u0026quot;} names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional access on that form is CLI --access for this job only. A snapshot body is the world nika check --json --sdk-snapshot prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident\u0026#x27;s unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Nika\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/supernovae-acdf3706/nNpvwcCdepgiS-MX/_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/supernovae-acdf3706/nNpvwcCdepgiS-MX/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/supernovae-acdf3706/nNpvwcCdepgiS-MX/_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/supernovae-acdf3706/nNpvwcCdepgiS-MX/_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/supernovae-acdf3706/nNpvwcCdepgiS-MX/_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/supernovae-acdf3706/nNpvwcCdepgiS-MX/_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/supernovae-acdf3706/nNpvwcCdepgiS-MX/_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/supernovae-acdf3706/nNpvwcCdepgiS-MX/_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/supernovae-acdf3706/nNpvwcCdepgiS-MX/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes - Nika\">\u003cmeta data-mint-head property=\"og:description\" content=\"Two forms, one admission (ADR-131). {\u0026quot;workflow\u0026quot;: \u0026quot;\u0026quot;} names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional access on that form is CLI --access for this job only. A snapshot body is the world nika check --json --sdk-snapshot prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident\u0026#x27;s unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Nika\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-—-by-served-name-or-as-immutable-snapshot-bytes\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://docs.nika.sh/images/og-card.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes - Nika\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Two forms, one admission (ADR-131). {\u0026quot;workflow\u0026quot;: \u0026quot;\u0026quot;} names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional access on that form is CLI --access for this job only. A snapshot body is the world nika check --json --sdk-snapshot prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident\u0026#x27;s unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://docs.nika.sh/images/og-card.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/supernovae-acdf3706/nNpvwcCdepgiS-MX/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Nika\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2f6bff\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-—-by-served-name-or-as-immutable-snapshot-bytes\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/admit-a-workflow-as-a-durable-job-%E2%80%94-by-served-name-or-as-immutable-snapshot-bytes.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.nika.sh/#organization\",\"name\":\"Nika\",\"url\":\"https://docs.nika.sh\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/supernovae-acdf3706/3ObRrFNWymK8fsLG/images/logo-light.svg?fit=max\u0026auto=format\u0026n=3ObRrFNWymK8fsLG\u0026q=85\u0026s=73b2f60862ed01f97cfa045151df991e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.nika.sh#website\",\"name\":\"Nika\",\"url\":\"https://docs.nika.sh\",\"publisher\":{\"@id\":\"https://docs.nika.sh/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-%E2%80%94-by-served-name-or-as-immutable-snapshot-bytes#webpage\",\"url\":\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-%E2%80%94-by-served-name-or-as-immutable-snapshot-bytes\",\"name\":\"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes\",\"description\":\"Two forms, one admission (ADR-131). {\\\"workflow\\\": \\\"\\\"} names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional access on that form is CLI --access for this job only. A snapshot body is the world nika check --json --sdk-snapshot prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident's unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.\",\"dateModified\":\"2026-10-28T11:02:49.107Z\",\"isPartOf\":{\"@id\":\"https://docs.nika.sh#website\"},\"breadcrumb\":{\"@id\":\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-%E2%80%94-by-served-name-or-as-immutable-snapshot-bytes#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-%E2%80%94-by-served-name-or-as-immutable-snapshot-bytes#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Remote API\",\"item\":\"https://docs.nika.sh/sdk/remote/serve-quickstart\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API Reference\",\"item\":\"https://docs.nika.sh/api-reference/public-process-liveness\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes\",\"item\":\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-%E2%80%94-by-served-name-or-as-immutable-snapshot-bytes\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-%E2%80%94-by-served-name-or-as-immutable-snapshot-bytes#apireference\",\"headline\":\"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes\",\"name\":\"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes\",\"description\":\"Two forms, one admission (ADR-131). {\\\"workflow\\\": \\\"\\\"} names a workflow the served registry lists: the resident captures its world through ExecutionService, exactly as a schedule does. Optional access on that form is CLI --access for this job only. A snapshot body is the world nika check --json --sdk-snapshot prints, decoded and readmitted through the same ExecutionService; its digests are optional caller-supplied integrity digests (a content assertion, never a signature). Snapshot jobs inherit the resident's unpinned plan. The server never interprets a caller filesystem path. Idempotency binds to the exact request bytes.\",\"url\":\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-%E2%80%94-by-served-name-or-as-immutable-snapshot-bytes\",\"mainEntityOfPage\":{\"@id\":\"https://docs.nika.sh/api-reference/admit-a-workflow-as-a-durable-job-%E2%80%94-by-served-name-or-as-immutable-snapshot-bytes#webpage\"},\"image\":\"https://docs.nika.sh/images/og-card.png\",\"dateModified\":\"2026-10-28T11:02:49.107Z\",\"publisher\":{\"@id\":\"https://docs.nika.sh/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.nika.sh#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Nika\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Nika","nav":{"global":null,"tabs":[{"tab":"Guide","icon":"book-open","pages":[{"title":"Guide","href":"/introduction"}]},{"tab":"SDK","icon":"code","groups":[{"group":"Overview","pages":[{"title":"TypeScript SDK","sidebarTitle":"Overview","icon":"code","href":"/sdk/overview"},{"title":"How the SDK works","sidebarTitle":"How it works","icon":"diagram-project","href":"/sdk/how-it-works"}]},{"group":"Start","pages":[{"title":"TypeScript quickstart","sidebarTitle":"Quickstart","icon":"play","href":"/sdk/start/quickstart"},{"title":"Project setup","sidebarTitle":"Project setup","icon":"folder-tree","href":"/sdk/start/project-setup"}]},{"group":"Project","pages":[{"title":"nika.yaml project file","sidebarTitle":"nika.yaml","icon":"file-code","href":"/sdk/project/nika-yaml"},{"title":"CWD and monorepos","sidebarTitle":"CWD and monorepos","icon":"folder-tree","href":"/sdk/project/cwd-and-monorepos"},{"title":"Arm registry","sidebarTitle":"Arm registry","icon":"clock","href":"/sdk/project/arm-registry"},{"title":"Project policy ladders","sidebarTitle":"Policy ladders","icon":"stairs","href":"/sdk/project/policy-ladders"},{"title":"Project runtime state","sidebarTitle":"Runtime state","icon":"database","href":"/sdk/project/runtime-state"}]},{"group":"Local API","pages":[{"title":"Local client","sidebarTitle":"Local client","icon":"terminal","href":"/sdk/local/client"},{"title":"Check before admission","sidebarTitle":"Check","icon":"list-check","href":"/sdk/local/check-and-plan"},{"title":"Run and cancel","sidebarTitle":"Run and cancel","icon":"circle-play","href":"/sdk/local/run-and-cancel"},{"title":"Compile a workflow","sidebarTitle":"Compile","icon":"wand-magic-sparkles","href":"/sdk/local/compile"},{"title":"Test and trace","sidebarTitle":"Test and trace","icon":"vial-circle-check","href":"/sdk/local/test-and-trace"}]},{"group":"Runtime","pages":[{"title":"Results and settlement","sidebarTitle":"Results","icon":"flag-checkered","href":"/sdk/runtime/results"},{"title":"Run events","sidebarTitle":"Run events","icon":"wave-pulse","href":"/sdk/runtime/events"},{"title":"Errors","sidebarTitle":"Errors","icon":"triangle-exclamation","href":"/sdk/runtime/errors"},{"title":"Receipts and verification","sidebarTitle":"Receipts","icon":"link","href":"/sdk/runtime/receipts"},{"title":"Spend caps","sidebarTitle":"Spend caps","icon":"scale-balanced","href":"/sdk/runtime/spend"},{"title":"Permits and admission","sidebarTitle":"Permits","icon":"shield-halved","href":"/sdk/runtime/permits"}]},{"group":"Remote API","pages":[{"title":"Server quickstart","sidebarTitle":"Server quickstart","icon":"server","href":"/sdk/remote/serve-quickstart"},{"title":"Remote client","sidebarTitle":"Remote client","icon":"satellite-dish","href":"/sdk/remote/client"},{"title":"Remote jobs","sidebarTitle":"Jobs","icon":"list-check","href":"/sdk/remote/jobs"},{"title":"SSE streaming","sidebarTitle":"SSE streaming","icon":"wave-pulse","href":"/sdk/remote/streaming"},{"title":"Schedules","sidebarTitle":"Schedules","icon":"calendar","href":"/sdk/remote/schedules"},{"title":"Outputs and artifacts","sidebarTitle":"Outputs and artifacts","icon":"box-archive","href":"/sdk/remote/artifacts"},{"title":"Workflow registry","sidebarTitle":"Workflow registry","icon":"folder-open","href":"/sdk/remote/workflows"},{"title":"Application webhooks","sidebarTitle":"Application webhooks","icon":"webhook","href":"/sdk/remote/webhooks"},{"group":"API Reference","pages":[{"title":"Public process liveness","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /health","href":"/api-reference/public-process-liveness"},{"title":"Judge a workflow without creating a job — by served name, or as immutable snapshot bytes","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/check","href":"/api-reference/judge-a-workflow-without-creating-a-job-—-by-served-name-or-as-immutable-snapshot-bytes"},{"title":"Author a candidate workflow without running it (stateless · source-only)","description":"The HTTP transport of the same Compile core as `nika compile`. Foundation scope: CREATE resolves an exact embedded skeleton name (or `hello`), EDIT changes one existing constant, answers are explicit JSON literals; any other intent is answered `incomplete` with no substitute workflow. Creates no job, run, approval or trace, writes no file, contacts no provider: ambient keys are never consent. `check_preview` is a REVIEW of the source only, never admission: POST /v1/jobs judges a candidate again. Questions carry stable keys; answering is a new request, not a session.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/compile","href":"/api-reference/author-a-candidate-workflow-without-running-it-stateless-·-source-only"},{"title":"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/jobs","href":"/api-reference/admit-a-workflow-as-a-durable-job-—-by-served-name-or-as-immutable-snapshot-bytes"},{"title":"Job identity and status","description":null,"deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/jobs/{id}","href":"/api-reference/job-identity-and-status"},{"title":"The artifacts a settled job's sealed journal records","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/jobs/{id}/artifacts","href":"/api-reference/the-artifacts-a-settled-jobs-sealed-journal-records"},{"title":"Stream one artifact's bytes, verified against its journaled SHA-256","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/jobs/{id}/artifacts/{name}","href":"/api-reference/stream-one-artifacts-bytes-verified-against-its-journaled-sha-256"},{"title":"Request cancellation or replay an ended observation","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /v1/jobs/{id}/cancel","href":"/api-reference/request-cancellation-or-replay-an-ended-observation"},{"title":"Job event SSE","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/jobs/{id}/events","href":"/api-reference/job-event-sse"},{"title":"Status only; diagnosis lives on GET /v1/jobs/{id} and SSE","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/jobs/{id}/status","href":"/api-reference/status-only;-diagnosis-lives-on-get-v1jobs-and-sse"},{"title":"Verify the job's trace journal","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/jobs/{id}/trace/verify","href":"/api-reference/verify-the-jobs-trace-journal"},{"title":"This document","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/openapi.json","href":"/api-reference/this-document"},{"title":"Read one declarative resident schedule","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/schedules/{id}","href":"/api-reference/read-one-declarative-resident-schedule"},{"title":"Create or revision-conditionally update one resident schedule","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /v1/schedules/{id}","href":"/api-reference/create-or-revision-conditionally-update-one-resident-schedule"},{"title":"Contained workflow names","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/workflows","href":"/api-reference/contained-workflow-names"},{"title":"Workflow metadata without source bytes","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /v1/workflows/{name}","href":"/api-reference/workflow-metadata-without-source-bytes"}]}]},{"group":"Operations","pages":[{"title":"CI gate","sidebarTitle":"CI gate","icon":"shield-check","href":"/sdk/operations/ci"},{"title":"Server surfaces","sidebarTitle":"Server surfaces","icon":"server","href":"/sdk/operations/server-surfaces"},{"title":"Resident server","sidebarTitle":"Resident server","icon":"server","href":"/sdk/operations/resident-server"},{"title":"Server runbook","sidebarTitle":"Server runbook","icon":"clipboard-check","href":"/sdk/operations/server-runbook"},{"title":"OS scheduler bridge","sidebarTitle":"OS schedulers","icon":"calendar","href":"/sdk/operations/os-schedulers"},{"title":"Deployment topologies","sidebarTitle":"Deployment topologies","icon":"sitemap","href":"/sdk/operations/deployment-topologies"},{"title":"Security boundary","sidebarTitle":"Security boundary","icon":"shield","href":"/sdk/operations/security"}]},{"group":"Reference","pages":[{"title":"SDK configuration","sidebarTitle":"Configuration","icon":"sliders","href":"/sdk/reference/configuration"},{"title":"SDK method index","sidebarTitle":"Method index","icon":"list","href":"/sdk/reference/methods"},{"title":"SDK type index","sidebarTitle":"Type index","icon":"brackets-curly","href":"/sdk/reference/types"}]}]},{"tab":"Examples","icon":"rocket","pages":[{"title":"Examples","href":"/examples/overview"}]},{"tab":"Architecture","icon":"layer-group","pages":[{"title":"Architecture","href":"/architecture/layers"}]},{"tab":"Reference","icon":"code","pages":[{"title":"Reference","href":"/reference/yaml-syntax"}]},{"tab":"Changelog","icon":"clock-rotate-left","pages":[{"title":"Changelog","href":"/changelog/releases"}]}]},"basePath":"","title":"Admit a workflow as a durable job — by served name, or as immutable snapshot bytes - Nika","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["BannerMarkdown-DIeMibn4.js","dist-DJnKvr0g.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-B2v50t8t.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-C8RPHPxo.js","utils-0BK-9q6z.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DfjzsUJT.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B4v9psJ4.js","snippetPresets-CpTQv-Ez.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-BNP-Fvr0.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BSgu6h1D.js","shallow-Biv1i9Gs.js","getApiPlaygroundDisplay-BoGOXhtF.js","CodeSnippet-DvQoT18_.js","CodeSnippets-Dnpa15xT.js","Page-Buji1S4J.js","getPastedJson-xAIyhUFE.js","icon-S6FBih11.js","MethodPill-SaYeUZyk.js","DuplicateIcon-Cs-p3v2Q.js","createIcon-DjCFEoHq.js","DynamicMarkdown-BcnBltEQ.js","SectionHeading-BUBl0eEF.js","axios-vUo_bRtp.js","Markdown-h4cOoD8d.js","AssistantPageLink-BHrrjR1K.js"]}