Complete API reference for the Kubiya Workflow SDK
Client
Parameter | Type | Default | Description |
---|---|---|---|
api_key | str | None | Kubiya API key. If not provided, reads from KUBIYA_API_KEY env var |
api_url | str | "https://api.kubiya.ai" | API endpoint URL |
org_name | str | None | Organization name for multi-org accounts |
timeout | int | 30 | Request timeout in seconds |
retry_count | int | 3 | Number of retries for failed requests |
verify_ssl | bool | True | Whether to verify SSL certificates |
proxy | str | None | HTTP/SOCKS proxy URL |
execute_workflow(workflow, params=None, stream=False, runner=None)
workflow
: Workflow object or dictparams
: Dict of parameters to pass to workflowstream
: Boolean to enable streaming responserunner
: String name of the runner (created via Kubiya platform). Defaults to “kubiya-hosted”ExecutionResult
or generator of StreamEvent
list_workflows()
get_workflow(name)
test_connection()
Workflow
add_step(step)
to_dict()
to_yaml()
validate()
execute(client=None, **kwargs)
Step
Property | Type | Description |
---|---|---|
name | str | Unique step identifier |
image | str | Docker image to use |
command | str | Command to execute |
script | str | Script content to run |
env | Dict[str, str] | Environment variables |
volumes | Dict[str, str] | Volume mounts |
resources | Dict[str, Any] | Resource limits/requests |
depends | List[str] | Step dependencies |
retry | RetryPolicy | Retry configuration |
timeout | str | Execution timeout |
when | str | Conditional execution |
outputs | Dict[str, str] | Output mappings |
workflow
Decoratorstep
Functionsstep.shell(command, **kwargs)
step.python(script, **kwargs)
step.container(image, **kwargs)
step.inline_agent(message, **kwargs)
get_provider(name, **kwargs)
BaseProvider
StreamEvent
Type | Description | Data Fields |
---|---|---|
workflow.started | Workflow execution started | workflow_id , name |
step.started | Step execution started | step_name , image |
log | Log output | message , level |
step.completed | Step finished | step_name , exit_code , duration |
workflow.completed | Workflow finished | workflow_id , status |
error | Error occurred | message , step_name |
KubiyaError
AuthenticationError
ValidationError
ExecutionError
load_workflow(path)
save_workflow(workflow, path)
merge_workflows(*workflows)
RetryPolicy
ResourceSpec
Parameter
SDK Version | API Version | Python Version |
---|---|---|
2.0.x | v2 | 3.8+ |
1.5.x | v1 | 3.7+ |
1.0.x | v1 | 3.6+ |