Skip to main content

Vantage Integration

LiteLLM can export proxy spend data to Vantage as FOCUS 1.2 formatted cost reports. This lets you visualize LLM spend alongside your cloud infrastructure costs in the Vantage dashboard.

Overview

PropertyDetails
DestinationExport LiteLLM usage data to Vantage Custom Provider
Data formatFOCUS CSV (automatically transformed from LiteLLM spend data)
Supported operationsManual export, automatic scheduled export (hourly/daily/interval)
AuthenticationVantage API key + Custom Provider token

Prerequisites

You need two credentials from the Vantage console:

  1. API Key — Go to Settings → API Access Tokens → Create a token with Write scope. The token looks like vntg_tkn_....
  2. Custom Provider Token — Go to Settings → Integrations → Create a Custom Provider integration → Copy the Provider ID (looks like accss_crdntl_...).

Setup via API

The recommended setup uses the proxy admin endpoints. No config file changes needed.

1. Initialize credentials

curl -X POST http://localhost:4000/vantage/init \
-H "Authorization: Bearer $LITELLM_ADMIN_KEY" \
-H "Content-Type: application/json" \
-d '{
"api_key": "vntg_tkn_YOUR_VANTAGE_API_KEY",
"integration_token": "accss_crdntl_YOUR_PROVIDER_TOKEN"
}'

Credentials are encrypted and stored in the proxy database.

2. Preview data (dry run)

curl -X POST http://localhost:4000/vantage/dry-run \
-H "Authorization: Bearer $LITELLM_ADMIN_KEY" \
-H "Content-Type: application/json" \
-d '{"limit": 10}'

This returns FOCUS-transformed data without sending anything to Vantage. Use it to verify the pipeline works and inspect the data mapping.

3. Export to Vantage

curl -X POST http://localhost:4000/vantage/export \
-H "Authorization: Bearer $LITELLM_ADMIN_KEY" \
-H "Content-Type: application/json" \
-d '{}'

Optional parameters:

  • limit — Max number of records to export
  • start_time_utc / end_time_utc — Filter by time range (must be provided together)

4. Verify in Vantage

Go to Settings → Integrations → your Custom Provider → Import Costs tab to see uploaded CSVs. Once the status changes from "Importing and Processing" to "Stable", costs appear in Cost Reporting → All Resources.

Setup via Environment Variables

For automatic scheduled exports, configure via environment variables and proxy config:

Environment variables

VariableRequiredDescription
VANTAGE_API_KEYYesVantage API access token
VANTAGE_INTEGRATION_TOKENYesCustom Provider token from Vantage dashboard
VANTAGE_BASE_URLNoAPI URL override (default: https://api.vantage.sh)
VANTAGE_EXPORT_FREQUENCYNohourly (default), daily, or interval
VANTAGE_EXPORT_INTERVAL_SECONDSNoSeconds between exports when frequency is interval

Proxy config

model_list:
- model_name: gpt-4o
litellm_params:
model: openai/gpt-4o
api_key: sk-your-key

litellm_settings:
callbacks: ["vantage"]
export VANTAGE_API_KEY="vntg_tkn_..."
export VANTAGE_INTEGRATION_TOKEN="accss_crdntl_..."
litellm --config /path/to/config.yaml

The proxy registers a background job that exports data on the configured schedule.

API Endpoints

All endpoints require admin authentication.

MethodEndpointDescription
POST/vantage/initStore Vantage credentials (encrypted)
GET/vantage/settingsView current config (credentials masked)
PUT/vantage/settingsUpdate credentials or base URL
POST/vantage/dry-runPreview FOCUS data without uploading
POST/vantage/exportUpload cost data to Vantage
DELETE/vantage/deleteRemove credentials and stop scheduled exports

FOCUS Field Mapping

LiteLLM spend data is transformed into the FOCUS 1.2 schema:

LiteLLM FieldFOCUS ColumnDescription
spendBilledCost, EffectiveCostCost of the usage
modelChargeDescription, ResourceIdModel identifier
model_groupServiceNameModel group / deployment
custom_llm_providerProviderName, PublisherNameProvider (openai, anthropic, etc.)
api_keyBillingAccountIdHashed API key
api_key_aliasBillingAccountNameHuman-readable key alias
team_idSubAccountIdTeam identifier
team_aliasSubAccountNameTeam name

Additional metadata (user_id, model_group, etc.) is included in the Tags column as JSON.

Upload Limits

Vantage enforces per-upload limits. LiteLLM handles these automatically:

  • 10,000 rows per upload — large exports are split into batches
  • 2 MB per upload — oversized batches are further split by size
  • Unsupported columns are stripped before upload