Query structured spec data via REST or MCP. Get exactly what your agent needs.
https://api.vantage.sh/v2
/access_grants
Create an Access Grant.
application/json
createAccessGrant
| Property | Type | Required |
|---|---|---|
| access | string | optional |
| team_token | string | required |
| resource_token | string | required |
BadRequest
Forbidden
NotFound
NotAcceptable
UnprocessableEntity
POST /access_grants
/anomaly_notifications
Create an Anomaly Notification for a Cost Report.
application/json
createAnomalyNotification
| Property | Type | Required |
|---|---|---|
| threshold | integer | optional |
| user_tokens | array | optional |
| cost_report_token | string | required |
| recipient_channels | array | optional |
BadRequest
POST /anomaly_notifications
/budget_alerts
Create a Budget Alert.
application/x-www-form-urlencoded
BudgetAlertsCreateAlertRequest
| Property | Type | Required |
|---|---|---|
| threshold | integer | required |
| user_tokens | array | optional |
| budget_tokens | array | required |
| period_to_track | string | optional |
| duration_in_days | integer | required |
| recipient_channels | array | optional |
BadRequest
POST /budget_alerts
/budgets
Create a Budget.
application/json
createBudget
| Property | Type | Required |
|---|---|---|
| name | string | required |
| periods | array | optional |
| └ amount | number | required |
| └ end_at | string | optional |
| └ start_at | string | required |
| workspace_token | string | optional |
| cost_report_token | string | optional |
BadRequest
UnprocessableEntity
POST /budgets
/business_metrics
Create a new BusinessMetric.
application/json
createBusinessMetric
| Property | Type | Required |
|---|---|---|
| title | string | required |
| values | array | optional |
| └ date | string | required |
| └ amount | number | required |
| cost_report_tokens_with_metadata | array | optional |
| └ unit_scale | string | optional |
| └ cost_report_token | string | required |
BadRequest
Forbidden
NotFound
UnprocessableEntity
POST /business_metrics
/cost_reports
Create a CostReport.
application/json
createCostReport
| Property | Type | Required |
|---|---|---|
| title | string | required |
| filter | string | optional |
| settings | object | optional |
| └ amortize | boolean | optional |
| └ include_tax | boolean | optional |
| └ unallocated | boolean | optional |
| └ include_credits | boolean | optional |
| └ include_refunds | boolean | optional |
| └ include_discounts | boolean | optional |
| groupings | string | optional |
| folder_token | string | optional |
| workspace_token | string | optional |
| saved_filter_tokens | array | optional |
| business_metric_tokens_with_metadata | array | optional |
| └ unit_scale | string | optional |
| └ business_metric_token | string | required |
BadRequest
UnprocessableEntity
POST /cost_reports
/dashboards
Create a Dashboard.
application/json
createDashboard
| Property | Type | Required |
|---|---|---|
| title | string | required |
| date_bin | string | optional |
| end_date | string | required |
| start_date | string | optional |
| date_interval | string | optional |
| widget_tokens | array | optional |
| workspace_token | string | optional |
| saved_filter_tokens | array | optional |
BadRequest
POST /dashboards
/saved_filters
Create a SavedFilter for CostReports.
application/json
createSavedFilter
| Property | Type | Required |
|---|---|---|
| title | string | required |
| filter | string | optional |
| workspace_token | string | optional |
BadRequest
UnprocessableEntity
POST /saved_filters
/folders
Create a Folder for CostReports.
application/json
createFolder
| Property | Type | Required |
|---|---|---|
| title | string | required |
| workspace_token | string | optional |
| parent_folder_token | string | optional |
| saved_filter_tokens | array | optional |
BadRequest
POST /folders
/report_notifications
Create a ReportNotification.
application/json
createReportNotification
| Property | Type | Required |
|---|---|---|
| title | string | required |
| change | string | required |
| frequency | string | required |
| user_tokens | array | optional |
| workspace_token | string | optional |
| cost_report_token | string | required |
| recipient_channels | array | optional |
BadRequest
UnprocessableEntity
POST /report_notifications
/segments
Create a Segment.
application/json
createSegment
| Property | Type | Required |
|---|---|---|
| title | string | required |
| filter | string | optional |
| priority | integer | optional |
| description | string | optional |
| report_settings | object | optional |
| └ amortize | boolean | optional |
| └ include_tax | boolean | optional |
| └ include_credits | boolean | optional |
| └ include_refunds | boolean | optional |
| └ include_discounts | boolean | optional |
| workspace_token | string | optional |
| track_unallocated | boolean | optional |
| parent_segment_token | string | optional |
BadRequest
UnprocessableEntity
POST /segments
/teams
Create a new Team.
application/json
createTeam
| Property | Type | Required |
|---|---|---|
| name | string | required |
| role | string | optional |
| description | string | optional |
| user_emails | array | optional |
| user_tokens | array | optional |
| workspace_tokens | array | optional |
BadRequest
Forbidden
NotFound
UnprocessableEntity
POST /teams
/virtual_tag_configs
Create a new VirtualTagConfig.
application/json
createVirtualTagConfig
| Property | Type | Required |
|---|---|---|
| key | string | required |
| values | array | optional |
| └ name | string | required |
| └ filter | string | optional |
| overridable | boolean | required |
| backfill_until | string | optional |
BadRequest
Forbidden
NotFound
UnprocessableEntity
POST /virtual_tag_configs
AccessGrant
{
"type": "object",
"properties": {
"token": {
"type": "string"
},
"access": {
"type": "string",
"description": "The access status of the AccessGrant."
},
"created_at": {
"type": "string",
"example": "2023-08-04T00:00:00Z",
"description": "The date and time, in UTC, the AccessGrant was created. ISO 8601 Formatted."
},
"created_by": {
"type": "string",
"description": "The token for the User who created the AccessGrant."
},
"team_token": {
"type": "string",
"description": "The Team token for which an AccessGrant is applied to."
},
"resource_token": {
"type": "string",
"example": "rprt_abcd1234",
"description": "The token for any resource the AccessGrant is applied to."
}
},
"description": "AccessGrant model"
}
AccessGrants
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"access_grants": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AccessGrant"
}
}
},
"description": "AccessGrants model"
}
AnomalyAlert
{
"type": "object",
"properties": {
"token": {
"type": "string"
},
"amount": {
"type": "string",
"description": "The amount observed."
},
"status": {
"type": "string",
"description": "The status of the AnomalyAlert."
},
"service": {
"type": "string",
"description": "The provider service causing the AnomalyAlert."
},
"category": {
"type": "string",
"description": "The category of the AnomalyAlert."
},
"feedback": {
"type": "string",
"description": "The user-provided feedback of why alert was ignored/archived."
},
"provider": {
"type": "string",
"description": "The provider of the service causing the AnomalyAlert."
},
"alerted_at": {
"type": "string",
"example": "2021-07-09T00:00:00Z",
"description": "The date and time, in UTC, the AnomalyAlert is sent. ISO 8601 Formatted."
},
"created_at": {
"type": "string",
"example": "2021-07-09T00:00:00Z",
"description": "The date and time, in UTC, the AnomalyAlert was created. ISO 8601 Formatted."
},
"previous_amount": {
"type": "string",
"description": "The previous amount observed."
},
"cost_report_token": {
"type": "string",
"description": "The token of the Report associated with the AnomalyAlert."
},
"seven_day_average": {
"type": "string",
"description": "The seven day average of the amount observed."
}
},
"description": "AnomalyAlert model"
}
AnomalyAlerts
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"anomaly_alerts": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AnomalyAlert"
}
}
},
"description": "AnomalyAlerts model"
}
AnomalyNotification
{
"type": "object",
"properties": {
"token": {
"type": "string"
},
"threshold": {
"type": "integer",
"format": "int32",
"description": "The threshold amount that must be met for the notification to fire."
},
"created_at": {
"type": "string",
"example": "2023-08-04T00:00:00Z",
"description": "The date and time, in UTC, the AnomalyNotification was created. ISO 8601 Formatted."
},
"updated_at": {
"type": "string",
"example": "2023-08-04T00:00:00Z",
"description": "The date and time, in UTC, the AnomalyNotification was last updated at. ISO 8601 Formatted."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the users that receive the notification."
},
"cost_report_token": {
"type": "string",
"description": "The token for the CostReport the AnomalyNotification is associated with."
},
"recipient_channels": {
"type": "array",
"items": {
"type": "string"
},
"description": "The channels that the notification is sent to."
}
},
"description": "AnomalyNotification model"
}
AnomalyNotifications
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"anomaly_notifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AnomalyNotification"
}
}
},
"description": "AnomalyNotifications model"
}
AttachedBusinessMetricForCostReport
{
"type": "object",
"properties": {
"unit_scale": {
"enum": [
"per_unit",
"per_hundred",
"per_thousand",
"per_million",
"per_billion"
],
"type": "string",
"example": "per_hundred",
"description": "Determines the scale of the BusinessMetric's values within a particular CostReport."
},
"business_metric_token": {
"type": "string",
"example": "bsnss_mtrc_1234",
"description": "The token of the BusinessMetric that's attached to the CostReport."
}
}
}
AttachedCostReportForBusinessMetric
{
"type": "object",
"properties": {
"unit_scale": {
"enum": [
"per_unit",
"per_hundred",
"per_thousand",
"per_million",
"per_billion"
],
"type": "string",
"example": "per_hundred",
"description": "Determines the scale of the BusinessMetric's values within a particular CostReport."
},
"cost_report_token": {
"type": "string",
"example": "rprt_1234",
"description": "The token of the CostReport the BusinessMetric is attached to."
}
}
}
Budget
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Acme123 Budget",
"description": "The name of the Budget."
},
"token": {
"type": "string"
},
"periods": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BudgetPeriod"
},
"description": "The budget periods associated with the Budget."
},
"created_at": {
"type": "string",
"example": "2024-03-19T00:00:00Z",
"description": "The date and time, in UTC, the Budget was created. ISO 8601 Formatted."
},
"user_token": {
"type": "string",
"description": "The token for the User who created this Budget."
},
"performance": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BudgetPerformance"
},
"description": "The historical performance of the Budget."
},
"workspace_token": {
"type": "string",
"description": "The token for the Workspace the Budget is a part of."
},
"cost_report_token": {
"type": "string",
"description": "The token of the Report associated with the Budget."
},
"budget_alert_tokens": {
"type": "array",
"items": {
"type": "string",
"example": [
"bdgt_alrt_c9cd4e1a7127461b"
]
},
"description": "The tokens of the BudgetAlerts associated with the Budget."
}
},
"description": "Budget model"
}
BudgetAlert
{
"type": "object",
"properties": {
"token": {
"type": "string"
},
"threshold": {
"type": "string",
"example": "75",
"description": "Alerts only send if they reach this number (as a percentage). When threshold is 100, that means alerts are triggered once costs reach 100% of the budget."
},
"created_at": {
"type": "string",
"example": "2024-03-19T00:00:00Z",
"description": "The date and time, in UTC, the Budget Alert was created. ISO 8601 Formatted."
},
"user_token": {
"type": "string",
"description": "The token for the User who created this BudgetAlert."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string",
"example": [
"usr_abcd1234",
"usr_efgh5678"
]
},
"description": "The Users that receive the alert."
},
"budget_tokens": {
"type": "array",
"items": {
"type": "string",
"example": [
"bdgt_22dc1ac6e000cd14",
"bdgt_e045e8d2c739cb2c"
]
},
"description": "The tokens for the Budgets that the Budget Alert is monitoring to trigger alerts on."
},
"period_to_track": {
"type": "string",
"example": "start_of_the_month",
"description": "The period tracked on the alert. Used with duration_in_days to determine the time window of the alert. Possible values: start_of_the_month, end_of_the_month."
},
"workspace_token": {
"type": "string",
"description": "The token for the Workspace the ResourceReport is a part of."
},
"duration_in_days": {
"type": "string",
"description": "The number of days from the start or end of the month to trigger the alert if the threshold is reached."
},
"recipient_channels": {
"type": "string",
"example": [
"#budget-notifications",
"#finance"
],
"description": "The channels receiving the alerts. Requires an integration provider to be connected."
},
"integration_provider": {
"type": "string",
"example": "slack",
"description": "The provider used for sending alerts. This must be configured in the console. Possible values are: slack, microsoft_graph."
}
},
"description": "BudgetAlert model"
}
BudgetAlerts
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"budget_alerts": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BudgetAlert"
}
}
},
"description": "BudgetAlerts model"
}
BudgetAlertsCreateAlertRequest
{
"type": "object",
"required": [
"budget_tokens",
"threshold",
"duration_in_days"
],
"properties": {
"threshold": {
"type": "integer",
"format": "int32",
"description": "The threshold amount that must be met for the alert to fire."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the users that receive the alert."
},
"budget_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the Budget that has the alert."
},
"period_to_track": {
"type": "string",
"description": "The period tracked on the alert. Used with duration_in_days to determine the time window of the alert. Defaults to start_of_the_month if not passed. Possible values: start_of_the_month, end_of_the_month."
},
"duration_in_days": {
"type": "integer",
"format": "int32",
"description": "The number of days from the start or end of the month to trigger the alert if the threshold is reached. For the full month, pass an empty value."
},
"recipient_channels": {
"type": "array",
"items": {
"type": "string"
},
"description": "The channels receiving the alerts. Requires an integration provider to be connected."
}
}
}
BudgetAlertsUpdateExistingAlertRequest
{
"type": "object",
"properties": {
"threshold": {
"type": "integer",
"format": "int32",
"description": "The threshold amount that must be met for the alert to fire."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the users that receive the alert."
},
"budget_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the Budget that has the alert."
},
"period_to_track": {
"type": "string",
"description": "The period tracked on the alert. Used with duration_in_days to determine the time window of the alert. Defaults to start_of_the_month if not passed. Possible values: start_of_the_month, end_of_the_month."
},
"duration_in_days": {
"type": "integer",
"format": "int32",
"description": "The number of days from the start or end of the month to trigger the alert if the threshold is reached. For the full month, pass an empty value."
},
"recipient_channels": {
"type": "array",
"items": {
"type": "string"
},
"description": "The channels receiving the alerts. Requires an integration provider to be connected."
}
}
}
BudgetPerformance
{
"type": "object",
"properties": {
"date": {
"type": "string",
"example": "2024-03-19T00:00:00Z",
"description": "The date and time, in UTC, the Budget was created. ISO 8601 Formatted."
},
"actual": {
"type": "string",
"example": "2024-03-19T00:00:00Z",
"description": "The date and time, in UTC, the Budget was created. ISO 8601 Formatted."
},
"amount": {
"type": "string",
"example": "100.00",
"description": "The amount of the Budget Period as a string to ensure precision."
}
}
}
BudgetPeriod
{
"type": "object",
"properties": {
"amount": {
"type": "string",
"example": "100.00",
"description": "The amount of the Budget Period as a string to ensure precision."
},
"end_at": {
"type": "string",
"example": "2024-03-19T00:00:00Z",
"description": "The date and time, in UTC, the Budget was created. ISO 8601 Formatted."
},
"start_at": {
"type": "string",
"example": "2024-03-19T00:00:00Z",
"description": "The date and time, in UTC, the Budget was created. ISO 8601 Formatted."
}
}
}
Budgets
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"budgets": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Budget"
}
}
},
"description": "Budgets model"
}
BusinessMetric
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "Total Revenue",
"description": "The title of the BusinessMetric."
},
"token": {
"type": "string",
"example": "bsnss_mtrc_1234",
"description": "The token of the BusinessMetric."
},
"values": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BusinessMetricValue"
},
"description": "The dates and amounts for the BusinessMetric"
},
"created_by_token": {
"type": "string",
"example": "usr_1234",
"description": "The token of the User who created the BusinessMetric."
},
"cost_report_tokens_with_metadata": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AttachedCostReportForBusinessMetric"
},
"description": "The tokens for any CostReports that use the BusinessMetric, and the unit scale."
}
},
"description": "BusinessMetric model"
}
BusinessMetricValue
{
"type": "object",
"properties": {
"date": {
"type": "string",
"example": "2024-03-01+00:00",
"description": "The date of the Business Metric Value. ISO 8601 formatted."
},
"amount": {
"type": "string",
"example": "100.00",
"description": "The amount of the Business Metric Value as a string to ensure precision."
}
}
}
BusinessMetrics
{
"type": "object",
"properties": {
"business_metrics": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BusinessMetric"
}
}
},
"description": "BusinessMetrics model"
}
BusinessMetricsUpdateValuesCsvRequest
{
"type": "object",
"required": [
"csv"
],
"properties": {
"csv": {
"type": "string",
"format": "binary",
"description": "CSV file containing BusinessMetric dates and amounts"
}
}
}
Cost
{
"type": "object",
"properties": {
"tag": {
"type": "string",
"example": "production",
"description": "The tag attached to the cost that was incurred.\nDEPRECATED: does not support multiple tags."
},
"tags": {
"type": "array",
"items": {
"type": "string",
"example": [
"environment:production",
"aws:ecs:serviceName:frontend"
]
},
"description": "The tag pairs attached to the cost that was incurred."
},
"links": {
"type": "object"
},
"amount": {
"type": "string",
"example": "4.25",
"description": "The amount of the cost."
},
"region": {
"type": "string",
"example": "us-east-1",
"description": "The region which incurred the cost."
},
"service": {
"type": "string",
"example": "Amazon Elastic Compute Cloud - Compute",
"description": "The service which incurred the cost."
},
"currency": {
"type": "string",
"example": "USD",
"description": "The currency of the cost."
},
"provider": {
"enum": [
"aws",
"azure",
"gcp",
"snowflake",
"databricks",
"mongo",
"datadog",
"fastly",
"new_relic",
"opencost",
"open_ai",
"oracle",
"confluent",
"planetscale",
"coralogix",
"kubernetes"
],
"type": "string",
"example": "aws",
"description": "The cost provider which incurred the cost."
},
"account_id": {
"type": "string",
"example": "9109237192",
"description": "The cost provider's account id that incurred the cost."
},
"accrued_at": {
"type": "string",
"example": "2023-09-05+00:00",
"description": "The date the cost was accrued. ISO 8601 Formatted."
},
"resource_id": {
"type": "string",
"example": "arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0",
"description": "The resource id which incurred the cost."
},
"cost_category": {
"type": "string",
"example": "Data Transfer",
"description": "The category for the cost."
},
"cost_subcategory": {
"type": "string",
"example": "DataTransfer-Regional-Bytes",
"description": "The subcategory for the cost."
},
"billing_account_id": {
"type": "string",
"example": "9109237192",
"description": "The cost provider's billing account id that incurred the cost."
}
}
}
CostReport
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "Production Environment",
"description": "The title of the CostReport."
},
"token": {
"type": "string"
},
"filter": {
"type": "string",
"description": "The filter applied to the CostReport. Additional documentation available at https://docs.vantage.sh/vql."
},
"settings": {
"type": "object",
"properties": {
"amortize": {
"type": "boolean",
"default": true,
"description": "Report will amortize."
},
"include_tax": {
"type": "boolean",
"default": true,
"description": "Report will include tax."
},
"unallocated": {
"type": "boolean",
"default": false,
"description": "Report will show unallocated costs."
},
"include_credits": {
"type": "boolean",
"default": false,
"description": "Report will include credits."
},
"include_refunds": {
"type": "boolean",
"default": false,
"description": "Report will include refunds."
},
"include_discounts": {
"type": "boolean",
"default": true,
"description": "Report will include discounts."
}
},
"description": "Report settings."
},
"groupings": {
"type": "string",
"example": "provider, service",
"description": "The grouping aggregations applied to the filtered data."
},
"created_at": {
"type": "string",
"example": "2021-07-09T00:00:00Z",
"description": "The date and time, in UTC, the report was created. ISO 8601 Formatted."
},
"folder_token": {
"type": "string",
"description": "The token for the Folder the CostReport is a part of."
},
"workspace_token": {
"type": "string",
"description": "The token for the Workspace the CostReport is a part of."
},
"saved_filter_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens for the SavedFilters assigned to the CostReport."
},
"business_metric_tokens_with_metadata": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AttachedBusinessMetricForCostReport"
},
"description": "The tokens for the BusinessMetrics assigned to the CostReport, and the unit scale."
}
},
"description": "CostReport model"
}
CostReports
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"cost_reports": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CostReport"
}
}
},
"description": "CostReports model"
}
Costs
{
"type": "object",
"properties": {
"costs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Cost"
}
},
"links": {
"type": "object"
},
"total_cost": {
"type": "string",
"description": "The sum of all costs for the CostReport for the requested period, rounded to 2 decimal places, alongside the ISO 4217 currency code."
}
},
"description": "Costs model"
}
Dashboard
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "AWS Dashboard",
"description": "The title of the Dashboard."
},
"token": {
"type": "string",
"example": "dshbrd_abcd1234567890"
},
"date_bin": {
"enum": [
"cumulative",
"day",
"week",
"month"
],
"type": "string",
"description": "Determines how to group costs in the Dashboard."
},
"end_date": {
"type": "string",
"example": "2023-09-04",
"description": "The end date for the date range for CostReports in the Dashboard. ISO 8601 Formatted. Overwrites 'date_interval' if set."
},
"created_at": {
"type": "string",
"example": "2023-08-04T00:00:00Z",
"description": "The date and time, in UTC, the Dashboard was created. ISO 8601 Formatted."
},
"start_date": {
"type": "string",
"example": "2023-08-04",
"description": "The start date for the date range for CostReports in the Dashboard. ISO 8601 Formatted. Overwrites 'date_interval' if set."
},
"updated_at": {
"type": "string",
"example": "2023-08-04T00:00:00Z",
"description": "The date and time, in UTC, the Dashboard was created. ISO 8601 Formatted."
},
"date_interval": {
"enum": [
"this_month",
"last_7_days",
"last_30_days",
"last_month",
"last_3_months",
"last_6_months",
"custom",
"last_12_months",
"last_24_months",
"last_36_months",
"next_month",
"next_3_months",
"next_6_months",
"next_12_months"
],
"type": "string",
"description": "Determines the date range in the Dashboard. Guaranteed to be set to 'custom' if 'start_date' and 'end_date' are set."
},
"widget_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the widgets displayed in the Dashboard. Currently only supports CostReport tokens."
},
"workspace_token": {
"type": "string",
"example": "wrkspc_abcd1234567890",
"description": "The token for the Workspace the Dashboard is a part of."
},
"saved_filter_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the Saved Filters used in the Dashboard."
}
},
"description": "Dashboard model"
}
Dashboards
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"dashboards": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Dashboard"
}
}
},
"description": "Dashboards model"
}
Errors
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"errors": {
"type": "array",
"items": {
"type": "string"
}
}
},
"description": "Errors model"
}
FinancialCommitmentReport
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "Acme123 Financial Commitment Report",
"description": "The title of the FinancialCommitmentReport."
},
"token": {
"type": "string"
},
"default": {
"type": "boolean",
"description": "Indicates whether the FinancialCommitmentReport is the default report."
},
"end_date": {
"type": "string",
"example": "2024-03-20",
"description": "The end date for the FinancialCommitmentReport. Only set for custom date ranges. ISO 8601 Formatted."
},
"groupings": {
"type": "string",
"example": "cost_type, tag:account",
"description": "The grouping aggregations applied to the filtered data."
},
"created_at": {
"type": "string",
"example": "2024-03-19T00:00:00Z",
"description": "The date and time, in UTC, the report was created. ISO 8601 Formatted."
},
"start_date": {
"type": "string",
"example": "2024-03-01",
"description": "The start date for the FinancialCommitmentReport. Only set for custom date ranges. ISO 8601 Formatted."
},
"user_token": {
"type": "string",
"description": "The token for the User who created this FinancialCommitmentReport."
},
"date_bucket": {
"type": "string",
"example": "month",
"description": "How costs are grouped and displayed in the FinancialCommitmentReport. Possible values: day, week, month."
},
"date_interval": {
"type": "string",
"example": "last_month",
"description": "The date range for the FinancialCommitmentReport. Only present if a custom date range is not specified."
},
"workspace_token": {
"type": "string",
"description": "The token for the Workspace the FinancialCommitmentReport is a part of."
},
"on_demand_costs_scope": {
"type": "string",
"example": "discountable",
"description": "The scope for the costs. Possible values: discountable, all."
}
},
"description": "FinancialCommitmentReport model"
}
FinancialCommitmentReports
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"financial_commitment_reports": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FinancialCommitmentReport"
}
}
},
"description": "FinancialCommitmentReports model"
}
Folder
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "Platform Team Reports",
"description": "The title of the Folder."
},
"token": {
"type": "string"
},
"created_at": {
"type": "string",
"example": "2023-08-04T00:00:00Z",
"description": "The date and time, in UTC, the Folder was created. ISO 8601 Formatted."
},
"updated_at": {
"type": "string",
"example": "2023-08-04T00:00:00Z",
"description": "The date and time, in UTC, the Folder was last updated at. ISO 8601 Formatted."
},
"workspace_token": {
"type": "string",
"description": "The token for the Workspace the Folder is a part of."
},
"parent_folder_token": {
"type": "string",
"description": "The token for the parent Folder, if any."
},
"saved_filter_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens for the SavedFilters assigned to the Folder."
}
},
"description": "Folder model"
}
Folders
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"folders": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Folder"
}
}
},
"description": "Folders model"
}
KubernetesEfficiencyReport
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "Acme123 Kubernetes Efficiency Metrics",
"description": "The title of the KubernetesEfficiencyReport."
},
"token": {
"type": "string"
},
"default": {
"type": "boolean",
"description": "Indicates whether the KubernetesEfficiencyReport is the default report."
},
"end_date": {
"type": "string",
"example": "2024-03-20",
"description": "The end date for the KubernetesEfficiencyReport. Only set for custom date ranges. ISO 8601 Formatted."
},
"groupings": {
"type": "string",
"example": "cluster_id, namespace",
"description": "The grouping aggregations applied to the filtered data."
},
"created_at": {
"type": "string",
"example": "2024-03-19T00:00:00Z",
"description": "The date and time, in UTC, the report was created. ISO 8601 Formatted."
},
"start_date": {
"type": "string",
"example": "2024-03-01",
"description": "The start date for the KubernetesEfficiencyReport. Only set for custom date ranges. ISO 8601 Formatted."
},
"user_token": {
"type": "string",
"description": "The token for the User who created this KubernetesEfficiencyReport."
},
"date_bucket": {
"type": "string",
"example": "month",
"description": "How costs are grouped and displayed in the KubernetesEfficiencyReport. Possible values: day, week, month."
},
"aggregated_by": {
"type": "string",
"description": "How costs are aggregated by. Possible values: idle_costs, amount."
},
"date_interval": {
"type": "string",
"example": "last_month",
"description": "The date range for the KubernetesEfficiencyReport. Only present if a custom date range is not specified."
},
"workspace_token": {
"type": "string",
"description": "The token for the Workspace the KubernetesEfficiencyReport is a part of."
}
},
"description": "KubernetesEfficiencyReport model"
}
KubernetesEfficiencyReports
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"kubernetes_efficiency_reports": {
"type": "array",
"items": {
"$ref": "#/components/schemas/KubernetesEfficiencyReport"
}
}
},
"description": "KubernetesEfficiencyReports model"
}
Price
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"unit": {
"type": "string",
"example": "hour",
"description": "The unit in which the amount is billed."
},
"amount": {
"type": "number",
"example": 1.324,
"description": "The amount of money this specific product price costs."
},
"region": {
"type": "string",
"example": "us-east-1",
"description": "The region the price is specific to."
},
"details": {
"type": "object",
"example": {
"platform": "linux-enterprise",
"lifecycle": "on-demand"
},
"description": "Service specific metadata."
},
"currency": {
"type": "string",
"example": "USD",
"description": "The currency of the amount."
},
"rate_type": {
"type": "string",
"example": "compute",
"description": "The part of the product the price applies to. (compute, transfer, etc..)"
}
},
"description": "Price model"
}
Prices
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"prices": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Price"
}
}
},
"description": "Prices model"
}
Product
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string",
"example": "EC2",
"description": "The common name of the product."
},
"details": {
"type": "object",
"example": {
"gpu": 0,
"name": "M5 General Purpose 16xlarge",
"vcpu": 64,
"memory": 256,
"clock_speed_ghz": 3.1,
"physical_processor_description": "Intel Xeon Platinum 8175 (Skylake)",
"network_performance_description": "20 Gigabit"
},
"description": "An object of metadata about the product."
},
"category": {
"type": "string",
"example": "compute",
"description": "The category of the cloud product"
},
"service_id": {
"type": "string",
"example": "aws-ec2",
"description": "A unique slug for the service the product belongs to."
},
"provider_id": {
"type": "string",
"example": "aws",
"description": "A unique slug for the provider the product belongs to."
}
},
"description": "Product model"
}
Products
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"products": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Product"
}
}
},
"description": "Products model"
}
ReportNotification
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "Acme Report Notification",
"description": "The title of the ReportNotification."
},
"token": {
"type": "string"
},
"change": {
"enum": [
"percentage",
"dollars"
],
"type": "string",
"example": "percentage",
"description": "The type of change the ReportNotification is tracking."
},
"frequency": {
"enum": [
"daily",
"weekly",
"monthly"
],
"type": "string",
"example": "weekly",
"description": "The frequency the ReportNotification is sent."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string",
"example": [
"usr_abcd1234",
"usr_efgh5678"
]
},
"description": "The Users that receive the notification."
},
"cost_report_token": {
"type": "string",
"example": "rprt_abcd1234",
"description": "The token for a CostReport the ReportNotification is applied to."
},
"recipient_channels": {
"type": "array",
"items": {
"type": "string",
"example": [
"#notifications-channel"
]
},
"description": "The Slack or Microsoft Teams channels that receive the notification."
}
},
"description": "ReportNotification model"
}
ReportNotifications
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"report_notifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReportNotification"
}
}
},
"description": "ReportNotifications model"
}
ResourceReport
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "Acme123 Active Resources",
"description": "The title of the ResourceReport."
},
"token": {
"type": "string"
},
"default": {
"type": "boolean",
"description": "Indicates whether the ResourceReport is the default report."
},
"created_at": {
"type": "string",
"example": "2024-03-19T00:00:00Z",
"description": "The date and time, in UTC, the report was created. ISO 8601 Formatted."
},
"user_token": {
"type": "string",
"description": "The token for the User who created this ResourceReport."
},
"segment_token": {
"type": "string",
"description": "The token for the Segment the ResourceReport is a part of."
},
"workspace_token": {
"type": "string",
"description": "The token for the Workspace the ResourceReport is a part of."
}
},
"description": "ResourceReport model"
}
ResourceReports
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"resource_reports": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ResourceReport"
}
}
},
"description": "ResourceReports model"
}
SavedFilter
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "Platform Team Reports",
"description": "The title of the SavedFilter."
},
"token": {
"type": "string"
},
"filter": {
"type": "string",
"example": "costs.provider = 'azure'",
"description": "The SavedFilter's filter, applied to any relevant CostReports. Additional documentation available at https://docs.vantage.sh/vql."
},
"created_at": {
"type": "string",
"example": "2023-08-04T00:00:00Z",
"description": "The date and time, in UTC, the report was created. ISO 8601 Formatted."
},
"created_by": {
"type": "string",
"description": "The User who created the SavedFilter."
},
"workspace_token": {
"type": "string",
"description": "The token for the Workspace the SavedFilter is a part of."
},
"cost_report_tokens": {
"type": "array",
"items": {
"type": "string",
"example": [
"rprt_abcd1234",
"rprt_efgh5678"
]
},
"description": "The tokens for any CostReports the SavedFilter is applied to."
}
},
"description": "SavedFilter model"
}
SavedFilters
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"saved_filters": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavedFilter"
}
}
},
"description": "SavedFilters model"
}
Segment
{
"type": "object",
"properties": {
"title": {
"type": "string",
"example": "OPEX",
"description": "The title of the Segment."
},
"token": {
"type": "string"
},
"filter": {
"type": "string",
"description": "The filter applied to the Segment. Additional documentation available at https://docs.vantage.sh/vql."
},
"priority": {
"type": "integer",
"format": "int32",
"example": 100,
"description": "Costs are assigned in priority order across all Segments with assigned filters."
},
"created_at": {
"type": "string",
"example": "2021-07-09T00:00:00Z",
"description": "The date and time, in UTC, the Segment was created. ISO 8601 Formatted."
},
"description": {
"type": "string",
"example": "Operating expenses",
"description": "The description of the Segment."
},
"report_settings": {
"type": "object",
"properties": {
"amortize": {
"type": "boolean"
},
"include_tax": {
"type": "boolean"
},
"include_credits": {
"type": "boolean"
},
"include_refunds": {
"type": "boolean"
},
"include_discounts": {
"type": "boolean"
}
},
"description": "Report settings configurable on top-level Segments."
},
"workspace_token": {
"type": "string",
"description": "The token for the Workspace the Segment is a part of."
},
"track_unallocated": {
"type": "boolean",
"example": false,
"description": "Track Unallocated Costs which are not assigned to any of the created Segments."
},
"parent_segment_token": {
"type": "string",
"description": "The token of the parent Segment of this Segment."
}
},
"description": "Segment model"
}
Segments
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"segments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Segment"
}
}
},
"description": "Segments model"
}
Team
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Cost Savers",
"description": "The name of the Team."
},
"token": {
"type": "string"
},
"description": {
"type": "string",
"example": "The Team that saves costs",
"description": "The description of the Team."
},
"user_emails": {
"type": "array",
"items": {
"type": "string",
"example": [
"wileycoyote@acme.com",
"roadrunner@acme.com"
]
},
"description": "The email addresses for Users that belong to the Team"
},
"user_tokens": {
"type": "array",
"items": {
"type": "string",
"example": [
"usr_abcd1234",
"usr_efgh5678"
]
},
"description": "The tokens for Users that belong to the Team"
},
"workspace_tokens": {
"type": "array",
"items": {
"type": "string",
"example": [
"wrkspc_abcd1234",
"wrkspc_efgh5678"
]
},
"description": "The tokens for any Workspaces that the Team belongs to"
}
},
"description": "Team model"
}
Teams
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"teams": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Team"
}
}
},
"description": "Teams model"
}
User
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "John Doe",
"description": "The name of the User."
},
"role": {
"type": "string",
"example": "Admin",
"description": "The role of the User."
},
"email": {
"type": "string",
"example": "john_doe@acme.com",
"description": "The email of the User."
},
"token": {
"type": "string"
}
},
"description": "User model"
}
Users
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"users": {
"type": "array",
"items": {
"$ref": "#/components/schemas/User"
}
}
},
"description": "Users model"
}
VirtualTagConfig
{
"type": "object",
"properties": {
"key": {
"type": "string",
"example": "Cost Center",
"description": "The key of the VirtualTagConfig."
},
"token": {
"type": "string",
"example": "vtag_1234",
"description": "The token of the VirtualTagConfig."
},
"values": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VirtualTagConfigValue"
},
"description": "Values for the VirtualTagConfig, with match precedence determined by their relative order in the list."
},
"overridable": {
"type": "boolean",
"description": "Whether the VirtualTagConfig can override a provider-supplied tag on a matching Cost."
},
"backfill_until": {
"type": "string",
"example": "2023-10-01",
"description": "The earliest month VirtualTagConfig should be backfilled to."
},
"created_by_token": {
"type": "string",
"example": "usr_1234",
"description": "The token of the User who created the VirtualTagConfig."
}
},
"description": "VirtualTagConfig model"
}