Skip to main content

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.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for drc-vantage 1.6.8
File Size Uploaded
drc_vantage-1.6.8.tar.gz 39.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for drc-vantage 1.6.8
File Interpreter ABI Platform
drc_vantage-1.6.8-py3-none-any.whl Python 3 none any Details

Total release size: 96.4 kB

Release files / drc_vantage-1.6.8.tar.gz

Download URL drc_vantage-1.6.8.tar.gz
Size 39.1 kB
Tags Source
SHA-256 checksum
How to use checksums
cae412740d609c4a271f709bc5e7325af52fab6c47839c6e82ea4dea694f7915
BLAKE2b-256 checksum
How to use checksums
d1f3bd0c7781f776de0f00adae58c6ffef708f3f89d7757d5c4305fe17c58a06
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.8-py3-none-any.whl

Download URL drc_vantage-1.6.8-py3-none-any.whl
Size 57.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aafc974201ef066a01367eb7ac8df610feec13aa76e2ff61a52ee5454cf23c53
BLAKE2b-256 checksum
How to use checksums
6f8492b5200fc3e2541893cd407fec3f93e4406776e7671a6881c26964273256
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}
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page