orchestra-sdk
Orchestra SDK for updating self-hosted Tasks.
What it is and what it does
Orchestra SDK is a client library that bridges self-hosted task execution environments with the Orchestra workflow orchestration platform. It handles the HTTP communication needed for a task running outside Orchestra's control to report its progress, completion status, logs, and output values back to the platform. The SDK provides both a decorator pattern for automatic lifecycle tracking (sending RUNNING on start, SUCCEEDED or FAILED on completion) and manual methods for fine-grained control over status updates and output setting.
The package is designed for integration into task code that Orchestra triggers asynchronously—typically in self-hosted servers, containers, or AWS Lambda functions. It requires an API key for authentication and a task run ID (usually set by Orchestra as an environment variable) to route updates to the correct workflow execution. Optional log file sending and AWS Lambda-specific configuration helpers reduce boilerplate for common deployment patterns.
Use it for:
- Wrap a long-running self-hosted task with the @orchestra.run() decorator to automatically report start, completion, and failure to Orchestra.
- Send intermediate status messages and logs from a task back to Orchestra for visibility into execution progress.
- Set task output values (e.g., result of a computation) that downstream workflow steps can consume.
- Configure a Lambda function handler to extract Orchestra metadata from the event and apply it to the SDK instance.
- Manually control task status updates in complex workflows where decorator automation is insufficient.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A lightweight SDK for self-hosted tasks to send status updates, logs, and outputs back to Orchestra via HTTP, with decorator support for automatic lifecycle management.
Yes, if you are running self-hosted tasks orchestrated by Orchestra and need to report their status and logs back to the platform. The low install friction and permissive license make adoption straightforward. However, the aging maintenance status (261 days since last release) suggests you should verify that the SDK remains compatible with your Orchestra version and that the project is not in hibernation before committing to production use.
Install
orchestra-sdk on PyPI
pip
pip install orchestra-sdkuv
uv add orchestra-sdkpoetry
poetry add orchestra-sdkInstalling orchestra-sdk
Before you install
Low install friction with only two runtime dependencies (requests, tenacity). Maintenance status is aging—last release was 261 days ago—so expect slower response to issues or feature requests.
License in practice
MIT license permits free use, modification, and distribution with minimal restrictions, making it suitable for commercial and open-source projects alike.
Quickstart
pip install orchestra-sdk
from orchestra_sdk.orchestra import OrchestraSDK
orchestra = OrchestraSDK(api_key="your_api_key")
@orchestra.run()
def my_task():
print("Task running")
return "result"
Requires ORCHESTRA_TASK_RUN_ID environment variable (set by Orchestra) or manual assignment after initialization; API key must be provided or available via environment.
Verify before relying
- Whether the package is actively maintained or in maintenance-only mode despite the aging status.
- Compatibility with Orchestra versions beyond what the SDK was released against.
- Performance characteristics when sending large log files or frequent status updates.
Package facts
| License | Copyright 2025 Orchestra Technologies Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.8.0) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — requests, tenacity |
| Maintenance | aging — 261 days since the last release |
| First released | |
| Downloads | 172,470/month — #10,335 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: orchestra_sdk-0.1.2-py3-none-any.whl
Keywords: python, logging, data, orchestration
Tags
More Database packages
psycopg2-binary is a PostgreSQL database…
copyleft · top 1,000 on PyPI
redisPython client library for connecting to and…
permissive · top 1,000 on PyPI
ydbYDB Python SDK is the official client library…
permissive · top 1,000 on PyPI
snowflake-connector-pythonConnects Python applications to Snowflake data…
permissive · top 1,000 on PyPI
sqlparsesqlparse tokenizes SQL text into a tree of…
permissive · top 1,000 on PyPI
dbt-adaptersProvides base adapter protocols and shared…
permissive · top 1,000 on PyPI
python-logging-lokiA Python logging handler that sends log records…
permissive · top 5,000 on PyPI
render_sdkOfficial Python SDK for Render that lets you…
permissive · top 15,000 on PyPI
google-cloud-tasksPython client library for Google Cloud Tasks,…
permissive · top 1,000 on PyPI
logging-azure-restProvides a Python logging handler that…
permissive · top 5,000 on PyPI
aa-taskmonitorA Django admin plugin for Alliance Auth that…
permissive · top 15,000 on PyPI
durabletaskDurabletask is a Python SDK for building…
permissive · top 15,000 on PyPI
label-studio-sdkProvides a Python client library and CLI for…
unclear · top 5,000 on PyPI
durabletask.azuremanagedProvides a Python provider implementation for…
permissive · top 15,000 on PyPI
loki-logger-handlerA logging handler that sends Python log…
permissive · top 15,000 on PyPI
apache-airflow-task-sdkProvides Python interfaces and task execution…
permissive · top 5,000 on PyPI