### Example: $4/hr host with 64 vCPU, 256 GiB RAM, 8 GPU Source: https://docs.vantage.sh/kubernetes_agent Example calculation for a $4/hr host with 64 vCPU, 256 GiB RAM, and 8 GPU. It shows the denominator, normalization factor, and effective per-resource rates. GPU dominates the denominator, pushing CPU and RAM rates lower, reflecting typical GPU cloud pricing. ```text Denominator: CPU: 0.031611 × 64 = 2.023104 RAM: 0.004237 × 256 = 1.084672 GPU: 0.95 × 8 = 7.6 Total = 10.707776 Normalization factor: k = 4 / 10.707776 ≈ 0.3735603 Effective rates: vcpu_hourly_rate ≈ 0.031611 × 0.3735603 = $0.01181 per vCPU-hour ram_gb_hourly_rate ≈ 0.004237 × 0.3735603 = $0.001583 per GiB-hour gpu_gb_hourly_rate ≈ 0.95 × 0.3735603 = $0.35488 per GPU-hour ``` -------------------------------- ### OpenAPI specification for Get user by token Source: https://docs.vantage.sh/api/users/get-user-by-token The OpenAPI definition for the GET /users/{user_token} endpoint, including the path parameter, security requirements, and example response. ```yaml openapi: 3.0.1 info: title: Vantage description: Vantage API termsOfService: https://www.vantage.sh/terms-of-use contact: name: Vantage Support url: https://www.vantage.sh email: support@vantage.sh version: 2.0.0 servers: - url: https://api.vantage.sh/v2 security: - oauth2: - read tags: - name: AccessGrants description: Operations about AccessGrants - name: Annotations description: Operations about Annotations - name: AnomalyAlerts description: Operations about AnomalyAlerts - name: AnomalyNotifications description: Operations about AnomalyNotifications - name: AuditLogs description: Operations about AuditLogs - name: BillingProfiles description: Operations about BillingProfiles - name: BillingRules description: Operations about BillingRules - name: BudgetAlerts description: Operations about BudgetAlerts - name: Budgets description: Operations about Budgets - name: BusinessMetrics description: Operations about BusinessMetrics - name: Canvases description: Operations about Canvases - name: CostAlertEvents description: Operations about CostAlertEvents - name: CostAlerts description: Operations about CostAlerts - name: CostProvider description: Operations about CostProviders - name: CostProviderAccounts description: Operations about CostProviderAccounts - name: Costs description: Operations about Costs - name: CostService description: Operations about CostServices - name: Dashboards description: Operations about Dashboards - name: DataExports description: Operations about DataExports - name: ExchangeRates description: Operations about ExchangeRates - name: FinancialCommitmentReports description: Operations about FinancialCommitmentReports - name: FinancialCommitments description: Operations about FinancialCommitments - name: Folders description: Operations about Folders - name: Integrations description: Operations about Integrations - name: Invoices description: Operations about Invoices - name: KubernetesEfficiencyReports description: Operations about KubernetesEfficiencyReports - name: ManagedAccounts description: Operations about ManagedAccounts - name: Me description: Operations about Mes - name: NetworkFlowLogs description: Operations about NetworkFlowLogs - name: NetworkFlowReports description: Operations about NetworkFlowReports - name: OpenAPISpecification description: Operations about OpenAPISpecifications - name: Ping description: Operations about Pings - name: Prices description: Operations about Prices - name: Recommendations description: Operations about Recommendations - name: RecommendationViews description: Operations about RecommendationViews - name: ReportForecasts description: Operations about ReportForecasts - name: ReportNotifications description: Operations about ReportNotifications - name: ResourceReports description: Operations about ResourceReports - name: Resources description: Operations about Resources - name: SavedFilters description: Operations about SavedFilters - name: ScenarioModels description: Operations about ScenarioModels - name: Segments description: Operations about Segments - name: Tags description: Operations about Tags - name: Teams description: Operations about Teams - name: UnitCosts description: Operations about UnitCosts - name: UserFeedback description: Operations about UserFeedbacks - name: Users description: Operations about Users - name: VirtualTags description: Operations about VirtualTags - name: Workspaces description: Operations about Workspaces paths: /users/{user_token}: get: tags: - Users summary: Get user by token description: Return a specific User. operationId: getUser parameters: - name: user_token in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/User' example: token: usr_bfc6ab15e635f848 name: Patrick White email: white.patrick@kassulke-nitzsche.net role: Owner last_seen_at: '2024-01-01' '404': description: NotFound content: application/json: schema: $ref: '#/components/schemas/Errors' security: ``` -------------------------------- ### Mathematical operators example Source: https://docs.vantage.sh/vql_resource_report Looks for Virtual Machines that have a size greater than 7. ```vql resources.provider = 'azure' AND (resources.type = 'azurerm_virtual_machine' AND resources.metadata->>'virtual_machine_size' > '7') ``` -------------------------------- ### OpenAPI specification response example Source: https://docs.vantage.sh/api/getopenapispecifications Example response from the GET /v2/oas_v3.json endpoint. The full specification is extensive and includes all endpoints, request/response models, and authentication methods. ```json { "openapi": "3.0.1", "info": { "title": "Vantage", "description": "Vantage API", "termsOfService": "https://www.vantage.sh/terms-of-use", "contact": { "name": "Vantage Support", "url": "https://www.vantage.sh", "email": "support@vantage.sh" } }, ... } ``` -------------------------------- ### Fully-formed FinOps prompt example Source: https://docs.vantage.sh/guides/finops_ai_prompt_guide A complete prompt example demonstrating the combination of intent, scope, and direction. ```text In the Production workspace, show AWS EC2 and S3 spend for the last 30 days, grouped by service and account ID. Present the result as a table and identify the top 5 cost drivers. ``` -------------------------------- ### Custom Cadence Budget CSV Format Source: https://docs.vantage.sh/budgets Example of a CSV file for importing a budget with a two-week cadence starting on 2026-08-01. It includes the required Start Date, Interval Count, and Interval Unit columns. ```bash Budget Name,Start Date,Interval Count,Interval Unit,2026-08-01,2026-08-15 Platform Weekly,2026-08-01,2,week,5000,5000 ``` -------------------------------- ### EOF Error Log Example Source: https://docs.vantage.sh/kubernetes_agent Example error log line indicating a corrupted backup file, often caused by OOMKill. To recover, perform a fresh install or remove the PersistentVolumeClaim, PersistentVolume, and Pod. ```json {"time":"2023-12-01T00:00:00.000000000Z","level":"ERROR","msg":"failed to setup data store","err":"unexpected EOF"} ``` -------------------------------- ### Configure Vantage Provider and Resources Source: https://docs.vantage.sh/terraform_docs Example showing how to define the Vantage provider and create a folder and cost report. The API token can be set via the provider block or the VANTAGE_API_TOKEN environment variable. ```terraform terraform { required_providers { vantage = { source = "vantage-sh/vantage" } } } provider "vantage" { # This can also be configured with the `VANTAGE_API_TOKEN` environment variable # and this block removed entirely: # export VANTAGE_API_TOKEN=an-api-token # terraform plan api_token = var.api_token } resource "vantage_folder" "aws" { title = "AWS Costs" } resource "vantage_cost_report" "aws" { folder_token = vantage_folder.aws.token filter = "costs.provider = 'aws'" title = "AWS Costs" } ``` -------------------------------- ### Example interaction: create a Terraform script Source: https://docs.vantage.sh/finops_ai_prompt_guide Shows a sample conversation with the Vantage agent to generate a Terraform script for combining AWS tags and Kubernetes labels into a virtual tag. The agent explains the approach and prerequisites. ```text You: @Vantage I have a list of teams in a CSV file (e.g., integrations, security, etc.). I have an AWS tag called team with value of the same name and a Kubernetes label of organization/team with a value of the same team name. I want to combine all these costs to one virtual tag. Write me a Terraform script to do this. The Agent: Virtual Tag: Combine AWS tag "team" and Kubernetes label "organization/team" Goal: Create a single, cross-provider Virtual Tag in Vantage (key: team) whose values are sourced from: • AWS tag: team • Kubernetes label: organization/team This lets you group and filter total costs by team across both providers. How it works • Creates a Virtual Tag with key team. • Reads your CSV of team names and generates one Custom Value per team. • Each value uses a VQL filter that matches: • AWS costs where ``tags.name = 'team'`` and ``tags.value = ''`` • Kubernetes costs where ``tags.name = 'organization/team'`` and ``tags.value = ''`` Prerequisites • Vantage Terraform provider installed and configured with a Vantage API token. • A CSV file (e.g., ``teams.csv``) with a header ``team`` and one team name per row. • Vantage roles/permissions to manage Virtual Tags. References: • https://docs.vantage.sh/terraform_docs/resources/virtual_tag_config • https://docs.vantage.sh/tagging • https://docs.vantage.sh/vql ``` -------------------------------- ### OpenAPI Specification for Get audit log by token Source: https://docs.vantage.sh/api/auditlogs/get-audit-log-by-token This OpenAPI definition outlines the GET request for retrieving an audit log by its token, including the expected response structure and an example of the returned AuditLog object. ```yaml openapi: 3.0.1 info: title: Vantage description: Vantage API termsOfService: https://www.vantage.sh/terms-of-use contact: name: Vantage Support url: https://www.vantage.sh email: support@vantage.sh version: 2.0.0 servers: - url: https://api.vantage.sh/v2 security: - oauth2: - read tags: - name: AccessGrants description: Operations about AccessGrants - name: Annotations description: Operations about Annotations - name: AnomalyAlerts description: Operations about AnomalyAlerts - name: AnomalyNotifications description: Operations about AnomalyNotifications - name: AuditLogs description: Operations about AuditLogs - name: BillingProfiles description: Operations about BillingProfiles - name: BillingRules description: Operations about BillingRules - name: BudgetAlerts description: Operations about BudgetAlerts - name: Budgets description: Operations about Budgets - name: BusinessMetrics description: Operations about BusinessMetrics - name: Canvases description: Operations about Canvases - name: CostAlertEvents description: Operations about CostAlertEvents - name: CostAlerts description: Operations about CostAlerts - name: CostProvider description: Operations about CostProviders - name: CostProviderAccounts description: Operations about CostProviderAccounts - name: Costs description: Operations about Costs - name: CostService description: Operations about CostServices - name: Dashboards description: Operations about Dashboards - name: DataExports description: Operations about DataExports - name: ExchangeRates description: Operations about ExchangeRates - name: FinancialCommitmentReports description: Operations about FinancialCommitmentReports - name: FinancialCommitments description: Operations about FinancialCommitments - name: Folders description: Operations about Folders - name: Integrations description: Operations about Integrations - name: Invoices description: Operations about Invoices - name: KubernetesEfficiencyReports description: Operations about KubernetesEfficiencyReports - name: ManagedAccounts description: Operations about ManagedAccounts - name: Me description: Operations about Mes - name: NetworkFlowLogs description: Operations about NetworkFlowLogs - name: NetworkFlowReports description: Operations about NetworkFlowReports - name: OpenAPISpecification description: Operations about OpenAPISpecifications - name: Ping description: Operations about Pings - name: Prices description: Operations about Prices - name: Recommendations description: Operations about Recommendations - name: RecommendationViews description: Operations about RecommendationViews - name: ReportForecasts description: Operations about ReportForecasts - name: ReportNotifications description: Operations about ReportNotifications - name: ResourceReports description: Operations about ResourceReports - name: Resources description: Operations about Resources - name: SavedFilters description: Operations about SavedFilters - name: ScenarioModels description: Operations about ScenarioModels - name: Segments description: Operations about Segments - name: Tags description: Operations about Tags - name: Teams description: Operations about Teams - name: UnitCosts description: Operations about UnitCosts - name: UserFeedback description: Operations about UserFeedbacks - name: Users description: Operations about Users - name: VirtualTags description: Operations about VirtualTags - name: Workspaces description: Operations about Workspaces paths: /audit_logs/{audit_log_token}: get: tags: - AuditLogs summary: Get audit log by token description: Return a specific AuditLog. operationId: getAuditLog parameters: - name: audit_log_token in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/AuditLog' example: token: adt_lg_1234567890abcdef object_token: rpt_1234567890abcdef object_type: Report object_title: Production Cost Report event: record_updated source: api user: Example User workspace_title: Production Workspace ``` -------------------------------- ### Example response for EC2 Rightsizing with Utilization Data Source: https://docs.vantage.sh/datadog_mcp A sample response from the FinOps Agent identifying expensive, underutilized EC2 instances by cross-referencing Vantage recommendations with Datadog CPU metrics. ```md EC2 Instances: High Cost, Low Utilization Combining Vantage rightsizing recommendations with Datadog utilization: | Instance | Current Type | Max CPU % | State | Savings/mo | Recommended | |-----------------------|---------------------|-----------|----------|------------|--------------| | i-0aaaa1111bbbb2222 | c5.xlarge (4 vCPU) | 3.15% | Running | $412.00 | t3.large | | i-0cccc3333dddd4444 | c5.large (2 vCPU) | 11.09% | Stopped | $388.00 | t3.medium | | i-0eeee5555ffff6666 | t3.large (2 vCPU) | 10.06% | Running | $640.00 | t3.medium | | i-0aaaa7777bbbb8888 | c5.2xlarge (8 vCPU) | ~100% peak| Running | $910.00 | r6i.large | The first three instances are strong downsizing candidates given sustained low CPU. The last instance peaks near 100%, so validate its workload pattern before resizing. ``` -------------------------------- ### OpenAPI YAML for GET /report_notifications/{report_notification_token} Source: https://docs.vantage.sh/api/reportnotifications/get-report-notification-by-token OpenAPI specification for the GET /report_notifications/{report_notification_token} endpoint. It defines the operation getReportNotification, which requires a report_notification_token path parameter and returns a ReportNotification schema with a 200 response example. ```yaml openapi: 3.0.1 info: title: Vantage description: Vantage API termsOfService: https://www.vantage.sh/terms-of-use contact: name: Vantage Support url: https://www.vantage.sh email: support@vantage.sh version: 2.0.0 servers: - url: https://api.vantage.sh/v2 security: - oauth2: - read tags: - name: AccessGrants description: Operations about AccessGrants - name: Annotations description: Operations about Annotations - name: AnomalyAlerts description: Operations about AnomalyAlerts - name: AnomalyNotifications description: Operations about AnomalyNotifications - name: AuditLogs description: Operations about AuditLogs - name: BillingProfiles description: Operations about BillingProfiles - name: BillingRules description: Operations about BillingRules - name: BudgetAlerts description: Operations about BudgetAlerts - name: Budgets description: Operations about Budgets - name: BusinessMetrics description: Operations about BusinessMetrics - name: Canvases description: Operations about Canvases - name: CostAlertEvents description: Operations about CostAlertEvents - name: CostAlerts description: Operations about CostAlerts - name: CostProvider description: Operations about CostProviders - name: CostProviderAccounts description: Operations about CostProviderAccounts - name: Costs description: Operations about Costs - name: CostService description: Operations about CostServices - name: Dashboards description: Operations about Dashboards - name: DataExports description: Operations about DataExports - name: ExchangeRates description: Operations about ExchangeRates - name: FinancialCommitmentReports description: Operations about FinancialCommitmentReports - name: FinancialCommitments description: Operations about FinancialCommitments - name: Folders description: Operations about Folders - name: Integrations description: Operations about Integrations - name: Invoices description: Operations about Invoices - name: KubernetesEfficiencyReports description: Operations about KubernetesEfficiencyReports - name: ManagedAccounts description: Operations about ManagedAccounts - name: Me description: Operations about Mes - name: NetworkFlowLogs description: Operations about NetworkFlowLogs - name: NetworkFlowReports description: Operations about NetworkFlowReports - name: OpenAPISpecification description: Operations about OpenAPISpecifications - name: Ping description: Operations about Pings - name: Prices description: Operations about Prices - name: Recommendations description: Operations about Recommendations - name: RecommendationViews description: Operations about RecommendationViews - name: ReportForecasts description: Operations about ReportForecasts - name: ReportNotifications description: Operations about ReportNotifications - name: ResourceReports description: Operations about ResourceReports - name: Resources description: Operations about Resources - name: SavedFilters description: Operations about SavedFilters - name: ScenarioModels description: Operations about ScenarioModels - name: Segments description: Operations about Segments - name: Tags description: Operations about Tags - name: Teams description: Operations about Teams - name: UnitCosts description: Operations about UnitCosts - name: UserFeedback description: Operations about UserFeedbacks - name: Users description: Operations about Users - name: VirtualTags description: Operations about VirtualTags - name: Workspaces description: Operations about Workspaces paths: /report_notifications/{report_notification_token}: get: tags: - ReportNotifications summary: Get report notification by token description: Return a ReportNotification. operationId: getReportNotification parameters: - name: report_notification_token in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ReportNotification' example: token: rprt_ntfctn_21b4287a212406b1 title: Test Notification cost_report_token: rprt_d084c84455edc606 user_tokens: - usr_56d53f802edba3e6 ``` -------------------------------- ### Validate Vantage Kubernetes agent installation Source: https://docs.vantage.sh/kubernetes_agent Run these commands and inspect the output to verify the agent is installed and healthy. The pod should be READY, logs should contain no ERROR messages, and reporting should occur at the start of each hour with no ERROR log lines. ```bash ➜ kubectl -n vantage get pod NAME READY STATUS RESTARTS AGE vka-vantage-kubernetes-agent-0 1/1 Running 0 54m ``` ```bash ➜ kubectl -n vantage logs -f vka-vantage-kubernetes-agent-0 {"time":"2023-10-23T22:01:12.065481528Z","level":"INFO","msg":"found nodes","nodes":231} ... {"time":"2023-10-23T22:01:15.471399742Z","level":"INFO","msg":"finished initializing"} ``` ```bash {"time":"2023-10-23T22:01:00.015243974Z","level":"INFO","msg":"reporting now"} {"time":"2023-10-23T22:01:01.168390414Z","level":"INFO","msg":"finished reporting"} {"time":"2023-10-23T22:01:01.169876296Z","level":"INFO","msg":"next report window","start":"2023-10-23T22:00:00Z","end":"2023-10-23T23:00:00Z","sleeping_seconds":3598.830199804} ``` -------------------------------- ### ->> operator example Source: https://docs.vantage.sh/vql_resource_report Looks for EC2 instances with an architecture of 'x86_64'. ```vql resources.provider = 'aws' AND (resources.type = 'aws_instance' AND resources.metadata->>'architecture' = 'x86_64') ``` -------------------------------- ### Example Output of Service Principal Creation Source: https://docs.vantage.sh/connecting_azure Example JSON output from the 'az ad sp create-for-rbac' command. The appId, password, and tenant values are used as credentials in the Vantage console. ```json { "appId": "2d218f0f5-7ad5-4a12-abc7-bad2889d6407", "displayName": "vantage", "password": "8zkj3~yswKd433U12SHrvp22UoA6tOOOkZ_BYar2", "tenant": "1050a480-ef60-43d7-b8db-224aad100b60" } ``` -------------------------------- ### OpenAPI specification for GET /recommendations/{recommendation_token} Source: https://docs.vantage.sh/api/recommendations/get-recommendation-by-token The OpenAPI 3.0.1 specification for the Vantage API, defining the GET /recommendations/{recommendation_token} endpoint. The endpoint requires a recommendation_token path parameter and returns a Recommendation schema with a 200 response example. ```yaml openapi: 3.0.1 info: title: Vantage description: Vantage API termsOfService: https://www.vantage.sh/terms-of-use contact: name: Vantage Support url: https://www.vantage.sh email: support@vantage.sh version: 2.0.0 servers: - url: https://api.vantage.sh/v2 security: - oauth2: - read tags: - name: AccessGrants description: Operations about AccessGrants - name: Annotations description: Operations about Annotations - name: AnomalyAlerts description: Operations about AnomalyAlerts - name: AnomalyNotifications description: Operations about AnomalyNotifications - name: AuditLogs description: Operations about AuditLogs - name: BillingProfiles description: Operations about BillingProfiles - name: BillingRules description: Operations about BillingRules - name: BudgetAlerts description: Operations about BudgetAlerts - name: Budgets description: Operations about Budgets - name: BusinessMetrics description: Operations about BusinessMetrics - name: Canvases description: Operations about Canvases - name: CostAlertEvents description: Operations about CostAlertEvents - name: CostAlerts description: Operations about CostAlerts - name: CostProvider description: Operations about CostProviders - name: CostProviderAccounts description: Operations about CostProviderAccounts - name: Costs description: Operations about Costs - name: CostService description: Operations about CostServices - name: Dashboards description: Operations about Dashboards - name: DataExports description: Operations about DataExports - name: ExchangeRates description: Operations about ExchangeRates - name: FinancialCommitmentReports description: Operations about FinancialCommitmentReports - name: FinancialCommitments description: Operations about FinancialCommitments - name: Folders description: Operations about Folders - name: Integrations description: Operations about Integrations - name: Invoices description: Operations about Invoices - name: KubernetesEfficiencyReports description: Operations about KubernetesEfficiencyReports - name: ManagedAccounts description: Operations about ManagedAccounts - name: Me description: Operations about Mes - name: NetworkFlowLogs description: Operations about NetworkFlowLogs - name: NetworkFlowReports description: Operations about NetworkFlowReports - name: OpenAPISpecification description: Operations about OpenAPISpecifications - name: Ping description: Operations about Pings - name: Prices description: Operations about Prices - name: Recommendations description: Operations about Recommendations - name: RecommendationViews description: Operations about RecommendationViews - name: ReportForecasts description: Operations about ReportForecasts - name: ReportNotifications description: Operations about ReportNotifications - name: ResourceReports description: Operations about ResourceReports - name: Resources description: Operations about Resources - name: SavedFilters description: Operations about SavedFilters - name: ScenarioModels description: Operations about ScenarioModels - name: Segments description: Operations about Segments - name: Tags description: Operations about Tags - name: Teams description: Operations about Teams - name: UnitCosts description: Operations about UnitCosts - name: UserFeedback description: Operations about UserFeedbacks - name: Users description: Operations about Users - name: VirtualTags description: Operations about VirtualTags - name: Workspaces description: Operations about Workspaces paths: /recommendations/{recommendation_token}: get: tags: - Recommendations summary: Get recommendation by token description: Return a Recommendation. operationId: getRecommendation parameters: - name: recommendation_token in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Recommendation' example: token: rcmmndtn_0eea161ff1a4d183 type: null category: ip_unattached workspace_token: wrkspc_634a8ca67ed39555 provider: aws provider_account_id: '123456789012' ``` -------------------------------- ### OpenAPI specification for getAnomalyNotification Source: https://docs.vantage.sh/api/anomalynotifications/get-anomaly-notification-by-token The OpenAPI definition for the GET request to /anomaly_notifications/{anomaly_notification_token}, including the expected response schema and an example response. ```yaml openapi: 3.0.1 info: title: Vantage description: Vantage API termsOfService: https://www.vantage.sh/terms-of-use contact: name: Vantage Support url: https://www.vantage.sh email: support@vantage.sh version: 2.0.0 servers: - url: https://api.vantage.sh/v2 security: - oauth2: - read tags: - name: AccessGrants description: Operations about AccessGrants - name: Annotations description: Operations about Annotations - name: AnomalyAlerts description: Operations about AnomalyAlerts - name: AnomalyNotifications description: Operations about AnomalyNotifications - name: AuditLogs description: Operations about AuditLogs - name: BillingProfiles description: Operations about BillingProfiles - name: BillingRules description: Operations about BillingRules - name: BudgetAlerts description: Operations about BudgetAlerts - name: Budgets description: Operations about Budgets - name: BusinessMetrics description: Operations about BusinessMetrics - name: Canvases description: Operations about Canvases - name: CostAlertEvents description: Operations about CostAlertEvents - name: CostAlerts description: Operations about CostAlerts - name: CostProvider description: Operations about CostProviders - name: CostProviderAccounts description: Operations about CostProviderAccounts - name: Costs description: Operations about Costs - name: CostService description: Operations about CostServices - name: Dashboards description: Operations about Dashboards - name: DataExports description: Operations about DataExports - name: ExchangeRates description: Operations about ExchangeRates - name: FinancialCommitmentReports description: Operations about FinancialCommitmentReports - name: FinancialCommitments description: Operations about FinancialCommitments - name: Folders description: Operations about Folders - name: Integrations description: Operations about Integrations - name: Invoices description: Operations about Invoices - name: KubernetesEfficiencyReports description: Operations about KubernetesEfficiencyReports - name: ManagedAccounts description: Operations about ManagedAccounts - name: Me description: Operations about Mes - name: NetworkFlowLogs description: Operations about NetworkFlowLogs - name: NetworkFlowReports description: Operations about NetworkFlowReports - name: OpenAPISpecification description: Operations about OpenAPISpecifications - name: Ping description: Operations about Pings - name: Prices description: Operations about Prices - name: Recommendations description: Operations about Recommendations - name: RecommendationViews description: Operations about RecommendationViews - name: ReportForecasts description: Operations about ReportForecasts - name: ReportNotifications description: Operations about ReportNotifications - name: ResourceReports description: Operations about ResourceReports - name: Resources description: Operations about Resources - name: SavedFilters description: Operations about SavedFilters - name: ScenarioModels description: Operations about ScenarioModels - name: Segments description: Operations about Segments - name: Tags description: Operations about Tags - name: Teams description: Operations about Teams - name: UnitCosts description: Operations about UnitCosts - name: UserFeedback description: Operations about UserFeedbacks - name: Users description: Operations about Users - name: VirtualTags description: Operations about VirtualTags - name: Workspaces description: Operations about Workspaces paths: /anomaly_notifications/{anomaly_notification_token}: get: tags: - AnomalyNotifications summary: Get anomaly notification by token description: Return an Anomaly Notification that the current API token has access to. operationId: getAnomalyNotification parameters: - name: anomaly_notification_token in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/AnomalyNotification' example: token: rprt_alrt_5af901100951705b cost_report_token: rprt_0d88354748562c26 ``` -------------------------------- ### Example Response: Bullet List Source: https://docs.vantage.sh/finops_ai_prompt_guide Example agent response in bullet list format, showing concise points with cost changes. ```text - EC2 +$18k - S3 +$6k ... ``` -------------------------------- ### Example Response: Markdown Table Source: https://docs.vantage.sh/finops_ai_prompt_guide Example agent response in markdown table format, showing a table of services, regions, and costs. ```text | Service | Region | Cost (USD) | |---------|--------|------------| | EC2 | us-east-1 | $125,450.23 | | EC2 | us-west-2 | $89,234.56 | | S3 | us-east-1 | $67,891.12 | | S3 | us-west-2 | $45,678.90 | | RDS | us-east-1 | $34,567.89 | ``` -------------------------------- ### OpenAPI specification for getSavedFilter Source: https://docs.vantage.sh/api/savedfilters/get-saved-filter-by-token The OpenAPI definition for the GET /saved_filters/{saved_filter_token} endpoint, including the response schema and an example of a returned SavedFilter object. ```yaml openapi: 3.0.1 info: title: Vantage description: Vantage API termsOfService: https://www.vantage.sh/terms-of-use contact: name: Vantage Support url: https://www.vantage.sh email: support@vantage.sh version: 2.0.0 servers: - url: https://api.vantage.sh/v2 security: - oauth2: - read tags: - name: AccessGrants description: Operations about AccessGrants - name: Annotations description: Operations about Annotations - name: AnomalyAlerts description: Operations about AnomalyAlerts - name: AnomalyNotifications description: Operations about AnomalyNotifications - name: AuditLogs description: Operations about AuditLogs - name: BillingProfiles description: Operations about BillingProfiles - name: BillingRules description: Operations about BillingRules - name: BudgetAlerts description: Operations about BudgetAlerts - name: Budgets description: Operations about Budgets - name: BusinessMetrics description: Operations about BusinessMetrics - name: Canvases description: Operations about Canvases - name: CostAlertEvents description: Operations about CostAlertEvents - name: CostAlerts description: Operations about CostAlerts - name: CostProvider description: Operations about CostProviders - name: CostProviderAccounts description: Operations about CostProviderAccounts - name: Costs description: Operations about Costs - name: CostService description: Operations about CostServices - name: Dashboards description: Operations about Dashboards - name: DataExports description: Operations about DataExports - name: ExchangeRates description: Operations about ExchangeRates - name: FinancialCommitmentReports description: Operations about FinancialCommitmentReports - name: FinancialCommitments description: Operations about FinancialCommitments - name: Folders description: Operations about Folders - name: Integrations description: Operations about Integrations - name: Invoices description: Operations about Invoices - name: KubernetesEfficiencyReports description: Operations about KubernetesEfficiencyReports - name: ManagedAccounts description: Operations about ManagedAccounts - name: Me description: Operations about Mes - name: NetworkFlowLogs description: Operations about NetworkFlowLogs - name: NetworkFlowReports description: Operations about NetworkFlowReports - name: OpenAPISpecification description: Operations about OpenAPISpecifications - name: Ping description: Operations about Pings - name: Prices description: Operations about Prices - name: Recommendations description: Operations about Recommendations - name: RecommendationViews description: Operations about RecommendationViews - name: ReportForecasts description: Operations about ReportForecasts - name: ReportNotifications description: Operations about ReportNotifications - name: ResourceReports description: Operations about ResourceReports - name: Resources description: Operations about Resources - name: SavedFilters description: Operations about SavedFilters - name: ScenarioModels description: Operations about ScenarioModels - name: Segments description: Operations about Segments - name: Tags description: Operations about Tags - name: Teams description: Operations about Teams - name: UnitCosts description: Operations about UnitCosts - name: UserFeedback description: Operations about UserFeedbacks - name: Users description: Operations about Users - name: VirtualTags description: Operations about VirtualTags - name: Workspaces description: Operations about Workspaces paths: /saved_filters/{saved_filter_token}: get: tags: - SavedFilters summary: Get saved filter by token description: Return a specific SavedFilter. operationId: getSavedFilter parameters: - name: saved_filter_token in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/SavedFilter' example: token: svd_fltr_be3f24eb1b5aabf6 title: AWS Account cost_report_tokens: - rprt_47023ad2b735f57d filter: (costs.provider = 'aws' AND costs.account_id = '98') created_at: '2024-07-15T16:08:54Z' ``` -------------------------------- ### Example Interaction: Create a Report Source: https://docs.vantage.sh/guides/finops_ai_prompt_guide A sample dialogue showing the user request and the AI agent's response when creating a cost report. ```md You: @Vantage can you create a report for me in the Infra folder (fldr_abc123def4567890) that shows me AWS EC2 box usage for October 2025? The Agent: Cost Report Created: AWS EC2 Usage (October 2025) Your report is ready in the Infra folder and focuses on AWS EC2 instance (compute) usage for October 2025. • Direct link: https://console.vantage.sh/go/rprt_xyz789abc123def4 Report Summary: - **Title**: AWS EC2 Usage - October 2025 - **Folder**: Infra (fldr_abc123def4567890) - **Filter**: (costs.provider = 'aws' AND costs.service = 'Amazon Elastic Compute Cloud - Compute') - **Date Range**: 2025-10-01 to 2025-10-31 - **Aggregate By**: usage - **Workspace**: Production (wrkspc_def456ghi789jkl0) Notes: • This targets the EC2 compute service: Amazon Elastic Compute Cloud - Compute, which matches "EC2 box usage." • It excludes EC2-related "other" costs (like EBS, NAT, data transfer). If you want those included, I can broaden the filter. Want any tweaks? • Groupings: Add by account_id, region, or instance type (if tagged). • Compare periods: Keep or remove previous-period comparison. • Scope: Restrict to specific AWS accounts or regions. ``` -------------------------------- ### Verify Agent Installation and Check Logs Source: https://docs.vantage.sh/kubernetes_agent Use these commands to verify the agent is installed and running on all clusters. The first lists agent pods in the vantage namespace; the second streams logs for a specific pod, replacing with the actual pod name (e.g., vka-vantage-kubernetes-agent-0). Look for ERROR level messages indicating crashes, OOM kills, or repeated failures. ```bash kubectl -n vantage get pod ``` ```bash kubectl -n vantage logs -f ``` -------------------------------- ### Install Vantage Kubernetes Agent Helm Chart Source: https://docs.vantage.sh/kubernetes_agent Add the Vantage Helm chart repository, then install the vantage-kubernetes-agent chart. Update the values for VANTAGE_API_TOKEN and CLUSTER_ID before running the upgrade command. ```bash helm repo add vantage https://vantage-sh.github.io/helm-charts ``` ```bash helm upgrade -n vantage vka vantage/vantage-kubernetes-agent --install --set agent.token=$VANTAGE_API_TOKEN,agent.clusterID=$CLUSTER_ID --create-namespace ``` -------------------------------- ### Example Agent Response: Created Report Source: https://docs.vantage.sh/finops_ai_prompt_guide Shows the agent's response after creating a report in a specified folder. Includes report link, folder, title, scope, date range, chart type, aggregation, and settings. ```text Cost Report Created: AWS RDS (August 2025) Your report is ready. You can open it here: • Report link: https://console.vantage.sh/go/rprt_xyz789abc123def4 • Folder: https://console.vantage.sh/reporting/fldr_abc123def4567890 Report Details • Title: AWS RDS Costs - August 2025 • Scope: ``costs.provider = 'aws'`` and ``costs.service = 'Amazon Relational Database Service'`` • Date range: 2025-08-01 to 2025-08-31 • Chart type: Line • Aggregation: Cost over Date • Settings: • Discounts: Included • Tax: Included • Amortized: Yes • Credits/Refunds: Excluded • Previous period comparison: Enabled ```