Registry / crm-productivity / dominodatalab

dominodatalab

JSON →
library2.1.0pypypi✓ verified 84d ago

The `dominodatalab` library provides official Python bindings for the Domino Data Lab API, enabling programmatic interaction with Domino projects, jobs, models, and environments. As of version 2.1.0, it supports advanced features like agentic workflow tracing and enhanced job control. The library maintains an active release cadence, with major updates and minor patches released regularly.

pip install dominodatalab
INSTALL
IMPORT
SIG · DOMINODATALAB
D
dominodatalab
crm-productivitypythonv2.1.0
Install
3.2s avg
Import
1214ms
Disk
25MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v2.1.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.910 runs
installs and imports cleanly · install 0.0s · import 1.271s · 27.1MB
glibc
py 3.103.910 runs
installs and imports cleanly · install 3.2s · import 1.156s · 28MB
25MB installed
● package 25MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Domino
from domino import Domino
from dominodatalab import Domino
The top-level package name on PyPI is 'dominodatalab', but the primary module for import is 'domino'.
DominoAgentContext
from domino.agents.logging import DominoAgentContext
from domino.aisystems.logging import DominoAgentContext
The 'aisystems' module was renamed to 'agents' in version 2.0.0.

Initializes the Domino client using environment variables for host, API key, project owner, and project name, then attempts to list projects as a basic connectivity test. This pattern is recommended for secure credential management.

import os from domino import Domino # Configure environment variables (replace with your actual values or ensure they are set) # DOMINO_API_HOST: e.g., 'https://your.domino.url' # DOMINO_USER_API_KEY: Your Domino API key # DOMINO_PROJECT_OWNER: The username of the project owner # DOMINO_PROJECT_NAME: The name of the project domino = Domino( host=os.environ.get("DOMINO_API_HOST", ""), api_key=os.environ.get("DOMINO_USER_API_KEY", ""), project_owner=os.environ.get("DOMINO_PROJECT_OWNER", ""), project_name=os.environ.get("DOMINO_PROJECT_NAME", "") ) # Example: List projects accessible by the user try: # Ensure required environment variables are set if not all([domino.host, domino.api_key, domino.project_owner, domino.project_name]): raise ValueError("Missing one or more required environment variables for Domino API access.") print(f"Attempting to connect to Domino at {domino.host}...") projects = domino.projects_list() print(f"Successfully connected. Found {len(projects)} projects accessible by user: {domino.project_owner}.") if projects: print(f"First project: {projects[0].name}") except Exception as e: print(f"Error connecting to Domino or listing projects: {e}") print("Please ensure DOMINO_API_HOST, DOMINO_USER_API_KEY, DOMINO_PROJECT_OWNER, DOMINO_PROJECT_NAME are correctly set.")
Debug
Known issues
breakingThe `domino.aisystems` module was renamed to `domino.agents` in version 2.0.0. Code using `domino.aisystems` imports or functionality will break.
fix
Update all import statements and references from `domino.aisystems` to `domino.agents`.
affects: >=2.0.0
gotchaIncorrect or missing API credentials (host, API key, project owner, project name) are the most common cause of client initialization failures or HTTP errors (e.g., 401 Unauthorized, 404 Not Found).
fix
Verify that `DOMINO_API_HOST`, `DOMINO_USER_API_KEY`, `DOMINO_PROJECT_OWNER`, and `DOMINO_PROJECT_NAME` environment variables are correctly set and accessible to your Python process.
affects: All versions
gotchaThe library has historically pinned specific versions of dependencies like `typing-extensions` and `mlflow`. While `typing-extensions` constraints were relaxed in 2.1.0 for Python 3.10+, older versions or specific environments might still encounter dependency conflicts with other libraries.
fix
If encountering dependency conflicts, try upgrading to the latest `dominodatalab` version. If the issue persists, consider isolating the environment (e.g., using `venv` or Docker) or carefully reviewing dependency trees with `pip check` or `pipdeptree`.
affects: <2.1.0 (for typing-extensions), All versions (for general dependency conflicts)
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'domino.aisystems'
Attempting to import from the old `domino.aisystems` module after upgrading to `dominodatalab` version 2.0.0 or newer.
fix
Update your import statements from `from domino.aisystems import ...` to `from domino.agents import ...`.
requests.exceptions.HTTPError: 401 Client Error: Unauthorized for url: ...
The provided `DOMINO_USER_API_KEY` is either incorrect, expired, or does not have sufficient permissions for the requested operation.
fix
Verify your `DOMINO_USER_API_KEY` in the Domino UI and ensure it matches the environment variable. Check if the key has the necessary permissions (e.g., project access, API access).
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: ...
The specified `DOMINO_API_HOST`, `DOMINO_PROJECT_OWNER`, or `DOMINO_PROJECT_NAME` is incorrect, leading the API client to request a non-existent resource.
fix
Double-check the `DOMINO_API_HOST` URL, and confirm the exact spelling and case for `DOMINO_PROJECT_OWNER` and `DOMINO_PROJECT_NAME` as they appear in Domino Data Lab.
TypeError: 'NoneType' object is not callable (or similar error during client initialization)
One or more required environment variables (e.g., `DOMINO_API_HOST`, `DOMINO_USER_API_KEY`) were not set, resulting in `None` being passed to the `Domino` client constructor, leading to subsequent errors when trying to use `None` as a string.
fix
Ensure all necessary environment variables are properly defined and accessible before initializing the `Domino` client. Print `os.environ.get('VAR_NAME')` to confirm their values.
Upgrade
Version history
2.1.0latest on PyPI · released Mar 23, 2026
Audit
Dependencies
requestsrequiredUsed for HTTP communication with the Domino API.
frozendictrequiredUsed for immutable dictionary structures, minimum version 2.3.0.
typing-extensionsrequiredProvides backports of standard library typing features. Version constraints have been relaxed for Python 3.10+ in v2.1.0.
mlflowrequiredUsed for MLflow integration with Domino. The package is pinned to `>=1.20`.
urllib3requiredHTTP client library, pinned to `>=1.25.11,<3`.
Agent activity
36 hits · last 30 days
node
32
OpenAI (training)
1
Resources
dominodatalab — pip install dominodatalab · libregistry