Vantage ReportNotifications API
Operations about ReportNotifications
Operations about ReportNotifications
openapi: 3.0.1
info:
title: Vantage AccessGrants ReportNotifications 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: ReportNotifications
description: Operations about ReportNotifications
paths:
/report_notifications:
get:
tags:
- ReportNotifications
summary: Get all report notifications
description: Return all ReportNotifications.
operationId: getReportNotifications
parameters:
- name: page
in: query
description: The page of results to return.
schema:
type: integer
format: int32
- name: limit
in: query
description: The amount of results to return. The maximum is 1000.
schema:
type: integer
format: int32
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ReportNotifications'
example:
links:
self: https://api.vantage.sh/v2/report_notifications
first: https://api.vantage.sh/v2/report_notifications?page=1
next: null
last: https://api.vantage.sh/v2/report_notifications?page=1
prev: null
report_notifications:
- token: rprt_ntfctn_7c09ca27d07d8d1e
title: Test Notification
cost_report_token: rprt_ba0a5a5201390d72
user_tokens:
- usr_27edb13f3beac3cb
frequency: weekly
change: percentage
security:
- oauth2:
- read
post:
tags:
- ReportNotifications
summary: Create report notification
description: Create a ReportNotification.
operationId: createReportNotification
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/createReportNotification'
required: true
responses:
'201':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ReportNotification'
example:
token: rprt_ntfctn_8ce31b43a149cd2e
title: New Report Notification
cost_report_token: rprt_933010600676b02f
user_tokens:
- usr_45e7d17e9f402226
frequency: daily
change: percentage
'400':
description: BadRequest
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
'422':
description: UnprocessableEntity
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
security:
- oauth2:
- write
x-codegen-request-body-name: createReportNotification
/report_notifications/{report_notification_token}:
get:
tags:
- ReportNotifications
summary: Get report notification by token
description: Return a ReportNotification.
operationId: getReportNotification
parameters:
- name: report_notification_token
in: path
required: true
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ReportNotification'
example:
token: rprt_ntfctn_21b4287a212406b1
title: Test Notification
cost_report_token: rprt_d084c84455edc606
user_tokens:
- usr_56d53f802edba3e6
frequency: weekly
change: percentage
'404':
description: NotFound
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
security:
- oauth2:
- read
put:
tags:
- ReportNotifications
summary: Update report notification
description: Update a ReportNotification.
operationId: updateReportNotification
parameters:
- name: report_notification_token
in: path
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/updateReportNotification'
required: true
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ReportNotification'
example:
token: rprt_ntfctn_b36b208a90ee87f6
title: Updated Report Notification
cost_report_token: rprt_07b88c04aa6bed8c
user_tokens:
- usr_35ed19fadcfed8c9
frequency: weekly
change: dollars
'400':
description: BadRequest
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
'404':
description: NotFound
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
security:
- oauth2:
- write
x-codegen-request-body-name: updateReportNotification
delete:
tags:
- ReportNotifications
summary: Delete report notification
description: Delete a ReportNotification.
operationId: deleteReportNotification
parameters:
- name: report_notification_token
in: path
required: true
schema:
type: string
responses:
'204':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ReportNotification'
'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
updateReportNotification:
type: object
properties:
title:
type: string
description: The title of the ReportNotification.
cost_report_token:
type: string
description: The CostReport token.
user_tokens:
type: array
description: The Users that receive the notification.
items:
type: string
recipient_channels:
type: array
description: The Slack or Microsoft Teams channels that receive the notification.
items:
type: string
frequency:
type: string
description: 'The frequency the ReportNotification is sent. Possible values: daily, weekly, monthly.'
change:
type: string
description: 'The type of change the ReportNotification is tracking. Possible values: percentage, dollars.'
description: Update a ReportNotification.
ReportNotification:
required:
- change
- cost_report_token
- frequency
- recipient_channels
- title
- token
- user_tokens
type: object
properties:
token:
type: string
nullable: false
title:
type: string
description: The title of the ReportNotification.
nullable: false
example: Acme Report Notification
cost_report_token:
type: string
description: The token for a CostReport the ReportNotification is applied to.
nullable: false
example: rprt_abcd1234
user_tokens:
type: array
description: The Users that receive the notification.
nullable: false
items:
type: string
example: ''
recipient_channels:
type: array
description: The Slack or Microsoft Teams channels that receive the notification.
nullable: false
items:
type: string
example: ''
frequency:
type: string
description: The frequency the ReportNotification is sent.
nullable: false
example: weekly
enum:
- daily
- weekly
- monthly
change:
type: string
description: The type of change the ReportNotification is tracking.
nullable: false
example: percentage
enum:
- percentage
- dollars
description: ReportNotification model
ReportNotifications:
required:
- report_notifications
type: object
properties:
links:
$ref: '#/components/schemas/Links'
report_notifications:
type: array
items:
$ref: '#/components/schemas/ReportNotification'
description: ReportNotifications model
createReportNotification:
required:
- change
- cost_report_token
- frequency
- title
type: object
properties:
title:
type: string
description: The title of the ReportNotification.
cost_report_token:
type: string
description: The CostReport token.
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.
user_tokens:
type: array
description: The Users that receive the notification.
items:
type: string
recipient_channels:
type: array
description: The Slack or Microsoft Teams channels that receive the notification.
items:
type: string
frequency:
type: string
description: 'The frequency the ReportNotification is sent. Possible values: daily, weekly, monthly.'
change:
type: string
description: 'The type of change the ReportNotification is tracking. Possible values: percentage, dollars.'
description: Create a ReportNotification.
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
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'