Query structured spec data via REST or MCP. Get exactly what your agent needs.
https://api.vantage.sh/v2
/access_grants/{access_grant_token}
Update an AccessGrant.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| access_grant_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateAccessGrant"
}
}
},
"required": true
}
PUT /access_grants/{access_grant_token}
/anomaly_alerts/{anomaly_alert_token}
Update an AnomalyAlert.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| anomaly_alert_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateAnomalyAlert"
}
}
},
"required": true
}
PUT /anomaly_alerts/{anomaly_alert_token}
/anomaly_notifications/{anomaly_notification_token}
Update an Anomaly Notification.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| anomaly_notification_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateAnomalyNotification"
}
}
},
"required": true
}
PUT /anomaly_notifications/{anomaly_notification_token}
/budget_alerts/{budget_alert_token}
Updates an existing BudgetAlert.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| budget_alert_token | path | required | string |
{
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"$ref": "#/components/schemas/BudgetAlertsUpdateExistingAlertRequest"
}
}
}
}
PUT /budget_alerts/{budget_alert_token}
/budgets/{budget_token}
Update a Budget.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| budget_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateBudget"
}
}
},
"required": true
}
PUT /budgets/{budget_token}
/business_metrics/{business_metric_token}
Updates an existing BusinessMetric.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| business_metric_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateBusinessMetric"
}
}
},
"required": true
}
PUT /business_metrics/{business_metric_token}
/business_metrics/{business_metric_token}/values.csv
Updates the values for an existing BusinessMetric from a CSV file.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| business_metric_token | path | required | string |
{
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/BusinessMetricsUpdateValuesCsvRequest"
}
}
},
"required": true
}
PUT /business_metrics/{business_metric_token}/values.csv
/cost_reports/{cost_report_token}
Update a CostReport.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| cost_report_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateCostReport"
}
}
},
"required": true
}
PUT /cost_reports/{cost_report_token}
/dashboards/{dashboard_token}
Update a Dashboard.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| dashboard_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateDashboard"
}
}
},
"required": true
}
PUT /dashboards/{dashboard_token}
/saved_filters/{saved_filter_token}
Update a SavedFilter for CostReports.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| saved_filter_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateSavedFilter"
}
}
},
"required": true
}
PUT /saved_filters/{saved_filter_token}
/folders/{folder_token}
Update a Folder for CostReports.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| folder_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateFolder"
}
}
},
"required": true
}
PUT /folders/{folder_token}
/report_notifications/{report_notification_token}
Update a ReportNotification.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| report_notification_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateReportNotification"
}
}
},
"required": true
}
PUT /report_notifications/{report_notification_token}
/segments/{segment_token}
Update a Segment.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| segment_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateSegment"
}
}
},
"required": true
}
PUT /segments/{segment_token}
/teams/{team_token}
Update a Team.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| team_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateTeam"
}
}
},
"required": true
}
PUT /teams/{team_token}
/virtual_tag_configs/{virtual_tag_config_token}
Updates an existing VirtualTagConfig.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| virtual_tag_config_token | path | required | string |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/updateVirtualTagConfig"
}
}
},
"required": true
}
PUT /virtual_tag_configs/{virtual_tag_config_token}
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"
}
VirtualTagConfigValue
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Informatics",
"description": "The name of the Value."
},
"filter": {
"type": "string",
"example": "costs.provider = 'aws' AND costs.service = 'Amazon Simple Storage Service'",
"description": "The filter VQL for the Value."
}
}
}
VirtualTagConfigs
{
"type": "object",
"properties": {
"virtual_tag_configs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VirtualTagConfig"
}
}
},
"description": "VirtualTagConfigs model"
}
Workspace
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Acme Corp.",
"description": "The name of the Workspace."
},
"token": {
"type": "string"
}
},
"description": "Workspace model"
}
Workspaces
{
"type": "object",
"properties": {
"links": {
"type": "object"
},
"workspaces": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Workspace"
}
}
},
"description": "Workspaces model"
}
createAccessGrant
{
"type": "object",
"required": [
"resource_token",
"team_token"
],
"properties": {
"access": {
"enum": [
"denied",
"allowed"
],
"type": "string",
"description": "The access level you want to grant. Defaults to 'allowed'."
},
"team_token": {
"type": "string",
"description": "The token of the Team you want to grant access to."
},
"resource_token": {
"type": "string",
"description": "The token of the resource for which you are granting access."
}
},
"description": "Create an Access Grant."
}
createAnomalyNotification
{
"type": "object",
"required": [
"cost_report_token"
],
"properties": {
"threshold": {
"type": "integer",
"format": "int32",
"description": "The threshold amount that must be met for the notification to fire."
},
"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 of the Cost Report folder that has the notification."
},
"recipient_channels": {
"type": "array",
"items": {
"type": "string"
},
"description": "The Slack/MS Teams channels that receive the notification."
}
},
"description": "Create an Anomaly Notification for a Cost Report."
}
createBudget
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the Budget."
},
"periods": {
"type": "array",
"items": {
"type": "object",
"required": [
"start_at",
"amount"
],
"properties": {
"amount": {
"type": "number",
"format": "double",
"description": "The amount of the period."
},
"end_at": {
"type": "string",
"format": "date",
"nullable": true,
"description": "The end date of the period."
},
"start_at": {
"type": "string",
"format": "date",
"description": "The start date of the period."
}
}
},
"description": "The periods for the Budget. The start_at and end_at must be iso8601 formatted e.g. YYYY-MM-DD."
},
"workspace_token": {
"type": "string",
"description": "The token of the Workspace to add the Budget to."
},
"cost_report_token": {
"type": "string",
"description": "The CostReport token."
}
},
"description": "Create a Budget."
}
createBusinessMetric
{
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "The title of the BusinessMetrics."
},
"values": {
"type": "array",
"items": {
"type": "object",
"required": [
"date",
"amount"
],
"properties": {
"date": {
"type": "string",
"format": "date-time"
},
"amount": {
"type": "number",
"format": "double"
}
}
},
"description": "The dates and amounts for the BusinessMetric."
},
"cost_report_tokens_with_metadata": {
"type": "array",
"items": {
"type": "object",
"required": [
"cost_report_token"
],
"properties": {
"unit_scale": {
"enum": [
"per_unit",
"per_hundred",
"per_thousand",
"per_million",
"per_billion"
],
"type": "string",
"default": "per_unit",
"description": "Determines the scale of the BusinessMetric's values within the CostReport."
},
"cost_report_token": {
"type": "string",
"description": "The token of the CostReport the BusinessMetric is attached to."
}
}
},
"description": "The tokens for any CostReports that use the BusinessMetric, and the unit scale."
}
},
"description": "Create a new BusinessMetric."
}
createCostReport
{
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "The title of the CostReport."
},
"filter": {
"type": "string",
"description": "The filter query language to apply 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",
"description": "Grouping values for aggregating costs on the report. Valid groupings: account_id, billing_account_id, charge_type, cost_category, cost_subcategory, provider, region, resource_id, service, tagged, tag:<tag_value>. If providing multiple groupings, join as comma separated values: groupings=provider,service,region"
},
"folder_token": {
"type": "string",
"description": "The token of the Folder to add the CostReport to. Determines the Workspace the report is assigned to."
},
"workspace_token": {
"type": "string",
"description": "The token of the Workspace to add the Cost Report to. Ignored if 'folder_token' is set. Required if the API token is associated with multiple Workspaces."
},
"saved_filter_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the SavedFilters to apply to the CostReport."
},
"business_metric_tokens_with_metadata": {
"type": "array",
"items": {
"type": "object",
"required": [
"business_metric_token"
],
"properties": {
"unit_scale": {
"enum": [
"per_unit",
"per_hundred",
"per_thousand",
"per_million",
"per_billion"
],
"type": "string",
"default": "per_unit",
"description": "Determines the scale of the BusinessMetric's values within the CostReport."
},
"business_metric_token": {
"type": "string",
"description": "The token of the BusinessMetric to attach to the CostReport."
}
}
},
"description": "The tokens for any BusinessMetrics to attach to the CostReport, and the unit scale."
}
},
"description": "Create a CostReport."
}
createDashboard
{
"type": "object",
"required": [
"title",
"end_date"
],
"properties": {
"title": {
"type": "string",
"description": "The title of the Dashboard."
},
"date_bin": {
"enum": [
"cumulative",
"day",
"week",
"month"
],
"type": "string",
"description": "Determines how to group costs in the Dashboard."
},
"end_date": {
"type": "string",
"description": "The end date for the date range for costs in the Dashboard. ISO 8601 Formatted. Incompatible with 'date_interval' parameter."
},
"start_date": {
"type": "string",
"description": "The start date for the date range for costs in the Dashboard. ISO 8601 Formatted. Incompatible with 'date_interval' parameter."
},
"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. Incompatible with 'start_date' and 'end_date' parameters."
},
"widget_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the widgets to add to the Dashboard. Currently only supports CostReport tokens."
},
"workspace_token": {
"type": "string",
"description": "The token of the Workspace to add the Dashboard to. Required if the API token is associated with multiple Workspaces."
},
"saved_filter_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the Saved Filters used in the Dashboard."
}
},
"description": "Create a Dashboard."
}
createFolder
{
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "The title of the Folder."
},
"workspace_token": {
"type": "string",
"description": "The token of the Workspace to add the Folder to. Ignored if 'parent_folder_token' is set. Required if the API token is associated with multiple Workspaces."
},
"parent_folder_token": {
"type": "string",
"description": "The token of the parent Folder."
},
"saved_filter_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the SavedFilters to apply to any Cost Report contained within the Folder."
}
},
"description": "Create a Folder for CostReports."
}
createReportNotification
{
"type": "object",
"required": [
"title",
"cost_report_token",
"frequency",
"change"
],
"properties": {
"title": {
"type": "string",
"description": "The title of the ReportNotification."
},
"change": {
"type": "string",
"description": "The type of change the ReportNotification is tracking. Possible values: percentage, dollars."
},
"frequency": {
"type": "string",
"description": "The frequency the ReportNotification is sent. Possible values: daily, weekly, monthly."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The Users that receive the notification."
},
"workspace_token": {
"type": "string",
"description": "The token of the Workspace to add the ReportNotification to. Required if the API token is associated with multiple Workspaces."
},
"cost_report_token": {
"type": "string",
"description": "The CostReport token."
},
"recipient_channels": {
"type": "array",
"items": {
"type": "string"
},
"description": "The Slack or Microsoft Teams channels that receive the notification."
}
},
"description": "Create a ReportNotification."
}
createSavedFilter
{
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "The title of the SavedFilter."
},
"filter": {
"type": "string",
"description": "The filter query language to apply to the SavedFilter, which subsequently gets applied to a CostReport. Additional documentation available at https://docs.vantage.sh/vql."
},
"workspace_token": {
"type": "string",
"description": "The Workspace to associate the SavedFilter with. Required if the API token is associated with multiple Workspaces."
}
},
"description": "Create a SavedFilter for CostReports."
}
createSegment
{
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "The title of the Segment."
},
"filter": {
"type": "string",
"description": "The filter query language to apply to the Segment. Additional documentation available at https://docs.vantage.sh/vql."
},
"priority": {
"type": "integer",
"format": "int32",
"description": "The priority of the Segment."
},
"description": {
"type": "string",
"description": "The description of the Segment."
},
"report_settings": {
"type": "object",
"properties": {
"amortize": {
"type": "boolean",
"description": "Reports created under this Segment will amortize."
},
"include_tax": {
"type": "boolean",
"description": "Reports created under this Segment will include tax."
},
"include_credits": {
"type": "boolean",
"description": "Reports created under this Segment will include credits."
},
"include_refunds": {
"type": "boolean",
"description": "Reports created under this Segment will include refunds."
},
"include_discounts": {
"type": "boolean",
"description": "Reports created under this Segment will include discounts."
}
},
"description": "Report settings configurable on top-level Segments."
},
"workspace_token": {
"type": "string",
"description": "The token of the Workspace to add the Segment to. Ignored if 'segment_token' is set. Required if the API token is associated with multiple Workspaces."
},
"track_unallocated": {
"type": "boolean",
"default": 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 this new Segment belongs to. Determines the Workspace the segment is assigned to."
}
},
"description": "Create a Segment."
}
createTeam
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the Team."
},
"role": {
"enum": [
"owner",
"editor",
"viewer"
],
"type": "string",
"description": "The role to assign to the provided Users. Defaults to 'editor' which has editor permissions."
},
"description": {
"type": "string",
"description": "The description of the Team."
},
"user_emails": {
"type": "array",
"items": {
"type": "string"
},
"description": "The User emails to associate to the Team."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The User tokens to associate to the Team."
},
"workspace_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The Workspace tokens to associate to the Team."
}
},
"description": "Create a new Team."
}
createVirtualTagConfig
{
"type": "object",
"required": [
"key",
"overridable"
],
"properties": {
"key": {
"type": "string",
"description": "The key of the VirtualTagConfig."
},
"values": {
"type": "array",
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the value."
},
"filter": {
"type": "string",
"description": "The filter query language to apply to the value. Additional documentation available at https://docs.vantage.sh/vql."
}
}
},
"description": "Values for the VirtualTagConfig, with match precedence determined by 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",
"format": "date",
"description": "The earliest month the VirtualTagConfig should be backfilled to."
}
},
"description": "Create a new VirtualTagConfig."
}
updateAccessGrant
{
"type": "object",
"required": [
"access"
],
"properties": {
"access": {
"enum": [
"denied",
"allowed"
],
"type": "string",
"description": "Allowed or denied access to resource."
}
},
"description": "Update an AccessGrant."
}
updateAnomalyAlert
{
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"type": "string",
"description": "The status of the Anomaly Alert."
},
"feedback": {
"type": "string",
"description": "Optional additional comments for why this alert is ignored."
}
},
"description": "Update an AnomalyAlert."
}
updateAnomalyNotification
{
"type": "object",
"properties": {
"threshold": {
"type": "integer",
"format": "int32",
"description": "The threshold amount that must be met for the notification to fire."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the users that receive the notification."
},
"recipient_channels": {
"type": "array",
"items": {
"type": "string"
},
"description": "The Slack/MS Teams channels that receive the notification."
}
},
"description": "Update an Anomaly Notification."
}
updateBudget
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Budget."
},
"periods": {
"type": "array",
"items": {
"type": "object",
"required": [
"start_at",
"amount"
],
"properties": {
"amount": {
"type": "number",
"format": "double",
"description": "The amount of the period."
},
"end_at": {
"type": "string",
"format": "date",
"nullable": true,
"description": "The end date of the period."
},
"start_at": {
"type": "string",
"format": "date",
"description": "The start date of the period."
}
}
},
"description": "The periods for the Budget. The start_at and end_at must be iso8601 formatted e.g. YYYY-MM-DD."
},
"cost_report_token": {
"type": "string",
"description": "The CostReport token."
}
},
"description": "Update a Budget."
}
updateBusinessMetric
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The title of the BusinessMetric."
},
"values": {
"type": "array",
"items": {
"type": "object",
"required": [
"date",
"amount"
],
"properties": {
"date": {
"type": "string",
"format": "date-time"
},
"amount": {
"type": "number",
"format": "double"
}
}
},
"description": "The dates and amounts for the BusinessMetric."
},
"cost_report_tokens_with_metadata": {
"type": "array",
"items": {
"type": "object",
"required": [
"cost_report_token"
],
"properties": {
"unit_scale": {
"enum": [
"per_unit",
"per_hundred",
"per_thousand",
"per_million",
"per_billion"
],
"type": "string",
"default": "per_unit",
"description": "Determines the scale of the BusinessMetric's values within the CostReport."
},
"cost_report_token": {
"type": "string",
"description": "The token of the CostReport the BusinessMetric is attached to."
}
}
},
"description": "The tokens for any CostReports that use the BusinessMetric, and the unit scale."
}
},
"description": "Updates an existing BusinessMetric."
}
updateCostReport
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The title of the CostReport."
},
"filter": {
"type": "string",
"description": "The filter query language to apply to the CostReport. Additional documentation available at https://docs.vantage.sh/vql."
},
"settings": {
"type": "object",
"properties": {
"amortize": {
"type": "boolean",
"description": "Report will amortize."
},
"include_tax": {
"type": "boolean",
"description": "Report will include tax."
},
"unallocated": {
"type": "boolean",
"description": "Report will show unallocated costs."
},
"include_credits": {
"type": "boolean",
"description": "Report will include credits."
},
"include_refunds": {
"type": "boolean",
"description": "Report will include refunds."
},
"include_discounts": {
"type": "boolean",
"description": "Report will include discounts."
}
},
"description": "Report settings."
},
"groupings": {
"type": "string",
"description": "Grouping values for aggregating costs on the report. Valid groupings: account_id, billing_account_id, charge_type, cost_category, cost_subcategory, provider, region, resource_id, service, tagged, tag:<tag_value>. If providing multiple groupings, join as comma separated values: groupings=provider,service,region"
},
"folder_token": {
"type": "string",
"description": "The token of the Folder to add the CostReport to. Determines the Workspace the report is assigned to."
},
"saved_filter_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the SavedFilters to apply to the CostReport."
},
"business_metric_tokens_with_metadata": {
"type": "array",
"items": {
"type": "object",
"required": [
"business_metric_token"
],
"properties": {
"unit_scale": {
"enum": [
"per_unit",
"per_hundred",
"per_thousand",
"per_million",
"per_billion"
],
"type": "string",
"default": "per_unit",
"description": "Determines the scale of the BusinessMetric's values within the CostReport."
},
"business_metric_token": {
"type": "string",
"description": "The token of the BusinessMetric to attach to the CostReport."
}
}
},
"description": "The tokens for any BusinessMetrics to attach to the CostReport, and the unit scale."
}
},
"description": "Update a CostReport."
}
updateDashboard
{
"type": "object",
"required": [
"end_date"
],
"properties": {
"title": {
"type": "string",
"description": "The title of the Dashboard."
},
"date_bin": {
"enum": [
"cumulative",
"day",
"week",
"month"
],
"type": "string",
"description": "Determines how to group costs in the Dashboard."
},
"end_date": {
"type": "string",
"description": "The end date for the date range for costs in the Dashboard. ISO 8601 Formatted. Incompatible with 'date_interval' parameter."
},
"start_date": {
"type": "string",
"description": "The start date for the date range for costs in the Dashboard. ISO 8601 Formatted. Incompatible with 'date_interval' parameter."
},
"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. Incompatible with 'start_date' and 'end_date' parameters."
},
"widget_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the widgets to add to the Dashboard. Currently only supports CostReport tokens."
},
"saved_filter_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the Saved Filters used in the Dashboard."
}
},
"description": "Update a Dashboard."
}
updateFolder
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The title of the Folder."
},
"parent_folder_token": {
"type": "string",
"description": "The token of the parent Folder."
},
"saved_filter_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The tokens of the SavedFilters to apply to any Cost Report contained within the Folder."
}
},
"description": "Update a Folder for CostReports."
}
updateReportNotification
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The title of the ReportNotification."
},
"change": {
"type": "string",
"description": "The type of change the ReportNotification is tracking. Possible values: percentage, dollars."
},
"frequency": {
"type": "string",
"description": "The frequency the ReportNotification is sent. Possible values: daily, weekly, monthly."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The Users that receive the notification."
},
"cost_report_token": {
"type": "string",
"description": "The CostReport token."
},
"recipient_channels": {
"type": "array",
"items": {
"type": "string"
},
"description": "The Slack or Microsoft Teams channels that receive the notification."
}
},
"description": "Update a ReportNotification."
}
updateSavedFilter
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The title of the SavedFilter."
},
"filter": {
"type": "string",
"description": "The filter query language to apply to the SavedFilter, which subsequently gets applied to a CostReport. Additional documentation available at https://docs.vantage.sh/vql."
}
},
"description": "Update a SavedFilter for CostReports."
}
updateSegment
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The title of the Segment."
},
"filter": {
"type": "string",
"description": "The filter query language to apply to the Segment. Additional documentation available at https://docs.vantage.sh/vql."
},
"priority": {
"type": "integer",
"format": "int32",
"description": "The priority of the Segment."
},
"description": {
"type": "string",
"description": "The description of the Segment."
},
"report_settings": {
"type": "object",
"properties": {
"amortize": {
"type": "boolean",
"description": "Reports created under this Segment will amortize."
},
"include_tax": {
"type": "boolean",
"description": "Reports created under this Segment will include tax."
},
"include_credits": {
"type": "boolean",
"description": "Reports created under this Segment will include credits."
},
"include_refunds": {
"type": "boolean",
"description": "Reports created under this Segment will include refunds."
},
"include_discounts": {
"type": "boolean",
"description": "Reports created under this Segment will include discounts."
}
},
"description": "Report settings configurable on top-level Segments."
},
"track_unallocated": {
"type": "boolean",
"default": 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 this new Segment belongs to. Determines the Workspace the segment is assigned to."
}
},
"description": "Update a Segment."
}
updateTeam
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Team."
},
"role": {
"enum": [
"owner",
"editor",
"viewer"
],
"type": "string",
"description": "The role to assign to the provided Users. Defaults to 'editor' which has editor permissions."
},
"description": {
"type": "string",
"description": "The description of the Team."
},
"user_emails": {
"type": "array",
"items": {
"type": "string"
},
"description": "The User emails to associate to the Team."
},
"user_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The User tokens to associate to the Team."
},
"workspace_tokens": {
"type": "array",
"items": {
"type": "string"
},
"description": "The Workspace tokens to associate to the Team."
}
},
"description": "Update a Team."
}
updateVirtualTagConfig
{
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The key of the VirtualTagConfig."
},
"values": {
"type": "array",
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the value."
},
"filter": {
"type": "string",
"description": "The filter query language to apply to the value. Additional documentation available at https://docs.vantage.sh/vql."
}
}
},
"description": "Values for the VirtualTagConfig, with match precedence determined by order in the list."
},
"overridable": {
"type": "boolean",
"nullable": true,
"description": "Whether the VirtualTagConfig can override a provider-supplied tag on a matching Cost."
},
"backfill_until": {
"type": "string",
"format": "date",
"nullable": true,
"description": "The earliest month the VirtualTagConfig should be backfilled to."
}
},
"description": "Updates an existing VirtualTagConfig."
}