Official Python SDK for Verda (formerly DataCrunch) Public API
Project description
Verda Python SDK
The official Verda (formerly DataCrunch) Python SDK.
The SDK's documentation is available on ReadTheDocs
Verda Public API documentation is available here.
This package was originally published under datacrunch name, see MIGRATION.md for details.
Getting Started - Using the SDK:
-
Install:
# via pip pip install verda # via uv uv add verda
-
Generate your client credentials - instructions in the public API docs.
-
Add your client id and client secret to an environment variable (don't want it to be hardcoded):
Linux (bash):
export VERDA_CLIENT_ID=YOUR_ID_HERE export VERDA_CLIENT_SECRET=YOUR_SECRET_HERE
-
To enable sending inference requests from SDK you must generate an inference key - Instructions on inference authorization
-
Add your inference key to an environment variable
Linux (bash):
export VERDA_INFERENCE_KEY=YOUR_API_KEY_HERE
Other platforms: https://en.wikipedia.org/wiki/Environment_variable
-
Example for creating a new instance:
import os from verda import VerdaClient from verda.constants import Actions # Get credentials from environment variables CLIENT_ID = os.environ['VERDA_CLIENT_ID'] CLIENT_SECRET = os.environ['VERDA_CLIENT_SECRET'] # Create client verda = VerdaClient(CLIENT_ID, CLIENT_SECRET) # Get all SSH keys ssh_keys = [key.id for key in verda.ssh_keys.get()] # Create a new instance instance = verda.instances.create(instance_type='1V100.6V', image='ubuntu-24.04-cuda-12.8-open-docker', ssh_key_ids=ssh_keys, hostname='example', description='example instance') # Delete instance verda.instances.action(instance.id, Actions.DELETE)
More examples can be found in the /examples folder or in the documentation.
Development
Set up the local development environment
Prerequisite: install uv.
Clone the repository, create local environment and install dependencies:
git clone git@github.com:verda-cloud/sdk-python.git
cd sdk-python
uv sync
Run Tests
-
Execute all tests
uv run pytest
-
Execute a single test file
uv run pytest tests/unit_tests/test_file.py
Local Manual Testing
Create a file in the root directory of the project:
# example.py
from verda import VerdaClient
CLIENT_SECRET = 'secret'
CLIENT_ID = 'your-id'
# Create client
verda = VerdaClient(CLIENT_ID, CLIENT_SECRET)
Run it:
uv run python example.py
Generating the documentation
If added a new service, create a documentation template under api/services for that service.
cd docs
make html
Code style
# Lint
uv run ruff check
# Format code
uv run ruff format
Contact
You can contact us here, or open an issue in the repo.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file verda-1.24.0.tar.gz.
File metadata
- Download URL: verda-1.24.0.tar.gz
- Upload date:
- Size: 30.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fafb7c766bb0b6cb88a1fb5adb59739c39b9cc95fe7edc5067c03cbc850a80bf
|
|
| MD5 |
eda6afb211c63813b5c191ccb3fb8798
|
|
| BLAKE2b-256 |
a348f9ec761f5c3d2ea9c0b78ff27b8d71a833c8a7dd10c33cf6e44fbc6dd14d
|
File details
Details for the file verda-1.24.0-py3-none-any.whl.
File metadata
- Download URL: verda-1.24.0-py3-none-any.whl
- Upload date:
- Size: 44.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52d7347087dce593181a73f972c3c99f7cdcafd49d6693c3d9bd2c5dd9c1234d
|
|
| MD5 |
40b6d908c16d5b40b810c73de0762a73
|
|
| BLAKE2b-256 |
8884b7538721b5ce938983b68a3590448bc7827dc677896357e89fe642d44fcd
|