Patch the editable head’s file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.
The revision this edit is based on. Agent-file-only patches overlay the current head even when this is stale. A structural-file patch is rejected with 409 when it does not match the stored head revision.
Monotonic optimistic-concurrency revision. Only meaningful for the editable head: supply it as baseRev on the next head patch. Agent-file-only patches overlay the current head if it has moved; structural-file patches are rejected with 409 when stale. Frozen snapshots never receive in-place patches.
The validation findings publish and run would report for this version, as workflow head validate lists them. Set on the response to a head files patch; absent elsewhere.
The ID of the parent workflow this was derived from (for lineage tracking)
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Asteroid Workflows","description":"Asteroid API, SDK, and MCP documentation: build and operate browser and computer use workflows that drive healthcare portal work — prior authorization, eligibility, credentialing, claims, scheduling, enrollment, and EHR automation. HIPAA compliant, SOC 2 Type II certified.","colors":{"primary":"#692FFF","light":"#bacef5","dark":"#000000"},"logo":{"light":"https://mintcdn.com/entropylabs/_BgZG9pdBu2QjJIY/logo/logo_black.png?fit=max\u0026auto=format\u0026n=_BgZG9pdBu2QjJIY\u0026q=85\u0026s=26c9e69b06fad83cfbc0ebde8e6e7a3f","dark":"https://mintcdn.com/entropylabs/_BgZG9pdBu2QjJIY/logo/logo.png?fit=max\u0026auto=format\u0026n=_BgZG9pdBu2QjJIY\u0026q=85\u0026s=891a506d76e3996df0c818545fe74376","href":"https://asteroid.ai"},"favicon":{"light":"https://mintcdn.com/entropylabs/RLazHcq7oQoLRWiq/logo/favicon-light.png?fit=max\u0026auto=format\u0026n=RLazHcq7oQoLRWiq\u0026q=85\u0026s=0394d8f606428ac1194058b407aacea7","dark":"https://mintcdn.com/entropylabs/RLazHcq7oQoLRWiq/logo/favicon-dark.png?fit=max\u0026auto=format\u0026n=RLazHcq7oQoLRWiq\u0026q=85\u0026s=e6975c70d96315b5bff355ee1b302d6a"},"api":{"openapi":["https://odyssey.asteroid.ai/agents/v2/openapi.yaml","https://odyssey.asteroid.ai/webhooks/openapi.json"],"playground":{"display":"interactive"}},"navbar":{"links":[{"icon":"book","href":"https://asteroid.ai/blog","label":"Blog"}],"primary":{"type":"button","label":"Platform","href":"https://platform.asteroid.ai"}},"footer":{"socials":{"github":"https://github.com/asteroidai","linkedin":"https://www.linkedin.com/company/asteroidai"}},"search":{"prompt":"Search Asteroid documentation..."},"seo":{"metatags":{"canonical":"https://docs.asteroid.ai","robots":"index, follow","googlebot":"index, follow","og:site_name":"Asteroid Docs","og:locale":"en_US","keywords":"browser workflows, browser automation, computer use workflows, web workflow, healthcare workflow automation, hipaa healthcare workflow automation, claims processing automation, revenue cycle automation, prior authorization automation, ehr automation","og:image":"https://docs.asteroid.ai/logo/social-preview-1200x630.png","og:image:alt":"Asteroid browser and computer-use workflows: AI-first, SOC 2 and HIPAA compliant, trusted by 100+ teams in production.","og:image:width":"1200","og:image:height":"630","twitter:site":"@asteroid_inc","twitter:creator":"@asteroid_inc","twitter:image":"https://docs.asteroid.ai/logo/social-preview-1200x630.png","twitter:image:alt":"Asteroid browser and computer-use workflows: AI-first, SOC 2 and HIPAA compliant, trusted by 100+ teams in production.","twitter:image:width":"1200","twitter:image:height":"630","twitter:card":"summary_large_image"}},"icons":{"library":"lucide"},"contextual":{"options":["copy","view","mcp","perplexity","cursor","vscode","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"entropylabs","hasAudioNarration":false,"actualSubdomain":"entropylabs","customDomains":["docs.asteroid.ai"],"gitSource":{"type":"github","owner":"asteroidai","repo":"agents","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6af285170bf6cfcfbf8b3b61","clientVersion":"0.0.4102","searchFilterCounts":[{"language":"default","tag":"API","count":71},{"language":"default","tag":"Reference","count":68},{"language":"default","tag":"Documentation","count":43},{"language":"default","tag":"Secrets","count":19},{"language":"default","tag":"Concepts","count":16},{"language":"default","tag":"Execution","count":12},{"language":"default","tag":"Profiles","count":9},{"language":"default","tag":"Files","count":8},{"language":"default","tag":"Profile Groups","count":8},{"language":"default","tag":"Operate","count":6}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/files/patch-workflow-head-files","slug":"/api-reference/files/patch-workflow-head-files","pageMetadata":{"title":"Patch workflow head files","description":"Patch the editable head's file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml patch /agents/v2/workflows/{workflowId}/head/files","href":"/api-reference/files/patch-workflow-head-files","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Patch the editable head’s file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.\"\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":"Patch workflow head files","description":"Patch the editable head's file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml patch /agents/v2/workflows/{workflowId}/head/files","href":"/api-reference/files/patch-workflow-head-files","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Patch the editable head's file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.","operationId":"WorkflowHead_patchFiles","parameters":["fd327756-ee35-4af1-9ba8-35f07ab77c5a"],"requestBody":"ef0c89ff-3d20-40fd-9e15-385910a18748","responses":{"200":"83a4830c-7514-4168-8ab6-01853624f3c4","400":"3b70b7d1-f151-498d-8683-56510ae3db54","401":"e7592f36-c9c5-4cb3-87db-6c7a03925113","403":"7a76dc44-450b-4180-a1ea-ae93d19a50d6","404":"af64b8d1-8f49-4d07-aecf-3b1ec9861b32","409":"fbada545-ad58-4459-8380-a436392be6ab","500":"3a61872d-ad7f-46c6-8e2e-acc62f72e065"},"summary":"Patch workflow head files","tags":["Files"],"method":"patch","type":"path","servers":["5cdecf24-c584-4310-bafd-027a2609564f"],"security":["232ac6d7-6130-4dd9-8ac7-362574399ed1"],"path":"/agents/v2/workflows/{workflowId}/head/files","baseUrlOptions":["https://odyssey.asteroid.ai"],"title":"Patch workflow head files","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"fd327756-ee35-4af1-9ba8-35f07ab77c5a":{"in":"path","name":"workflowId","required":true,"schema":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}}},"requestBody":{"content":{"application/json":{"schema":{"description":"Request to patch the editable head's file representation","properties":{"baseRev":{"description":"The revision this edit is based on. Agent-file-only patches overlay the current head even when this is stale. A structural-file patch is rejected with 409 when it does not match the stored head revision.","type":"integer","isRequired":true,"uniqueKey":"baseRev","typeLabel":"integer"},"deletes":{"items":{"type":"string","uniqueKey":"deletes.items.[INDEX]","typeLabel":"string"},"type":"array","isRequired":true,"uniqueKey":"deletes","typeLabel":"string[]"},"writes":{"description":"Files to upsert.","items":{"description":"A single file write in a files patch: upsert the file at `path`. Send the file as `content` or `contentBase64`, exactly one.","properties":{"path":{"description":"The file path, relative to the workflow root — the same paths the file tree returns.","type":"string","isRequired":true,"uniqueKey":"writes.items.[INDEX].path","typeLabel":"string"},"content":{"description":"The file as UTF-8 text, for text files such as settings.yaml, instructions.md, JSON schemas and scripts. Set this or contentBase64, not both.","type":"string","uniqueKey":"writes.items.[INDEX].content","typeLabel":"string"},"contentBase64":{"description":"The file as base64-encoded bytes, for any file, binary included. Set this or content, not both.","type":"string","uniqueKey":"writes.items.[INDEX].contentBase64","typeLabel":"string"}},"required":["path"],"type":"object","uniqueKey":"writes.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"writes","typeLabel":"object[]"}},"required":["baseRev","writes","deletes"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"baseRev":123,"deletes":["\u003cstring>"],"writes":[{"path":"\u003cstring>","content":"\u003cstring>","contentBase64":"\u003cstring>"}]}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"83a4830c-7514-4168-8ab6-01853624f3c4":{"content":{"application/json":{"schema":{"description":"An immutable snapshot of a workflow's configuration","properties":{"createdAt":{"description":"When this workflow was created. For the editable head this is restamped on each in-place edit, so it doubles as the last-edited time.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"createdAt","typeLabel":"string\u003cdate-time>"},"files":{"description":"The files stored on this workflow version. Empty when the workflow has no files.","items":{"description":"A file stored on a workflow version. Content is fetched via the workflow-scoped shared-file download endpoints using this id.","properties":{"createdAt":{"description":"When this file was first added to the workflow lineage","format":"date-time","type":"string","isRequired":true,"uniqueKey":"files.items.[INDEX].createdAt","typeLabel":"string\u003cdate-time>"},"fileName":{"type":"string","isRequired":true,"uniqueKey":"files.items.[INDEX].fileName","typeLabel":"string"},"filePath":{"description":"The file path, relative to the workflow's shared directory","type":"string","isRequired":true,"uniqueKey":"files.items.[INDEX].filePath","typeLabel":"string"},"fileSize":{"description":"The file size in bytes","format":"int64","type":"integer","isRequired":true,"uniqueKey":"files.items.[INDEX].fileSize","typeLabel":"integer\u003cint64>"},"id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"files.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"updatedAt":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"files.items.[INDEX].updatedAt","typeLabel":"string\u003cdate-time>"},"checksum":{"description":"Hex-encoded SHA-256 of the file contents, when known","type":"string","uniqueKey":"files.items.[INDEX].checksum","typeLabel":"string"},"mimeType":{"description":"The file's MIME type, when known","type":"string","uniqueKey":"files.items.[INDEX].mimeType","typeLabel":"string"}},"required":["id","filePath","fileName","fileSize","createdAt","updatedAt"],"type":"object","uniqueKey":"files.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"files","typeLabel":"object[]"},"graph":{"properties":{"nodes":{"items":{"properties":{"id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"name":{"description":"Display name. New and renamed nodes accept letters, digits, spaces, and hyphens only (historical versions may carry other characters, so responses are not pattern-constrained).","type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].name","typeLabel":"string"},"properties":{"oneOf":[{"type":"object","required":["type"],"properties":{"type":{"enum":["start"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.0.type","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.0","typeLabel":"object"},{"type":"object","required":["type","instructions","model"],"properties":{"instructions":{"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.instructions","typeLabel":"string"},"model":{"type":"string","x-go-type":"llmtypes.Model","x-go-type-import":{"name":"llmtypes","path":"github.com/asteroidai/agents/go/common/llmtypes"},"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.model","typeLabel":"string"},"type":{"enum":["iris"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.type","typeLabel":"enum\u003cstring>"},"capabilities":{"description":"Coarse environment-level capability toggles for an AI node.","properties":{"ask_user_question":{"type":"boolean","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.capabilities.ask_user_question","typeLabel":"boolean"},"browser_use":{"type":"boolean","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.capabilities.browser_use","typeLabel":"boolean"},"computer_use":{"type":"boolean","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.capabilities.computer_use","typeLabel":"boolean"}},"required":["browser_use","computer_use","ask_user_question"],"type":"object","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.capabilities","typeLabel":"object"},"compression_strategies":{"items":{"type":"string","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.compression_strategies.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.compression_strategies","typeLabel":"string[]"},"input_schema":{"type":"object","unevaluatedProperties":{},"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.input_schema","typeLabel":"object"},"playwright_script_properties":{"properties":{"freeze_script":{"type":"boolean","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.playwright_script_properties.freeze_script","typeLabel":"boolean"},"llm_vars":{"items":{"properties":{"description":{"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.playwright_script_properties.llm_vars.items.[INDEX].description","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.playwright_script_properties.llm_vars.items.[INDEX].name","typeLabel":"string"},"type":{"enum":["string","number","boolean"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.playwright_script_properties.llm_vars.items.[INDEX].type","typeLabel":"enum\u003cstring>"}},"required":["name","type","description"],"type":"object","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.playwright_script_properties.llm_vars.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.playwright_script_properties.llm_vars","typeLabel":"object[]"},"script":{"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.playwright_script_properties.script","typeLabel":"string"}},"required":["script","llm_vars","freeze_script"],"type":"object","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.playwright_script_properties","typeLabel":"object"},"script_failure_action":{"description":"What happens when a script fails on a scripted node.\n`fallback_to_ai` (default): fall back to LLM-driven execution.\n`cancel_execution`: cancel the execution immediately.","enum":["fallback_to_ai","cancel_execution"],"type":"string","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.script_failure_action","typeLabel":"enum\u003cstring>"},"script_filepath":{"description":"Relative path (within the node's own shared directory) of the\nPlaywright script that the runtime should execute before the LLM.\nSetting this turns the node into a fast-path scripted node — combine\nwith `script_failure_action: \"cancel_execution\"` to skip the LLM\nentirely on success and cancel on failure.\n\nThe path is resolved at runtime against the node's shared\ndirectory — i.e. `shared/\u003cnode-key>/\u003cscript_filepath>` on disk in\nthe sandbox. `\u003cnode-key>` is owned by the runtime (currently the\nnode's slug, may move to its UUID), so authors do not have to\nencode it and renaming a node does not break the path.\n\nExamples (typical):\n- `./scripts/main.js`\n- `./scripts/login.js`\n\nA leading `./` is optional but canonical — both `scripts/main.js` and\n`./scripts/main.js` are accepted, and the platform normalizes to the\n`./`-prefixed form when it writes this value back out.\n\nConstraints:\n- Must be relative (no leading `/`).\n- Must NOT start with `shared/` — it is already relative to the\nnode's shared directory; the runtime adds the `shared/\u003cnode-key>/`\nprefix.\n- Must end in `.js` (Playwright, browser), `.ps1` (PowerShell,\nWindows desktop) or `.sh` (bash, Linux desktop).\n- Must not contain `..` segments or duplicate slashes.\n- May contain a single `{{variant_key}}` placeholder, which the\nruntime substitutes with the execution's `variant_key` so a single\nworkflow can target per-tenant script trees (e.g.\n`./variants/{{variant_key}}/scripts/main.js` →\n`shared/\u003cnode-key>/variants/\u003cvariant-key>/scripts/main.js`).\nRequires the agent to have `variant_mode` enabled, and the\nplaceholder must be the segment directly under `variants/`.","maxLength":512,"minLength":1,"pattern":"^(?!\\/)(?!shared\\/)(?!.*\\.\\.(?:\\/|$))(?!.*\\/\\/)[^/].*\\.(?:js|ps1|sh)$","type":"string","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.script_filepath","typeLabel":"string"},"thinking_budget_tokens":{"minimum":1,"type":"integer","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.thinking_budget_tokens","typeLabel":"integer"},"thinking_effort":{"enum":["low","medium","high","max"],"type":"string","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.thinking_effort","typeLabel":"enum\u003cstring>"},"thinking_mode":{"enum":["adaptive","enabled","disabled"],"type":"string","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1.thinking_mode","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.1","typeLabel":"object"},{"type":"object","required":["type","script","llm_vars"],"properties":{"llm_vars":{"items":{"properties":{"description":{"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.2.llm_vars.items.[INDEX].description","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.2.llm_vars.items.[INDEX].name","typeLabel":"string"},"type":{"enum":["string","number","boolean"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.2.llm_vars.items.[INDEX].type","typeLabel":"enum\u003cstring>"}},"required":["name","type","description"],"type":"object","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.2.llm_vars.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.2.llm_vars","typeLabel":"object[]"},"script":{"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.2.script","typeLabel":"string"},"type":{"enum":["playwright_script"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.2.type","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.2","typeLabel":"object"},{"type":"object","required":["type","method","url","body","headers"],"deprecated":true,"properties":{"body":{"type":"object","unevaluatedProperties":{},"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.3.body","typeLabel":"object"},"headers":{"type":"object","unevaluatedProperties":{"type":"string"},"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.3.headers","typeLabel":"object"},"method":{"enum":["GET","POST","PUT","DELETE"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.3.method","typeLabel":"enum\u003cstring>"},"type":{"enum":["api"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.3.type","typeLabel":"enum\u003cstring>"},"url":{"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.3.url","typeLabel":"string"}},"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.3","typeLabel":"object"},{"type":"object","required":["type","url"],"deprecated":true,"properties":{"type":{"enum":["url"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.4.type","typeLabel":"enum\u003cstring>"},"url":{"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.4.url","typeLabel":"string"}},"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.4","typeLabel":"object"},{"type":"object","required":["type","outcomes"],"properties":{"outcomes":{"items":{"maxLength":30,"minLength":1,"pattern":"^[a-z0-9_]{1,30}$","type":"string","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.5.outcomes.items.[INDEX]","typeLabel":"string"},"minItems":1,"type":"array","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.5.outcomes","typeLabel":"string[]"},"type":{"enum":["output"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.5.type","typeLabel":"enum\u003cstring>"},"instructions":{"type":"string","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.5.instructions","typeLabel":"string"},"instructionsEnabled":{"type":"boolean","uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.5.instructionsEnabled","typeLabel":"boolean"},"model":{"type":"string","x-go-type":"llmtypes.Model","x-go-type-import":{"name":"llmtypes","path":"github.com/asteroidai/agents/go/common/llmtypes"},"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.5.model","typeLabel":"string"},"schema":{"type":"object","unevaluatedProperties":{},"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.5.schema","typeLabel":"object"}},"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties.oneOf.5","typeLabel":"object"}],"isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].properties","typeLabel":"object"},"type":{"enum":["start","iris","playwright_script","api","url","output"],"type":"string","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"description":{"deprecated":true,"description":"Deprecated: field is no longer populated and will be removed.","type":"string","uniqueKey":"graph.nodes.items.[INDEX].description","typeLabel":"string"},"position":{"properties":{"x":{"format":"int32","type":"integer","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].position.x","typeLabel":"integer\u003cint32>"},"y":{"format":"int32","type":"integer","isRequired":true,"uniqueKey":"graph.nodes.items.[INDEX].position.y","typeLabel":"integer\u003cint32>"}},"required":["x","y"],"type":"object","uniqueKey":"graph.nodes.items.[INDEX].position","typeLabel":"object"}},"required":["id","name","type","properties"],"type":"object","uniqueKey":"graph.nodes.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"graph.nodes","typeLabel":"object[]"},"sticky_notes":{"items":{"properties":{"content":{"type":"string","isRequired":true,"uniqueKey":"graph.sticky_notes.items.[INDEX].content","typeLabel":"string"},"id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"graph.sticky_notes.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"color":{"type":"string","uniqueKey":"graph.sticky_notes.items.[INDEX].color","typeLabel":"string"},"position":{"properties":{"x":{"format":"int32","type":"integer","isRequired":true,"uniqueKey":"graph.sticky_notes.items.[INDEX].position.x","typeLabel":"integer\u003cint32>"},"y":{"format":"int32","type":"integer","isRequired":true,"uniqueKey":"graph.sticky_notes.items.[INDEX].position.y","typeLabel":"integer\u003cint32>"}},"required":["x","y"],"type":"object","uniqueKey":"graph.sticky_notes.items.[INDEX].position","typeLabel":"object"},"size":{"properties":{"height":{"format":"int32","type":"integer","isRequired":true,"uniqueKey":"graph.sticky_notes.items.[INDEX].size.height","typeLabel":"integer\u003cint32>"},"width":{"format":"int32","type":"integer","isRequired":true,"uniqueKey":"graph.sticky_notes.items.[INDEX].size.width","typeLabel":"integer\u003cint32>"}},"required":["width","height"],"type":"object","uniqueKey":"graph.sticky_notes.items.[INDEX].size","typeLabel":"object"}},"required":["id","content"],"type":"object","uniqueKey":"graph.sticky_notes.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"graph.sticky_notes","typeLabel":"object[]"},"transitions":{"items":{"properties":{"from":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].from","typeLabel":"string\u003cuuid>"},"id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"properties":{"oneOf":[{"type":"object","required":["type"],"properties":{"type":{"enum":["iris"],"type":"string","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].properties.oneOf.0.type","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].properties.oneOf.0","typeLabel":"object"},{"type":"object","required":["type","name","selectors"],"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].properties.oneOf.1.name","typeLabel":"string"},"selectors":{"items":{"type":"string","uniqueKey":"graph.transitions.items.[INDEX].properties.oneOf.1.selectors.items.[INDEX]","typeLabel":"string"},"minItems":1,"type":"array","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].properties.oneOf.1.selectors","typeLabel":"string[]"},"type":{"enum":["selector"],"type":"string","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].properties.oneOf.1.type","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].properties.oneOf.1","typeLabel":"object"},{"type":"object","required":["type"],"properties":{"type":{"enum":["outcome_success"],"type":"string","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].properties.oneOf.2.type","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].properties.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].properties","typeLabel":"object"},"require_confirmation":{"type":"boolean","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].require_confirmation","typeLabel":"boolean"},"to":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].to","typeLabel":"string\u003cuuid>"},"type":{"enum":["iris","selector","outcome_success"],"type":"string","isRequired":true,"uniqueKey":"graph.transitions.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"description":{"type":"string","uniqueKey":"graph.transitions.items.[INDEX].description","typeLabel":"string"},"schema":{"type":"object","unevaluatedProperties":{},"uniqueKey":"graph.transitions.items.[INDEX].schema","typeLabel":"object"}},"required":["id","from","to","type","require_confirmation","properties"],"type":"object","uniqueKey":"graph.transitions.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"graph.transitions","typeLabel":"object[]"}},"required":["nodes","transitions","sticky_notes"],"type":"object","isRequired":true,"uniqueKey":"graph","typeLabel":"object"},"id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"id","typeLabel":"string\u003cuuid>"},"inputs":{"description":"Typed input definitions for workflow execution. Includes names referenced in prompts, which default to optional strings.","items":{"description":"A typed input variable a workflow declares. Referenced as {{.name}} in prompts.","properties":{"name":{"description":"The variable name. Matches [a-zA-Z_][a-zA-Z0-9_]* and is unique within the workflow.","pattern":"^[a-zA-Z_][a-zA-Z0-9_]*$","type":"string","isRequired":true,"uniqueKey":"inputs.items.[INDEX].name","typeLabel":"string"},"required":{"description":"Whether a value must be supplied at execution time. Defaults to false.","type":"boolean","isRequired":true,"uniqueKey":"inputs.items.[INDEX].required","typeLabel":"boolean"},"schema":{"description":"A single-field JSON Schema fragment describing the input's type, e.g. {type: \"string\"}, {type: \"number\"}, {type: \"object\", properties: {...}}. Validated adaptively at execution time.","type":"object","unevaluatedProperties":{},"isRequired":true,"uniqueKey":"inputs.items.[INDEX].schema","typeLabel":"object"},"defaultValue":{"description":"Optional value used when the input is omitted at execution time.","uniqueKey":"inputs.items.[INDEX].defaultValue","typeLabel":"any"},"description":{"type":"string","uniqueKey":"inputs.items.[INDEX].description","typeLabel":"string"}},"required":["name","schema","required"],"type":"object","uniqueKey":"inputs.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"inputs","typeLabel":"object[]"},"isPublished":{"description":"Whether this is the workflow's published version (the API default). At most one version per workflow is published.","type":"boolean","isRequired":true,"uniqueKey":"isPublished","typeLabel":"boolean"},"rev":{"description":"Monotonic optimistic-concurrency revision. Only meaningful for the editable head: supply it as baseRev on the next head patch. Agent-file-only patches overlay the current head if it has moved; structural-file patches are rejected with 409 when stale. Frozen snapshots never receive in-place patches.","type":"integer","isRequired":true,"uniqueKey":"rev","typeLabel":"integer"},"rules":{"type":"string","isRequired":true,"uniqueKey":"rules","typeLabel":"string"},"settings":{"description":"Configuration settings for workflow execution","properties":{"max_timeout_mins":{"description":"Maximum timeout in minutes","type":"integer","isRequired":true,"uniqueKey":"settings.max_timeout_mins","typeLabel":"integer"},"viewport_height":{"description":"Browser viewport height in pixels","type":"integer","isRequired":true,"uniqueKey":"settings.viewport_height","typeLabel":"integer"},"viewport_width":{"description":"Browser viewport width in pixels","type":"integer","isRequired":true,"uniqueKey":"settings.viewport_width","typeLabel":"integer"},"custom_environment_id":{"type":"string","description":"Custom environment executions of this workflow boot on: its environment type and snapshot replace the workflow's own environment, its profile rows restrict which profile an execution may use, and a kept-warm environment hands out a pre-warmed copy. On a new version, omit it to keep the environment of the workflow's latest version (its editable head, which can be newer than the published one), or send null to boot the workflow's own environment. On a new workflow, there is nothing to keep: omit it or send null for no custom environment.","format":"uuid","uniqueKey":"settings.custom_environment_id","typeLabel":"string\u003cuuid>"}},"required":["viewport_width","viewport_height","max_timeout_mins"],"type":"object","isRequired":true,"uniqueKey":"settings","typeLabel":"object"},"version":{"description":"The monotonic per-workflow version number.","type":"integer","isRequired":true,"uniqueKey":"version","typeLabel":"integer"},"workflowId":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"workflowId","typeLabel":"string\u003cuuid>"},"author":{"description":"The email of the user who created this workflow.","type":"string","uniqueKey":"author","typeLabel":"string"},"environmentTemplate":{"type":"object","description":"Optional environment template. Defaults to the managed browser if not provided.","required":["type","config"],"properties":{"config":{"oneOf":[{"type":"object","description":"Customer-facing browser environment template configuration","required":["provider"],"properties":{"provider":{"type":"string","description":"Ignored, and always the managed browser. Kept so SDKs released before it was dropped still parse.","enum":["anchor"],"deprecated":true,"isRequired":true,"uniqueKey":"environmentTemplate.config.oneOf.0.provider","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"environmentTemplate.config.oneOf.0","typeLabel":"object"},{"type":"object","description":"Customer-facing OS environment template configuration. Admin-only fields live on OsTemplateConfig.","required":["provider","public"],"properties":{"provider":{"description":"OS provider type","enum":["daytona","local"],"type":"string","isRequired":true,"uniqueKey":"environmentTemplate.config.oneOf.1.provider","typeLabel":"enum\u003cstring>"},"public":{"deprecated":true,"description":"Ignored and always false. Kept so SDKs released before it was dropped still parse.","type":"boolean","isRequired":true,"uniqueKey":"environmentTemplate.config.oneOf.1.public","typeLabel":"boolean"},"osType":{"type":"string","description":"Operating system the sandbox runs. Defaults to linux. Setting to windows is admin-only and selects the Windows snapshot/image.","enum":["linux","windows","citrix"],"uniqueKey":"environmentTemplate.config.oneOf.1.osType","typeLabel":"enum\u003cstring>"},"snapshotName":{"deprecated":true,"description":"Ignored, and never returned. A workflow boots the snapshot of the custom environment it is bound to, or the default image.","type":"string","uniqueKey":"environmentTemplate.config.oneOf.1.snapshotName","typeLabel":"string"}},"isRequired":true,"uniqueKey":"environmentTemplate.config.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"environmentTemplate.config","typeLabel":"object"},"type":{"description":"Type of execution environment","enum":["browser","os"],"type":"string","isRequired":true,"uniqueKey":"environmentTemplate.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"environmentTemplate","typeLabel":"object"},"issues":{"description":"The validation findings publish and run would report for this version, as `workflow head validate` lists them. Set on the response to a head files patch; absent elsewhere.","items":{"description":"A single workflow validation finding.","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"},"path":{"description":"Path to the offending field, e.g. [\"nodes\", \"My Node\", \"model\"].","items":{"type":"string","uniqueKey":"issues.items.[INDEX].path.items.[INDEX]","typeLabel":"string"},"type":"array","isRequired":true,"uniqueKey":"issues.items.[INDEX].path","typeLabel":"string[]"},"severity":{"type":"string","description":"Whether this issue blocks running the workflow (error) or is advisory (warning).","enum":["error","warning"],"isRequired":true,"uniqueKey":"issues.items.[INDEX].severity","typeLabel":"enum\u003cstring>"}},"required":["severity","message","path"],"type":"object","uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"issues","typeLabel":"object[]"},"parentId":{"type":"string","description":"The ID of the parent workflow this was derived from (for lineage tracking)","format":"uuid","uniqueKey":"parentId","typeLabel":"string\u003cuuid>"}},"required":["id","version","isPublished","rules","graph","inputs","files","createdAt","rev","workflowId","settings"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"createdAt":"2023-11-07T05:31:56Z","files":[{"createdAt":"2023-11-07T05:31:56Z","fileName":"\u003cstring>","filePath":"\u003cstring>","fileSize":123,"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","updatedAt":"2023-11-07T05:31:56Z","checksum":"\u003cstring>","mimeType":"\u003cstring>"}],"graph":{"nodes":[{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","name":"\u003cstring>","properties":{"type":"start"},"type":"start","description":"\u003cstring>","position":{"x":123,"y":123}}],"sticky_notes":[{"content":"\u003cstring>","id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","color":"\u003cstring>","position":{"x":123,"y":123},"size":{"height":123,"width":123}}],"transitions":[{"from":"3c90c3cc-0d44-4b50-8888-8dd25736052a","id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","properties":{"type":"iris"},"require_confirmation":true,"to":"3c90c3cc-0d44-4b50-8888-8dd25736052a","type":"iris","description":"\u003cstring>","schema":{}}]},"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","inputs":[{"name":"\u003cstring>","required":true,"schema":{},"defaultValue":"\u003cunknown>","description":"\u003cstring>"}],"isPublished":true,"rev":123,"rules":"\u003cstring>","settings":{"max_timeout_mins":123,"viewport_height":123,"viewport_width":123,"custom_environment_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"version":123,"workflowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","author":"\u003cstring>","environmentTemplate":{"config":{"provider":"anchor"},"type":"browser"},"issues":[{"message":"\u003cstring>","path":["\u003cstring>"],"severity":"error"}],"parentId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"}}},"exampleType":"generated"}},"description":"The request has succeeded.","exampleType":"generated"},"3b70b7d1-f151-498d-8683-56510ae3db54":{"content":{"application/json":{"schema":{"properties":{"code":{"enum":[400],"type":"number","x-enum-varnames":["BadRequest"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cnumber>"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"detail":{"description":"Explanation of this occurrence. Same text as message","type":"string","uniqueKey":"detail","typeLabel":"string"},"errors":{"description":"The parameters that failed validation, when known","items":{"description":"A problem with one request parameter","properties":{"detail":{"description":"What is wrong with it","type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].detail","typeLabel":"string"},"parameter":{"description":"The query or path parameter name","type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].parameter","typeLabel":"string"}},"required":["parameter","detail"],"type":"object","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"errors","typeLabel":"object[]"},"instance":{"description":"The request path that produced the problem","type":"string","uniqueKey":"instance","typeLabel":"string"},"status":{"format":"int32","type":"integer","uniqueKey":"status","typeLabel":"integer\u003cint32>"},"title":{"description":"Short summary of the problem type","type":"string","uniqueKey":"title","typeLabel":"string"},"type":{"description":"A URI that identifies the problem type. about:blank when the status says it all","type":"string","uniqueKey":"type","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":400,"message":"\u003cstring>","detail":"\u003cstring>","errors":[{"detail":"\u003cstring>","parameter":"\u003cstring>"}],"instance":"\u003cstring>","status":123,"title":"\u003cstring>","type":"\u003cstring>"}}},"exampleType":"generated"}},"description":"The server could not understand the request due to invalid syntax.","exampleType":"generated"},"e7592f36-c9c5-4cb3-87db-6c7a03925113":{"content":{"application/json":{"schema":{"properties":{"code":{"enum":[401],"type":"number","x-enum-varnames":["Unauthorized"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cnumber>"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"detail":{"description":"Explanation of this occurrence. Same text as message","type":"string","uniqueKey":"detail","typeLabel":"string"},"instance":{"description":"The request path that produced the problem","type":"string","uniqueKey":"instance","typeLabel":"string"},"status":{"format":"int32","type":"integer","uniqueKey":"status","typeLabel":"integer\u003cint32>"},"title":{"description":"Short summary of the problem type","type":"string","uniqueKey":"title","typeLabel":"string"},"type":{"description":"A URI that identifies the problem type. about:blank when the status says it all","type":"string","uniqueKey":"type","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":401,"message":"\u003cstring>","detail":"\u003cstring>","instance":"\u003cstring>","status":123,"title":"\u003cstring>","type":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Access is unauthorized.","exampleType":"generated"},"7a76dc44-450b-4180-a1ea-ae93d19a50d6":{"content":{"application/json":{"schema":{"properties":{"code":{"enum":[403],"type":"number","x-enum-varnames":["Forbidden"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cnumber>"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"capability":{"description":"The missing capability key, when reason is capability_required","type":"string","uniqueKey":"capability","typeLabel":"string"},"detail":{"description":"Explanation of this occurrence. Same text as message","type":"string","uniqueKey":"detail","typeLabel":"string"},"instance":{"description":"The request path that produced the problem","type":"string","uniqueKey":"instance","typeLabel":"string"},"reason":{"type":"string","description":"Why the request was refused, when the client can act on it","enum":["capability_required","geo_blocked"],"uniqueKey":"reason","typeLabel":"enum\u003cstring>"},"status":{"format":"int32","type":"integer","uniqueKey":"status","typeLabel":"integer\u003cint32>"},"title":{"description":"Short summary of the problem type","type":"string","uniqueKey":"title","typeLabel":"string"},"type":{"description":"A URI that identifies the problem type. about:blank when the status says it all","type":"string","uniqueKey":"type","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":403,"message":"\u003cstring>","capability":"\u003cstring>","detail":"\u003cstring>","instance":"\u003cstring>","reason":"capability_required","status":123,"title":"\u003cstring>","type":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Access is forbidden.","exampleType":"generated"},"af64b8d1-8f49-4d07-aecf-3b1ec9861b32":{"content":{"application/json":{"schema":{"properties":{"code":{"enum":[404],"type":"number","x-enum-varnames":["NotFound"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cnumber>"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"detail":{"description":"Explanation of this occurrence. Same text as message","type":"string","uniqueKey":"detail","typeLabel":"string"},"instance":{"description":"The request path that produced the problem","type":"string","uniqueKey":"instance","typeLabel":"string"},"status":{"format":"int32","type":"integer","uniqueKey":"status","typeLabel":"integer\u003cint32>"},"title":{"description":"Short summary of the problem type","type":"string","uniqueKey":"title","typeLabel":"string"},"type":{"description":"A URI that identifies the problem type. about:blank when the status says it all","type":"string","uniqueKey":"type","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":404,"message":"\u003cstring>","detail":"\u003cstring>","instance":"\u003cstring>","status":123,"title":"\u003cstring>","type":"\u003cstring>"}}},"exampleType":"generated"}},"description":"The server cannot find the requested resource.","exampleType":"generated"},"fbada545-ad58-4459-8380-a436392be6ab":{"content":{"application/json":{"schema":{"properties":{"code":{"enum":[409],"type":"number","x-enum-varnames":["Conflict"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cnumber>"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"detail":{"description":"Explanation of this occurrence. Same text as message","type":"string","uniqueKey":"detail","typeLabel":"string"},"instance":{"description":"The request path that produced the problem","type":"string","uniqueKey":"instance","typeLabel":"string"},"status":{"format":"int32","type":"integer","uniqueKey":"status","typeLabel":"integer\u003cint32>"},"title":{"description":"Short summary of the problem type","type":"string","uniqueKey":"title","typeLabel":"string"},"type":{"description":"A URI that identifies the problem type. about:blank when the status says it all","type":"string","uniqueKey":"type","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":409,"message":"\u003cstring>","detail":"\u003cstring>","instance":"\u003cstring>","status":123,"title":"\u003cstring>","type":"\u003cstring>"}}},"exampleType":"generated"}},"description":"The request conflicts with the current state of the server.","exampleType":"generated"},"3a61872d-ad7f-46c6-8e2e-acc62f72e065":{"content":{"application/json":{"schema":{"properties":{"code":{"enum":[500],"type":"number","x-enum-varnames":["InternalServerError"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cnumber>"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"detail":{"description":"Explanation of this occurrence. Same text as message","type":"string","uniqueKey":"detail","typeLabel":"string"},"instance":{"description":"The request path that produced the problem","type":"string","uniqueKey":"instance","typeLabel":"string"},"status":{"format":"int32","type":"integer","uniqueKey":"status","typeLabel":"integer\u003cint32>"},"title":{"description":"Short summary of the problem type","type":"string","uniqueKey":"title","typeLabel":"string"},"type":{"description":"A URI that identifies the problem type. about:blank when the status says it all","type":"string","uniqueKey":"type","typeLabel":"string"}},"required":["code","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":500,"message":"\u003cstring>","detail":"\u003cstring>","instance":"\u003cstring>","status":123,"title":"\u003cstring>","type":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Server error","exampleType":"generated"}},"security":{"232ac6d7-6130-4dd9-8ac7-362574399ed1":{"ApiKeyAuth":{"in":"header","name":"X-Api-Key","type":"apiKey","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"5cdecf24-c584-4310-bafd-027a2609564f":{"url":"https://odyssey.asteroid.ai"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"in":"header","name":"X-Api-Key","type":"apiKey","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"X-Api-Key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"X-Api-Key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml"},"subdomain":"entropylabs","siteName":"Asteroid Workflows","title":"Patch workflow head files - Asteroid Workflows","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-10T02:44:48.144Z","originalFileLocation":"api-reference/files/patch-workflow-head-files.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=\"system\"}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=\"Patch the editable head\u0026#x27;s file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.\">\u003cmeta data-mint-head name=\"keywords\" content=\"browser workflows, browser automation, computer use workflows, web workflow, healthcare workflow automation, hipaa healthcare workflow automation, claims processing automation, revenue cycle automation, prior authorization automation, ehr automation\">\u003cmeta data-mint-head name=\"application-name\" content=\"Asteroid Workflows\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003cmeta data-mint-head name=\"robots\" content=\"index, follow\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/entropylabs/ZFt5yje-Sd320od_/_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/entropylabs/ZFt5yje-Sd320od_/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/entropylabs/ZFt5yje-Sd320od_/_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/entropylabs/ZFt5yje-Sd320od_/_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/entropylabs/ZFt5yje-Sd320od_/_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/entropylabs/ZFt5yje-Sd320od_/_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/entropylabs/ZFt5yje-Sd320od_/_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/entropylabs/ZFt5yje-Sd320od_/_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/entropylabs/ZFt5yje-Sd320od_/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Patch workflow head files - Asteroid Workflows\">\u003cmeta data-mint-head property=\"og:description\" content=\"Patch the editable head\u0026#x27;s file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Asteroid Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://docs.asteroid.ai/logo/social-preview-1200x630.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=\"Patch workflow head files - Asteroid Workflows\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Patch the editable head\u0026#x27;s file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://docs.asteroid.ai/logo/social-preview-1200x630.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/entropylabs/ZFt5yje-Sd320od_/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Asteroid Workflows\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#692FFF\">\u003cmeta data-mint-head name=\"og:locale\" content=\"en_US\">\u003cmeta data-mint-head name=\"googlebot\" content=\"index, follow\">\u003cmeta data-mint-head name=\"og:image:alt\" content=\"Asteroid browser and computer-use workflows: AI-first, SOC 2 and HIPAA compliant, trusted by 100+ teams in production.\">\u003cmeta data-mint-head name=\"twitter:creator\" content=\"@asteroid_inc\">\u003cmeta data-mint-head name=\"twitter:image:alt\" content=\"Asteroid browser and computer-use workflows: AI-first, SOC 2 and HIPAA compliant, trusted by 100+ teams in production.\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/files/patch-workflow-head-files.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.asteroid.ai/#organization\",\"name\":\"Asteroid Workflows\",\"url\":\"https://docs.asteroid.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/entropylabs/_BgZG9pdBu2QjJIY/logo/logo_black.png?fit=max\u0026auto=format\u0026n=_BgZG9pdBu2QjJIY\u0026q=85\u0026s=26c9e69b06fad83cfbc0ebde8e6e7a3f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.asteroid.ai#website\",\"name\":\"Asteroid Workflows\",\"url\":\"https://docs.asteroid.ai\",\"publisher\":{\"@id\":\"https://docs.asteroid.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files#webpage\",\"url\":\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files\",\"name\":\"Patch workflow head files\",\"description\":\"Patch the editable head's file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.\",\"dateModified\":\"2026-11-10T02:44:48.144Z\",\"isPartOf\":{\"@id\":\"https://docs.asteroid.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Reference\",\"item\":\"https://docs.asteroid.ai\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Files\",\"item\":\"https://docs.asteroid.ai/api-reference/files/get-execution-files\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Patch workflow head files\",\"item\":\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files#apireference\",\"headline\":\"Patch workflow head files\",\"name\":\"Patch workflow head files\",\"description\":\"Patch the editable head's file representation in place: apply file writes and deletes, re-derive the structured workflow, and persist it. Structural-file writes require a matching baseRev. When the head is frozen (published or executed) the edit forks a fresh version behind the scenes.\",\"url\":\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files\",\"mainEntityOfPage\":{\"@id\":\"https://docs.asteroid.ai/api-reference/files/patch-workflow-head-files#webpage\"},\"image\":\"https://docs.asteroid.ai/logo/social-preview-1200x630.png\",\"dateModified\":\"2026-11-10T02:44:48.144Z\",\"publisher\":{\"@id\":\"https://docs.asteroid.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.asteroid.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Asteroid Workflows\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Asteroid Workflows\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/files/patch-workflow-head-files.md","siteName":"Asteroid Workflows","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/start/what-asteroid-is"}]},{"tab":"API","groups":[{"group":"Get Started","icon":"cloud","pages":[{"title":"API reference","icon":"book","href":"/api-reference/overview"}]},{"group":"Errors","icon":"triangle-alert","pages":[{"title":"Errors","sidebarTitle":"Overview","icon":"triangle-alert","href":"/errors/overview"},{"title":"Live limit reached","icon":"gauge","href":"/errors/limit-reached"}]},{"group":"Reference","pages":[{"group":"Agent Profile Pools","pages":[]},{"group":"Agent Profiles","pages":[]},{"group":"Agents","pages":[]},{"group":"Files","pages":[{"title":"Get Execution Files","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/executions/{executionId}/files","href":"/api-reference/files/get-execution-files"},{"title":"Download execution file","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/executions/{executionId}/files/{fileId}/download","href":"/api-reference/files/download-execution-file"},{"title":"Stage a file for an execution","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/temp-files","href":"/api-reference/files/stage-a-file-for-an-execution"},{"title":"Stage a file for an execution","deprecated":true,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/temp-files/{organizationId}","href":"/api-reference/files/stage-a-file-for-an-execution-1"},{"title":"Get workflow head files","description":"Get the editable head rendered as a directory of files. Structural files carry inline content; the workflow's own files are referenced by id. The returned `rev` can be supplied as `baseRev` to patch without a second fetch.","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/workflows/{workflowId}/head/files","href":"/api-reference/files/get-workflow-head-files"},{"title":"Patch workflow head files","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml patch /agents/v2/workflows/{workflowId}/head/files","href":"/api-reference/files/patch-workflow-head-files"},{"title":"Publish workflow head","description":"Publish the editable head as the workflow's published version","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/workflows/{workflowId}/head/publish","href":"/api-reference/files/publish-workflow-head"},{"title":"Validate workflow head","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/workflows/{workflowId}/head/validate","href":"/api-reference/files/validate-workflow-head"}]},{"group":"Workflows","pages":[{"title":"List workflows","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/workflows","href":"/api-reference/workflows/list-workflows"},{"title":"List available tools","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/workflows/available-tools","href":"/api-reference/workflows/list-available-tools"},{"title":"Execute workflow","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/workflows/{workflowId}/execute","href":"/api-reference/workflows/execute-workflow"},{"title":"Execute workflow and wait for the result","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/workflows/{workflowId}/execute/sync","href":"/api-reference/workflows/execute-workflow-and-wait-for-the-result"}]},{"group":"Context","pages":[{"title":"Get Context","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/context","href":"/api-reference/context/get-context"},{"title":"Who am I","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /users/v2/whoami","href":"/api-reference/context/who-am-i"}]},{"group":"Documentation","pages":[]},{"group":"Execution","pages":[{"title":"List executions","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/executions","href":"/api-reference/execution/list-executions"},{"title":"Get execution","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/executions/{executionId}","href":"/api-reference/execution/get-execution"},{"title":"Delete execution","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml delete /agents/v2/executions/{executionId}","href":"/api-reference/execution/delete-execution"},{"title":"Retrieve execution activities","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/executions/{executionId}/activities","href":"/api-reference/execution/retrieve-execution-activities"},{"title":"Cancel execution","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/executions/{executionId}/cancel","href":"/api-reference/execution/cancel-execution"},{"title":"Pause execution","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/executions/{executionId}/pause","href":"/api-reference/execution/pause-execution"},{"title":"Get recording redirect","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/executions/{executionId}/recording","href":"/api-reference/execution/get-recording-redirect"},{"title":"Rerun execution","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/executions/{executionId}/rerun","href":"/api-reference/execution/rerun-execution"},{"title":"Resume execution","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/executions/{executionId}/resume","href":"/api-reference/execution/resume-execution"},{"title":"Update execution status","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/executions/{executionId}/status","href":"/api-reference/execution/update-execution-status"},{"title":"Wait for an execution's status to change","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/executions/{executionId}/sync","href":"/api-reference/execution/wait-for-an-executions-status-to-change"},{"title":"Send user message to execution","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/executions/{executionId}/user-messages","href":"/api-reference/execution/send-user-message-to-execution"}]},{"group":"Profile Groups","pages":[{"title":"List Profile Groups","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/profile-groups","href":"/api-reference/profile-groups/list-profile-groups"},{"title":"Create Profile Group","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/profile-groups","href":"/api-reference/profile-groups/create-profile-group"},{"title":"Get Profile Group","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/profile-groups/{groupId}","href":"/api-reference/profile-groups/get-profile-group"},{"title":"Delete Profile Group","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml delete /agents/v2/profile-groups/{groupId}","href":"/api-reference/profile-groups/delete-profile-group"},{"title":"Update Profile Group","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml patch /agents/v2/profile-groups/{groupId}","href":"/api-reference/profile-groups/update-profile-group"},{"title":"List Profile Group Members","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/profile-groups/{groupId}/members","href":"/api-reference/profile-groups/list-profile-group-members"},{"title":"Add Profiles to Profile Group","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/profile-groups/{groupId}/members","href":"/api-reference/profile-groups/add-profiles-to-profile-group"},{"title":"Remove Profiles from Profile Group","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml delete /agents/v2/profile-groups/{groupId}/members","href":"/api-reference/profile-groups/remove-profiles-from-profile-group"}]},{"group":"Profiles","pages":[{"title":"List Profiles","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/profiles","href":"/api-reference/profiles/list-profiles"},{"title":"Create Profile","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/profiles","href":"/api-reference/profiles/create-profile"},{"title":"Get Profile","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/profiles/{profileId}","href":"/api-reference/profiles/get-profile"},{"title":"Delete Profile","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml delete /agents/v2/profiles/{profileId}","href":"/api-reference/profiles/delete-profile"},{"title":"Update Profile","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml patch /agents/v2/profiles/{profileId}","href":"/api-reference/profiles/update-profile"},{"title":"Clear Browser Cache","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml delete /agents/v2/profiles/{profileId}/clear-browser-cache","href":"/api-reference/profiles/clear-browser-cache"},{"title":"Duplicate Profile","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/profiles/{profileId}/duplicate","href":"/api-reference/profiles/duplicate-profile"},{"title":"Get Profile Inbox Emails","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/profiles/{profileId}/inbox-emails","href":"/api-reference/profiles/get-profile-inbox-emails"},{"title":"Get Profile Inbox Email","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/profiles/{profileId}/inbox-emails/{emailId}","href":"/api-reference/profiles/get-profile-inbox-email"}]},{"group":"Schema","pages":[]},{"group":"Secrets","pages":[{"title":"List Secret Requests","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/secret-requests","href":"/api-reference/secrets/list-secret-requests"},{"title":"Create Secret Request","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/secret-requests","href":"/api-reference/secrets/create-secret-request"},{"title":"Delete Secret Request","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml delete /agents/v2/secret-requests/{requestId}","href":"/api-reference/secrets/delete-secret-request"},{"title":"Revoke Secret Request","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/secret-requests/{requestId}/revoke","href":"/api-reference/secrets/revoke-secret-request"},{"title":"List Secret Templates","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/secret-templates","href":"/api-reference/secrets/list-secret-templates"},{"title":"Create Secret Template","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/secret-templates","href":"/api-reference/secrets/create-secret-template"},{"title":"Get Secret Template","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/secret-templates/{templateId}","href":"/api-reference/secrets/get-secret-template"},{"title":"Delete Secret Template","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml delete /agents/v2/secret-templates/{templateId}","href":"/api-reference/secrets/delete-secret-template"},{"title":"Update Secret Template","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml patch /agents/v2/secret-templates/{templateId}","href":"/api-reference/secrets/update-secret-template"},{"title":"Duplicate Secret Template","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/secret-templates/{templateId}/duplicate","href":"/api-reference/secrets/duplicate-secret-template"},{"title":"List Secrets","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/secrets","href":"/api-reference/secrets/list-secrets"},{"title":"Create Secret","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/secrets","href":"/api-reference/secrets/create-secret"},{"title":"Get Secret","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/secrets/{secretId}","href":"/api-reference/secrets/get-secret"},{"title":"Delete Secret","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml delete /agents/v2/secrets/{secretId}","href":"/api-reference/secrets/delete-secret"},{"title":"Update Secret","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml patch /agents/v2/secrets/{secretId}","href":"/api-reference/secrets/update-secret"},{"title":"Add Secret Field","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/secrets/{secretId}/fields","href":"/api-reference/secrets/add-secret-field"},{"title":"Remove Secret Field","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml delete /agents/v2/secrets/{secretId}/fields/{fieldKey}","href":"/api-reference/secrets/remove-secret-field"},{"title":"Rotate Secret","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml post /agents/v2/secrets/{secretId}/rotate","href":"/api-reference/secrets/rotate-secret"},{"title":"List Secret Versions","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/secrets/{secretId}/versions","href":"/api-reference/secrets/list-secret-versions"}]},{"group":"Vault","pages":[]},{"group":"Workflow Versions","pages":[{"title":"List workflow versions","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/workflows/{workflowId}/versions","href":"/api-reference/workflow-versions/list-workflow-versions"},{"title":"Get workflow version files","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/workflows/{workflowId}/versions/{versionId}/files","href":"/api-reference/workflow-versions/get-workflow-version-files"},{"title":"Get workflow version inputs","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/workflows/{workflowId}/versions/{versionId}/inputs","href":"/api-reference/workflow-versions/get-workflow-version-inputs"},{"title":"Get workflow version output schemas","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/agents/v2/openapi.yaml get /agents/v2/workflows/{workflowId}/versions/{versionId}/output-schemas","href":"/api-reference/workflow-versions/get-workflow-version-output-schemas"}]}]},{"group":"Webhooks","pages":[{"group":"API Reference","pages":[{"title":"Webhook Notification Payload","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/webhooks/openapi.json post /webhooks/example","href":"/api-reference/webhook-notification-payload"},{"title":"Batch Webhook Notification Payload","deprecated":null,"version":null,"openapi":"https://odyssey.asteroid.ai/webhooks/openapi.json post /webhooks/example-batch","href":"/api-reference/batch-webhook-notification-payload"}]}]}]},{"tab":"CLI","pages":[{"title":"CLI","href":"/cli/install"}]},{"tab":"MCP","pages":[{"title":"MCP","href":"/mcp/install"}]}]},"basePath":"","title":"Patch workflow head files - Asteroid Workflows","buildId":"dpl_596ePT575z4qnAFksq1biRW97aLY","deploymentId":"dpl_596ePT575z4qnAFksq1biRW97aLY","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C9Wu0MeN.js","utils-jWgu-6Qf.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DBD8f9qn.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-BGuX1ui5.js","snippetPresets-Evy63nQB.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BQHO1lnV.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-B6C8m-t_.js","shallow-BG4cT0fH.js","getApiPlaygroundDisplay-CgEPrE-D.js","CodeSnippet-CU8JyZ9N.js","CodeSnippets-BnxHU32T.js","Page-D6S0Yh6q.js","getPastedJson-CwiYOonh.js","icon-DYDpWmDf.js","MethodPill-C-J-l7_c.js","DuplicateIcon-B6ARwg9w.js","createIcon-Dsv4MtDq.js","DynamicMarkdown-CtasenyM.js","SectionHeading-YNcgYwjB.js","axios-vUo_bRtp.js","Markdown-CwLx6PAg.js","clsx-C3kuh_dz.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CmKHfscc.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-U3mI6Ljh.js"]}