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

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.9
File Size Uploaded
drc_vantage-1.6.9.tar.gz 39.1 kB Details

Built distribution (wheel)

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

Total release size: 96.4 kB

Release files / drc_vantage-1.6.9.tar.gz

Download URL drc_vantage-1.6.9.tar.gz
Size 39.1 kB
Tags Source
SHA-256 checksum
How to use checksums
50d9767b70f7c083c1cada766af613f0cae2a1f39ce778cf1b52dd87ca12907b
BLAKE2b-256 checksum
How to use checksums
c841221bb881a673ed9114d9dcb494d11fcaa34244d1dfa47ba1fef66585f0c0
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.9-py3-none-any.whl

Download URL drc_vantage-1.6.9-py3-none-any.whl
Size 57.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
198919a50a6a36cac717fbf3627ec2a2b4ea3af267839e76345068f6097f5eda
BLAKE2b-256 checksum
How to use checksums
f71f49314eea3540a7141a846d1600389851ac62a6991b5a3a69c9a9432d5ca3
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