Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
**/__pycache__/
**/.speakeasy/temp/
**/.speakeasy/logs/
.speakeasy/reports
README-PYPI.md
.venv/
Expand Down
31 changes: 17 additions & 14 deletions .speakeasy/gen.lock
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
lockVersion: 2.0.0
id: 2c1d440e-25e4-46e2-a435-ebd1f72a7373
management:
docChecksum: a12e94397f17ad377cd82287f65fc0dd
docChecksum: 7cf6271d5d2978d3d412fbf091a637f3
docVersion: V2
speakeasyVersion: 1.523.2
generationVersion: 2.560.1
releaseVersion: 0.7.0
configChecksum: efd69310efe6f150238bffd349771dd8
speakeasyVersion: 1.568.0
generationVersion: 2.632.2
releaseVersion: 0.8.0
configChecksum: c4e3abdc6888915d3b64a0699b76c67d
repoURL: https://github.com/comfy-deploy/comfy-deploy-python.git
installationURL: https://github.com/comfy-deploy/comfy-deploy-python.git
published: true
features:
python:
additionalDependencies: 1.0.0
constsAndDefaults: 1.0.5
core: 5.12.4
core: 5.19.3
defaultEnabledRetries: 0.2.0
devContainers: 3.0.0
enumUnions: 0.1.0
Expand All @@ -23,13 +23,13 @@ features:
globalSecurity: 3.0.3
globalSecurityCallbacks: 1.0.0
globalSecurityFlattening: 1.0.0
globalServerURLs: 3.1.0
globalServerURLs: 3.1.1
groups: 3.0.0
nameOverrides: 3.0.1
nullables: 1.0.1
responseFormat: 1.0.1
retries: 3.0.2
sdkHooks: 1.0.1
sdkHooks: 1.1.0
unions: 3.0.4
webhooks: 2.0.0
generatedFiles:
Expand Down Expand Up @@ -110,6 +110,7 @@ generatedFiles:
- src/comfydeploy/types/basemodel.py
- src/comfydeploy/utils/__init__.py
- src/comfydeploy/utils/annotations.py
- src/comfydeploy/utils/datetimes.py
- src/comfydeploy/utils/enums.py
- src/comfydeploy/utils/eventstreaming.py
- src/comfydeploy/utils/forms.py
Expand All @@ -128,10 +129,12 @@ examples:
speakeasy-default-get-run-run-run-id-get:
parameters:
path:
run_id: "b888f774-3e7c-4135-a18c-6b985523c4bc"
run_id: "faf49b3a-7b64-4687-95c8-58ca8a41dd73"
query:
queue_position: false
responses:
"200":
application/json: {"id": "e50f7622-81da-484b-9c66-1c8a99c6b71b", "workflow_version_id": "ecd62b8f-7112-4aaf-90ab-4e43b4cca371", "workflow_inputs": "<value>", "workflow_id": "f620807a-a1f8-4cf0-95d8-9d58ee381f6b", "workflow_api": "<value>", "machine_id": "b885c09d-541c-4293-b683-64a15f8d7e75", "origin": "<value>", "status": "<value>", "created_at": "2024-02-02T12:01:38.576Z", "updated_at": "2023-04-16T15:25:27.950Z", "gpu_event_id": "<id>", "gpu": "<value>", "machine_version": "<value>", "machine_type": "<value>", "modal_function_call_id": "<id>", "user_id": "<id>", "org_id": "<id>", "live_status": "<value>", "progress": 0, "is_realtime": false, "webhook": "<value>", "webhook_status": "<value>", "webhook_intermediate_status": false, "number": 494415, "duration": 6188.69, "cold_start_duration": 9131.15, "cold_start_duration_total": 1865.92, "run_duration": 3787.04}
application/json: {"id": "46a99099-5b7a-4e10-8e06-6dacc98118bf", "workflow_version_id": "f69dd44f-f54c-41db-91a8-2526823f19f0", "workflow_inputs": "<value>", "workflow_id": "39f9f100-52c4-4837-9d06-0278a672e1ec", "workflow_api": "<value>", "machine_id": "2fc8c79b-bed3-4891-b575-269d7cdf77e5", "origin": "<value>", "status": "<value>", "created_at": "2025-04-08T06:46:17.964Z", "updated_at": "2024-08-17T20:17:10.773Z", "gpu_event_id": "<id>", "gpu": "<value>", "machine_version": "<value>", "machine_type": "<value>", "modal_function_call_id": "<id>", "user_id": "<id>", "org_id": "<id>", "live_status": "<value>", "progress": 0, "is_realtime": false, "webhook": "<value>", "webhook_status": "<value>", "webhook_intermediate_status": false}
"422":
application/json: {}
cancel_run_run__run_id__cancel_post:
Expand All @@ -147,20 +150,20 @@ examples:
queue_deployment_run_run_deployment_queue_post:
speakeasy-default-queue-deployment-run-run-deployment-queue-post:
requestBody:
application/json: {"inputs": {"prompt": "A beautiful landscape", "seed": 42}, "webhook": "https://myapp.com/webhook", "webhook_intermediate_status": true, "deployment_id": "15e79589-12c9-453c-a41a-348fdd7de957"}
application/json: {"inputs": {"num_inference_steps": 30, "prompt": "A futuristic cityscape", "seed": 123456}, "webhook": "https://myapp.com/webhook", "webhook_intermediate_status": true, "deployment_id": "12345678-1234-5678-1234-567812345678"}
responses:
"200":
application/json: {"run_id": "03ec31b2-4d0d-4329-88ff-ac74003017b7"}
application/json: {"run_id": "17cad37f-15e1-48dc-8b81-b4a67ba778ba"}
"422":
application/json: {}
run_update__request_body__webhook__post:
speakeasy-default-run-update-request-body-webhook-post:
requestBody:
application/json: {"run_id": "<id>", "status": "success", "live_status": "<value>", "progress": 0}
application/json: {"run_id": "<id>", "status": "running", "live_status": "<value>", "progress": 0}
responses:
"200":
application/json: {"status": "<value>"}
"422":
application/json: {}
examplesVersion: 1.0.0
examplesVersion: 1.0.2
generatedTests: {}
7 changes: 6 additions & 1 deletion .speakeasy/gen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,24 +7,27 @@ generation:
maintainOpenAPIOrder: true
usageSnippets:
optionalPropertyRendering: withExample
sdkInitStyle: constructor
useClassNamesForArrayFields: true
fixes:
nameResolutionDec2023: true
nameResolutionFeb2025: false
parameterOrderingFeb2024: true
requestResponseComponentNamesFeb2024: true
securityFeb2025: false
sharedErrorComponentsApr2025: false
auth:
oAuth2ClientCredentialsEnabled: false
oAuth2PasswordEnabled: false
python:
version: 0.7.0
version: 0.8.0
additionalDependencies:
dev: {}
main: {}
author: Speakeasy
authors:
- Speakeasy
baseErrorName: ComfyDeployError
clientServerStatusCodesAsErrors: true
defaultErrorName: SDKError
description: Python Client SDK Generated by Speakeasy
Expand All @@ -46,9 +49,11 @@ python:
inputModelSuffix: input
maxMethodParams: 4
methodArguments: require-security-and-request
moduleName: ""
outputModelSuffix: output
packageName: comfydeploy
projectUrls: {}
pytestFilterWarnings: []
pytestTimeout: 0
responseFormat: envelope-http
templateVersion: v2
14 changes: 7 additions & 7 deletions .speakeasy/workflow.lock
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
speakeasyVersion: 1.523.2
speakeasyVersion: 1.568.0
sources:
comfydeploy-api:
sourceNamespace: comfydeploy-api
sourceRevisionDigest: sha256:88643a4de11cc9a90c5da0de3ecf6526f61237a30189707b7a6abf6192ad4cb2
sourceBlobDigest: sha256:df07cbe29241948042d8f8f0dc662107805290842e5a6ed7623ccf270744fba1
sourceRevisionDigest: sha256:4a00e6ee6fe2b6e0e250a7529e27ef192526cef8630fe8edbc0be1fe08078912
sourceBlobDigest: sha256:cfede92fddb69e50261d810fec8be8800f247fa71b4a1241a1a8a4f59c36a5ce
tags:
- latest
- speakeasy-sdk-regen-1743002572
- speakeasy-sdk-regen-1743120754
- V2
targets:
comfy-deploy:
source: comfydeploy-api
sourceNamespace: comfydeploy-api
sourceRevisionDigest: sha256:88643a4de11cc9a90c5da0de3ecf6526f61237a30189707b7a6abf6192ad4cb2
sourceBlobDigest: sha256:df07cbe29241948042d8f8f0dc662107805290842e5a6ed7623ccf270744fba1
sourceRevisionDigest: sha256:4a00e6ee6fe2b6e0e250a7529e27ef192526cef8630fe8edbc0be1fe08078912
sourceBlobDigest: sha256:cfede92fddb69e50261d810fec8be8800f247fa71b4a1241a1a8a4f59c36a5ce
codeSamplesNamespace: code-samples-python-comfy-deploy
codeSamplesRevisionDigest: sha256:adf2885110445ea05f59d31a8a76e34c61bc6c030a258fc1ef5ae0c8836be768
codeSamplesRevisionDigest: sha256:82e0c4989c16662ac5a8ee9d0abbd04334ad092738c428fff08875b5e1aad534
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest
Expand Down
18 changes: 9 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ with ComfyDeploy(
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = comfy_deploy.run.get(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = comfy_deploy.run.get(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand All @@ -158,7 +158,7 @@ async def main():
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = await comfy_deploy.run.get_async(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = await comfy_deploy.run.get_async(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand Down Expand Up @@ -189,7 +189,7 @@ with ComfyDeploy(
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = comfy_deploy.run.get(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = comfy_deploy.run.get(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand Down Expand Up @@ -233,7 +233,7 @@ with ComfyDeploy(
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = comfy_deploy.run.get(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc",
res = comfy_deploy.run.get(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False,
RetryConfig("backoff", BackoffStrategy(1, 50, 1.1, 100), False))

assert res.workflow_run_model is not None
Expand All @@ -254,7 +254,7 @@ with ComfyDeploy(
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = comfy_deploy.run.get(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = comfy_deploy.run.get(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand Down Expand Up @@ -298,7 +298,7 @@ with ComfyDeploy(
res = None
try:

res = comfy_deploy.run.get(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = comfy_deploy.run.get(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand Down Expand Up @@ -338,7 +338,7 @@ with ComfyDeploy(
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = comfy_deploy.run.get(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = comfy_deploy.run.get(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand All @@ -355,11 +355,11 @@ from comfydeploy import ComfyDeploy


with ComfyDeploy(
server_url="https://api.comfydeploy.com/api",
server_url="http://localhost:3011/api",
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = comfy_deploy.run.get(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = comfy_deploy.run.get(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand Down
12 changes: 11 additions & 1 deletion RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -188,4 +188,14 @@ Based on:
### Generated
- [python v0.7.0] .
### Releases
- [PyPI v0.7.0] https://pypi.org/project/comfydeploy/0.7.0 - .
- [PyPI v0.7.0] https://pypi.org/project/comfydeploy/0.7.0 - .

## 2025-06-23 00:14:43
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.568.0 (2.632.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v0.8.0] .
### Releases
- [PyPI v0.8.0] https://pypi.org/project/comfydeploy/0.8.0 - .
4 changes: 2 additions & 2 deletions USAGE.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ with ComfyDeploy(
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = comfy_deploy.run.get(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = comfy_deploy.run.get(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand All @@ -30,7 +30,7 @@ async def main():
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = await comfy_deploy.run.get_async(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = await comfy_deploy.run.get_async(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand Down
12 changes: 7 additions & 5 deletions codeSamples.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,13 @@ actions:

res = comfy_deploy.run.deployment.queue(request={
"inputs": {
"prompt": "A beautiful landscape",
"seed": 42,
"num_inference_steps": 30,
"prompt": "A futuristic cityscape",
"seed": 123456,
},
"webhook": "https://myapp.com/webhook",
"deployment_id": "15e79589-12c9-453c-a41a-348fdd7de957",
"webhook_intermediate_status": True,
"deployment_id": "12345678-1234-5678-1234-567812345678",
})

assert res.create_run_response is not None
Expand All @@ -42,7 +44,7 @@ actions:
bearer="<YOUR_BEARER_TOKEN_HERE>",
) as comfy_deploy:

res = comfy_deploy.run.get(run_id="b888f774-3e7c-4135-a18c-6b985523c4bc")
res = comfy_deploy.run.get(run_id="faf49b3a-7b64-4687-95c8-58ca8a41dd73", queue_position=False)

assert res.workflow_run_model is not None

Expand Down Expand Up @@ -81,7 +83,7 @@ actions:

res = comfy_deploy.callbacks.run_update_request_body_webhook_post(request={
"run_id": "<id>",
"status": components.WorkflowRunStatus.SUCCESS,
"status": components.WorkflowRunStatus.RUNNING,
"live_status": "<value>",
})

Expand Down
5 changes: 3 additions & 2 deletions docs/models/components/deploymentrunrequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,9 @@

| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
| `deployment_id` | *str* | :heavy_check_mark: | N/A | 15e79589-12c9-453c-a41a-348fdd7de957 |
| `inputs` | Dict[str, [components.Inputs](../../models/components/inputs.md)] | :heavy_minus_sign: | The inputs to the workflow | {<br/>"prompt": "A beautiful landscape",<br/>"seed": 42<br/>} |
| `webhook` | *Optional[str]* | :heavy_minus_sign: | N/A | |
| `webhook_intermediate_status` | *Optional[bool]* | :heavy_minus_sign: | N/A | true |
| `gpu` | [Optional[components.Gpu]](../../models/components/gpu.md) | :heavy_minus_sign: | The GPU to override the machine's default GPU | |
| `gpu` | [Optional[components.Gpu]](../../models/components/gpu.md) | :heavy_minus_sign: | The GPU to override the machine's default GPU | |
| `flags` | List[*str*] | :heavy_minus_sign: | Array of flag strings | [<br/>"runpod_v2"<br/>] |
| `deployment_id` | *str* | :heavy_check_mark: | N/A | 15e79589-12c9-453c-a41a-348fdd7de957 |
5 changes: 4 additions & 1 deletion docs/models/components/gpu.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,13 @@ The GPU to override the machine's default GPU

| Name | Value |
| ------------ | ------------ |
| `CPU` | CPU |
| `T4` | T4 |
| `L4` | L4 |
| `A10_G` | A10G |
| `L40_S` | L40S |
| `A100` | A100 |
| `A100_80_GB` | A100-80GB |
| `H100` | H100 |
| `H100` | H100 |
| `H200` | H200 |
| `B200` | B200 |
Loading