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
muslpy 3.10–3.95 runs
build_error
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 14.9s · import 2.272s · 400MB
409MB installed
● package 409MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
connect
✓ from vastdb import connect
✗ from vastdb import VASTClient
session
✓ from vastdb import session
config
✓ from vastdb import config
This quickstart demonstrates how to initialize the `VASTClient` using environment variables for credentials and endpoint, and then fetches basic system information. It's crucial to set `VAST_ENDPOINT`, `VAST_USERNAME`, and `VAST_PASSWORD` before running.
import os
from vastdb import VASTClient
from vastdb.errors import VastdbError
# Ensure these environment variables are set:
# VAST_ENDPOINT="https://your-vast-cluster.example.com"
# VAST_USERNAME="your-username"
# VAST_PASSWORD="your-password"
# VAST_VERIFY_SSL="false" (optional, for self-signed or test certs)
endpoint = os.environ.get("VAST_ENDPOINT", "")
username = os.environ.get("VAST_USERNAME", "")
password = os.environ.get("VAST_PASSWORD", "")
verify_ssl = os.environ.get("VAST_VERIFY_SSL", "true").lower() == "true"
if not all([endpoint, username, password]):
print("Error: VAST_ENDPOINT, VAST_USERNAME, and VAST_PASSWORD environment variables must be set.")
print("Please configure your environment or .env file.")
else:
try:
client = VASTClient(
endpoint=endpoint,
username=username,
password=password,
verify_ssl=verify_ssl
)
print("Successfully initialized VASTClient.")
# Example: Get system information
system_info = client.get_system_info()
print(f"Connected to VAST Data system (UUID: {system_info.uuid}, Version: {system_info.version}).")
except VastdbError as e:
print(f"VAST Data SDK Error: {e}")
except Exception as e:
print(f"An unexpected error occurred: {e}")
Debug
Known issues
breakingVersion 2.0.0 introduced breaking changes, particularly for existing API endpoint interactions. This may require updating how certain methods are called or how data models are structured.fixReview the official `CHANGELOG.md` on the GitHub repository for detailed breaking changes and update your code accordingly to match the new API signatures and data structures.
affects: >=2.0.0
gotchaThe SDK requires Python 3.10 or newer. Users on older Python versions will encounter installation or runtime errors.fixEnsure your environment is running Python 3.10.0 or a later version. Upgrade Python if necessary.
affects: <3.10.0 (Python version)
gotchaThe `endpoint` parameter for `VASTClient` must be a complete URL, including the `https://` scheme and the correct path to the VAST API endpoint (e.g., `https://my-vast-cluster.example.com`). Omitting the scheme or providing an incorrect path will result in connection errors.fixAlways provide the full, correctly formatted URL for the VAST cluster API endpoint. Example: `https://<YOUR_VAST_IP_OR_HOSTNAME>/api/`.
affects: All versions
gotchaDisabling SSL verification (`verify_ssl=False`) should only be done in development or controlled test environments where self-signed certificates are used. In production, always ensure `verify_ssl=True` (the default) to prevent man-in-the-middle attacks.fixFor production deployments, configure your system to trust the VAST cluster's SSL certificate or ensure it's signed by a trusted CA. Only set `verify_ssl=False` if you fully understand the security implications and it's absolutely necessary for non-production use cases.
affects: All versions
Upgrade
Version history
2.1.0latest on PyPI · released Aug 6, 2026
Audit
Dependencies
requestsrequiredHTTP client for API interactions.
pydanticrequiredData validation and settings management, used for data models.
python-dotenvrequiredOptional: For loading environment variables from .env files, commonly used for credentials.