Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

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.create(
    slug="wh-pg",
    name="Warehouse PostgreSQL",
    kind="POSTGRESQL",
    credentials={
        "host": "db.internal",
        "user": "vantage",
        "password": "...",
        "database": "analytics",
    },
)
category = client.data_source_categories.create(
    slug="saas", name="SaaS", color="#3366FF"
)
client.data_sources.create(slug="hubspot", name="HubSpot", category=category)

dataset = client.datasets.create(
    location={"schema": "marts", "table": "nps"},
    name="NPS",
    type="TABLE",
)
dataset.analyze_and_check_alerts()

# Dashboard → create then chain governance on the returned handle
dashboard = client.dashboards.create(
    title="Sales metrics",
    icon="layout-dashboard",
    embed_url="https://dashboards.example.com/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 / upsert.

Create / update / upsert payloads (storage systems, datasets, data sources, collections, KPIs, dashboards): see docs/register.md. That page maps SDK calls to the FastAPI Pydantic models and Next.js Zod schemas that actually validate the body. Document collections (create + ingest() / RAG): docs/document-collections.md.

Client namespaces

Property Read Write
client.datasets list, get, find_by_name create, upsert, update, delete, for_id
client.kpis list, get, find_by_name create, upsert, update, delete, for_id
client.figures catalogue create, upsert, update, delete, for_id
client.dashboards browse, get, find_by_title create, upsert, update, delete, for_id, create_folder
client.dashboard_folders browse, list, get, find_by_id, find_by_name create, upsert, update, delete, for_id
client.data_sources list, get create, upsert, update, delete, for_id
client.data_source_categories — create, upsert, update, delete, for_id
client.storage_systems — create, upsert, update, delete, for_id
client.document_collections — create, upsert, update, delete, ingest, for_id
client.teams list, find_by_name, find_by_slug create, upsert, update, delete, for_id
client.users — create, upsert, update, resolve, for_ref, for_id
client.organisations — create, upsert, update, delete, for_id
client.search global search —

Orchestration

from vantage import Client, vantage_flow

client = Client()

@vantage_flow(client)
def my_flow():
    client.data_sources.create(...)

Release files for drc-vantage 1.7.1rc1

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.7.1rc1
File Size Uploaded
drc_vantage-1.7.1rc1.tar.gz 53.0 kB Details

Built distribution (wheel)

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

Total release size: 118.7 kB

Release files / drc_vantage-1.7.1rc1.tar.gz

Download URL drc_vantage-1.7.1rc1.tar.gz
Size 53.0 kB
Tags Source
SHA-256 checksum
How to use checksums
4fc5b4d3ec35b9e215fe5011628620bf76f0660a02542f5180b1e7a6cba9ec92
BLAKE2b-256 checksum
How to use checksums
e182622411d3ffb9f904e4190a46309b1c3a498f753f152daa5fa97dabe3e492
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","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.7.1rc1-py3-none-any.whl

Download URL drc_vantage-1.7.1rc1-py3-none-any.whl
Size 65.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
58858d3f34c876e4dc1d90860352d529ecbb3d5a91b6185b71ace8cfe98fbe1e
BLAKE2b-256 checksum
How to use checksums
1457c706c1e1dce752571efeb875c69a5aa6fd5229cd829a6eb3d55424a67620
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","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