{
"error": {
"code": "invalid_workflow",
"message": "Node 12 (KSampler): required input 'model' is not connected",
"organization_id": "org_01HXYZEXAMPLE",
"details": {
"node_errors": {
"12": {
"class_type": "SomeCustomNode",
"errors": [
{
"type": "unknown_node_class",
"message": "this deployment's build does not contain the node class SomeCustomNode."
}
]
}
},
"unknown_node_classes": [
"SomeCustomNode"
]
}
}
}
{
"error": {
"code": "invalid_workflow",
"message": "Node 12 (KSampler): required input 'model' is not connected",
"organization_id": "org_01HXYZEXAMPLE",
"details": {
"node_errors": {
"12": {
"class_type": "SomeCustomNode",
"errors": [
{
"type": "unknown_node_class",
"message": "this deployment's build does not contain the node class SomeCustomNode."
}
]
}
},
"unknown_node_classes": [
"SomeCustomNode"
]
}
}
}
{
"error": {
"code": "invalid_workflow",
"message": "Node 12 (KSampler): required input 'model' is not connected",
"organization_id": "org_01HXYZEXAMPLE",
"details": {
"node_errors": {
"12": {
"class_type": "SomeCustomNode",
"errors": [
{
"type": "unknown_node_class",
"message": "this deployment's build does not contain the node class SomeCustomNode."
}
]
}
},
"unknown_node_classes": [
"SomeCustomNode"
]
}
}
}
{
"error": {
"code": "invalid_workflow",
"message": "Node 12 (KSampler): required input 'model' is not connected",
"organization_id": "org_01HXYZEXAMPLE",
"details": {
"node_errors": {
"12": {
"class_type": "SomeCustomNode",
"errors": [
{
"type": "unknown_node_class",
"message": "this deployment's build does not contain the node class SomeCustomNode."
}
]
}
},
"unknown_node_classes": [
"SomeCustomNode"
]
}
}
}
{
"error": {
"code": "invalid_workflow",
"message": "Node 12 (KSampler): required input 'model' is not connected",
"organization_id": "org_01HXYZEXAMPLE",
"details": {
"node_errors": {
"12": {
"class_type": "SomeCustomNode",
"errors": [
{
"type": "unknown_node_class",
"message": "this deployment's build does not contain the node class SomeCustomNode."
}
]
}
},
"unknown_node_classes": [
"SomeCustomNode"
]
}
}
}
{
"error": {
"code": "invalid_workflow",
"message": "Node 12 (KSampler): required input 'model' is not connected",
"organization_id": "org_01HXYZEXAMPLE",
"details": {
"node_errors": {
"12": {
"class_type": "SomeCustomNode",
"errors": [
{
"type": "unknown_node_class",
"message": "this deployment's build does not contain the node class SomeCustomNode."
}
]
}
},
"unknown_node_classes": [
"SomeCustomNode"
]
}
}
}
jobs
Request cancellation
Requests cancellation and returns the current job object —
canceling (interruption takes effect at node/step boundaries),
canceled where the provider’s record already shows the interrupt, or
already-terminal. Idempotent: canceling a finished job is a no-op
returning the terminal state. On serverless, GPU seconds consumed
before the interrupt takes effect are still billed.
Authorization: Bearer <credential>. The credential is one of: an account-scoped API key (comfyui-…), accepted on Cloud and serverless; a Comfy Cloud session JWT; or an OAuth access token issued for the Comfy Cloud resource. Which kinds a given deployment accepts is deployment configuration — an API key always works on Cloud and serverless, and a deployment that does not accept JWT bearers answers 401 with a message saying so. Self-hosted accepts unauthenticated requests by default and can be configured with a static bearer token.
Lifecycle: queued → running → succeeded | failed | expired;
a cancel request, or the deletion of the deployment the job is running
on, moves running → canceling → canceled.
Terminal states: succeeded, canceled, failed, expired.
Embedded follow-up links — follow these, don't build URLs. A link is either an absolute URL or a host-relative reference (leading /) that already includes any prefix the serving surface is mounted under (e.g. a serverless gateway's /deployment/{deployment_id}/api/v2). Clients MUST resolve a host-relative link against the request origin (scheme + authority), never against a configured base URL — joining it to a base URL that carries the same mount prefix duplicates the prefix.
Values are nullable (a metric not yet available — e.g. execution_ms before a job starts running — is null, not omitted); the example below is deliberately all-non-null purely to work around a Spectral/nimma lint-tooling crash on a literal null inside a schema example combined with additionalProperties.nullable: true — the schema itself is unchanged and still allows null values at runtime.
The deployment the job was sent to: the id in the address it was posted at, which stays the same when the deployment moves to another release. Absent on a surface that runs jobs on no deployment.
The release of the deployment's build that ran the job, which can differ from the release the deployment runs now. Absent where the serving surface does not report it.
The version of the release in release_id, the number its build cut it as. Absent where the serving surface does not report it or could not look it up at the time of the answer.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"ComfyUI","colors":{"primary":"#49378B","light":"#F2FF59","dark":"#F2FF59"},"logo":{"light":"https://mintcdn.com/dripart/WCFdTagRdhtvk9-o/logo/light.svg?fit=max\u0026auto=format\u0026n=WCFdTagRdhtvk9-o\u0026q=85\u0026s=ec112de87239058f5a931a7e4b594965","dark":"https://mintcdn.com/dripart/QzWbjSCBG7w61rR3/logo/dark.svg?fit=max\u0026auto=format\u0026n=QzWbjSCBG7w61rR3\u0026q=85\u0026s=62b4d879fb3aadbd7a468d1539032d6f","href":"/"},"favicon":"https://mintcdn.com/dripart/maKDA164-rrTfyxY/favicon.ico?fit=max\u0026auto=format\u0026n=maKDA164-rrTfyxY\u0026q=85\u0026s=94f3a697cf4c9a1ee3961b69219d0942","appearance":{"default":"dark"},"navbar":{"links":[{"href":"https://blog.comfy.org/?utm_source=docs","label":"Blog"},{"href":"/tutorials/partner-nodes/pricing","label":"Pricing"},{"href":"https://platform.comfy.org/?utm_source=docs","label":"Platform"},{"href":"https://comfy.org/download?utm_source=docs","label":"Download"}],"primary":{"type":"button","label":"Comfy Cloud","href":"https://comfy.org/cloud?utm_source=docs"}},"footer":{"socials":{"github":"https://github.com/Comfy-Org/ComfyUI","x":"https://x.com/ComfyUI","discord":"https://discord.com/invite/comfyorg","youtube":"https://www.youtube.com/@comfyorg"},"links":[{"header":"Resources","items":[{"label":"installation","href":"/installation/system_requirements"},{"label":"Tutorials","href":"/tutorials/basic/text-to-image"},{"label":"Development","href":"/development/overview"}]},{"header":"Products","items":[{"label":"Features","href":"https://www.comfy.org/?utm_source=docs"},{"label":"Gallery","href":"https://www.comfy.org/gallery?utm_source=docs"},{"label":"Download","href":"https://www.comfy.org/download?utm_source=docs"}]},{"header":"Company","items":[{"label":"About","href":"https://www.comfy.org/about?utm_source=docs"},{"label":"Careers","href":"https://www.comfy.org/careers?utm_source=docs"},{"label":"Terms of Service","href":"https://www.comfy.org/terms-of-service?utm_source=docs"},{"label":"Privacy Policy","href":"https://www.comfy.org/privacy-policy?utm_source=docs"}]}]},"search":{"prompt":"Search Comfy documentation..."},"seo":{"metatags":{"googlebot":"max-video-preview:0"}},"icons":{"library":"fontawesome"},"integrations":{"ga4":{"measurementId":"G-MXC01ZDDHQ"},"posthog":{"apiKey":"phc_iKfK86id4xVYws9LybMje0h44eGtfwFgRPIBehmy8rO"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","href":""},{"language":"zh","footer":{"socials":{"github":"https://github.com/Comfy-Org/ComfyUI","x":"https://x.com/ComfyUI","discord":"https://discord.com/invite/comfyorg","youtube":"https://www.youtube.com/@comfyorg"},"links":[{"header":"资源","items":[{"label":"安装","href":"/zh/installation/system_requirements"},{"label":"教程","href":"/zh/tutorials/basic/text-to-image"},{"label":"开发","href":"/zh/development/overview"}]},{"header":"产品","items":[{"label":"功能","href":"https://www.comfy.org/?utm_source=docs"},{"label":"画廊","href":"https://www.comfy.org/gallery?utm_source=docs"},{"label":"下载","href":"https://www.comfy.org/download?utm_source=docs"}]},{"header":"公司","items":[{"label":"关于","href":"https://www.comfy.org/about?utm_source=docs"},{"label":"招聘","href":"https://www.comfy.org/careers?utm_source=docs"},{"label":"服务条款","href":"https://www.comfy.org/terms-of-service?utm_source=docs"},{"label":"隐私政策","href":"https://www.comfy.org/privacy-policy?utm_source=docs"}]}]},"href":"zh"},{"language":"ja","footer":{"socials":{"github":"https://github.com/Comfy-Org/ComfyUI","x":"https://x.com/ComfyUI","discord":"https://discord.com/invite/comfyorg","youtube":"https://www.youtube.com/@comfyorg"},"links":[{"header":"リソース","items":[{"label":"インストール","href":"/ja/installation/system_requirements"},{"label":"チュートリアル","href":"/ja/tutorials/basic/text-to-image"},{"label":"開発","href":"/ja/development/overview"}]},{"header":"プロダクト","items":[{"label":"機能","href":"https://www.comfy.org/?utm_source=docs"},{"label":"ギャラリー","href":"https://www.comfy.org/gallery?utm_source=docs"},{"label":"ダウンロード","href":"https://www.comfy.org/download?utm_source=docs"}]},{"header":"会社情報","items":[{"label":"概要","href":"https://www.comfy.org/about?utm_source=docs"},{"label":"採用情報","href":"https://www.comfy.org/careers?utm_source=docs"},{"label":"利用規約","href":"https://www.comfy.org/terms-of-service?utm_source=docs"},{"label":"プライバシーポリシー","href":"https://www.comfy.org/privacy-policy?utm_source=docs"}]}]},"navbar":{"links":[{"href":"/ja/tutorials/partner-nodes/pricing","label":"料金"},{"href":"https://comfy.org/download?utm_source=docs","label":"ダウンロード"}],"primary":{"type":"button","label":"Comfy Cloud","href":"https://comfy.org/cloud?utm_source=docs"}},"href":"ja"},{"language":"ko","footer":{"socials":{"github":"https://github.com/Comfy-Org/ComfyUI","x":"https://x.com/ComfyUI","discord":"https://discord.com/invite/comfyorg","youtube":"https://www.youtube.com/@comfyorg"},"links":[{"header":"리소스","items":[{"label":"설치","href":"/ko/installation/system_requirements"},{"label":"튜토리얼","href":"/ko/tutorials/basic/text-to-image"},{"label":"개발","href":"/ko/development/overview"}]},{"header":"제품","items":[{"label":"기능","href":"https://www.comfy.org/?utm_source=docs"},{"label":"갤러리","href":"https://www.comfy.org/gallery?utm_source=docs"},{"label":"다운로드","href":"https://www.comfy.org/download?utm_source=docs"}]},{"header":"회사 정보","items":[{"label":"소개","href":"https://www.comfy.org/about?utm_source=docs"},{"label":"채용","href":"https://www.comfy.org/careers?utm_source=docs"},{"label":"이용약관","href":"https://www.comfy.org/terms-of-service?utm_source=docs"},{"label":"개인정보 처리방침","href":"https://www.comfy.org/privacy-policy?utm_source=docs"}]}]},"navbar":{"links":[{"href":"/ko/tutorials/partner-nodes/pricing","label":"가격 정책"},{"href":"https://comfy.org/download?utm_source=docs","label":"다운로드"}],"primary":{"type":"button","label":"Comfy Cloud","href":"https://comfy.org/cloud?utm_source=docs"}},"href":"ko"},{"language":"es","href":"es"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"dripart","hasAudioNarration":false,"actualSubdomain":"dripart","customDomains":["docs.comfy.org"],"gitSource":{"type":"github","owner":"comfy-org","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"feedback":{"thumbs":true,"edits":true,"issues":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6af13acd3de17d5f9fbbbbc7","clientVersion":"0.0.4088","searchFilterCounts":[{"language":"en","tag":"Built-in Nodes","count":1166},{"language":"ja","tag":"組み込みノード","count":1166},{"language":"zh","tag":"内置节点","count":1166},{"language":"en","tag":"Nodes","count":1165},{"language":"ja","tag":"ノード","count":1165},{"language":"zh","tag":"节点","count":1165},{"language":"ko","tag":"내장 노드 (Built-in Nodes)","count":1124},{"language":"ko","tag":"노드","count":1123},{"language":"es","tag":"Nodos integrados","count":1058},{"language":"es","tag":"Nodos","count":1057},{"language":"en","tag":"Tutorials","count":414},{"language":"es","tag":"Tutoriales","count":414},{"language":"en","tag":"Model","count":381},{"language":"ja","tag":"Model","count":381},{"language":"ko","tag":"Model","count":381},{"language":"zh","tag":"Model","count":381},{"language":"es","tag":"Modelo","count":378},{"language":"en","tag":"Image","count":353},{"language":"en","tag":"Partner","count":348},{"language":"ja","tag":"Partner","count":348},{"language":"ko","tag":"Partner","count":348},{"language":"zh","tag":"Partner","count":348},{"language":"es","tag":"Partner","count":346},{"language":"es","tag":"Imagen","count":323},{"language":"ja","tag":"はじめに","count":308},{"language":"ko","tag":"시작하기","count":308},{"language":"zh","tag":"开始使用","count":308},{"language":"ja","tag":"API 開発","count":295},{"language":"ko","tag":"API 개발","count":295},{"language":"zh","tag":"API 开发","count":295},{"language":"en","tag":"Video","count":289},{"language":"en","tag":"Comfy Router","count":287},{"language":"es","tag":"Comfy Router","count":267},{"language":"es","tag":"Video","count":264},{"language":"ja","tag":"Comfy Router","count":258},{"language":"ko","tag":"Comfy Router","count":258},{"language":"zh","tag":"Comfy Router","count":258},{"language":"en","tag":"Models","count":257},{"language":"en","tag":"All Models","count":254},{"language":"es","tag":"Models","count":228},{"language":"ja","tag":"Models","count":228},{"language":"ko","tag":"Models","count":228},{"language":"zh","tag":"Models","count":228},{"language":"es","tag":"All Models","count":225},{"language":"ja","tag":"画像","count":205},{"language":"ko","tag":"이미지","count":205},{"language":"zh","tag":"图像","count":205},{"language":"ja","tag":"Video","count":193},{"language":"zh","tag":"Video","count":193},{"language":"ko","tag":"Video","count":176}],"searchSettings":{"maxResults":10}},"assistantConfig":{"enableStarterQuestions":false},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"custom.css","content":":root{--ink-900: #151417;--hub-shell-light: #f7f6f9;--accent-purple: #49378b;--accent-yellow: #f2ff59;--primary: 73 55 139 !important;--primary-light: 242 255 89 !important;--primary-dark: 242 255 89 !important}html.dark{--primary: 242 255 89 !important;--background-dark: 14 14 13 !important}html.dark body{background-color:#0e0e0d!important}html.dark #navbar,html.dark #navbar-transition{background-color:var(--ink-900)!important}html.dark #sidebar,html.dark #sidebar-content{background-color:rgb(var(--background-dark))!important}html.dark #navbar,html.dark #navbar-transition{box-shadow:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.dark #navbar-transition{border-bottom:1px solid rgba(255, 255, 255, 0.08)!important;opacity:1!important}html.dark img.nav-logo{filter:none}html.dark #sidebar-content a:not([aria-current=\"page\"]){color:rgba(255, 255, 255, 0.72)!important}html.dark #sidebar-content a:not([aria-current=\"page\"]) *{color:inherit!important}html.dark #sidebar-content a[aria-current=\"page\"]{color:var(--accent-yellow)!important;background-color:rgba(242, 255, 89, 0.10)!important}html.dark #sidebar-content a[aria-current=\"page\"] *{color:inherit!important}html.dark .nav-tabs-item[data-active],html.dark mobile-nav-tabs-item[data-active]{color:var(--accent-yellow)!important}html.dark #navbar a[href*=\"comfy.org/cloud\"] span.absolute{background-color:var(--accent-yellow)!important}html.dark #navbar a[href*=\"comfy.org/cloud\"] span.text-white{color:#151417!important}html:not(.dark) #background-color,html:not(.dark) #navbar,html:not(.dark) #navbar-transition,html:not(.dark) #sidebar,html:not(.dark) #sidebar-content{background-color:var(--hub-shell-light)!important}html:not(.dark) .nav-tabs-item[data-active],html:not(.dark) mobile-nav-tabs-item[data-active],html:not(.dark) nav-dropdown-item[data-active]{background-color:transparent!important;box-shadow:none!important;color:var(--accent-purple)!important;font-weight:600!important}html:not(.dark) .nav-tabs-item[data-active] *,html:not(.dark) mobile-nav-tabs-item[data-active] *,html:not(.dark) nav-dropdown-item[data-active] *{color:inherit!important}html:not(.dark) #sidebar-content li:has(>a[aria-current=\"page\"]){background-color:transparent!important;box-shadow:none!important}html:not(.dark) #sidebar-content a[aria-current=\"page\"]{color:var(--accent-purple)!important;background-color:rgba(73, 55, 139, 0.1)!important;font-weight:600!important}html:not(.dark) #sidebar-content a[aria-current=\"page\"] *{color:inherit!important}html:not(.dark) toc-item[data-active],html:not(.dark) toc-item[data-active-deepest],html:not(.dark) toc-item[data-active] a,html:not(.dark) toc-item[data-active-deepest] a{background-color:transparent!important;color:var(--accent-purple)!important;font-weight:600!important}html:not(.dark) #header :where(h1,h2,h3,h4,h5,h6),html:not(.dark) #content-area :where(h1,h2,h3,h4,h5,h6){color:#151417!important}html:not(.dark) #navbar a[href*=\"comfy.org/cloud\"]{background-color:transparent!important;color:var(--accent-purple)!important;border-radius:0.75rem;box-shadow:inset 0 0 0 1px var(--accent-purple)!important}html:not(.dark) #navbar a[href*=\"comfy.org/cloud\"] span.absolute{background-color:transparent!important}html:not(.dark) #navbar a[href*=\"comfy.org/cloud\"] *{color:inherit!important}#sidebar .sticky.top-0.pointer-events-none.bg-linear-to-b{background-image:none!important}@media (min-width: 1024px){#navbar.is-not-custom.is-not-center+div:has(>#sidebar),.max-w-8xl.mx-auto.relative,.max-w-8xl.mx-auto{max-width:none!important;width:100%!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}#navbar [class*=\"px-12\"],#navbar [class*=\"mx-4\"]{padding-left:0!important;padding-right:1.5rem!important;margin-left:0!important;margin-right:0!important}#navbar a.select-none,#navbar .nav-logo{margin-left:1rem!important}#navbar .nav-tabs{padding-left:2rem!important}#sidebar{left:0!important;margin-left:0!important;box-shadow:none!important}#sidebar-content{margin-left:0!important;padding-left:1rem!important;box-sizing:border-box!important}#navbar,#navbar-transition{left:0!important;right:0!important;width:100%!important;max-width:none!important}#content-area{margin-left:0!important;max-width:none!important;width:100%!important;padding-left:18rem!important}#sidebar.sticky~#content-container #content-area{padding-left:2rem!important;padding-right:2rem!important}#content-container,#body-content{max-width:none!important;width:100%!important}:root{--content-width: 100%;--sidebar-width: 18rem}}@media (min-width: 1024px){nav#sidebar,#sidebar[style]{left:0!important;right:auto!important;margin-left:0!important;transform:none!important}#navbar li.navbar-link:has(a[href*=\"comfy.org/download\"]){margin-right:0!important}#navbar a[href*=\"comfy.org/download\"]{box-sizing:border-box;border:1px solid rgb(255 255 255 / 0.22);border-radius:0.75rem;padding:7px 0.875rem!important;color:#fff!important;font-size:0.875rem;line-height:1.25rem}html:not(.dark) #navbar a[href*=\"comfy.org/download\"]{border-color:rgb(0 0 0 / 0.16);color:#151417!important}#navbar a[href*=\"comfy.org/download\"]:hover{background:rgb(255 255 255 / 0.06)}html:not(.dark) #navbar a[href*=\"comfy.org/download\"]:hover{background:rgb(0 0 0 / 0.04)}#navbar li.navbar-link:has(a[href*=\"comfy.org/download\"])+.whitespace-nowrap,#navbar .flex.space-x-6>.whitespace-nowrap.hidden{margin-left:0.5rem!important}}body:has(.router-api-reference-marker) #content,body:has(.router-api-reference-marker) #header{max-width:48rem}body:has(.router-api-reference-marker) #content-area table{width:100%;table-layout:auto}body:has(.router-api-reference-marker) #content-area th,body:has(.router-api-reference-marker) #content-area td{min-width:4rem!important;overflow-wrap:anywhere}body:has(.router-api-reference-marker) #content-area table:has(th:nth-child(6)) th:nth-child(3),body:has(.router-api-reference-marker) #content-area table:has(th:nth-child(6)) td:nth-child(3){min-width:5rem!important}@media (max-width: 1535px){body:has(.router-api-reference-marker) #content-side-layout{display:none!important}}body:has(.router-provider-coverage-marker) #content,body:has(.router-provider-coverage-marker) #header{max-width:64rem}body:has(.router-provider-coverage-marker) #content-area table{width:100%;table-layout:auto}body:has(.router-provider-coverage-marker) #content-area th,body:has(.router-provider-coverage-marker) #content-area td{min-width:5rem!important;overflow-wrap:anywhere}body:has(.router-provider-coverage-marker) #content-area th:first-child,body:has(.router-provider-coverage-marker) #content-area td:first-child{min-width:12rem!important}body:has(.router-quickstart-marker) [data-component-part=\"card-content\"] [data-component-part=\"code-block-root\"][style*=\"height:190px\"],body:has(.router-quickstart-marker) [data-component-part=\"card-content\"] [data-component-part=\"code-block-root\"][style*=\"height: 190px\"]{height:86px!important}"},{"filePath":"samples-cards.css","content":".sample-card-grid{display:grid;gap:20px;grid-template-columns:repeat(2, minmax(0, 1fr));margin-top:28px}.sample-card{min-width:0;perspective:1200px}.sample-card-inner{height:565px;position:relative;transform-style:preserve-3d;transition:transform 560ms cubic-bezier(.2, .75, .3, 1)}.sample-card[data-flipped=\"true\"] .sample-card-inner{transform:rotateY(180deg)}.sample-card-face{backface-visibility:hidden;background:#fff;border:1px solid #e5e1eb;border-radius:12px;box-sizing:border-box;height:100%;inset:0;overflow:hidden;position:absolute;width:100%}.sample-card-front{display:flex;flex-direction:column}.sample-card-back{opacity:0;pointer-events:none;transform:rotateY(180deg);visibility:hidden}.sample-card[data-flipped=\"true\"] .sample-card-front{pointer-events:none;transition:visibility 0s linear 280ms;visibility:hidden}.sample-card[data-flipped=\"true\"][data-active-path=\"api\"] .sample-card-back[data-sample-path=\"api\"],.sample-card[data-flipped=\"true\"][data-active-path=\"endpoint\"] .sample-card-back[data-sample-path=\"endpoint\"]{opacity:1;pointer-events:auto;visibility:visible}.sample-card-preview{border-bottom:1px solid #e5e1eb;cursor:pointer;display:block;width:100%}.sample-card-body{display:flex;flex:1;flex-direction:column;padding:20px}.sample-card-body h2,.sample-path-body h2{color:#49378b;font-size:18px;font-weight:700;letter-spacing:-.02em;margin:0 0 8px}.sample-path-body h2{text-align:center}.sample-card-body>p{color:#5f5966;font-size:14px;line-height:1.55;margin:0;min-height:66px}.sample-card-actions{display:flex;gap:8px;margin-top:20px}.sample-card-actions button{background:#fff;border:1px solid #cfc8de;border-radius:6px;color:#49378b;cursor:pointer;flex:1;font-size:13px;font-weight:700;padding:10px 12px}.sample-card-links{border-top:1px solid #eeeaf1;display:flex;gap:8px;margin-top:16px;padding-top:12px}.sample-card-links a{color:#625b6c;font-size:12px;font-weight:650;text-decoration:none}.sample-card-links span{color:#b3adba}.sample-path-body{padding:20px}.sample-path-body>button{background:transparent;border:0;color:#625b6c;cursor:pointer;font-size:12px;font-weight:700;padding:0}.sample-path-eyebrow{color:#857a9e;font-size:10px;font-weight:700;letter-spacing:.08em;margin:19px 0 5px;text-align:center;text-transform:uppercase}.sample-path-body>p:not(.sample-path-eyebrow){color:#5f5966;font-size:12px;line-height:1.5;margin:0 0 15px}.sample-path-steps{display:grid;gap:8px}.sample-path-step{align-items:center;background:#faf9fc;border:1px solid #e5e1ea;border-radius:8px;display:flex;gap:10px;padding:10px 11px}.sample-path-number{align-items:center;background:#49378b;border-radius:999px;color:#fff;display:inline-flex;flex:0 0 21px;font-size:11px;font-weight:700;height:21px;justify-content:center}.sample-path-copy{flex:1;min-width:0}.sample-path-copy strong{color:#312c36;display:block;font-size:12px}.sample-path-copy span{color:#706a75;display:block;font-size:11px;line-height:1.35;margin-top:2px}.sample-path-step a{color:#49378b;flex:0 0 auto;font-size:11px;font-weight:700;text-decoration:none}@media (max-width: 768px){.sample-card-grid{grid-template-columns:1fr}.sample-card-inner{height:clamp(620px, 180vw, 760px)}}"}],"page":{"pagePath":"ja/api-reference/v2/jobs/request-cancellation","slug":"/ja/api-reference/v2/jobs/request-cancellation","pageMetadata":{"title":"Request cancellation","description":"Requests cancellation and returns the current job object —\n`canceling` (interruption takes effect at node/step boundaries),\n`canceled` where the provider's record already shows the interrupt, or\nalready-terminal. Idempotent: canceling a finished job is a no-op\nreturning the terminal state. On serverless, GPU seconds consumed\nbefore the interrupt takes effect are still billed.\n","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml post /api/v2/jobs/{id}/cancel","href":"/ja/api-reference/v2/jobs/request-cancellation","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: [\"Requests cancellation and returns the current job object —\\n\", _jsx(_components.code, {\n children: \"canceling\"\n }), \" (interruption takes effect at node/step boundaries),\\n\", _jsx(_components.code, {\n children: \"canceled\"\n }), \" where the provider’s record already shows the interrupt, or\\nalready-terminal. Idempotent: canceling a finished job is a no-op\\nreturning the terminal state. On serverless, GPU seconds consumed\\nbefore the interrupt takes effect are still billed.\"]\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":"Request cancellation","description":"Requests cancellation and returns the current job object —\n`canceling` (interruption takes effect at node/step boundaries),\n`canceled` where the provider's record already shows the interrupt, or\nalready-terminal. Idempotent: canceling a finished job is a no-op\nreturning the terminal state. On serverless, GPU seconds consumed\nbefore the interrupt takes effect are still billed.\n","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml post /api/v2/jobs/{id}/cancel","href":"/ja/api-reference/v2/jobs/request-cancellation","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/dripart/9d6bf2b2531e904c/giscus-comments.js","/_mintlify/custom/dripart/bd0341946f3c75a6/syft.js","/_mintlify/custom/dripart/042392a43b5e681e/samples-cards.js"],"openApiReferenceData":{"operation":{"operationId":"cancelJob","tags":["jobs"],"summary":"Request cancellation","description":"Requests cancellation and returns the current job object —\n`canceling` (interruption takes effect at node/step boundaries),\n`canceled` where the provider's record already shows the interrupt, or\nalready-terminal. Idempotent: canceling a finished job is a no-op\nreturning the terminal state. On serverless, GPU seconds consumed\nbefore the interrupt takes effect are still billed.\n","x-retryable":true,"parameters":["edea366e-a4a7-4abb-99c9-4e6e7a39239f"],"responses":{"200":"435fe5c2-1a76-4124-b454-677c14efa42a","401":"49a5fb69-5644-40eb-ba27-d5a7f80b42b1","403":"53e3d219-4150-4963-b51f-9147bcd17537","404":"c241f718-0db0-4e1a-9d7b-5bfb72a0d9de","429":"1c649a43-2987-44bc-b948-0887aca9e28d","500":"6a1548e7-1fa0-4f3e-892a-9af77994b772","503":"af66f9ad-974d-468f-b986-34c7d6d686aa"},"method":"post","type":"path","servers":["ddabda62-d3c9-40f8-881d-a751e619aff3","62680931-7b02-4daf-b27f-819e4c14ed64","0a142380-c92c-4874-83af-7dc79bfcdc68"],"security":["e83e9dfc-ebdf-4caa-994b-25be4bb53550","78687c62-3745-43d4-a655-7ff88a24d9ae"],"path":"/api/v2/jobs/{id}/cancel","baseUrlOptions":["http://127.0.0.1:8189","https://cloud.comfy.org","https://{deployment}.run.comfy.app"],"title":"Request cancellation","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"edea366e-a4a7-4abb-99c9-4e6e7a39239f":{"name":"id","in":"path","required":true,"schema":{"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"},"example":"7f3d2c1b-9a8e-4d6f-b012-3c4d5e6f7a8b"}},"responses":{"435fe5c2-1a76-4124-b454-677c14efa42a":{"description":"Current job state.","content":{"application/json":{"schema":{"type":"object","description":"One execution of a workflow. Durable from creation until `expires_at`; `outputs` populates incrementally during execution.","required":["id","status","created_at","started_at","completed_at","expires_at","queue_position","progress","outputs","error","urls"],"properties":{"id":{"type":"string","example":"7f3d2c1b-9a8e-4d6f-b012-3c4d5e6f7a8b","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"status":{"type":"string","enum":["queued","running","succeeded","canceling","canceled","failed","expired"],"description":"Lifecycle: queued → running → succeeded | failed | expired;\na cancel request, or the deletion of the deployment the job is running\non, moves running → canceling → canceled.\nTerminal states: succeeded, canceled, failed, expired.\n","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"created_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"started_at":{"oneOf":[{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"started_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","isRequired":true,"uniqueKey":"started_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"started_at","typeLabel":"string\u003cdate-time> | null"},"completed_at":{"oneOf":[{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"completed_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","isRequired":true,"uniqueKey":"completed_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"completed_at","typeLabel":"string\u003cdate-time> | null"},"expires_at":{"type":"string","format":"date-time","description":"Retention deadline — a platform property, not an API constant.","isRequired":true,"uniqueKey":"expires_at","typeLabel":"string\u003cdate-time>"},"queue_position":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"queue_position.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"queue_position.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"queue_position","typeLabel":"integer | null"},"progress":{"oneOf":[{"type":"object","description":"The latest progress snapshot; same data the SSE stream pushes.","required":["value","nodes_done","nodes_total"],"properties":{"value":{"type":"number","format":"double","minimum":0,"maximum":1,"description":"Overall fraction, server-computed.","example":0.42,"isRequired":true,"uniqueKey":"progress.oneOf.0.value","typeLabel":"number\u003cdouble>"},"nodes_done":{"type":"integer","example":11,"isRequired":true,"uniqueKey":"progress.oneOf.0.nodes_done","typeLabel":"integer"},"nodes_total":{"type":"integer","example":31,"isRequired":true,"uniqueKey":"progress.oneOf.0.nodes_total","typeLabel":"integer"},"current_node":{"oneOf":[{"type":"string","example":"12","uniqueKey":"progress.oneOf.0.current_node.oneOf.0","typeLabel":"string"},{"type":"null","example":"12","uniqueKey":"progress.oneOf.0.current_node.oneOf.1","typeLabel":"null"}],"uniqueKey":"progress.oneOf.0.current_node","typeLabel":"string | null"},"current_node_class":{"oneOf":[{"type":"string","example":"KSampler","uniqueKey":"progress.oneOf.0.current_node_class.oneOf.0","typeLabel":"string"},{"type":"null","example":"KSampler","uniqueKey":"progress.oneOf.0.current_node_class.oneOf.1","typeLabel":"null"}],"uniqueKey":"progress.oneOf.0.current_node_class","typeLabel":"string | null"},"step":{"oneOf":[{"type":"integer","example":21,"uniqueKey":"progress.oneOf.0.step.oneOf.0","typeLabel":"integer"},{"type":"null","example":21,"uniqueKey":"progress.oneOf.0.step.oneOf.1","typeLabel":"null"}],"uniqueKey":"progress.oneOf.0.step","typeLabel":"integer | null"},"steps":{"oneOf":[{"type":"integer","example":50,"uniqueKey":"progress.oneOf.0.steps.oneOf.0","typeLabel":"integer"},{"type":"null","example":50,"uniqueKey":"progress.oneOf.0.steps.oneOf.1","typeLabel":"null"}],"uniqueKey":"progress.oneOf.0.steps","typeLabel":"integer | null"},"message":{"oneOf":[{"type":"string","example":"KSampler 21/50","uniqueKey":"progress.oneOf.0.message.oneOf.0","typeLabel":"string"},{"type":"null","example":"KSampler 21/50","uniqueKey":"progress.oneOf.0.message.oneOf.1","typeLabel":"null"}],"uniqueKey":"progress.oneOf.0.message","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"progress.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"progress.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"progress","typeLabel":"object | null"},"outputs":{"type":"array","items":{"type":"object","description":"A committed job output. Outputs are assets: `id` is the asset UUID, retrievable via GET /api/v2/assets/{id} for as long as the job is retained. `hash` is lazily computed and may be null on the retrieval hot path.","required":["node_id","name","type","content_type","size_bytes","id","hash","url","url_expires_at"],"properties":{"node_id":{"type":"string","description":"The workflow node that reported this file; empty when the worker named none.","example":"9","isRequired":true,"uniqueKey":"outputs.items.[INDEX].node_id","typeLabel":"string"},"name":{"type":"string","example":"ComfyUI_00001_.png","isRequired":true,"uniqueKey":"outputs.items.[INDEX].name","typeLabel":"string"},"type":{"type":"string","enum":["image","video","audio","text","file","latent"],"description":"Normalized output kind — nothing silently dropped.","isRequired":true,"uniqueKey":"outputs.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"content_type":{"type":"string","example":"image/png","isRequired":true,"uniqueKey":"outputs.items.[INDEX].content_type","typeLabel":"string"},"size_bytes":{"type":"integer","format":"int64","example":1848320,"isRequired":true,"uniqueKey":"outputs.items.[INDEX].size_bytes","typeLabel":"integer\u003cint64>"},"id":{"type":"string","description":"Asset UUID.","example":"9f8a1c0d-2b3e-4f56-...","isRequired":true,"uniqueKey":"outputs.items.[INDEX].id","typeLabel":"string"},"hash":{"oneOf":[{"type":"string","description":"`blake3:\u003chex>`; null until lazily computed.","isRequired":true,"uniqueKey":"outputs.items.[INDEX].hash.oneOf.0","typeLabel":"string"},{"type":"null","description":"`blake3:\u003chex>`; null until lazily computed.","isRequired":true,"uniqueKey":"outputs.items.[INDEX].hash.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"outputs.items.[INDEX].hash","typeLabel":"string | null"},"url":{"type":"string","format":"uri","isRequired":true,"uniqueKey":"outputs.items.[INDEX].url","typeLabel":"string\u003curi>"},"url_expires_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"outputs.items.[INDEX].url_expires_at","typeLabel":"string\u003cdate-time>"},"job_id":{"oneOf":[{"type":"string","description":"ID of the job that produced this output.","uniqueKey":"outputs.items.[INDEX].job_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"ID of the job that produced this output.","uniqueKey":"outputs.items.[INDEX].job_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"outputs.items.[INDEX].job_id","typeLabel":"string | null"}},"uniqueKey":"outputs.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"outputs","typeLabel":"object[]"},"error":{"oneOf":[{"type":"object","description":"Execution failure detail, carried in `job.error` (not an HTTP error).","required":["code","message"],"properties":{"code":{"type":"string","example":"node_execution_error","isRequired":true,"uniqueKey":"error.oneOf.0.code","typeLabel":"string"},"message":{"type":"string","description":"Why the job failed, written for a person to read. On a serverless deployment, where ComfyUI refused the workflow, it names the rejected nodes it has room for and their reasons, which `node_errors` carries in full. Its wording may change; read `code` and `node_errors` rather than matching this text.","isRequired":true,"uniqueKey":"error.oneOf.0.message","typeLabel":"string"},"node_id":{"oneOf":[{"type":"string","uniqueKey":"error.oneOf.0.node_id.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.oneOf.0.node_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.oneOf.0.node_id","typeLabel":"string | null"},"class_type":{"oneOf":[{"type":"string","uniqueKey":"error.oneOf.0.class_type.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.oneOf.0.class_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.oneOf.0.class_type","typeLabel":"string | null"},"traceback":{"oneOf":[{"type":"string","uniqueKey":"error.oneOf.0.traceback.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.oneOf.0.traceback.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.oneOf.0.traceback","typeLabel":"string | null"},"node_errors":{"type":"object","description":"Every node ComfyUI rejected when it refused the workflow before running any of it (a value outside its allowed range, a model the deployment does not contain, a graph that loops back on itself), keyed by node id, under the names ComfyUI gave them. Absent when the workflow ran and a node raised: `node_id`, `class_type` and `traceback` describe that failure instead.","additionalProperties":{"type":"object","description":"One node that was rejected, and why: by ComfyUI when it refused the workflow after dispatch, or by the gateway when it refused the workflow at submit.","required":["errors"],"properties":{"errors":{"type":"array","items":{"type":"object","description":"One problem found with a node. `type` is the code for it: ComfyUI's (for example `value_not_in_list`, `value_bigger_than_max`, `dependency_cycle`), or one of the gateway's, sent where its submit checks are switched on: `unknown_node_class` (a node class the deployment's build does not contain), `waits_for_browser` (a node the workflow would run whose class waits for a browser tab to answer while the job runs, which a deployment never has), `invalid_node` (the node is not a JSON object), `invalid_inputs` (its `inputs` is present but not an object, refused only where the deployment's ComfyUI would fail such a node anyway, so no workflow that runs today is refused), or `invalid_class_type` (its `class_type` is missing or is not a non-empty string). ComfyUI's `missing_node_type` means the same as `unknown_node_class`, found after dispatch rather than at submit. For either, `message` ends naming the node pack that provides the class where the Comfy node registry knows one. `details` usually starts with the input it is about.","required":["type","message"],"properties":{"type":{"type":"string","example":"value_not_in_list","isRequired":true,"uniqueKey":"error.oneOf.0.node_errors.additionalProperties.errors.items.[INDEX].type","typeLabel":"string"},"message":{"type":"string","example":"Value not in list","isRequired":true,"uniqueKey":"error.oneOf.0.node_errors.additionalProperties.errors.items.[INDEX].message","typeLabel":"string"},"details":{"type":"string","uniqueKey":"error.oneOf.0.node_errors.additionalProperties.errors.items.[INDEX].details","typeLabel":"string"}},"uniqueKey":"error.oneOf.0.node_errors.additionalProperties.errors.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"error.oneOf.0.node_errors.additionalProperties.errors","typeLabel":"object[]"},"class_type":{"type":"string","uniqueKey":"error.oneOf.0.node_errors.additionalProperties.class_type","typeLabel":"string"}},"uniqueKey":"error.oneOf.0.node_errors.additionalProperties","typeLabel":"object"},"example":{"22":{"class_type":"LoraLoader","errors":[{"type":"value_not_in_list","message":"Value not in list","details":"lora_name: 'sdxl\\Hyper-SDXL-8steps-lora.safetensors' not in (list of length 40)"}]}},"uniqueKey":"error.oneOf.0.node_errors","typeLabel":"object"}},"isRequired":true,"uniqueKey":"error.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"error.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"error","typeLabel":"object | null"},"urls":{"type":"object","description":"Embedded follow-up links — follow these, don't build URLs. A link is either an absolute URL or a host-relative reference (leading `/`) that already includes any prefix the serving surface is mounted under (e.g. a serverless gateway's `/deployment/{deployment_id}/api/v2`). Clients MUST resolve a host-relative link against the request origin (scheme + authority), never against a configured base URL — joining it to a base URL that carries the same mount prefix duplicates the prefix.","required":["self","events","cancel"],"properties":{"self":{"type":"string","format":"uri-reference","isRequired":true,"uniqueKey":"urls.self","typeLabel":"string\u003curi-reference>"},"events":{"type":"string","format":"uri-reference","isRequired":true,"uniqueKey":"urls.events","typeLabel":"string\u003curi-reference>"},"cancel":{"type":"string","format":"uri-reference","isRequired":true,"uniqueKey":"urls.cancel","typeLabel":"string\u003curi-reference>"},"logs":{"type":"string","format":"uri-reference","description":"Where to read what this run printed. Present on any surface that captures execution logs, which is why it is the one link here that is optional: absent means this surface captures none, for any job, so a client can stop looking without spending a request on an answer it already has.\nFollow this link rather than building the path from the job id. The two are not interchangeable: a surface may be mounted under a prefix this link already carries and a hand-built path would not, and a surface that does not implement the operation at all answers a routing `404` — indistinguishable, to the client, from the `404` that means the job itself is gone. Present does NOT mean this job has a log, and it is deliberately not a signal about one: a surface that captures logs offers the link on every job, including those it will answer `204` for and those whose log it withholds. Read the log, not the link.","uniqueKey":"urls.logs","typeLabel":"string\u003curi-reference>"}},"isRequired":true,"uniqueKey":"urls","typeLabel":"object"},"metrics":{"type":"object","description":"Values are nullable (a metric not yet available — e.g. `execution_ms` before a job starts running — is `null`, not omitted); the example below is deliberately all-non-null purely to work around a Spectral/nimma lint-tooling crash on a literal `null` inside a schema `example` combined with `additionalProperties.nullable: true` — the schema itself is unchanged and still allows null values at runtime.","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"metrics.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"metrics.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"metrics.additionalProperties","typeLabel":"integer | null"},"example":{"queue_ms":9000,"execution_ms":42000},"uniqueKey":"metrics","typeLabel":"object"},"deployment_id":{"type":"string","description":"The deployment the job was sent to: the id in the address it was posted at, which stays the same when the deployment moves to another release. Absent on a surface that runs jobs on no deployment.","example":"dep-0f19a2b3c4d5","uniqueKey":"deployment_id","typeLabel":"string"},"release_id":{"type":"string","description":"The release of the deployment's build that ran the job, which can differ from the release the deployment runs now. Absent where the serving surface does not report it.","example":"7c1e9a40-3b2d-4f6a-9e81-0c5d2a7b4f13","uniqueKey":"release_id","typeLabel":"string"},"release_version":{"type":"integer","minimum":1,"description":"The version of the release in `release_id`, the number its build cut it as. Absent where the serving surface does not report it or could not look it up at the time of the answer.","example":3,"uniqueKey":"release_version","typeLabel":"integer"},"metadata":{"type":"object","description":"The labels the job was submitted with, exactly as sent. Absent when it was sent with none.","additionalProperties":{"type":"string","uniqueKey":"metadata.additionalProperties","typeLabel":"string"},"example":{"client":"acme"},"uniqueKey":"metadata","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"7f3d2c1b-9a8e-4d6f-b012-3c4d5e6f7a8b","status":"queued","created_at":"2023-11-07T05:31:56Z","started_at":"2023-11-07T05:31:56Z","completed_at":"2023-11-07T05:31:56Z","expires_at":"2023-11-07T05:31:56Z","queue_position":123,"progress":{"value":0.42,"nodes_done":11,"nodes_total":31,"current_node":"12","current_node_class":"KSampler","step":21,"steps":50,"message":"KSampler 21/50"},"outputs":[{"node_id":"9","name":"ComfyUI_00001_.png","type":"image","content_type":"image/png","size_bytes":1848320,"id":"9f8a1c0d-2b3e-4f56-...","hash":"\u003cstring>","url":"\u003cstring>","url_expires_at":"2023-11-07T05:31:56Z","job_id":"\u003cstring>"}],"error":{"code":"node_execution_error","message":"\u003cstring>","node_id":"\u003cstring>","class_type":"\u003cstring>","traceback":"\u003cstring>","node_errors":{"22":{"class_type":"LoraLoader","errors":[{"type":"value_not_in_list","message":"Value not in list","details":"lora_name: 'sdxl\\Hyper-SDXL-8steps-lora.safetensors' not in (list of length 40)"}]}}},"urls":{"self":"\u003cstring>","events":"\u003cstring>","cancel":"\u003cstring>","logs":"\u003cstring>"},"metrics":{"queue_ms":9000,"execution_ms":42000},"deployment_id":"dep-0f19a2b3c4d5","release_id":"7c1e9a40-3b2d-4f6a-9e81-0c5d2a7b4f13","release_version":3,"metadata":{"client":"acme"}}}},"exampleType":"generated"}},"exampleType":"generated"},"49a5fb69-5644-40eb-ba27-d5a7f80b42b1":{"description":"`unauthorized`: missing or invalid credentials. A credential that could not be checked answers `auth_unavailable` (503) instead.","content":{"application/json":{"schema":{"type":"object","description":"Shared error envelope with machine-readable codes. Core codes (v1):\n`invalid_workflow` (422), `workflow_format_ui` (422),\n`missing_asset` (422), `hash_mismatch` (409), `blob_not_found`\n(404), `idempotency_key_reuse` (422), `upload_timed_out` (422: an\nasset upload stopped sending or was too slow; retry from a faster\nconnection),\n`queue_full` (429 + Retry-After), `rate_limited` (429 + Retry-After:\nthe caller is past a request rate limit; retry), `insufficient_credits`\n(402), `not_found` (404), `unauthorized` (401), `forbidden` (403).\nDeployment-scoped surfaces add: `deployment_not_ready` (429 +\nRetry-After — the deployment can still reach ready; retry),\n`deployment_unavailable` (429 + Retry-After: the deployment is ready\nbut its GPU provider is not taking work on it yet; retry),\n`deployment_lookup_unavailable` (503 + Retry-After, on any\noperation: the deployment the address names could not be looked up\njust now; nothing was done, so retry), `database_unavailable` (503 +\nRetry-After, only on a job submit: the job could not be saved just\nnow and nothing was started, so retry), `auth_unavailable` (503 +\nRetry-After, on any operation: the credential could not be checked\njust now, which says nothing about the credential, so retry),\n`output_unavailable` (503 + Retry-After, only on a job status read: an\noutput of the job could not be prepared just now; the job is\nunchanged, so retry after `Retry-After`, and report the job if it\nkeeps answering),\n`deployment_stopped` (422 — terminal deployment state; a retry\ncannot succeed without operator action), `invalid_request` (422:\na malformed asset upload or asset-from-hash field, or a jobs-list\n`limit` that is not a positive integer), `validation_error` (422,\nCloud: an asset upload or asset-from-hash field was refused, e.g. a\ntag over the tag limits), `content_blocked` (451:\ncontent moderation flagged the asset's bytes) and `sso_required` (403:\nthe key is valid, but the account must sign in through its\norganization's single sign-on, which does not accept this key).\nComfy Cloud's asset upload adds `invalid_content_type` (422: the\nrequest is not `multipart/form-data` with a boundary),\n`invalid_body` (422: a malformed multipart body or upload field),\n`validation_error` (422: the platform refused the upload, for example\nan image over the size cap or a disallowed tag) and `upload_busy`\n(503 + Retry-After: the server is busy with other uploads and nothing\nwas stored, so retry).\nJob labels add: `metadata_invalid` (422: a submitted `metadata` breaks a\nlimit; `details.key` names the key, except for too many pairs, which\nhas no `details`), `metadata_not_supported` (422:\nthis surface keeps no job labels yet), `invalid_metadata_filter` (400)\nand `invalid_cursor` (400). A surface that does not list jobs yet\nanswers `not_implemented` (501). A 429 is disambiguated\nby `error.code` alone; clients should treat any 429 + Retry-After\nas \"back off and retry\".\n","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","example":"invalid_workflow","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Node 12 (KSampler): required input 'model' is not connected","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"organization_id":{"type":"string","description":"On `sso_required`: the organization whose single sign-on governs this key, the one that holds the account, else the one that holds the key's workspace. It is the `organization` query parameter of Comfy Cloud's single sign-on start; treat it as opaque. Absent when the organization is unknown, and on every other code.","example":"org_01HXYZEXAMPLE","uniqueKey":"error.organization_id","typeLabel":"string"},"details":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_workflow","message":"Node 12 (KSampler): required input 'model' is not connected","organization_id":"org_01HXYZEXAMPLE","details":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]}}}}},"exampleType":"generated"}},"exampleType":"generated"},"53e3d219-4150-4963-b51f-9147bcd17537":{"description":"`forbidden` — authenticated but not allowed. On a serverless deployment, also `sso_required` — the key is valid, but the account must sign in through its organization's single sign-on, which does not accept this key; it can come back on any operation.","content":{"application/json":{"schema":{"type":"object","description":"Shared error envelope with machine-readable codes. Core codes (v1):\n`invalid_workflow` (422), `workflow_format_ui` (422),\n`missing_asset` (422), `hash_mismatch` (409), `blob_not_found`\n(404), `idempotency_key_reuse` (422), `upload_timed_out` (422: an\nasset upload stopped sending or was too slow; retry from a faster\nconnection),\n`queue_full` (429 + Retry-After), `rate_limited` (429 + Retry-After:\nthe caller is past a request rate limit; retry), `insufficient_credits`\n(402), `not_found` (404), `unauthorized` (401), `forbidden` (403).\nDeployment-scoped surfaces add: `deployment_not_ready` (429 +\nRetry-After — the deployment can still reach ready; retry),\n`deployment_unavailable` (429 + Retry-After: the deployment is ready\nbut its GPU provider is not taking work on it yet; retry),\n`deployment_lookup_unavailable` (503 + Retry-After, on any\noperation: the deployment the address names could not be looked up\njust now; nothing was done, so retry), `database_unavailable` (503 +\nRetry-After, only on a job submit: the job could not be saved just\nnow and nothing was started, so retry), `auth_unavailable` (503 +\nRetry-After, on any operation: the credential could not be checked\njust now, which says nothing about the credential, so retry),\n`output_unavailable` (503 + Retry-After, only on a job status read: an\noutput of the job could not be prepared just now; the job is\nunchanged, so retry after `Retry-After`, and report the job if it\nkeeps answering),\n`deployment_stopped` (422 — terminal deployment state; a retry\ncannot succeed without operator action), `invalid_request` (422:\na malformed asset upload or asset-from-hash field, or a jobs-list\n`limit` that is not a positive integer), `validation_error` (422,\nCloud: an asset upload or asset-from-hash field was refused, e.g. a\ntag over the tag limits), `content_blocked` (451:\ncontent moderation flagged the asset's bytes) and `sso_required` (403:\nthe key is valid, but the account must sign in through its\norganization's single sign-on, which does not accept this key).\nComfy Cloud's asset upload adds `invalid_content_type` (422: the\nrequest is not `multipart/form-data` with a boundary),\n`invalid_body` (422: a malformed multipart body or upload field),\n`validation_error` (422: the platform refused the upload, for example\nan image over the size cap or a disallowed tag) and `upload_busy`\n(503 + Retry-After: the server is busy with other uploads and nothing\nwas stored, so retry).\nJob labels add: `metadata_invalid` (422: a submitted `metadata` breaks a\nlimit; `details.key` names the key, except for too many pairs, which\nhas no `details`), `metadata_not_supported` (422:\nthis surface keeps no job labels yet), `invalid_metadata_filter` (400)\nand `invalid_cursor` (400). A surface that does not list jobs yet\nanswers `not_implemented` (501). A 429 is disambiguated\nby `error.code` alone; clients should treat any 429 + Retry-After\nas \"back off and retry\".\n","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","example":"invalid_workflow","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Node 12 (KSampler): required input 'model' is not connected","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"organization_id":{"type":"string","description":"On `sso_required`: the organization whose single sign-on governs this key, the one that holds the account, else the one that holds the key's workspace. It is the `organization` query parameter of Comfy Cloud's single sign-on start; treat it as opaque. Absent when the organization is unknown, and on every other code.","example":"org_01HXYZEXAMPLE","uniqueKey":"error.organization_id","typeLabel":"string"},"details":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_workflow","message":"Node 12 (KSampler): required input 'model' is not connected","organization_id":"org_01HXYZEXAMPLE","details":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]}}}}},"exampleType":"generated"}},"exampleType":"generated"},"c241f718-0db0-4e1a-9d7b-5bfb72a0d9de":{"description":"`not_found`.","content":{"application/json":{"schema":{"type":"object","description":"Shared error envelope with machine-readable codes. Core codes (v1):\n`invalid_workflow` (422), `workflow_format_ui` (422),\n`missing_asset` (422), `hash_mismatch` (409), `blob_not_found`\n(404), `idempotency_key_reuse` (422), `upload_timed_out` (422: an\nasset upload stopped sending or was too slow; retry from a faster\nconnection),\n`queue_full` (429 + Retry-After), `rate_limited` (429 + Retry-After:\nthe caller is past a request rate limit; retry), `insufficient_credits`\n(402), `not_found` (404), `unauthorized` (401), `forbidden` (403).\nDeployment-scoped surfaces add: `deployment_not_ready` (429 +\nRetry-After — the deployment can still reach ready; retry),\n`deployment_unavailable` (429 + Retry-After: the deployment is ready\nbut its GPU provider is not taking work on it yet; retry),\n`deployment_lookup_unavailable` (503 + Retry-After, on any\noperation: the deployment the address names could not be looked up\njust now; nothing was done, so retry), `database_unavailable` (503 +\nRetry-After, only on a job submit: the job could not be saved just\nnow and nothing was started, so retry), `auth_unavailable` (503 +\nRetry-After, on any operation: the credential could not be checked\njust now, which says nothing about the credential, so retry),\n`output_unavailable` (503 + Retry-After, only on a job status read: an\noutput of the job could not be prepared just now; the job is\nunchanged, so retry after `Retry-After`, and report the job if it\nkeeps answering),\n`deployment_stopped` (422 — terminal deployment state; a retry\ncannot succeed without operator action), `invalid_request` (422:\na malformed asset upload or asset-from-hash field, or a jobs-list\n`limit` that is not a positive integer), `validation_error` (422,\nCloud: an asset upload or asset-from-hash field was refused, e.g. a\ntag over the tag limits), `content_blocked` (451:\ncontent moderation flagged the asset's bytes) and `sso_required` (403:\nthe key is valid, but the account must sign in through its\norganization's single sign-on, which does not accept this key).\nComfy Cloud's asset upload adds `invalid_content_type` (422: the\nrequest is not `multipart/form-data` with a boundary),\n`invalid_body` (422: a malformed multipart body or upload field),\n`validation_error` (422: the platform refused the upload, for example\nan image over the size cap or a disallowed tag) and `upload_busy`\n(503 + Retry-After: the server is busy with other uploads and nothing\nwas stored, so retry).\nJob labels add: `metadata_invalid` (422: a submitted `metadata` breaks a\nlimit; `details.key` names the key, except for too many pairs, which\nhas no `details`), `metadata_not_supported` (422:\nthis surface keeps no job labels yet), `invalid_metadata_filter` (400)\nand `invalid_cursor` (400). A surface that does not list jobs yet\nanswers `not_implemented` (501). A 429 is disambiguated\nby `error.code` alone; clients should treat any 429 + Retry-After\nas \"back off and retry\".\n","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","example":"invalid_workflow","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Node 12 (KSampler): required input 'model' is not connected","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"organization_id":{"type":"string","description":"On `sso_required`: the organization whose single sign-on governs this key, the one that holds the account, else the one that holds the key's workspace. It is the `organization` query parameter of Comfy Cloud's single sign-on start; treat it as opaque. Absent when the organization is unknown, and on every other code.","example":"org_01HXYZEXAMPLE","uniqueKey":"error.organization_id","typeLabel":"string"},"details":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_workflow","message":"Node 12 (KSampler): required input 'model' is not connected","organization_id":"org_01HXYZEXAMPLE","details":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]}}}}},"exampleType":"generated"}},"exampleType":"generated"},"1c649a43-2987-44bc-b948-0887aca9e28d":{"description":"`rate_limited` — the caller has exceeded a request rate limit for this account. Account/rate-scoped, not resource-specific — this can be returned even for a job, asset or deployment the caller doesn't own or that doesn't exist.","headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds to wait before retrying."}},"content":{"application/json":{"schema":{"type":"object","description":"Shared error envelope with machine-readable codes. Core codes (v1):\n`invalid_workflow` (422), `workflow_format_ui` (422),\n`missing_asset` (422), `hash_mismatch` (409), `blob_not_found`\n(404), `idempotency_key_reuse` (422), `upload_timed_out` (422: an\nasset upload stopped sending or was too slow; retry from a faster\nconnection),\n`queue_full` (429 + Retry-After), `rate_limited` (429 + Retry-After:\nthe caller is past a request rate limit; retry), `insufficient_credits`\n(402), `not_found` (404), `unauthorized` (401), `forbidden` (403).\nDeployment-scoped surfaces add: `deployment_not_ready` (429 +\nRetry-After — the deployment can still reach ready; retry),\n`deployment_unavailable` (429 + Retry-After: the deployment is ready\nbut its GPU provider is not taking work on it yet; retry),\n`deployment_lookup_unavailable` (503 + Retry-After, on any\noperation: the deployment the address names could not be looked up\njust now; nothing was done, so retry), `database_unavailable` (503 +\nRetry-After, only on a job submit: the job could not be saved just\nnow and nothing was started, so retry), `auth_unavailable` (503 +\nRetry-After, on any operation: the credential could not be checked\njust now, which says nothing about the credential, so retry),\n`output_unavailable` (503 + Retry-After, only on a job status read: an\noutput of the job could not be prepared just now; the job is\nunchanged, so retry after `Retry-After`, and report the job if it\nkeeps answering),\n`deployment_stopped` (422 — terminal deployment state; a retry\ncannot succeed without operator action), `invalid_request` (422:\na malformed asset upload or asset-from-hash field, or a jobs-list\n`limit` that is not a positive integer), `validation_error` (422,\nCloud: an asset upload or asset-from-hash field was refused, e.g. a\ntag over the tag limits), `content_blocked` (451:\ncontent moderation flagged the asset's bytes) and `sso_required` (403:\nthe key is valid, but the account must sign in through its\norganization's single sign-on, which does not accept this key).\nComfy Cloud's asset upload adds `invalid_content_type` (422: the\nrequest is not `multipart/form-data` with a boundary),\n`invalid_body` (422: a malformed multipart body or upload field),\n`validation_error` (422: the platform refused the upload, for example\nan image over the size cap or a disallowed tag) and `upload_busy`\n(503 + Retry-After: the server is busy with other uploads and nothing\nwas stored, so retry).\nJob labels add: `metadata_invalid` (422: a submitted `metadata` breaks a\nlimit; `details.key` names the key, except for too many pairs, which\nhas no `details`), `metadata_not_supported` (422:\nthis surface keeps no job labels yet), `invalid_metadata_filter` (400)\nand `invalid_cursor` (400). A surface that does not list jobs yet\nanswers `not_implemented` (501). A 429 is disambiguated\nby `error.code` alone; clients should treat any 429 + Retry-After\nas \"back off and retry\".\n","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","example":"invalid_workflow","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Node 12 (KSampler): required input 'model' is not connected","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"organization_id":{"type":"string","description":"On `sso_required`: the organization whose single sign-on governs this key, the one that holds the account, else the one that holds the key's workspace. It is the `organization` query parameter of Comfy Cloud's single sign-on start; treat it as opaque. Absent when the organization is unknown, and on every other code.","example":"org_01HXYZEXAMPLE","uniqueKey":"error.organization_id","typeLabel":"string"},"details":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_workflow","message":"Node 12 (KSampler): required input 'model' is not connected","organization_id":"org_01HXYZEXAMPLE","details":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]}}}}},"exampleType":"generated"}},"exampleType":"generated"},"6a1548e7-1fa0-4f3e-892a-9af77994b772":{"description":"`upstream_error` — an unexpected failure reaching or processing the request in this implementation's backing services. The message is always a generic, safe-to-display string; implementation detail (the specific upstream, its error text, transport failures) is never included here — see each implementation's own error-mapping notes. Every operation in this contract can fail this way.","content":{"application/json":{"schema":{"type":"object","description":"Shared error envelope with machine-readable codes. Core codes (v1):\n`invalid_workflow` (422), `workflow_format_ui` (422),\n`missing_asset` (422), `hash_mismatch` (409), `blob_not_found`\n(404), `idempotency_key_reuse` (422), `upload_timed_out` (422: an\nasset upload stopped sending or was too slow; retry from a faster\nconnection),\n`queue_full` (429 + Retry-After), `rate_limited` (429 + Retry-After:\nthe caller is past a request rate limit; retry), `insufficient_credits`\n(402), `not_found` (404), `unauthorized` (401), `forbidden` (403).\nDeployment-scoped surfaces add: `deployment_not_ready` (429 +\nRetry-After — the deployment can still reach ready; retry),\n`deployment_unavailable` (429 + Retry-After: the deployment is ready\nbut its GPU provider is not taking work on it yet; retry),\n`deployment_lookup_unavailable` (503 + Retry-After, on any\noperation: the deployment the address names could not be looked up\njust now; nothing was done, so retry), `database_unavailable` (503 +\nRetry-After, only on a job submit: the job could not be saved just\nnow and nothing was started, so retry), `auth_unavailable` (503 +\nRetry-After, on any operation: the credential could not be checked\njust now, which says nothing about the credential, so retry),\n`output_unavailable` (503 + Retry-After, only on a job status read: an\noutput of the job could not be prepared just now; the job is\nunchanged, so retry after `Retry-After`, and report the job if it\nkeeps answering),\n`deployment_stopped` (422 — terminal deployment state; a retry\ncannot succeed without operator action), `invalid_request` (422:\na malformed asset upload or asset-from-hash field, or a jobs-list\n`limit` that is not a positive integer), `validation_error` (422,\nCloud: an asset upload or asset-from-hash field was refused, e.g. a\ntag over the tag limits), `content_blocked` (451:\ncontent moderation flagged the asset's bytes) and `sso_required` (403:\nthe key is valid, but the account must sign in through its\norganization's single sign-on, which does not accept this key).\nComfy Cloud's asset upload adds `invalid_content_type` (422: the\nrequest is not `multipart/form-data` with a boundary),\n`invalid_body` (422: a malformed multipart body or upload field),\n`validation_error` (422: the platform refused the upload, for example\nan image over the size cap or a disallowed tag) and `upload_busy`\n(503 + Retry-After: the server is busy with other uploads and nothing\nwas stored, so retry).\nJob labels add: `metadata_invalid` (422: a submitted `metadata` breaks a\nlimit; `details.key` names the key, except for too many pairs, which\nhas no `details`), `metadata_not_supported` (422:\nthis surface keeps no job labels yet), `invalid_metadata_filter` (400)\nand `invalid_cursor` (400). A surface that does not list jobs yet\nanswers `not_implemented` (501). A 429 is disambiguated\nby `error.code` alone; clients should treat any 429 + Retry-After\nas \"back off and retry\".\n","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","example":"invalid_workflow","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Node 12 (KSampler): required input 'model' is not connected","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"organization_id":{"type":"string","description":"On `sso_required`: the organization whose single sign-on governs this key, the one that holds the account, else the one that holds the key's workspace. It is the `organization` query parameter of Comfy Cloud's single sign-on start; treat it as opaque. Absent when the organization is unknown, and on every other code.","example":"org_01HXYZEXAMPLE","uniqueKey":"error.organization_id","typeLabel":"string"},"details":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_workflow","message":"Node 12 (KSampler): required input 'model' is not connected","organization_id":"org_01HXYZEXAMPLE","details":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]}}}}},"exampleType":"generated"}},"exampleType":"generated"},"af66f9ad-974d-468f-b986-34c7d6d686aa":{"description":"On deployment-scoped surfaces, `deployment_lookup_unavailable`: the deployment this address names could not be looked up just now. The request was refused before it did anything (nothing was created, read, changed or canceled), so the same request can be sent again after `Retry-After`. Every operation at a deployment's address can answer this way. A job submit can also answer this 503 with `database_unavailable`: the job could not be saved just now and nothing was started, so the same request can be sent again after `Retry-After`. No other operation answers `database_unavailable`. On Comfy Cloud an asset upload can also answer this 503 with `upload_busy`: the server is busy with other uploads and nothing was stored, so the same upload can be sent again after `Retry-After`. Any operation can also answer this 503 with `auth_unavailable`: the credential could not be checked just now, so the same request can be sent again after `Retry-After`. A job status read can also answer it with `output_unavailable`: an output of the job could not be prepared just now, and the job is unchanged. A transient storage failure clears on a later read after `Retry-After`; an output whose stored address is broken answers it on every read until the platform repairs the output.","headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds to wait before retrying."}},"content":{"application/json":{"schema":{"type":"object","description":"Shared error envelope with machine-readable codes. Core codes (v1):\n`invalid_workflow` (422), `workflow_format_ui` (422),\n`missing_asset` (422), `hash_mismatch` (409), `blob_not_found`\n(404), `idempotency_key_reuse` (422), `upload_timed_out` (422: an\nasset upload stopped sending or was too slow; retry from a faster\nconnection),\n`queue_full` (429 + Retry-After), `rate_limited` (429 + Retry-After:\nthe caller is past a request rate limit; retry), `insufficient_credits`\n(402), `not_found` (404), `unauthorized` (401), `forbidden` (403).\nDeployment-scoped surfaces add: `deployment_not_ready` (429 +\nRetry-After — the deployment can still reach ready; retry),\n`deployment_unavailable` (429 + Retry-After: the deployment is ready\nbut its GPU provider is not taking work on it yet; retry),\n`deployment_lookup_unavailable` (503 + Retry-After, on any\noperation: the deployment the address names could not be looked up\njust now; nothing was done, so retry), `database_unavailable` (503 +\nRetry-After, only on a job submit: the job could not be saved just\nnow and nothing was started, so retry), `auth_unavailable` (503 +\nRetry-After, on any operation: the credential could not be checked\njust now, which says nothing about the credential, so retry),\n`output_unavailable` (503 + Retry-After, only on a job status read: an\noutput of the job could not be prepared just now; the job is\nunchanged, so retry after `Retry-After`, and report the job if it\nkeeps answering),\n`deployment_stopped` (422 — terminal deployment state; a retry\ncannot succeed without operator action), `invalid_request` (422:\na malformed asset upload or asset-from-hash field, or a jobs-list\n`limit` that is not a positive integer), `validation_error` (422,\nCloud: an asset upload or asset-from-hash field was refused, e.g. a\ntag over the tag limits), `content_blocked` (451:\ncontent moderation flagged the asset's bytes) and `sso_required` (403:\nthe key is valid, but the account must sign in through its\norganization's single sign-on, which does not accept this key).\nComfy Cloud's asset upload adds `invalid_content_type` (422: the\nrequest is not `multipart/form-data` with a boundary),\n`invalid_body` (422: a malformed multipart body or upload field),\n`validation_error` (422: the platform refused the upload, for example\nan image over the size cap or a disallowed tag) and `upload_busy`\n(503 + Retry-After: the server is busy with other uploads and nothing\nwas stored, so retry).\nJob labels add: `metadata_invalid` (422: a submitted `metadata` breaks a\nlimit; `details.key` names the key, except for too many pairs, which\nhas no `details`), `metadata_not_supported` (422:\nthis surface keeps no job labels yet), `invalid_metadata_filter` (400)\nand `invalid_cursor` (400). A surface that does not list jobs yet\nanswers `not_implemented` (501). A 429 is disambiguated\nby `error.code` alone; clients should treat any 429 + Retry-After\nas \"back off and retry\".\n","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","example":"invalid_workflow","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Node 12 (KSampler): required input 'model' is not connected","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"organization_id":{"type":"string","description":"On `sso_required`: the organization whose single sign-on governs this key, the one that holds the account, else the one that holds the key's workspace. It is the `organization` query parameter of Comfy Cloud's single sign-on start; treat it as opaque. Absent when the organization is unknown, and on every other code.","example":"org_01HXYZEXAMPLE","uniqueKey":"error.organization_id","typeLabel":"string"},"details":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Machine-readable detail for the code. When it carries `node_errors`, that is keyed by node id and each value is a `JobNodeError`, the same shape as a job's `error.node_errors`, whether the refusal came at submit (for example `unknown_node_class`, a node class the deployment's build does not contain) or from ComfyUI after dispatch. With `unknown_node_class` errors it carries `unknown_node_classes`, the missing classes; with `waits_for_browser` errors, `browser_wait_node_classes`, the classes that wait for a browser. A submit refusal names at most fifty nodes. For `invalid_node`, `invalid_inputs` and `invalid_class_type`, when it found more than fifty, `node_errors_truncated` is true and `malformed_node_count` carries the full count; for `waits_for_browser`, `browser_wait_node_count` does. For `unknown_node_class` it names only nodes whose class is one of the at most ten listed in `unknown_node_classes`; when those nodes number more than fifty, `node_errors_truncated` is true and `unknown_node_count` is how many nodes have a listed class. Nodes whose class is past those ten are neither named nor counted.","example":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]},"uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_workflow","message":"Node 12 (KSampler): required input 'model' is not connected","organization_id":"org_01HXYZEXAMPLE","details":{"node_errors":{"12":{"class_type":"SomeCustomNode","errors":[{"type":"unknown_node_class","message":"this deployment's build does not contain the node class SomeCustomNode."}]}},"unknown_node_classes":["SomeCustomNode"]}}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"e83e9dfc-ebdf-4caa-994b-25be4bb53550":{"bearerAuth":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer \u003ccredential>`. The credential is one of: an account-scoped API key (`comfyui-…`), accepted on Cloud and serverless; a Comfy Cloud session JWT; or an OAuth access token issued for the Comfy Cloud resource. Which kinds a given deployment accepts is deployment configuration — an API key always works on Cloud and serverless, and a deployment that does not accept JWT bearers answers `401` with a message saying so. Self-hosted accepts unauthenticated requests by default and can be configured with a static bearer token.","scopes":[],"schemeName":"bearerAuth"}},"78687c62-3745-43d4-a655-7ff88a24d9ae":{}},"servers":{"ddabda62-d3c9-40f8-881d-a751e619aff3":{"url":"http://127.0.0.1:8189","description":"Self-hosted (comfy-api-proxy)"},"62680931-7b02-4daf-b27f-819e4c14ed64":{"url":"https://cloud.comfy.org","description":"Comfy Cloud"},"0a142380-c92c-4874-83af-7dc79bfcdc68":{"url":"https://{deployment}.run.comfy.app","description":"Serverless deployment","variables":{"deployment":{"description":"DNS-safe deployment id (subdomain label). Staging uses {deployment}.stg.run.comfy.app.","default":"dep-1234abcd-56ef-7890-abcd-ef1234567890"}}}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer \u003ccredential>`. The credential is one of: an account-scoped API key (`comfyui-…`), accepted on Cloud and serverless; a Comfy Cloud session JWT; or an OAuth access token issued for the Comfy Cloud resource. Which kinds a given deployment accepts is deployment configuration — an API key always works on Cloud and serverless, and a deployment that does not accept JWT bearers answers `401` with a message saying so. Self-hosted accepts unauthenticated requests by default and can be configured with a static bearer token.","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"`Authorization: Bearer \u003ccredential>`. The credential is one of: an account-scoped API key (`comfyui-…`), accepted on Cloud and serverless; a Comfy Cloud session JWT; or an OAuth access token issued for the Comfy Cloud resource. Which kinds a given deployment accepts is deployment configuration — an API key always works on Cloud and serverless, and a deployment that does not accept JWT bearers answers `401` with a message saying so. Self-hosted accepts unauthenticated requests by default and can be configured with a static bearer token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi-v2.yaml"},"subdomain":"dripart","siteName":"ComfyUI","title":"Request cancellation - ComfyUI","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api-reference/v2/jobs/request-cancellation","matchLevel":1},"zh":{"href":"/zh/api-reference/v2/jobs/request-cancellation","matchLevel":1},"ja":{"href":"/ja/api-reference/v2/jobs/request-cancellation","matchLevel":0},"ko":{"href":"/ko/api-reference/v2/jobs/request-cancellation","matchLevel":1},"es":{"href":"/es/api-reference/v2/jobs/request-cancellation","matchLevel":1}}},"lastModified":"2026-11-08T23:54:13.496Z","originalFileLocation":"ja/api-reference/v2/jobs/request-cancellation.mdx","locale":"ja"},"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=\"Requests cancellation and returns the current job object — canceling (interruption takes effect at node/step boundaries), canceled where the provider\u0026#x27;s record already shows the interrupt, or already-terminal. Idempotent: canceling a finished job is a no-op returning the terminal state. On serverless, GPU seconds consumed before the interrupt takes effect are still billed.\">\u003cmeta data-mint-head name=\"application-name\" content=\"ComfyUI\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/dripart/lS3H5I41bE6LSXEf/_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/dripart/lS3H5I41bE6LSXEf/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/dripart/lS3H5I41bE6LSXEf/_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/dripart/lS3H5I41bE6LSXEf/_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/dripart/lS3H5I41bE6LSXEf/_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/dripart/lS3H5I41bE6LSXEf/_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/dripart/lS3H5I41bE6LSXEf/_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/dripart/lS3H5I41bE6LSXEf/_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/dripart/lS3H5I41bE6LSXEf/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Request cancellation - ComfyUI\">\u003cmeta data-mint-head property=\"og:description\" content=\"Requests cancellation and returns the current job object — canceling (interruption takes effect at node/step boundaries), canceled where the provider\u0026#x27;s record already shows the interrupt, or already-terminal. Idempotent: canceling a finished job is a no-op returning the terminal state. On serverless, GPU seconds consumed before the interrupt takes effect are still billed.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"ComfyUI\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://dripart.mintlify.site/_mintlify/api/og/v2?division=jobs\u0026amp;title=Request+cancellation\u0026amp;description=Requests+cancellation+and+returns+the+current+job+object+%E2%80%94%0A%60canceling%60+%28interruption+takes+effect+at+node%2Fstep+boundaries%29%2C%0A%60canceled%60+where+the+provider%27s+reco\u0026amp;theme=a03fed56f9a178c9b893031e\u0026amp;signature=13aaf926c665114232af8eb0b2a021fd98337617989f6aee2cc9e9f9ac2816a9\">\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=\"Request cancellation - ComfyUI\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Requests cancellation and returns the current job object — canceling (interruption takes effect at node/step boundaries), canceled where the provider\u0026#x27;s record already shows the interrupt, or already-terminal. Idempotent: canceling a finished job is a no-op returning the terminal state. On serverless, GPU seconds consumed before the interrupt takes effect are still billed.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://dripart.mintlify.site/_mintlify/api/og/v2?division=jobs\u0026amp;title=Request+cancellation\u0026amp;description=Requests+cancellation+and+returns+the+current+job+object+%E2%80%94%0A%60canceling%60+%28interruption+takes+effect+at+node%2Fstep+boundaries%29%2C%0A%60canceled%60+where+the+provider%27s+reco\u0026amp;theme=a03fed56f9a178c9b893031e\u0026amp;signature=13aaf926c665114232af8eb0b2a021fd98337617989f6aee2cc9e9f9ac2816a9\">\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/dripart/lS3H5I41bE6LSXEf/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"ComfyUI\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#49378B\">\u003cmeta data-mint-head name=\"googlebot\" content=\"max-video-preview:0\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/ja/api-reference/v2/jobs/request-cancellation.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.comfy.org/api-reference/v2/jobs/request-cancellation\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.comfy.org/zh/api-reference/v2/jobs/request-cancellation\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.comfy.org/ko/api-reference/v2/jobs/request-cancellation\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.comfy.org/es/api-reference/v2/jobs/request-cancellation\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.comfy.org/api-reference/v2/jobs/request-cancellation\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.comfy.org/#organization\",\"name\":\"ComfyUI\",\"url\":\"https://docs.comfy.org\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/dripart/WCFdTagRdhtvk9-o/logo/light.svg?fit=max\u0026auto=format\u0026n=WCFdTagRdhtvk9-o\u0026q=85\u0026s=ec112de87239058f5a931a7e4b594965\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.comfy.org#website\",\"name\":\"ComfyUI\",\"url\":\"https://docs.comfy.org\",\"publisher\":{\"@id\":\"https://docs.comfy.org/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation#webpage\",\"url\":\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation\",\"name\":\"Request cancellation\",\"description\":\"Requests cancellation and returns the current job object — canceling (interruption takes effect at node/step boundaries), canceled where the provider's record already shows the interrupt, or already-terminal. Idempotent: canceling a finished job is a no-op returning the terminal state. On serverless, GPU seconds consumed before the interrupt takes effect are still billed.\",\"dateModified\":\"2026-11-08T23:54:13.496Z\",\"isPartOf\":{\"@id\":\"https://docs.comfy.org#website\"},\"breadcrumb\":{\"@id\":\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"ワークフローの実行\",\"item\":\"https://docs.comfy.org/ja/development/run-workflows/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Comfy API v2リファレンス\",\"item\":\"https://docs.comfy.org/ja/api-reference/v2/assets/upload-an-asset-single-call-multipart\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"jobs\",\"item\":\"https://docs.comfy.org/ja/api-reference/v2/jobs/list-jobs-newest-first\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Request cancellation\",\"item\":\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation#apireference\",\"headline\":\"Request cancellation\",\"name\":\"Request cancellation\",\"description\":\"Requests cancellation and returns the current job object — canceling (interruption takes effect at node/step boundaries), canceled where the provider's record already shows the interrupt, or already-terminal. Idempotent: canceling a finished job is a no-op returning the terminal state. On serverless, GPU seconds consumed before the interrupt takes effect are still billed.\",\"url\":\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation\",\"mainEntityOfPage\":{\"@id\":\"https://docs.comfy.org/ja/api-reference/v2/jobs/request-cancellation#webpage\"},\"dateModified\":\"2026-11-08T23:54:13.496Z\",\"publisher\":{\"@id\":\"https://docs.comfy.org/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.comfy.org#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"ComfyUI\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"ComfyUI","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/api-reference/v2/jobs/request-cancellation"}]},{"language":"zh","footer":{"socials":{"github":"https://github.com/Comfy-Org/ComfyUI","x":"https://x.com/ComfyUI","discord":"https://discord.com/invite/comfyorg","youtube":"https://www.youtube.com/@comfyorg"},"links":[{"header":"资源","items":[{"label":"安装","href":"/zh/installation/system_requirements"},{"label":"教程","href":"/zh/tutorials/basic/text-to-image"},{"label":"开发","href":"/zh/development/overview"}]},{"header":"产品","items":[{"label":"功能","href":"https://www.comfy.org/?utm_source=docs"},{"label":"画廊","href":"https://www.comfy.org/gallery?utm_source=docs"},{"label":"下载","href":"https://www.comfy.org/download?utm_source=docs"}]},{"header":"公司","items":[{"label":"关于","href":"https://www.comfy.org/about?utm_source=docs"},{"label":"招聘","href":"https://www.comfy.org/careers?utm_source=docs"},{"label":"服务条款","href":"https://www.comfy.org/terms-of-service?utm_source=docs"},{"label":"隐私政策","href":"https://www.comfy.org/privacy-policy?utm_source=docs"}]}]},"pages":[{"title":"zh","href":"/zh/api-reference/v2/jobs/request-cancellation"}]},{"language":"ja","footer":{"socials":{"github":"https://github.com/Comfy-Org/ComfyUI","x":"https://x.com/ComfyUI","discord":"https://discord.com/invite/comfyorg","youtube":"https://www.youtube.com/@comfyorg"},"links":[{"header":"リソース","items":[{"label":"インストール","href":"/ja/installation/system_requirements"},{"label":"チュートリアル","href":"/ja/tutorials/basic/text-to-image"},{"label":"開発","href":"/ja/development/overview"}]},{"header":"プロダクト","items":[{"label":"機能","href":"https://www.comfy.org/?utm_source=docs"},{"label":"ギャラリー","href":"https://www.comfy.org/gallery?utm_source=docs"},{"label":"ダウンロード","href":"https://www.comfy.org/download?utm_source=docs"}]},{"header":"会社情報","items":[{"label":"概要","href":"https://www.comfy.org/about?utm_source=docs"},{"label":"採用情報","href":"https://www.comfy.org/careers?utm_source=docs"},{"label":"利用規約","href":"https://www.comfy.org/terms-of-service?utm_source=docs"},{"label":"プライバシーポリシー","href":"https://www.comfy.org/privacy-policy?utm_source=docs"}]}]},"navbar":{"links":[{"href":"/ja/tutorials/partner-nodes/pricing","label":"料金"},{"href":"https://comfy.org/download?utm_source=docs","label":"ダウンロード"}],"primary":{"type":"button","label":"Comfy Cloud","href":"https://comfy.org/cloud?utm_source=docs"}},"tabs":[{"tab":"はじめに","pages":[{"title":"はじめに","href":"/ja"}]},{"tab":"組み込みノード","pages":[{"title":"組み込みノード","href":"/ja/built-in-nodes/overview"}]},{"tab":"API 開発","pages":[{"group":"Comfy で開発する","pages":[{"title":"ComfyUI 開発者向け:SDK、サーバー API、クラウド","sidebarTitle":"開発者向け概要","href":"/ja/development/overview"},{"group":"Comfy Cloud","pages":[{"title":"v1 Cloud API 概要","sidebarTitle":"概要","href":"/ja/development/cloud/overview"},{"title":"Cloud API リファレンス","icon":"book-open","href":"/ja/development/cloud/api-reference"},{"title":"OpenAPI 仕様","icon":"file-lines","openapi":"/openapi-cloud.yaml","href":"/ja/development/cloud/openapi"}]},{"group":"セルフホストサーバー","pages":[{"title":"サーバー概要","sidebarTitle":"サーバー概要","href":"/ja/development/comfyui-server/comms_overview"},{"title":"ComfyUI Server API の例:HTTP・WebSocket・履歴","sidebarTitle":"API の例","href":"/ja/development/comfyui-server/api-examples"},{"title":"ComfyUI サーバールート(HTTP と WebSocket API)","sidebarTitle":"HTTP・WebSocket ルート","icon":"route","href":"/ja/development/comfyui-server/comms_routes"},{"title":"ComfyUI サーバーメッセージ(WebSocket API)","sidebarTitle":"WebSocket メッセージ","icon":"comment","href":"/ja/development/comfyui-server/comms_messages"},{"title":"ComfyUI 起動フラグ: コマンドラインリファレンス","sidebarTitle":"起動オプション","icon":"terminal","href":"/ja/development/comfyui-server/startup-flags"},{"title":"セルフホスティングのオプション","sidebarTitle":"ホスティングの選択肢","icon":"server","href":"/ja/development/deploy/self-hosting"}]},{"title":"ComfyUI のデプロイ","sidebarTitle":"概要","icon":"map","href":"/ja/development/deploy/overview"},{"title":"Comfy Cloud クイックスタート","sidebarTitle":"クイックスタート","icon":"cloud","href":"/ja/development/deploy/cloud"},{"title":"Comfy API と Router のサンプル","sidebarTitle":"サンプル","icon":"code","mode":"wide","href":"/ja/development/examples"}]},{"group":"ワークフローの実行","pages":[{"title":"ワークフローの実行","sidebarTitle":"概要","icon":"play","href":"/ja/development/run-workflows/overview"},{"title":"初めてのワークフローを実行する","sidebarTitle":"最初のワークフロー","href":"/ja/development/api-development/quickstart"},{"title":"Comfy SDK:ComfyUI 向け Python・TypeScript クライアント","sidebarTitle":"SDK","icon":"code","href":"/ja/development/api-development/sdks"},{"title":"セルフホスト ComfyUI 用の API プロキシ","sidebarTitle":"API プロキシ","icon":"plug","href":"/ja/development/comfyui-server/api-proxy"},{"title":"Comfy API:サーバーレスデプロイ","icon":"cloud-arrow-up","href":"/ja/development/serverless/overview"},{"title":"API キーの取得","sidebarTitle":"API キー","icon":"key","href":"/ja/development/api-development/getting-an-api-key"},{"title":"Comfy API v2 の概要","sidebarTitle":"Overview","href":"/ja/api-reference/v2/overview"},{"group":"Comfy API v2リファレンス","pages":[{"group":"assets","pages":[{"title":"Upload an asset (single-call multipart)","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml post /api/v2/assets","href":"/ja/api-reference/v2/assets/upload-an-asset-single-call-multipart"},{"title":"Create or reuse an asset over existing bytes","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml post /api/v2/assets/from-hash","href":"/ja/api-reference/v2/assets/create-or-reuse-an-asset-over-existing-bytes"},{"title":"Existence check for a blob by blake3 hash","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml head /api/v2/assets/by-hash/{hash}","href":"/ja/api-reference/v2/assets/existence-check-for-a-blob-by-blake3-hash"},{"title":"Asset metadata","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml get /api/v2/assets/{id}","href":"/ja/api-reference/v2/assets/asset-metadata"},{"title":"Delete an asset record","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml delete /api/v2/assets/{id}","href":"/ja/api-reference/v2/assets/delete-an-asset-record"},{"title":"Asset bytes","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml get /api/v2/assets/{id}/content","href":"/ja/api-reference/v2/assets/asset-bytes"}]},{"group":"jobs","pages":[{"title":"List jobs, newest first","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml get /api/v2/jobs","href":"/ja/api-reference/v2/jobs/list-jobs-newest-first"},{"title":"Submit a workflow for execution","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml post /api/v2/jobs","href":"/ja/api-reference/v2/jobs/submit-a-workflow-for-execution"},{"title":"Job status (the polling workhorse)","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml get /api/v2/jobs/{id}","href":"/ja/api-reference/v2/jobs/job-status-the-polling-workhorse"},{"title":"The workflow behind a job — authoring version if pinned, executed graph otherwise","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml get /api/v2/jobs/{id}/workflow","href":"/ja/api-reference/v2/jobs/the-workflow-behind-a-job-—-authoring-version-if-pinned-executed-graph-otherwise"},{"title":"What the run printed","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml get /api/v2/jobs/{id}/logs","href":"/ja/api-reference/v2/jobs/what-the-run-printed"},{"title":"Live event stream (SSE)","description":"Server-Sent Events stream of the job's live state. On connect the\nclient receives the current snapshot (a `status` event, the latest\n`progress`, and the most recent `preview` if any), then future\nupdates. The stream ends after either the terminal `status` event\nor a terminal `error` event (see the `error` event below).\n\nLive push only — NOT a replayable log: events carry no `id`, there\nis no `Last-Event-ID` resume, and frames emitted while disconnected\nare gone. Each `progress` event is a complete snapshot, so a single\none fully re-syncs a reconnecting client; the authoritative state is\nalways `GET /api/v2/jobs/{id}`.\n","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml get /api/v2/jobs/{id}/events","href":"/ja/api-reference/v2/jobs/live-event-stream-sse"},{"title":"Request cancellation","deprecated":null,"version":null,"openapi":"/openapi-v2.yaml post /api/v2/jobs/{id}/cancel","href":"/ja/api-reference/v2/jobs/request-cancellation"}]}]},{"title":"設計ノート","description":"Comfy API v2が存在する理由、既存のComfyUI APIとの関係、そして今後の予定について","sidebarTitle":"設計ノート","icon":"compass","href":"/ja/development/api-development/sdks-design"},{"title":"ワークフロー API 形式","icon":"file-code","href":"/ja/development/api-development/workflow-api-format"},{"title":"ワークフローメタデータ: ComfyUI 出力ファイルへの埋め込み","sidebarTitle":"ワークフローメタデータ","icon":"file-code","href":"/ja/development/api-development/workflow-metadata"},{"title":"ComfyUI アカウント API キー統合","sidebarTitle":"API キー連携","icon":"puzzle-piece","href":"/ja/development/comfyui-server/api-key-integration"},{"group":"Comfy API Reference","pages":[{"title":"Comfy API のバージョン:v2 と非推奨の v1 Cloud API","sidebarTitle":"概要","href":"/ja/development/comfy-api/overview"}]}]},{"group":"Comfy Router","pages":[{"title":"Comfy Router クイックスタート","sidebarTitle":"クイックスタート","href":"/ja/development/comfy-router/quickstart"},{"title":"Comfy Router API の概要","sidebarTitle":"概要","href":"/ja/development/comfy-router/api"},{"title":"Comfy Router モデルを検出する","sidebarTitle":"モデルを検出","href":"/ja/development/comfy-router/discover-models"},{"title":"Comfy Router モデルスキーマと結果","sidebarTitle":"スキーマと結果","href":"/ja/development/comfy-router/schemas"},{"title":"Comfy Router リクエストのキューイング","sidebarTitle":"キューのリクエスト","href":"/ja/development/comfy-router/queue"},{"title":"Comfy Router のエラーとリトライ","sidebarTitle":"エラーとリトライ","href":"/ja/development/comfy-router/errors"},{"title":"Comfy Router の課金","sidebarTitle":"課金","href":"/ja/development/comfy-router/billing"},{"title":"LiteLLMでComfy Routerを使用する","sidebarTitle":"LiteLLM","href":"/ja/development/comfy-router/litellm"},{"title":"Comfy Router リアルタイム音声セッション","sidebarTitle":"リアルタイム音声","href":"/ja/development/comfy-router/realtime"},{"title":"Comfy Router ヘッダー","sidebarTitle":"ヘッダー","href":"/ja/development/comfy-router/headers"},{"title":"Comfy Router API リファレンス","sidebarTitle":"API リファレンス","href":"/ja/development/comfy-router/reference"},{"title":"Comfy Router の機能と制限","sidebarTitle":"機能と制限","href":"/ja/development/comfy-router/limitations"},{"group":"Comfy Router APIリファレンス","pages":[{"group":"Comfy Router","pages":[{"title":"List the models Comfy Router can run.","deprecated":null,"version":null,"openapi":"/router-openapi.yaml get /v2/models","href":"/ja/api-reference/router/comfy-router/list-the-models-comfy-router-can-run"},{"title":"Read one partner model's catalog entry by canonical model ID.","deprecated":null,"version":null,"openapi":"/router-openapi.yaml get /v2/models/{provider}/{model}","href":"/ja/api-reference/router/comfy-router/read-one-partner-models-catalog-entry-by-canonical-model-id"},{"title":"Run a partner model synchronously by canonical model ID.","deprecated":null,"version":null,"openapi":"/router-openapi.yaml post /v2/models/{provider}/{model}","href":"/ja/api-reference/router/comfy-router/run-a-partner-model-synchronously-by-canonical-model-id"},{"title":"Price a model call before running it, without running it.","deprecated":null,"version":null,"openapi":"/router-openapi.yaml post /v2/models/{provider}/{model}/estimate","href":"/ja/api-reference/router/comfy-router/price-a-model-call-before-running-it-without-running-it"},{"title":"Read one partner model's input and output schemas as an OpenAPI document.","deprecated":null,"version":null,"openapi":"/router-openapi.yaml get /v2/models/{provider}/{model}/openapi.json","href":"/ja/api-reference/router/comfy-router/read-one-partner-models-input-and-output-schemas-as-an-openapi-document"},{"title":"Submit a partner model run to the queue and return immediately.","deprecated":null,"version":null,"openapi":"/router-openapi.yaml post /v2/models/{provider}/{model}/requests","href":"/ja/api-reference/router/comfy-router/submit-a-partner-model-run-to-the-queue-and-return-immediately"},{"title":"Collect the result of one submitted request.","deprecated":null,"version":null,"openapi":"/router-openapi.yaml get /v2/models/{provider}/{model}/requests/{request_id}","href":"/ja/api-reference/router/comfy-router/collect-the-result-of-one-submitted-request"},{"title":"Ask for one submitted request to be cancelled.","deprecated":null,"version":null,"openapi":"/router-openapi.yaml put /v2/models/{provider}/{model}/requests/{request_id}/cancel","href":"/ja/api-reference/router/comfy-router/ask-for-one-submitted-request-to-be-cancelled"},{"title":"Read the queue state of one submitted request.","deprecated":null,"version":null,"openapi":"/router-openapi.yaml get /v2/models/{provider}/{model}/requests/{request_id}/status","href":"/ja/api-reference/router/comfy-router/read-the-queue-state-of-one-submitted-request"}]}]},{"group":"Models","pages":[{"title":"Comfy Router モデル","sidebarTitle":"すべてのモデル","href":"/ja/development/comfy-router/models"},{"title":"Comfy Router の料金","sidebarTitle":"料金","mode":"wide","href":"/ja/development/comfy-router/pricing"},{"title":"Comfy Router の配信プロバイダー","sidebarTitle":"配信プロバイダー","href":"/ja/development/comfy-router/providers"},{"group":"Anthropic","pages":[{"title":"Comfy Router で Claude Fable 5.1 を使う","sidebarTitle":"Claude Fable 5.1","href":"/ja/development/comfy-router/models/anthropic/claude-fable-5-1/code"},{"title":"Comfy Router で Claude Fable 5 を使う","sidebarTitle":"Claude Fable 5","href":"/ja/development/comfy-router/models/anthropic/claude-fable-5/code"},{"title":"Comfy Router で Claude Haiku 4.5 20251001 を使用する","sidebarTitle":"Claude Haiku 4.5 20251001","href":"/ja/development/comfy-router/models/anthropic/claude-haiku-4-5-20251001/code"},{"title":"Comfy Router で Claude Opus 4.6 を使う","sidebarTitle":"Claude Opus 4.6","href":"/ja/development/comfy-router/models/anthropic/claude-opus-4-6/code"},{"title":"Comfy Router で Claude Opus 4.7 を使用する","sidebarTitle":"Claude Opus 4.7","href":"/ja/development/comfy-router/models/anthropic/claude-opus-4-7/code"},{"title":"Comfy Router で Claude Opus 4.8 を使用する","sidebarTitle":"Claude Opus 4.8","href":"/ja/development/comfy-router/models/anthropic/claude-opus-4-8/code"},{"title":"Comfy Router で Claude Opus 5.5 を使う","sidebarTitle":"Claude Opus 5.5","href":"/ja/development/comfy-router/models/anthropic/claude-opus-5-5/code"},{"title":"Comfy Router で Claude Opus 5 を使用する","sidebarTitle":"Claude Opus 5","href":"/ja/development/comfy-router/models/anthropic/claude-opus-5/code"},{"title":"Claude Sonnet 4.5 20250929 を Comfy Router で使用する","sidebarTitle":"Claude Sonnet 4.5 20250929","href":"/ja/development/comfy-router/models/anthropic/claude-sonnet-4-5-20250929/code"},{"title":"Claude Sonnet 4.6 を Comfy Router で使用する","sidebarTitle":"Claude Sonnet 4.6","href":"/ja/development/comfy-router/models/anthropic/claude-sonnet-4-6/code"},{"title":"Comfy Router で Claude Sonnet 5.5 を使う","sidebarTitle":"Claude Sonnet 5.5","href":"/ja/development/comfy-router/models/anthropic/claude-sonnet-5-5/code"},{"title":"Comfy Router で Claude Sonnet 5 を使う","sidebarTitle":"Claude Sonnet 5","href":"/ja/development/comfy-router/models/anthropic/claude-sonnet-5/code"}]},{"group":"Beeble","pages":[{"title":"Comfy Router で SwitchX を使用する","sidebarTitle":"SwitchX","href":"/ja/development/comfy-router/models/beeble/switchx/code"}]},{"group":"Black Forest Labs","pages":[{"title":"Comfy Router で Erase V1 を使う","sidebarTitle":"Erase V1","href":"/ja/development/comfy-router/models/black-forest-labs/erase-v1/code"},{"title":"Comfy Router で Flux 1.1 Pro Ultra Image を使用する","sidebarTitle":"Flux 1.1 Pro Ultra Image","href":"/ja/development/comfy-router/models/black-forest-labs/flux-1-1-pro-ultra-image/code"},{"title":"Comfy Router で FLUX.1 Kontext を使用する","sidebarTitle":"FLUX.1 Kontext","href":"/ja/development/comfy-router/models/black-forest-labs/flux-1-kontext/code"},{"title":"Comfy Router で FLUX 2 Max を使う","sidebarTitle":"FLUX 2 Max","href":"/ja/development/comfy-router/models/black-forest-labs/flux-2-max/code"},{"title":"Comfy Router で FLUX 2 Pro を使用する","sidebarTitle":"FLUX 2 Pro","href":"/ja/development/comfy-router/models/black-forest-labs/flux-2-pro/code"},{"title":"Comfy Router で FLUX 3 Image を使用する","sidebarTitle":"FLUX 3 Image","href":"/ja/development/comfy-router/models/black-forest-labs/flux-3-image/code"},{"title":"Comfy Router で FLUX 3 Video を使用する","sidebarTitle":"FLUX 3 Video","href":"/ja/development/comfy-router/models/black-forest-labs/flux-3-video/code"},{"title":"Comfy Router で FLUX Pro 1.0 Expand を使用する","sidebarTitle":"FLUX Pro 1.0 Expand","href":"/ja/development/comfy-router/models/black-forest-labs/flux-pro-1-0-expand/code"},{"title":"Comfy Router で FLUX Pro 1.0 Fill を使う","sidebarTitle":"FLUX Pro 1.0 Fill","href":"/ja/development/comfy-router/models/black-forest-labs/flux-pro-1-0-fill/code"},{"title":"FLUX Video Upscale を Comfy Router で使用する","sidebarTitle":"FLUX Video Upscale","href":"/ja/development/comfy-router/models/black-forest-labs/flux-video-upscale/code"},{"title":"Comfy Router で Video Edit V1 を使用する","sidebarTitle":"Video Edit V1","href":"/ja/development/comfy-router/models/black-forest-labs/video-edit-v1/code"},{"title":"Comfy Router で VTO V1 を使用する","sidebarTitle":"VTO V1","href":"/ja/development/comfy-router/models/black-forest-labs/vto-v1/code"}]},{"group":"Bria","pages":[{"title":"Comfy Router で Fibo を使用する","sidebarTitle":"Fibo","href":"/ja/development/comfy-router/models/bria/fibo/code"},{"title":"Comfy Router で Image Edit Add Object By Text を使用する","sidebarTitle":"Image Edit Add Object By Text","href":"/ja/development/comfy-router/models/bria/image-edit-add-object-by-text/code"},{"title":"Comfy Router で Image Edit Erase By Text を使用する","sidebarTitle":"Image Edit Erase By Text","href":"/ja/development/comfy-router/models/bria/image-edit-erase-by-text/code"},{"title":"Comfy Router で Image Edit Erase Foreground を使用する","sidebarTitle":"Image Edit Erase Foreground","href":"/ja/development/comfy-router/models/bria/image-edit-erase-foreground/code"},{"title":"Comfy Router で Image Edit Erase を使用する","sidebarTitle":"Image Edit Erase","href":"/ja/development/comfy-router/models/bria/image-edit-erase/code"},{"title":"Comfy Router で Image Edit Expand を使用する","sidebarTitle":"Image Edit Expand","href":"/ja/development/comfy-router/models/bria/image-edit-expand/code"},{"title":"Comfy Router で Image Edit Gen Fill を使う","sidebarTitle":"Image Edit Gen Fill","href":"/ja/development/comfy-router/models/bria/image-edit-gen-fill/code"},{"title":"Comfy Router で Image Edit Increase Resolution を使用する","sidebarTitle":"Image Edit Increase Resolution","href":"/ja/development/comfy-router/models/bria/image-edit-increase-resolution/code"},{"title":"Comfy Router で Image Edit Product Holding を使用する","sidebarTitle":"Image Edit Product Holding","href":"/ja/development/comfy-router/models/bria/image-edit-product-holding/code"},{"title":"Comfy Router で Image Edit Product Virtual Tryon を使用する","sidebarTitle":"Image Edit Product Virtual Tryon","href":"/ja/development/comfy-router/models/bria/image-edit-product-virtual-tryon/code"},{"title":"Comfy Router で Image Edit Relight を使う","sidebarTitle":"Image Edit Relight","href":"/ja/development/comfy-router/models/bria/image-edit-relight/code"},{"title":"Comfy Router で Image Edit Remove Background Guided を使用する","sidebarTitle":"Image Edit Remove Background Guided","href":"/ja/development/comfy-router/models/bria/image-edit-remove-background-guided/code"},{"title":"Comfy Router で Image Edit Remove Background を使用する","sidebarTitle":"Image Edit Remove Background","href":"/ja/development/comfy-router/models/bria/image-edit-remove-background/code"},{"title":"Comfy Router で Image Edit Replace Background を使う","sidebarTitle":"Image Edit Replace Background","href":"/ja/development/comfy-router/models/bria/image-edit-replace-background/code"},{"title":"Comfy Router で Image Edit Replace Object By Text を使う","sidebarTitle":"Image Edit Replace Object By Text","href":"/ja/development/comfy-router/models/bria/image-edit-replace-object-by-text/code"},{"title":"Comfy Router で Image Edit Reseason を使う","sidebarTitle":"Image Edit Reseason","href":"/ja/development/comfy-router/models/bria/image-edit-reseason/code"},{"title":"Comfy Router で Image Edit Restore を使用する","sidebarTitle":"Image Edit Restore","href":"/ja/development/comfy-router/models/bria/image-edit-restore/code"},{"title":"Comfy RouterでImageを使用する","sidebarTitle":"Image","href":"/ja/development/comfy-router/models/bria/image/code"},{"title":"Video Edit Erase を Comfy Router で使用する","sidebarTitle":"Video Edit Erase","href":"/ja/development/comfy-router/models/bria/video-edit-erase/code"},{"title":"Comfy Router で Video Edit Green Screen を使用する","sidebarTitle":"Video Edit Green Screen","href":"/ja/development/comfy-router/models/bria/video-edit-green-screen/code"},{"title":"Comfy Router で Video Edit Remove Background を使用する","sidebarTitle":"Video Edit Remove Background","href":"/ja/development/comfy-router/models/bria/video-edit-remove-background/code"},{"title":"Comfy Router で Video Edit Replace Background を使用する","sidebarTitle":"Video Edit Replace Background","href":"/ja/development/comfy-router/models/bria/video-edit-replace-background/code"}]},{"group":"BytePlus","pages":[{"title":"Dreamina Seedance 2.0 260128 を Comfy Router で使用する","sidebarTitle":"Dreamina Seedance 2.0 260128","href":"/ja/development/comfy-router/models/byteplus/dreamina-seedance-2-0-260128/code"},{"title":"Comfy Router で Dreamina Seedance 2.0 Fast 260128 を使用する","sidebarTitle":"Dreamina Seedance 2.0 Fast 260128","href":"/ja/development/comfy-router/models/byteplus/dreamina-seedance-2-0-fast-260128/code"},{"title":"Comfy Router で Dreamina Seedance 2.0 Mini を使用する","sidebarTitle":"Dreamina Seedance 2.0 Mini","href":"/ja/development/comfy-router/models/byteplus/dreamina-seedance-2-0-mini/code"},{"title":"Dreamina Seedance 2.5 260628 を Comfy Router で使用する","sidebarTitle":"Dreamina Seedance 2.5 260628","href":"/ja/development/comfy-router/models/byteplus/dreamina-seedance-2-5-260628/code"},{"title":"Seed 2.0 Lite 260228 を Comfy Router で使用する","sidebarTitle":"Seed 2.0 Lite 260228","href":"/ja/development/comfy-router/models/byteplus/seed-2-0-lite-260228/code"},{"title":"Comfy Router で Seed 2.0 Mini 260215 を使用する","sidebarTitle":"Seed 2.0 Mini 260215","href":"/ja/development/comfy-router/models/byteplus/seed-2-0-mini-260215/code"},{"title":"Comfy Router で Seed 2.0 Pro 260328 を使う","sidebarTitle":"Seed 2.0 Pro 260328","href":"/ja/development/comfy-router/models/byteplus/seed-2-0-pro-260328/code"},{"title":"Comfy Router で Seed Audio 1.0 Multilingual を使用する","sidebarTitle":"Seed Audio 1.0 Multilingual","href":"/ja/development/comfy-router/models/byteplus/seed-audio-1-0-multilingual/code"},{"title":"Comfy Router で Seed Audio 1.0 を使用する","sidebarTitle":"Seed Audio 1.0","href":"/ja/development/comfy-router/models/byteplus/seed-audio-1-0/code"},{"title":"Comfy Router で Seedance 1.0 Pro 250528 を使用する","sidebarTitle":"Seedance 1.0 Pro 250528","href":"/ja/development/comfy-router/models/byteplus/seedance-1-0-pro-250528/code"},{"title":"Seedance 1.0 Pro Fast 251015 を Comfy Router で使用する","sidebarTitle":"Seedance 1.0 Pro Fast 251015","href":"/ja/development/comfy-router/models/byteplus/seedance-1-0-pro-fast-251015/code"},{"title":"Comfy Router で Seedance 1.5 Pro 251215 を使用する","sidebarTitle":"Seedance 1.5 Pro 251215","href":"/ja/development/comfy-router/models/byteplus/seedance-1-5-pro-251215/code"},{"title":"Comfy Router で Seedream 4.0 250828 を使う","sidebarTitle":"Seedream 4.0 250828","href":"/ja/development/comfy-router/models/byteplus/seedream-4-0-250828/code"},{"title":"Comfy Router で Seedream 4.5 251128 を使用する","sidebarTitle":"Seedream 4.5 251128","href":"/ja/development/comfy-router/models/byteplus/seedream-4-5-251128/code"},{"title":"Comfy Router で Seedream 5.0 260128 を使用する","sidebarTitle":"Seedream 5.0 260128","href":"/ja/development/comfy-router/models/byteplus/seedream-5-0-260128/code"},{"title":"Comfy Router で Seedream 5.0 Flash 260915 を使う","sidebarTitle":"Seedream 5.0 Flash 260915","href":"/ja/development/comfy-router/models/byteplus/seedream-5-0-flash-260915/code"},{"title":"Seedream 5.0 Pro 260628 を Comfy Router で使用する","sidebarTitle":"Seedream 5.0 Pro 260628","href":"/ja/development/comfy-router/models/byteplus/seedream-5-0-pro-260628/code"}]},{"group":"Elevenlabs","pages":[{"title":"Eleven Multilingual V2 を Comfy Router で使用する","sidebarTitle":"Eleven Multilingual V2","href":"/ja/development/comfy-router/models/elevenlabs/eleven-multilingual-v2/code"},{"title":"Comfy Router で Eleven Sfx V2 を使う","sidebarTitle":"Eleven Sfx V2","href":"/ja/development/comfy-router/models/elevenlabs/eleven-sfx-v2/code"},{"title":"Comfy Router で Eleven V3 を使用する","sidebarTitle":"Eleven V3","href":"/ja/development/comfy-router/models/elevenlabs/eleven-v3/code"},{"title":"Eleven V4 Turbo を Comfy Router で使用する","sidebarTitle":"Eleven V4 Turbo","href":"/ja/development/comfy-router/models/elevenlabs/eleven-v4-turbo/code"},{"title":"Comfy Router で Eleven V4 を使用する","sidebarTitle":"Eleven V4","href":"/ja/development/comfy-router/models/elevenlabs/eleven-v4/code"}]},{"group":"fal","pages":[{"title":"Comfy Router で Crystal Upscaler を使用する","sidebarTitle":"Crystal Upscaler","href":"/ja/development/comfy-router/models/fal/crystal-upscaler/code"},{"title":"Comfy Router で Crystal Video Upscaler を使用する","sidebarTitle":"Crystal Video Upscaler","href":"/ja/development/comfy-router/models/fal/crystal-video-upscaler/code"},{"title":"Comfy Router で FLUX 3 Max を使用する","sidebarTitle":"FLUX 3 Max","href":"/ja/development/comfy-router/models/fal/flux-3-max/code"},{"title":"Comfy Router で H3 Max Turbo を使用する","sidebarTitle":"H3 Max Turbo","href":"/ja/development/comfy-router/models/fal/h3-max-turbo/code"},{"title":"Comfy Router で H3 Max を使用する","sidebarTitle":"H3 Max","href":"/ja/development/comfy-router/models/fal/h3-max/code"},{"title":"Comfy Router で Patina を使う","sidebarTitle":"Patina","href":"/ja/development/comfy-router/models/fal/patina/code"}]},{"group":"Freepik","pages":[{"title":"Comfy Router で AI Image Upscaler Precision V2 を使う","sidebarTitle":"AI Image Upscaler Precision V2","href":"/ja/development/comfy-router/models/freepik/ai-image-upscaler-precision-v2/code"},{"title":"Comfy Router で AI Skin Enhancer Creative を使う","sidebarTitle":"AI Skin Enhancer Creative","href":"/ja/development/comfy-router/models/freepik/ai-skin-enhancer-creative/code"},{"title":"AI Skin Enhancer Faithful を Comfy Router で使用する","sidebarTitle":"AI Skin Enhancer Faithful","href":"/ja/development/comfy-router/models/freepik/ai-skin-enhancer-faithful/code"},{"title":"Comfy Router で AI Skin Enhancer Flexible を使う","sidebarTitle":"AI Skin Enhancer Flexible","href":"/ja/development/comfy-router/models/freepik/ai-skin-enhancer-flexible/code"}]},{"group":"Gemini Interactions","pages":[{"title":"Gemini Omni 1.1 Flash を Comfy Router で使用する","sidebarTitle":"Gemini Omni 1.1 Flash","href":"/ja/development/comfy-router/models/gemini-interactions/gemini-omni-1-1-flash/code"},{"title":"Comfy Router で Gemini Omni Flash Preview を使用する","sidebarTitle":"Gemini Omni Flash Preview","href":"/ja/development/comfy-router/models/gemini-interactions/gemini-omni-flash-preview/code"}]},{"group":"Google","pages":[{"title":"Comfy Router で Gemini 2.5 Flash Image を使用する","sidebarTitle":"Gemini 2.5 Flash Image","href":"/ja/development/comfy-router/models/google/gemini-2-5-flash-image/code"},{"title":"Comfy Router で Gemini 3.1 Flash Lite を使用する","sidebarTitle":"Gemini 3.1 Flash Lite","href":"/ja/development/comfy-router/models/google/gemini-3-1-flash-lite/code"},{"title":"Comfy Router で Gemini 3.7 Flash を使う","sidebarTitle":"Gemini 3.7 Flash","href":"/ja/development/comfy-router/models/google/gemini-3-7-flash/code"},{"title":"Comfy Router で Gemini 3.8 Flash を使う","sidebarTitle":"Gemini 3.8 Flash","href":"/ja/development/comfy-router/models/google/gemini-3-8-flash/code"},{"title":"Comfy RouterでGemini Nano Banana 2.1を使用する","sidebarTitle":"Gemini Nano Banana 2.1","href":"/ja/development/comfy-router/models/google/gemini-nano-banana-2-1/code"},{"title":"Comfy Router で Google Gemini を使用する","sidebarTitle":"Google Gemini","href":"/ja/development/comfy-router/models/google/gemini/code"},{"title":"Comfy Router で Nano Banana 2 Lite を使用する","sidebarTitle":"Nano Banana 2 Lite","href":"/ja/development/comfy-router/models/google/nano-banana-2-lite/code"},{"title":"Comfy Router で Nano Banana 2 を使う","sidebarTitle":"Nano Banana 2","href":"/ja/development/comfy-router/models/google/nano-banana-2/code"},{"title":"Comfy Router で Nano Banana Pro を使う","sidebarTitle":"Nano Banana Pro","href":"/ja/development/comfy-router/models/google/nano-banana-pro/code"}]},{"group":"HeyGen","pages":[{"title":"Comfy Router で Starfish を使う","sidebarTitle":"Starfish","href":"/ja/development/comfy-router/models/heygen/starfish/code"}]},{"group":"Higgsfield","pages":[{"title":"Higgsfield Genjutsu Motion Transfer V1.0 を Comfy Router で使用する","sidebarTitle":"Higgsfield Genjutsu Motion Transfer V1.0","href":"/ja/development/comfy-router/models/higgsfield/higgsfield-genjutsu-motion-transfer-v1-0/code"},{"title":"Comfy Router で Higgsfield Kling 3.4k を使用する","sidebarTitle":"Higgsfield Kling 3.4k","href":"/ja/development/comfy-router/models/higgsfield/higgsfield-kling-3-4k/code"},{"title":"Comfy Router で Higgsfield Kling 3 Pro を使用する","sidebarTitle":"Higgsfield Kling 3 Pro","href":"/ja/development/comfy-router/models/higgsfield/higgsfield-kling-3-pro/code"}]},{"group":"Ideogram","pages":[{"title":"Comfy Router で Ideogram 4.5 を使用する","sidebarTitle":"Ideogram 4.5","href":"/ja/development/comfy-router/models/ideogram/ideogram-4-5/code"},{"title":"Comfy Router で Ideogram V3 を使用する","sidebarTitle":"Ideogram V3","href":"/ja/development/comfy-router/models/ideogram/ideogram-v3/code"},{"title":"Comfy Router で Ideogram 4.0 を使用する","sidebarTitle":"Ideogram 4.0","href":"/ja/development/comfy-router/models/ideogram/ideogram-v4/code"},{"title":"P Image Ideogram を Comfy Router で使用する","sidebarTitle":"P Image Ideogram","href":"/ja/development/comfy-router/models/ideogram/p-image-ideogram/code"}]},{"group":"Kling","pages":[{"title":"Comfy Router で Kling 3.0 Turbo を使用する","sidebarTitle":"Kling 3.0 Turbo","href":"/ja/development/comfy-router/models/kling/kling-3-0-turbo/code"},{"title":"Comfy Router で Kling Image O1 を使用する","sidebarTitle":"Kling Image O1","href":"/ja/development/comfy-router/models/kling/kling-image-o1/code"},{"title":"Kling V2.5 Turbo を Comfy Router で使用する","sidebarTitle":"Kling V2.5 Turbo","href":"/ja/development/comfy-router/models/kling/kling-v2-5-turbo/code"},{"title":"Comfy Router で Kling V2.6 を使用する","sidebarTitle":"Kling V2.6","href":"/ja/development/comfy-router/models/kling/kling-v2-6/code"},{"title":"Kling V3 Omni を Comfy Router で使用する","sidebarTitle":"Kling V3 Omni","href":"/ja/development/comfy-router/models/kling/kling-v3-omni/code"},{"title":"Comfy Router で Kling V3 を使用する","sidebarTitle":"Kling V3","href":"/ja/development/comfy-router/models/kling/kling-v3/code"},{"title":"Kling Video O1 を Comfy Router で使用する","sidebarTitle":"Kling Video O1","href":"/ja/development/comfy-router/models/kling/kling-video-o1/code"},{"title":"Comfy Router で Videos Avatar Image 2video を使用する","sidebarTitle":"Videos Avatar Image 2video","href":"/ja/development/comfy-router/models/kling/videos-avatar-image2video/code"},{"title":"Comfy Router で Videos Lip Sync を使う","sidebarTitle":"Videos Lip Sync","href":"/ja/development/comfy-router/models/kling/videos-lip-sync/code"},{"title":"Comfy Router で Videos Video Extend を使用する","sidebarTitle":"Videos Video Extend","href":"/ja/development/comfy-router/models/kling/videos-video-extend/code"}]},{"group":"Krea","pages":[{"title":"Comfy Router で Krea 2 Large を使う","sidebarTitle":"Krea 2 Large","href":"/ja/development/comfy-router/models/krea/krea-2-large/code"},{"title":"Krea 2 Medium Turbo を Comfy Router で使用する","sidebarTitle":"Krea 2 Medium Turbo","href":"/ja/development/comfy-router/models/krea/krea-2-medium-turbo/code"},{"title":"Krea 2 Medium を Comfy Router で使用する","sidebarTitle":"Krea 2 Medium","href":"/ja/development/comfy-router/models/krea/krea-2-medium/code"},{"title":"Comfy Router で Krea 2 を使う","sidebarTitle":"Krea 2","href":"/ja/development/comfy-router/models/krea/krea-2/code"},{"title":"Comfy Router で Krea 3 を使用する","sidebarTitle":"Krea 3","href":"/ja/development/comfy-router/models/krea/krea-3/code"}]},{"group":"LTX","pages":[{"title":"Comfy Router で LTX 2.5 Fast を使用する","sidebarTitle":"LTX 2.5 Fast","href":"/ja/development/comfy-router/models/ltx/ltx-2-5-fast/code"},{"title":"Comfy Router で LTX 2.5 Pro を使用する","sidebarTitle":"LTX 2.5 Pro","href":"/ja/development/comfy-router/models/ltx/ltx-2-5-pro/code"}]},{"group":"Luma","pages":[{"title":"Comfy Router で Photon 1 を使用する","sidebarTitle":"Photon 1","href":"/ja/development/comfy-router/models/luma/photon-1/code"},{"title":"Comfy Router で Photon Flash 1 を使う","sidebarTitle":"Photon Flash 1","href":"/ja/development/comfy-router/models/luma/photon-flash-1/code"}]},{"group":"Luma 2","pages":[{"title":"Ray 3.2 を Comfy Router で使用する","sidebarTitle":"Ray 3.2","href":"/ja/development/comfy-router/models/luma_2/ray-3-2/code"},{"title":"Comfy Router で Uni 1 Max を使う","sidebarTitle":"Uni 1 Max","href":"/ja/development/comfy-router/models/luma_2/uni-1-max/code"},{"title":"Comfy Router で Uni 1 を使用する","sidebarTitle":"Uni 1","href":"/ja/development/comfy-router/models/luma_2/uni-1/code"}]},{"group":"Meshy","pages":[{"title":"Comfy Router で Animations を使用する","sidebarTitle":"Animations","href":"/ja/development/comfy-router/models/meshy/animations/code"},{"title":"Comfy Router で Meshy 6 を使う","sidebarTitle":"Meshy 6","href":"/ja/development/comfy-router/models/meshy/meshy-6/code"},{"title":"Meshy 7.1 を Comfy Router で使用する","sidebarTitle":"Meshy 7.1","href":"/ja/development/comfy-router/models/meshy/meshy-7-1/code"},{"title":"Meshy 7 を Comfy Router で使用する","sidebarTitle":"Meshy 7","href":"/ja/development/comfy-router/models/meshy/meshy-7/code"},{"title":"Comfy RouterでRemeshを使用する","sidebarTitle":"Remesh","href":"/ja/development/comfy-router/models/meshy/remesh/code"},{"title":"Comfy Router で Rigging を使用する","sidebarTitle":"Rigging","href":"/ja/development/comfy-router/models/meshy/rigging/code"}]},{"group":"MiniMax","pages":[{"title":"MiniMax H3 を Comfy Router で使用する","sidebarTitle":"MiniMax H3","href":"/ja/development/comfy-router/models/minimax/minimax-h3/code"}]},{"group":"Moonvalley","pages":[{"title":"Comfy Router で画像から動画へを使用する","sidebarTitle":"画像から動画へ","href":"/ja/development/comfy-router/models/moonvalley/image-to-video/code"},{"title":"Comfy Router でテキストから動画を使用する","sidebarTitle":"テキストから動画へ","href":"/ja/development/comfy-router/models/moonvalley/text-to-video/code"},{"title":"Comfy Router で動画から動画へを使用する","sidebarTitle":"動画から動画へ","href":"/ja/development/comfy-router/models/moonvalley/video-to-video/code"}]},{"group":"OpenAI","pages":[{"title":"Comfy Router で GPT 4.1 Mini を使用する","sidebarTitle":"GPT 4.1 Mini","href":"/ja/development/comfy-router/models/openai/gpt-4-1-mini/code"},{"title":"Comfy Router で GPT 4.1 を使用する","sidebarTitle":"GPT 4.1","href":"/ja/development/comfy-router/models/openai/gpt-4-1/code"},{"title":"Comfy Router で GPT 4o を使用する","sidebarTitle":"GPT 4o","href":"/ja/development/comfy-router/models/openai/gpt-4o/code"},{"title":"GPT 5.5 Pro を Comfy Router で使用する","sidebarTitle":"GPT 5.5 Pro","href":"/ja/development/comfy-router/models/openai/gpt-5-5-pro/code"},{"title":"Comfy Router で GPT 5.5 を使う","sidebarTitle":"GPT 5.5","href":"/ja/development/comfy-router/models/openai/gpt-5-5/code"},{"title":"Comfy Router で GPT 5.6 Luna を使う","sidebarTitle":"GPT 5.6 Luna","href":"/ja/development/comfy-router/models/openai/gpt-5-6-luna/code"},{"title":"Comfy Router で GPT 5.6 Sol を使用する","sidebarTitle":"GPT 5.6 Sol","href":"/ja/development/comfy-router/models/openai/gpt-5-6-sol/code"},{"title":"GPT 5.6 Terra を Comfy Router で使用する","sidebarTitle":"GPT 5.6 Terra","href":"/ja/development/comfy-router/models/openai/gpt-5-6-terra/code"},{"title":"Comfy Router で GPT 5 Mini を使用する","sidebarTitle":"GPT 5 Mini","href":"/ja/development/comfy-router/models/openai/gpt-5-mini/code"},{"title":"Comfy Router で GPT 5 Nano を使用する","sidebarTitle":"GPT 5 Nano","href":"/ja/development/comfy-router/models/openai/gpt-5-nano/code"},{"title":"Comfy Router で GPT 5 を使う","sidebarTitle":"GPT 5","href":"/ja/development/comfy-router/models/openai/gpt-5/code"},{"title":"GPT 6.1 Sol を Comfy Router で使用する","sidebarTitle":"GPT 6.1 Sol","href":"/ja/development/comfy-router/models/openai/gpt-6-1-sol/code"},{"title":"GPT 6.1 Terra を Comfy Router で使用する","sidebarTitle":"GPT 6.1 Terra","href":"/ja/development/comfy-router/models/openai/gpt-6-1-terra/code"},{"title":"Comfy Router で GPT 6 Astra を使用する","sidebarTitle":"GPT 6 Astra","href":"/ja/development/comfy-router/models/openai/gpt-6-astra/code"},{"title":"Comfy Router で GPT 6 Luna を使う","sidebarTitle":"GPT 6 Luna","href":"/ja/development/comfy-router/models/openai/gpt-6-luna/code"},{"title":"GPT 6 Sol を Comfy Router で使用する","sidebarTitle":"GPT 6 Sol","href":"/ja/development/comfy-router/models/openai/gpt-6-sol/code"},{"title":"Comfy Router で GPT Image 1.5 を使用する","sidebarTitle":"GPT Image 1.5","href":"/ja/development/comfy-router/models/openai/gpt-image-1-5/code"},{"title":"GPT Image 2.5 Flare を Comfy Router で使う","sidebarTitle":"GPT Image 2.5 Flare","href":"/ja/development/comfy-router/models/openai/gpt-image-2-5-flare/code"},{"title":"Comfy Router で GPT Image 2.5 Sunburst を使う","sidebarTitle":"GPT Image 2.5 Sunburst","href":"/ja/development/comfy-router/models/openai/gpt-image-2-5-sunburst/code"},{"title":"Comfy Router で GPT Image 2 を使用する","sidebarTitle":"GPT Image 2","href":"/ja/development/comfy-router/models/openai/gpt-image-2/code"},{"title":"Comfy Router で o3 を使用する","sidebarTitle":"o3","href":"/ja/development/comfy-router/models/openai/o3/code"}]},{"group":"Pika","pages":[{"title":"Comfy Router で Pika 2.5 Image To Video を使用する","sidebarTitle":"Pika 2.5 Image To Video","href":"/ja/development/comfy-router/models/pika/pika-2-5-image-to-video/code"},{"title":"Comfy Router で Pika Soundtrack を使用する","sidebarTitle":"Pika Soundtrack","href":"/ja/development/comfy-router/models/pika/pika-soundtrack/code"},{"title":"Pika Sfx を Comfy Router で使用する","sidebarTitle":"Pika Sfx","href":"/ja/development/comfy-router/models/pika/pika-sfx/code"},{"title":"Comfy Router で Pika Music を使用する","sidebarTitle":"Pika Music","href":"/ja/development/comfy-router/models/pika/pika-music/code"},{"title":"Comfy Router で Pika 2.5 テキストから動画へを使用する","sidebarTitle":"Pika 2.5 テキストから動画へ","href":"/ja/development/comfy-router/models/pika/pika-2-5-text-to-video/code"}]},{"group":"Pruna","pages":[{"title":"P Video 2 を Comfy Router で使用する","sidebarTitle":"P Video 2","href":"/ja/development/comfy-router/models/pruna/p-video-2/code"}]},{"group":"Qwen","pages":[{"title":"Comfy Router で Qwen Image 3.0 Pro を使用する","sidebarTitle":"Qwen Image 3.0 Pro","href":"/ja/development/comfy-router/models/qwen/qwen-image-3-0-pro/code"},{"title":"Comfy Router で Qwen Image 3.0 を使う","sidebarTitle":"Qwen Image 3.0","href":"/ja/development/comfy-router/models/qwen/qwen-image-3-0/code"}]},{"group":"Recraft","pages":[{"title":"Comfy Router で Recraft V2 を使用する","sidebarTitle":"Recraft V2","href":"/ja/development/comfy-router/models/recraft/recraftv2/code"},{"title":"Comfy Router で Recraft V3 を使う","sidebarTitle":"Recraft V3","href":"/ja/development/comfy-router/models/recraft/recraftv3/code"},{"title":"Recraft V4.1 Pro Vector を Comfy Router で使用する","sidebarTitle":"Recraft V4.1 Pro Vector","href":"/ja/development/comfy-router/models/recraft/recraftv4-1-pro-vector/code"},{"title":"Comfy Router で Recraft V4.1 Pro を使用する","sidebarTitle":"Recraft V4.1 Pro","href":"/ja/development/comfy-router/models/recraft/recraftv4-1-pro/code"},{"title":"Comfy Router で Recraft V4.1 Utility Pro Vector を使用する","sidebarTitle":"Recraft V4.1 Utility Pro Vector","href":"/ja/development/comfy-router/models/recraft/recraftv4-1-utility-pro-vector/code"},{"title":"Comfy Router で Recraft V4.1 Utility Pro を使う","sidebarTitle":"Recraft V4.1 Utility Pro","href":"/ja/development/comfy-router/models/recraft/recraftv4-1-utility-pro/code"},{"title":"Comfy Router で Recraft V4.1 Utility Vector を使う","sidebarTitle":"Recraft V4.1 Utility Vector","href":"/ja/development/comfy-router/models/recraft/recraftv4-1-utility-vector/code"},{"title":"Comfy Router で Recraft V4.1 Utility を使う","sidebarTitle":"Recraft V4.1 Utility","href":"/ja/development/comfy-router/models/recraft/recraftv4-1-utility/code"},{"title":"Comfy Router で Recraft V4.1 Vector を使用する","sidebarTitle":"Recraft V4.1 Vector","href":"/ja/development/comfy-router/models/recraft/recraftv4-1-vector/code"},{"title":"Comfy Router で Recraft V4.1 を使う","sidebarTitle":"Recraft V4.1","href":"/ja/development/comfy-router/models/recraft/recraftv4-1/code"},{"title":"Comfy Router で Recraft V4 Pro を使用する","sidebarTitle":"Recraft V4 Pro","href":"/ja/development/comfy-router/models/recraft/recraftv4-pro/code"},{"title":"Comfy Router で Recraft V4 Styles Pro Vector を使用する","sidebarTitle":"Recraft V4 Styles Pro Vector","href":"/ja/development/comfy-router/models/recraft/recraftv4-styles-pro-vector/code"},{"title":"Comfy Router で Recraft V4 Styles Pro を使用する","sidebarTitle":"Recraft V4 Styles Pro","href":"/ja/development/comfy-router/models/recraft/recraftv4-styles-pro/code"},{"title":"Recraft V4 Styles Vector を Comfy Router で使用する","sidebarTitle":"Recraft V4 Styles Vector","href":"/ja/development/comfy-router/models/recraft/recraftv4-styles-vector/code"},{"title":"Comfy Router で Recraft V4 Styles を使用する","sidebarTitle":"Recraft V4 Styles","href":"/ja/development/comfy-router/models/recraft/recraftv4-styles/code"},{"title":"Comfy RouterでRecraft V4を使用する","sidebarTitle":"Recraft V4","href":"/ja/development/comfy-router/models/recraft/recraftv4/code"}]},{"group":"Runway","pages":[{"title":"Comfy Router で Aleph 2 を使用する","sidebarTitle":"Aleph 2","href":"/ja/development/comfy-router/models/runway/aleph2/code"},{"title":"Comfy Router で Gen 4 Image を使用する","sidebarTitle":"Gen 4 Image","href":"/ja/development/comfy-router/models/runway/gen4-image/code"},{"title":"Comfy Router で Gen 4 Turbo を使用する","sidebarTitle":"Gen 4 Turbo","href":"/ja/development/comfy-router/models/runway/gen4-turbo/code"}]},{"group":"Synclabs","pages":[{"title":"Sync 3 を Comfy Router で使用する","sidebarTitle":"Sync 3","href":"/ja/development/comfy-router/models/synclabs/sync-3/code"}]},{"group":"Tencent","pages":[{"title":"Comfy Router で Hunyuan 3D Part を使用する","sidebarTitle":"Hunyuan 3D Part","href":"/ja/development/comfy-router/models/tencent/hunyuan-3d-part/code"},{"title":"Comfy Router で Hunyuan 3D Smart Topology を使用する","sidebarTitle":"Hunyuan 3D Smart Topology","href":"/ja/development/comfy-router/models/tencent/hunyuan-3d-smart-topology/code"},{"title":"Comfy Router で Hunyuan 3D Texture Edit を使う","sidebarTitle":"Hunyuan 3D Texture Edit","href":"/ja/development/comfy-router/models/tencent/hunyuan-3d-texture-edit/code"},{"title":"Comfy Router で Hunyuan 3D Uv を使用する","sidebarTitle":"Hunyuan 3D Uv","href":"/ja/development/comfy-router/models/tencent/hunyuan-3d-uv/code"}]},{"group":"Veed","pages":[{"title":"Comfy Router で Clean Audio Video を使用する","sidebarTitle":"Clean Audio Video","href":"/ja/development/comfy-router/models/veed/clean-audio-video/code"},{"title":"Comfy Router で Clean Audio を使用する","sidebarTitle":"Clean Audio","href":"/ja/development/comfy-router/models/veed/clean-audio/code"},{"title":"Comfy Router で Fabric 1.0 を使用する","sidebarTitle":"Fabric 1.0","href":"/ja/development/comfy-router/models/veed/fabric-1-0/code"},{"title":"Comfy Router で Lipsync 2.0 を使用する","sidebarTitle":"Lipsync 2.0","href":"/ja/development/comfy-router/models/veed/lipsync-2-0/code"},{"title":"Comfy Router で Video Background Removal Fast を使用する","sidebarTitle":"Video Background Removal Fast","href":"/ja/development/comfy-router/models/veed/video-background-removal-fast/code"},{"title":"Comfy Router で Video Background Removal Green Screen を使用する","sidebarTitle":"Video Background Removal Green Screen","href":"/ja/development/comfy-router/models/veed/video-background-removal-green-screen/code"},{"title":"Comfy Router でビデオ背景除去を使用する","sidebarTitle":"ビデオ背景除去","href":"/ja/development/comfy-router/models/veed/video-background-removal/code"}]},{"group":"Veo","pages":[{"title":"Comfy Router で Veo 3.1 Fast Generate 001 を使う","sidebarTitle":"Veo 3.1 Fast Generate 001","href":"/ja/development/comfy-router/models/veo/veo-3-1-fast-generate-001/code"},{"title":"Comfy Router で Veo 3.1 Generate 001 を使う","sidebarTitle":"Veo 3.1 Generate 001","href":"/ja/development/comfy-router/models/veo/veo-3-1-generate-001/code"},{"title":"Comfy Router で Veo 3.1 Lite Generate 001 を使用する","sidebarTitle":"Veo 3.1 Lite Generate 001","href":"/ja/development/comfy-router/models/veo/veo-3-1-lite-generate-001/code"}]},{"group":"Wan","pages":[{"title":"Comfy Router で HappyHorse 1.0 I2V を使用する","sidebarTitle":"HappyHorse 1.0 I2V","href":"/ja/development/comfy-router/models/wan/happyhorse-1-0-i2v/code"},{"title":"Comfy Router で HappyHorse 1.0 R2V を使用する","sidebarTitle":"HappyHorse 1.0 R2V","href":"/ja/development/comfy-router/models/wan/happyhorse-1-0-r2v/code"},{"title":"Comfy Router で HappyHorse 1.0 T2V を使用する","sidebarTitle":"HappyHorse 1.0 T2V","href":"/ja/development/comfy-router/models/wan/happyhorse-1-0-t2v/code"},{"title":"Comfy Router で HappyHorse 1.0 Video Edit を使う","sidebarTitle":"HappyHorse 1.0 Video Edit","href":"/ja/development/comfy-router/models/wan/happyhorse-1-0-video-edit/code"},{"title":"HappyHorse 1.1 I2V を Comfy Router で使用する","sidebarTitle":"HappyHorse 1.1 I2V","href":"/ja/development/comfy-router/models/wan/happyhorse-1-1-i2v/code"},{"title":"HappyHorse 1.1 R2V を Comfy Router で使用する","sidebarTitle":"HappyHorse 1.1 R2V","href":"/ja/development/comfy-router/models/wan/happyhorse-1-1-r2v/code"},{"title":"Comfy Router で HappyHorse 1.1 T2V を使う","sidebarTitle":"HappyHorse 1.1 T2V","href":"/ja/development/comfy-router/models/wan/happyhorse-1-1-t2v/code"},{"title":"Comfy Router で Wan 2.5 I2I Preview を使用する","sidebarTitle":"Wan 2.5 I2I Preview","href":"/ja/development/comfy-router/models/wan/wan2-5-i2i-preview/code"},{"title":"Wan 2.5 I2V Preview を Comfy Router で使用する","sidebarTitle":"Wan 2.5 I2V Preview","href":"/ja/development/comfy-router/models/wan/wan2-5-i2v-preview/code"},{"title":"Comfy Router で Wan 2.5 T2I Preview を使用する","sidebarTitle":"Wan 2.5 T2I Preview","href":"/ja/development/comfy-router/models/wan/wan2-5-t2i-preview/code"},{"title":"Comfy Router で Wan 2.5 T2V Preview を使う","sidebarTitle":"Wan 2.5 T2V Preview","href":"/ja/development/comfy-router/models/wan/wan2-5-t2v-preview/code"},{"title":"Comfy Router で Wan 2.6 I2V を使う","sidebarTitle":"Wan 2.6 I2V","href":"/ja/development/comfy-router/models/wan/wan2-6-i2v/code"},{"title":"Comfy Router で Wan 2.6 R2V を使う","sidebarTitle":"Wan 2.6 R2V","href":"/ja/development/comfy-router/models/wan/wan2-6-r2v/code"},{"title":"Comfy Router で Wan 2.6 T2V を使用する","sidebarTitle":"Wan 2.6 T2V","href":"/ja/development/comfy-router/models/wan/wan2-6-t2v/code"},{"title":"Comfy Router で Wan 2.7 I2V を使う","sidebarTitle":"Wan 2.7 I2V","href":"/ja/development/comfy-router/models/wan/wan2-7-i2v/code"},{"title":"Comfy Router で Wan 2.7 R2V を使用する","sidebarTitle":"Wan 2.7 R2V","href":"/ja/development/comfy-router/models/wan/wan2-7-r2v/code"},{"title":"Comfy Router で Wan 2.7 T2V を使用する","sidebarTitle":"Wan 2.7 T2V","href":"/ja/development/comfy-router/models/wan/wan2-7-t2v/code"},{"title":"Comfy Router で Wan 2.7 Video Edit を使用する","sidebarTitle":"Wan 2.7 Video Edit","href":"/ja/development/comfy-router/models/wan/wan2-7-videoedit/code"},{"title":"Wan 3.0 Video Prime を Comfy Router で使用する","sidebarTitle":"Wan 3.0 Video Prime","href":"/ja/development/comfy-router/models/wan/wan3-0-video-prime/code"},{"title":"Comfy RouterでWan 3.0 Videoを使用する","sidebarTitle":"Wan 3.0 Video","href":"/ja/development/comfy-router/models/wan/wan3-0-video/code"}]},{"group":"WaveSpeed","pages":[{"title":"Comfy Router で Flashvsr を使用する","sidebarTitle":"Flashvsr","href":"/ja/development/comfy-router/models/wavespeed/flashvsr/code"},{"title":"Comfy Router で Seedvr 2 を使用する","sidebarTitle":"Seedvr 2","href":"/ja/development/comfy-router/models/wavespeed/seedvr2/code"},{"title":"Comfy Router で Ultimate Image Upscaler を使用する","sidebarTitle":"Ultimate Image Upscaler","href":"/ja/development/comfy-router/models/wavespeed/ultimate-image-upscaler/code"}]},{"group":"xAI","pages":[{"title":"Comfy Router で Grok Imagine Image 2.0 を使用する","sidebarTitle":"Grok Imagine Image 2.0","href":"/ja/development/comfy-router/models/xai/grok-imagine-image-2-0/code"},{"title":"Grok Imagine Image Pro を Comfy Router で使用する","sidebarTitle":"Grok Imagine Image Pro","href":"/ja/development/comfy-router/models/xai/grok-imagine-image-pro/code"},{"title":"Comfy Router で Grok Imagine Image Quality を使用する","sidebarTitle":"Grok Imagine Image Quality","href":"/ja/development/comfy-router/models/xai/grok-imagine-image-quality/code"},{"title":"Comfy Router で Grok Imagine Image を使う","sidebarTitle":"Grok Imagine Image","href":"/ja/development/comfy-router/models/xai/grok-imagine-image/code"},{"title":"Comfy Router で Grok Imagine Video 1.5 Lite を使用する","sidebarTitle":"Grok Imagine Video 1.5 Lite","href":"/ja/development/comfy-router/models/xai/grok-imagine-video-1-5-lite/code"},{"title":"Comfy Router で Grok Imagine Video 1.5 Preview を使う","sidebarTitle":"Grok Imagine Video 1.5 Preview","href":"/ja/development/comfy-router/models/xai/grok-imagine-video-1-5-preview/code"},{"title":"Comfy Router で Grok Imagine Video 1.5 を使用する","sidebarTitle":"Grok Imagine Video 1.5","href":"/ja/development/comfy-router/models/xai/grok-imagine-video-1-5/code"},{"title":"Comfy Router で Grok Imagine Video を使用する","sidebarTitle":"Grok Imagine Video","href":"/ja/development/comfy-router/models/xai/grok-imagine-video/code"}]},{"group":"Openrouter","pages":[{"title":"Comfy Router で Chat Completions を使用する","sidebarTitle":"Chat Completions","href":"/ja/development/comfy-router/models/openrouter/chat-completions/code"}]}]}]},{"group":"Comfy CLI","pages":[{"title":"Comfy CLI をはじめよう","sidebarTitle":"はじめに","href":"/ja/comfy-cli/getting-started"},{"title":"Comfy CLI コマンドリファレンス","sidebarTitle":"コマンドリファレンス","href":"/ja/comfy-cli/reference"},{"title":"Comfy CLI トラブルシューティング: セットアップとインストール","sidebarTitle":"トラブルシューティング","href":"/ja/comfy-cli/troubleshooting"}]},{"group":"仕様","pages":[{"group":"Workflow JSON","pages":[{"title":"ワークフロー JSON","href":"/ja/specs/workflow_json"},{"title":"ワークフロー JSON 0.4","href":"/ja/specs/workflow_json_0.4"}]},{"group":"ノード定義","pages":[{"title":"ノード定義 JSON","href":"/ja/specs/nodedef_json"},{"title":"ノード定義 JSON 1.0","href":"/ja/specs/nodedef_json_1_0"}]}]},{"group":"Demo Apps","pages":[{"title":"デモアプリ","mode":"wide","href":"/ja/development/samples/overview"}]}]},{"tab":"カスタムノード","pages":[{"title":"カスタムノード","href":"/ja/custom-nodes/intro"}]},{"tab":"サポート","pages":[{"title":"サポート","href":"/ja/support/contact-support"}]},{"tab":"Cloud APIリファレンス","pages":[{"title":"Cloud APIリファレンス","href":"/ja/api-reference/cloud/workflow/get-information-about-current-prompt-executions"}]}]},{"language":"ko","footer":{"socials":{"github":"https://github.com/Comfy-Org/ComfyUI","x":"https://x.com/ComfyUI","discord":"https://discord.com/invite/comfyorg","youtube":"https://www.youtube.com/@comfyorg"},"links":[{"header":"리소스","items":[{"label":"설치","href":"/ko/installation/system_requirements"},{"label":"튜토리얼","href":"/ko/tutorials/basic/text-to-image"},{"label":"개발","href":"/ko/development/overview"}]},{"header":"제품","items":[{"label":"기능","href":"https://www.comfy.org/?utm_source=docs"},{"label":"갤러리","href":"https://www.comfy.org/gallery?utm_source=docs"},{"label":"다운로드","href":"https://www.comfy.org/download?utm_source=docs"}]},{"header":"회사 정보","items":[{"label":"소개","href":"https://www.comfy.org/about?utm_source=docs"},{"label":"채용","href":"https://www.comfy.org/careers?utm_source=docs"},{"label":"이용약관","href":"https://www.comfy.org/terms-of-service?utm_source=docs"},{"label":"개인정보 처리방침","href":"https://www.comfy.org/privacy-policy?utm_source=docs"}]}]},"navbar":{"links":[{"href":"/ko/tutorials/partner-nodes/pricing","label":"가격 정책"},{"href":"https://comfy.org/download?utm_source=docs","label":"다운로드"}],"primary":{"type":"button","label":"Comfy Cloud","href":"https://comfy.org/cloud?utm_source=docs"}},"pages":[{"title":"ko","href":"/ko/api-reference/v2/jobs/request-cancellation"}]},{"language":"es","pages":[{"title":"es","href":"/es/api-reference/v2/jobs/request-cancellation"}]}]},"basePath":"","title":"Request cancellation - ComfyUI","buildId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","deploymentId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-5FCzAcfS.js","utils-SLtAG4EZ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-2DZi8ZMu.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D7J3nkzE.js","snippetPresets-D0Alv0AH.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BI4qNJ2c.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BD3uyr8j.js","shallow-D8iEBr5z.js","getApiPlaygroundDisplay-CgNP4lzR.js","CodeSnippet-CX-QHuMs.js","CodeSnippets-VlXE-ZUf.js","Page-D9ithiIZ.js","getPastedJson-DYNQkZ1M.js","icon-CzacdwOi.js","MethodPill-2JVqoYKi.js","DuplicateIcon-_xVXs-U8.js","createIcon-BRHrweLo.js","DynamicMarkdown-mQG_iQiE.js","SectionHeading-DMpJzv8f.js","axios-vUo_bRtp.js","Markdown-5FGIym-8.js","clsx-D-TRO5q5.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CdrJecqK.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-CHlcWBLM.js"]}