drc-vantage
Thin HTTP client for the Vantage platform. Talks only to the Next.js API (VANTAGE_API_URL) with a developer account API key.
Install
pip install drc-vantage
# or
uv add drc-vantage
Configuration
| Variable | Description | Example |
|---|---|---|
VANTAGE_API_URL |
Next.js API base (includes /api) |
http://localhost:3000/api |
VANTAGE_API_KEY |
Developer account API key | vantage_… |
Quick start (100 % Client)
from vantage import Client
client = Client()
# Teams: read + create on the same namespace
team = client.teams.create(name="Sales", description="Revenue ops")
record = client.teams.find_by_name("Sales")
# Users: resolve profile or get a handle for actions
guest = client.users.resolve("guest@example.com") # .id, .email, .name
guest_handle = client.users.for_ref("guest@example.com")
user = client.users.create(
first_name="Ada",
last_name="Lovelace",
email="ada@example.com",
password="secure-password",
)
# KPI → chain governance on the returned handle
my_kpi = client.kpis.create(
name="Monthly revenue",
dataset_id="…",
definition_type="MANUAL",
manual_config={"valueField": "amount", "aggregation": "SUM"},
)
my_kpi.assign_to_team("analytics")
# Ingestion (flat — no client.ingestion.*)
client.storage_systems.register(
slug="wh-pg",
env_key="DRC_PG",
name="Warehouse PostgreSQL",
kind="POSTGRESQL",
)
category = client.data_source_categories.register(
slug="saas", name="SaaS", color="#3366FF"
)
client.data_sources.register(slug="hubspot", name="HubSpot", category=category)
dataset = client.datasets.register(
location={"schema": "marts", "table": "nps"},
name="NPS",
type="TABLE",
)
dataset.analyze_and_check_alerts()
# Dashboard → register then chain governance on the returned handle
dashboard = client.dashboards.register(
title="Sales metrics",
icon="layout-dashboard",
embed_mode="INLINE",
inline_path="sales/metrics",
)
dashboard.assign_to_team("Sales")
dashboard.assign_owner("nathan.boulogne@gmail.com")
dashboard.link_datasets(["NPS"])
dashboard.assign_editors(["editor@example.com"])
Public exports
Client, catalogue exceptions (NotFoundError, AmbiguousLookupError), Page, orchestration helpers.
Advanced typing: from vantage.handles import User, Kpi, Dataset (not exported from top-level vantage).
This package ships py.typed — use Pylance basic or stricter for parameter hints on client.*.create / register.
Client namespaces
| Property | Read | Write |
|---|---|---|
client.datasets |
list, get, find_by_name | register, for_id |
client.kpis |
list, get, find_by_name | create, for_id |
client.figures |
catalogue | create, for_id |
client.dashboards |
browse, get, find_by_title | register, for_id, create_folder, assign & link on handle |
client.dashboard_folders |
browse, list, get, find_by_id, find_by_name | create, for_id |
client.data_sources |
list, get | register |
client.data_source_categories |
— | register |
client.storage_systems |
— | register |
client.teams |
list, find_by_name, find_by_slug | create |
client.users |
— | create, resolve, for_ref, for_id |
client.organisations |
— | create |
client.search |
global search | — |
Orchestration
from vantage import Client, vantage_flow
client = Client()
@vantage_flow(client)
def my_flow():
client.data_sources.register(...)
Release files for drc-vantage 1.6.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| drc_vantage-1.6.7.tar.gz | 39.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| drc_vantage-1.6.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 96.4 kB
Release files / drc_vantage-1.6.7.tar.gz
| Download URL | drc_vantage-1.6.7.tar.gz |
|---|---|
| Size | 39.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6d7b69c6c016be5af43802c97b9b561c231c05a643e1a319d79a595c08f92537
|
|
BLAKE2b-256 checksum How to use checksums |
6cd06cf28b11c79d9d8288effa9c3583f4a9e22e0162d2e83e1367e51d6de108
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / drc_vantage-1.6.7-py3-none-any.whl
| Download URL | drc_vantage-1.6.7-py3-none-any.whl |
|---|---|
| Size | 57.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
01564584a831b5dfc08714c80dc02b3dceee293fecee448d4b0bdbad4708f39b
|
|
BLAKE2b-256 checksum How to use checksums |
bdbbf0e1e41db0fd220f3e7fa0048674cc9dacc0fe975472eb9a154fbcce09f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|