LucoPy
Python SDK to support the Luco data observability tool.
What it is and what it does
LucoPy is a thin Python wrapper around the Luco API, a data observability platform's backend. It handles authentication (primarily via Azure Service Principal credentials) and exposes methods to query and manage slots, submissions, and slot sequences—the core entities in Luco's scheduling and delivery model. The SDK abstracts away token generation and HTTP plumbing, letting you instantiate a LucoApi object with credentials and then call high-level methods like find_slot_id(), create_submission(), and find_submissions_by_slot_sequence().
The package depends only on requests and requires Python >=3.6. It supports custom identity objects for non-Azure authentication scenarios. Logging can be enabled to write debug output to a log.txt file. The API calls include a configurable timeout (default 20 seconds) and support for paginated responses when querying large result sets.
Use it for:
- Automate slot and submission lifecycle management in a Luco instance without manual web UI interaction.
- Query submission history and slot sequences programmatically to build monitoring or reporting dashboards.
- Integrate Luco data observability checks into CI/CD pipelines or data workflows.
- Export and import slot sequence configurations as JSON for version control or migration.
- Search for submissions across slot sequences by time range or completion status.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
LucoPy is a Python SDK for interacting with the Luco API, providing methods to manage slots, submissions, and slot sequences in a data observability platform.
Yes, if you are actively using Luco and need programmatic access to its API. The low install friction and permissive license make adoption easy. However, the dormant maintenance status is a significant concern: you should verify that Luco itself remains supported by Lu.co and that this SDK is compatible with your current Python and requests versions before committing to production use.
Install
lucopy on PyPI
pip
pip install lucopyuv
uv add lucopypoetry
poetry add lucopyInstalling LucoPy
Before you install
Installation is straightforward with low friction—a pure Python wheel with only requests as a dependency. However, the package is dormant: last release was over a year ago, so expect no active maintenance or bug fixes.
License in practice
MIT license is permissive and imposes no significant restrictions on use, modification, or distribution.
Quickstart
pip install LucoPy
from LucoPy import LucoApi
api = LucoApi(
base_url='https://your-luco-instance.com',
tenant_id='your-tenant-id',
client_id='your-client-id',
client_secret='your-client-secret',
resource_id='your-resource-id'
)
slot_id = api.find_slot_id(tag='2023-09-27', slot_sequence={'sequence': 'daily'})
Requires valid Luco API credentials (tenant_id, client_id, client_secret, resource_id) and a running Luco instance with a known base_url; alternatively, these can be set as environment variables (LUCO_TENANT_ID, LUCO_CLIENT_ID, LUCO_CLIENT_SECRET, LUCO_RESOURCE_ID, LUCO_BASE_URL).
Verify before relying
- Whether the Luco API and this SDK remain actively supported by Lu.co given the long gap since last release.
- Compatibility with modern versions of requests and current Python 3.x releases beyond what the requires_python constraint states.
- Whether environment variable fallback (LUCO_BASE_URL, LUCO_TENANT_ID, etc.) is documented or tested in practice.
- Whether the default timeout of 20 seconds is adequate for typical API response times.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — requests |
| Maintenance | dormant — 1,052 days since the last release |
| First released | |
| Downloads | 221,717/month — #9,273 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: LucoPy-1.3.14-py3-none-any.whl
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
azure-kusto-dataQuery and interact with Microsoft Azure Kusto…
permissive · top 5,000 on PyPI
spotipySpotipy is a Python client library for the…
permissive · top 15,000 on PyPI
azure-synapse-sparkClient library for interacting with Apache…
permissive · top 5,000 on PyPI
azure-mgmt-iothubManages Azure IoT Hub resources—creation,…
permissive · top 5,000 on PyPI
volue-insight-timeseriesA Python client library for querying and…
unclear · top 15,000 on PyPI
aptos-sdkProvides Python bindings to interact with the…
permissive · top 15,000 on PyPI
azure-mgmt-kustoManages Azure Kusto clusters, databases, and…
permissive · top 15,000 on PyPI
azure-iot-hubProvides CRUD operations and service management…
permissive · top 15,000 on PyPI
pybotvacpybotvac provides an unofficial Python API to…
permissive · top 15,000 on PyPI
iso8601Parses ISO 8601 date strings (e.g.…
permissive · top 5,000 on PyPI