OpenAPI Specification
openapi: 3.0.1
info:
title: Vantage AccessGrants CostAlerts API
description: The Vantage API provides programmatic access to the Vantage cloud cost management and FinOps platform. It covers cost reporting and querying (Costs, Cost Reports, forecasts, unit costs), cost visibility and optimization (Resources, Recommendations, Financial Commitments, Kubernetes efficiency), governance and alerting (Budgets, Budget Alerts, Cost Alerts, Anomaly Alerts and Notifications), organization (Segments, Folders, Saved Filters, Dashboards, Workspaces, Teams), and billing (Billing Profiles, Billing Rules, Invoices). The API spans AWS, Azure, GCP, Kubernetes, Datadog, Snowflake, MongoDB, and other supported providers. Base URL https://api.vantage.sh/v2. Authentication is via OAuth2 (client credentials / bearer token) with read and write scopes.
termsOfService: https://www.vantage.sh/terms-of-use
contact:
name: Vantage Support
url: https://www.vantage.sh
email: support@vantage.sh
version: 2.0.0
servers:
- url: https://api.vantage.sh/v2
security:
- oauth2:
- read
tags:
- name: CostAlerts
description: Operations about CostAlerts
paths:
/cost_alerts:
get:
tags:
- CostAlerts
summary: Get all cost alerts
description: List all Cost Alerts
operationId: getCostAlerts
responses:
'200':
description: List all Cost Alerts
content:
application/json:
schema:
$ref: '#/components/schemas/CostAlerts'
example:
links:
self: https://api.vantage.sh/v2/cost_alerts
first: https://api.vantage.sh/v2/cost_alerts?page=1
next: null
last: https://api.vantage.sh/v2/cost_alerts?page=1
prev: null
cost_alerts:
- token: cstm_alrt_rl_945f63c6c91cd824
title: Default Alert Rule
email_recipients: []
slack_channels: []
teams_channels: []
created_at: '2024-04-21T15:19:49.673Z'
updated_at: '2025-04-21T15:19:49.673Z'
workspace_token: wrkspc_7d5a18b7d02942da
interval: day
threshold: 1000.0
unit_type: currency
report_tokens:
- rprt_a88be0a2af07fe10
security:
- oauth2:
- read
post:
tags:
- CostAlerts
summary: Create cost alert
description: Create a new Cost Alert
operationId: createCostAlert
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/createCostAlert'
required: true
responses:
'201':
description: Cost Alert created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/CostAlert'
example:
token: cstm_alrt_rl_76efd4cd0f56149a
title: New Alert
email_recipients:
- burl_mosciski@hayes.info
slack_channels: []
teams_channels: []
created_at: '2025-04-21T15:19:49.891Z'
updated_at: '2025-04-21T15:19:49.891Z'
workspace_token: wrkspc_a5e36f631519f7d3
interval: month
threshold: 100.0
unit_type: currency
report_tokens:
- rprt_ccf0092d336de56c
'400':
description: BadRequest
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
security:
- oauth2:
- write
x-codegen-request-body-name: createCostAlert
/cost_alerts/{cost_alert_token}:
get:
tags:
- CostAlerts
summary: Get cost alert by token
description: Get a Cost Alert
operationId: getCostAlert
parameters:
- name: cost_alert_token
in: path
description: The token of the Cost Alert.
required: true
schema:
type: string
responses:
'200':
description: Get a Cost Alert
content:
application/json:
schema:
$ref: '#/components/schemas/CostAlert'
example:
token: cstm_alrt_rl_db54d080e58bf82a
title: Default Alert Rule
email_recipients: []
slack_channels: []
teams_channels: []
created_at: '2024-04-21T15:19:49.598Z'
updated_at: '2025-04-21T15:19:49.598Z'
workspace_token: wrkspc_c94c58cd1f9a6314
interval: day
threshold: 1000.0
unit_type: currency
report_tokens:
- rprt_7c787dfc49b17876
'404':
description: NotFound
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
security:
- oauth2:
- read
put:
tags:
- CostAlerts
summary: Update cost alert
description: Update a Cost Alert
operationId: updateCostAlert
parameters:
- name: cost_alert_token
in: path
description: The token of the Cost Alert.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/updateCostAlert'
required: true
responses:
'200':
description: Cost Alert updated successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/CostAlert'
example:
token: cstm_alrt_rl_65ff8613224f4469
title: Default Alert Rule
email_recipients:
- andy.kuvalis@stanton.com
- ismael_bashirian@jenkins.biz
slack_channels: []
teams_channels: []
created_at: '2024-04-21T15:19:48.503Z'
updated_at: '2025-04-21T15:19:48.537Z'
workspace_token: wrkspc_643e0e66ee5a4611
interval: day
threshold: 500.0
unit_type: currency
report_tokens:
- rprt_bc47a84e3ab8a5d5
'404':
description: NotFound
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
security:
- oauth2:
- write
x-codegen-request-body-name: updateCostAlert
delete:
tags:
- CostAlerts
summary: Delete cost alert
description: Delete a Cost Alert
operationId: deleteCostAlert
parameters:
- name: cost_alert_token
in: path
description: The token of the Cost Alert.
required: true
schema:
type: string
responses:
'204':
description: Cost Alert deleted successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/CostAlert'
'404':
description: NotFound
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
security:
- oauth2:
- write
components:
schemas:
Errors:
required:
- errors
type: object
properties:
links:
$ref: '#/components/schemas/Links'
errors:
type: array
nullable: false
items:
type: string
description: Errors model
CostAlerts:
required:
- cost_alerts
type: object
properties:
links:
$ref: '#/components/schemas/Links'
cost_alerts:
type: array
items:
$ref: '#/components/schemas/CostAlert'
description: CostAlerts model
CostAlert:
required:
- created_at
- email_recipients
- interval
- minimum_threshold
- report_tokens
- slack_channels
- teams_channels
- threshold
- title
- token
- unit_type
- updated_at
- workspace_token
type: object
properties:
token:
type: string
nullable: false
title:
type: string
nullable: false
email_recipients:
type: array
description: The email addresses that will receive the alert.
nullable: false
items:
type: string
slack_channels:
type: array
description: The Slack channels that will receive the alert. Make sure your slack integration is connected at https://console.vantage.sh/settings/slack.
nullable: false
items:
type: string
teams_channels:
type: array
description: The Microsoft Teams channels that will receive the alert. Make sure your teams integration is connected at https://console.vantage.sh/settings/microsoft_teams.
nullable: false
items:
type: string
created_at:
type: string
description: The date and time, in UTC, for when the alert was created. ISO 8601 Formatted.
nullable: false
example: '2023-10-01T12:00:00Z'
updated_at:
type: string
description: The date and time, in UTC, for when the alert was last updated. ISO 8601 Formatted.
nullable: false
example: '2023-10-01T12:00:00Z'
workspace_token:
type: string
description: The ID of the organization that owns the CostAlert.
nullable: false
interval:
type: string
description: The period of time used to compare costs. Options are 'day', 'week', 'month', 'quarter'.
nullable: false
threshold:
type: number
description: The cost change threshold to alert on.
nullable: false
unit_type:
type: string
description: The unit type used to compare costs. Options are 'currency' or 'percentage'.
nullable: false
minimum_threshold:
type: number
description: The minimum monetary amount threshold for percentage-based alerts. When set, alerts will only trigger if the cost change meets this minimum, even if the percentage threshold is exceeded.
nullable: true
report_tokens:
type: array
description: The tokens of the reports to alert on.
nullable: false
items:
type: string
description: CostAlert model
createCostAlert:
required:
- interval
- report_tokens
- threshold
- title
- unit_type
- workspace_token
type: object
properties:
title:
type: string
description: The title of the Cost Alert.
interval:
type: string
description: The period of time used to compare costs. Options are 'day', 'week', 'month', 'quarter'.
threshold:
type: number
description: The threshold value for the Cost Alert.
format: float
unit_type:
type: string
description: The unit type used to compare costs. Options are 'currency' or 'percentage'.
workspace_token:
type: string
description: The token of the Workspace to add the Cost Alert to.
report_tokens:
type: array
description: The tokens of the reports to alert on.
items:
type: string
email_recipients:
type: array
description: The email recipients for the Cost Alert.
items:
type: string
slack_channels:
type: array
description: The Slack channels that will receive the alert.
items:
type: string
teams_channels:
type: array
description: The Microsoft Teams channels that will receive the alert.
items:
type: string
minimum_threshold:
type: number
description: The minimum monetary amount threshold for percentage-based alerts. Only applicable when unit_type is 'percentage'.
format: float
description: Create a new Cost Alert
Links:
type: object
properties:
self:
type: string
description: The URL of the current page of results.
nullable: true
first:
type: string
description: The URL of the first page of results.
nullable: true
next:
type: string
description: The URL of the next page of results, if one exists.
nullable: true
last:
type: string
description: The URL of the last page of results, if one exists.
nullable: true
prev:
type: string
description: The URL of the previous page of results, if one exists.
nullable: true
updateCostAlert:
type: object
properties:
title:
type: string
description: The title of the Cost Alert.
email_recipients:
type: array
description: The email recipients for the Cost Alert.
items:
type: string
interval:
type: string
description: The period of time used to compare costs. Options are 'day', 'week', 'month', 'quarter'.
threshold:
type: number
description: The threshold value for the Cost Alert.
format: float
slack_channels:
type: array
description: The Slack channels that will receive the alert. Make sure your slack integration is connected at https://console.vantage.sh/settings/slack.
items:
type: string
teams_channels:
type: array
description: The Microsoft Teams channels that will receive the alert. Make sure your teams integration is connected at https://console.vantage.sh/settings/microsoft_teams.
items:
type: string
unit_type:
type: string
description: The unit type used to compare costs. Options are 'currency' or 'percentage'.
report_tokens:
type: array
description: The tokens of the reports to alert on.
items:
type: string
minimum_threshold:
type: number
description: The minimum monetary amount threshold for percentage-based alerts. Only applicable when unit_type is 'percentage'.
format: float
description: Update a Cost Alert
securitySchemes:
oauth2:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://console.vantage.sh/account/profile
scopes:
read: Grants read access
write: Grants write access
x-original-swagger-version: '2.0'