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

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

Built distribution (wheel)

Table of built distributions (wheels) for drc-vantage 1.6.7
File Interpreter ABI Platform
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}
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