Skip to content

Deployment modes and the API base URL

Venturi has two deployment modes with one identical API contract. Which mode you run determines exactly one thing in the developer docs: the base URL you substitute into every example.

SaaS tier Self-hosted (in-VPC)
Where the data plane runs A dedicated, single-tenant data plane operated by Venturi, pinned to your residency lane A dedicated data plane deployed inside your own VPC and cloud account
Tenant API base URL https://api.venturi.systems https://<your-venturi-instance> (the host your onboarding contact gives you)
Dashboard host https://app.venturi.systems Your own instance host
API contract Identical OpenAPI contract in both modes Identical OpenAPI contract in both modes
Data residency Residency lane fixed at onboarding; fails closed Stays entirely within your environment

Either way the deployment is dedicated to you: Venturi does not pool your transactional or AI-invocation data with other tenants. You choose the mode during onboarding, before any connector setup.

The base-URL rule

Every API example in these docs uses the placeholder https://<your-venturi-instance>. Substitute it by deployment mode:

  • SaaS tier: substitute https://api.venturi.systems.
  • Self-hosted: substitute your own instance host. Never point a self-hosted deployment at api.venturi.systems; it is not your tenant API host in that mode.

The tenant API lives under /api/v1 and partner integrations under /api/partner/v1:

curl https://<your-venturi-instance>/api/v1/attribution?limit=5 \
  -H "Authorization: Bearer $VENTURI_TOKEN"

Where Venturi runs

In self-hosted mode, the entire data plane (interceptor, processor, dashboard, and stores) runs inside your own cloud trust boundary, and your operational data never leaves it. In SaaS mode, Venturi operates that same data plane for you, single-tenant, region-pinned to the residency lane you declare at onboarding. The security architecture and tenant isolation pages describe the boundary in both modes.

The control plane is separate

One surface is the same in both modes and is not a tenant API: api.venturi.systems/control/v1/... is the control plane. It is anonymous and CDN-cacheable, serves only signed, public, customer-data-free artifacts (pricing catalogs, release metadata, and the energy catalog that feeds the public AI Energy Index), and carries no customer data in either direction. It is distinct from the tenant API in path root, authentication, and cache policy.

Where to go next