Vantage

Cloud cost transparency platform

vantage.readme.io ↗
Version
2.0.0
OpenAPI
3.0.0
Endpoints
88
Schemas
79
84
Quality
Updated
3 days ago
Infrastructure infrastructure cost cloud
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://api.vantage.sh/v2

Endpoints

Clear filters

Accessgrants 1 endpoints

PUT /access_grants/{access_grant_token}

Update an AccessGrant.

operationId: AccessGrants_updateGrantToken

Parameters

Name In Required Type Description
access_grant_token path required string

Request Body

required
application/json
schema updateAccessGrant
Property Type Required
access string required

Responses

200
400

BadRequest

404

NotFound

PUT /access_grants/{access_grant_token}

Anomalyalerts 1 endpoints

PUT /anomaly_alerts/{anomaly_alert_token}

Update an AnomalyAlert.

operationId: AnomalyAlerts_updateAlert

Parameters

Name In Required Type Description
anomaly_alert_token path required string

Request Body

required
application/json
schema updateAnomalyAlert
Property Type Required
status string required
feedback string optional

Responses

200
400

BadRequest

403

Forbidden

404

NotFound

422

UnprocessableEntity

PUT /anomaly_alerts/{anomaly_alert_token}

Anomalynotifications 1 endpoints

PUT /anomaly_notifications/{anomaly_notification_token}

Update an Anomaly Notification.

operationId: AnomalyNotifications_updateNotification

Parameters

Name In Required Type Description
anomaly_notification_token path required string

Request Body

required
application/json
schema updateAnomalyNotification
Property Type Required
threshold integer optional
user_tokens array optional
recipient_channels array optional

Responses

200
400

BadRequest

PUT /anomaly_notifications/{anomaly_notification_token}

Budgetalerts 1 endpoints

PUT /budget_alerts/{budget_alert_token}

Updates an existing BudgetAlert.

operationId: BudgetAlerts_updateExistingAlert

Parameters

Name In Required Type Description
budget_alert_token path required string

Request Body

application/x-www-form-urlencoded
schema BudgetAlertsUpdateExistingAlertRequest
Property Type Required
threshold integer optional
user_tokens array optional
budget_tokens array optional
period_to_track string optional
duration_in_days integer optional
recipient_channels array optional

Responses

201
404

NotFound

PUT /budget_alerts/{budget_alert_token}

Budgets 1 endpoints

PUT /budgets/{budget_token}

Update a Budget.

operationId: Budgets_updateBudget

Parameters

Name In Required Type Description
budget_token path required string

Request Body

required
application/json
schema updateBudget
Property Type Required
name string optional
periods array optional
amount number required
end_at string optional
start_at string required
cost_report_token string optional

Responses

200
400

BadRequest

404

NotFound

PUT /budgets/{budget_token}

Businessmetrics 2 endpoints

PUT /business_metrics/{business_metric_token}

Updates an existing BusinessMetric.

operationId: BusinessMetrics_updateExistingMetric

Parameters

Name In Required Type Description
business_metric_token path required string

Request Body

required
application/json
schema updateBusinessMetric
Property Type Required
title string optional
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

Responses

200
400

BadRequest

403

Forbidden

404

NotFound

422

UnprocessableEntity

PUT /business_metrics/{business_metric_token}
PUT /business_metrics/{business_metric_token}/values.csv

Updates the values for an existing BusinessMetric from a CSV file.

operationId: BusinessMetrics_updateValuesCsv

Parameters

Name In Required Type Description
business_metric_token path required string

Request Body

required
multipart/form-data
schema BusinessMetricsUpdateValuesCsvRequest
Property Type Required
csv string required

Responses

201
400

BadRequest

403

Forbidden

404

NotFound

422

UnprocessableEntity

PUT /business_metrics/{business_metric_token}/values.csv

Costs 1 endpoints

PUT /cost_reports/{cost_report_token}

Update a CostReport.

operationId: Costs_updateReport

Parameters

Name In Required Type Description
cost_report_token path required string

Request Body

required
application/json
schema updateCostReport
Property Type Required
title string optional
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
saved_filter_tokens array optional
business_metric_tokens_with_metadata array optional
unit_scale string optional
business_metric_token string required

Responses

200
400

BadRequest

404

NotFound

PUT /cost_reports/{cost_report_token}

Dashboards 1 endpoints

PUT /dashboards/{dashboard_token}

Update a Dashboard.

operationId: Dashboards_updateDashboard

Parameters

Name In Required Type Description
dashboard_token path required string

Request Body

required
application/json
schema updateDashboard
Property Type Required
title string optional
date_bin string optional
end_date string required
start_date string optional
date_interval string optional
widget_tokens array optional
saved_filter_tokens array optional

Responses

200
400

BadRequest

404

NotFound

PUT /dashboards/{dashboard_token}

Filters 1 endpoints

PUT /saved_filters/{saved_filter_token}

Update a SavedFilter for CostReports.

operationId: Filters_updateSavedFilterForCostReports

Parameters

Name In Required Type Description
saved_filter_token path required string

Request Body

required
application/json
schema updateSavedFilter
Property Type Required
title string optional
filter string optional

Responses

200
400

BadRequest

404

NotFound

422

UnprocessableEntity

PUT /saved_filters/{saved_filter_token}

Folders 1 endpoints

PUT /folders/{folder_token}

Update a Folder for CostReports.

operationId: Folders_updateFolderForCostReports

Parameters

Name In Required Type Description
folder_token path required string

Request Body

required
application/json
schema updateFolder
Property Type Required
title string optional
parent_folder_token string optional
saved_filter_tokens array optional

Responses

200
400

BadRequest

404

NotFound

PUT /folders/{folder_token}

Notifications 1 endpoints

PUT /report_notifications/{report_notification_token}

Update a ReportNotification.

operationId: Notifications_updateReportNotification

Parameters

Name In Required Type Description
report_notification_token path required string

Request Body

required
application/json
schema updateReportNotification
Property Type Required
title string optional
change string optional
frequency string optional
user_tokens array optional
cost_report_token string optional
recipient_channels array optional

Responses

200
400

BadRequest

404

NotFound

PUT /report_notifications/{report_notification_token}

Segments 1 endpoints

PUT /segments/{segment_token}

Update a Segment.

operationId: Segments_updateSegmentById

Parameters

Name In Required Type Description
segment_token path required string

Request Body

required
application/json
schema updateSegment
Property Type Required
title string optional
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
track_unallocated boolean optional
parent_segment_token string optional

Responses

200
400

BadRequest

404

NotFound

PUT /segments/{segment_token}

Teams 1 endpoints

PUT /teams/{team_token}

Update a Team.

operationId: Teams_updateTeam

Parameters

Name In Required Type Description
team_token path required string

Request Body

required
application/json
schema updateTeam
Property Type Required
name string optional
role string optional
description string optional
user_emails array optional
user_tokens array optional
workspace_tokens array optional

Responses

200
400

BadRequest

403

Forbidden

404

NotFound

422

UnprocessableEntity

PUT /teams/{team_token}

Virtualtags 1 endpoints

PUT /virtual_tag_configs/{virtual_tag_config_token}

Updates an existing VirtualTagConfig.

operationId: VirtualTags_updateConfig

Parameters

Name In Required Type Description
virtual_tag_config_token path required string

Request Body

required
application/json
schema updateVirtualTagConfig
Property Type Required
key string optional
values array optional
name string required
filter string optional
overridable boolean optional
backfill_until string optional

Responses

200
400

BadRequest

403

Forbidden

404

NotFound

422

UnprocessableEntity

PUT /virtual_tag_configs/{virtual_tag_config_token}

Schemas

object 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"
}
object AccessGrants
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "access_grants": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/AccessGrant"
      }
    }
  },
  "description": "AccessGrants model"
}
object 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"
}
object AnomalyAlerts
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "anomaly_alerts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/AnomalyAlert"
      }
    }
  },
  "description": "AnomalyAlerts model"
}
object 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"
}
object AnomalyNotifications
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "anomaly_notifications": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/AnomalyNotification"
      }
    }
  },
  "description": "AnomalyNotifications model"
}
object 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."
    }
  }
}
object 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."
    }
  }
}
object 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"
}
object 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"
}
object BudgetAlerts
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "budget_alerts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BudgetAlert"
      }
    }
  },
  "description": "BudgetAlerts model"
}
object 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."
    }
  }
}
object 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."
    }
  }
}
object 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."
    }
  }
}
object 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."
    }
  }
}
object Budgets
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "budgets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Budget"
      }
    }
  },
  "description": "Budgets model"
}
object 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"
}
object 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."
    }
  }
}
object BusinessMetrics
{
  "type": "object",
  "properties": {
    "business_metrics": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BusinessMetric"
      }
    }
  },
  "description": "BusinessMetrics model"
}
object BusinessMetricsUpdateValuesCsvRequest
{
  "type": "object",
  "required": [
    "csv"
  ],
  "properties": {
    "csv": {
      "type": "string",
      "format": "binary",
      "description": "CSV file containing BusinessMetric dates and amounts"
    }
  }
}
object 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."
    }
  }
}
object 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"
}
object CostReports
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "cost_reports": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CostReport"
      }
    }
  },
  "description": "CostReports model"
}
object 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"
}
object 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"
}
object Dashboards
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "dashboards": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Dashboard"
      }
    }
  },
  "description": "Dashboards model"
}
object Errors
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "errors": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "description": "Errors model"
}
object 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"
}
object FinancialCommitmentReports
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "financial_commitment_reports": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/FinancialCommitmentReport"
      }
    }
  },
  "description": "FinancialCommitmentReports model"
}
object 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"
}
object Folders
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "folders": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Folder"
      }
    }
  },
  "description": "Folders model"
}
object 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"
}
object KubernetesEfficiencyReports
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "kubernetes_efficiency_reports": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/KubernetesEfficiencyReport"
      }
    }
  },
  "description": "KubernetesEfficiencyReports model"
}
object 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"
}
object Prices
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "prices": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Price"
      }
    }
  },
  "description": "Prices model"
}
object 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"
}
object Products
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "products": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Product"
      }
    }
  },
  "description": "Products model"
}
object 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"
}
object ReportNotifications
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "report_notifications": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ReportNotification"
      }
    }
  },
  "description": "ReportNotifications model"
}
object 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"
}
object ResourceReports
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "resource_reports": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ResourceReport"
      }
    }
  },
  "description": "ResourceReports model"
}
object 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"
}
object SavedFilters
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "saved_filters": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SavedFilter"
      }
    }
  },
  "description": "SavedFilters model"
}
object 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"
}
object Segments
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "segments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Segment"
      }
    }
  },
  "description": "Segments model"
}
object 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"
}
object Teams
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "teams": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Team"
      }
    }
  },
  "description": "Teams model"
}
object 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"
}
object Users
{
  "type": "object",
  "properties": {
    "links": {
      "type": "object"
    },
    "users": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/User"
      }
    }
  },
  "description": "Users model"
}
object 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"
}