openapi: 3.0.0
info:
version: 2020-12-01
x-release: v4
title: Amazon DevOps Guru Accounts Cost Estimation API
description: <p> Amazon DevOps Guru is a fully managed service that helps you identify anomalous behavior in business critical operational applications. You specify the Amazon Web Services resources that you want DevOps Guru to cover, then the Amazon CloudWatch metrics and Amazon Web Services CloudTrail events related to those resources are analyzed. When anomalous behavior is detected, DevOps Guru creates an <i>insight</i> that includes recommendations, related events, and related metrics that can help you improve your operational applications. For more information, see <a href="https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html">What is Amazon DevOps Guru</a>. </p> <p> You can specify 1 or 2 Amazon Simple Notification Service topics so you are notified every time a new insight is created. You can also enable DevOps Guru to generate an OpsItem in Amazon Web Services Systems Manager for each insight to help you manage and track your work addressing insights. </p> <p> To learn about the DevOps Guru workflow, see <a href="https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html#how-it-works">How DevOps Guru works</a>. To learn about DevOps Guru concepts, see <a href="https://docs.aws.amazon.com/devops-guru/latest/userguide/concepts.html">Concepts in DevOps Guru</a>. </p>
x-logo:
url: https://api.apis.guru/v2/cache/logo/https_twitter.com_awscloud_profile_image.png
backgroundColor: '#FFFFFF'
termsOfService: https://aws.amazon.com/service-terms/
contact:
name: Mike Ralphson
email: mike.ralphson@gmail.com
url: https://github.com/mermade/aws2openapi
x-twitter: PermittedSoc
license:
name: Apache 2.0 License
url: http://www.apache.org/licenses/
x-providerName: amazonaws.com
x-serviceName: devops-guru
x-aws-signingName: devops-guru
x-origin:
- contentType: application/json
url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/devops-guru-2020-12-01.normal.json
converter:
url: https://github.com/mermade/aws2openapi
version: 1.0.0
x-apisguru-driver: external
x-apiClientRegistration:
url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct
x-apisguru-categories:
- cloud
x-preferred: true
servers:
- url: http://devops-guru.{region}.amazonaws.com
variables:
region:
description: The AWS region
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- us-gov-west-1
- us-gov-east-1
- ca-central-1
- eu-north-1
- eu-west-1
- eu-west-2
- eu-west-3
- eu-central-1
- eu-south-1
- af-south-1
- ap-northeast-1
- ap-northeast-2
- ap-northeast-3
- ap-southeast-1
- ap-southeast-2
- ap-east-1
- ap-south-1
- sa-east-1
- me-south-1
default: us-east-1
description: The Amazon DevOps Guru multi-region endpoint
- url: https://devops-guru.{region}.amazonaws.com
variables:
region:
description: The AWS region
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- us-gov-west-1
- us-gov-east-1
- ca-central-1
- eu-north-1
- eu-west-1
- eu-west-2
- eu-west-3
- eu-central-1
- eu-south-1
- af-south-1
- ap-northeast-1
- ap-northeast-2
- ap-northeast-3
- ap-southeast-1
- ap-southeast-2
- ap-east-1
- ap-south-1
- sa-east-1
- me-south-1
default: us-east-1
description: The Amazon DevOps Guru multi-region endpoint
- url: http://devops-guru.{region}.amazonaws.com.cn
variables:
region:
description: The AWS region
enum:
- cn-north-1
- cn-northwest-1
default: cn-north-1
description: The Amazon DevOps Guru endpoint for China (Beijing) and China (Ningxia)
- url: https://devops-guru.{region}.amazonaws.com.cn
variables:
region:
description: The AWS region
enum:
- cn-north-1
- cn-northwest-1
default: cn-north-1
description: The Amazon DevOps Guru endpoint for China (Beijing) and China (Ningxia)
security:
- hmac: []
tags:
- name: Cost Estimation
paths:
/cost-estimation:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
- $ref: '#/components/parameters/X-Amz-Date'
- $ref: '#/components/parameters/X-Amz-Algorithm'
- $ref: '#/components/parameters/X-Amz-Credential'
- $ref: '#/components/parameters/X-Amz-Security-Token'
- $ref: '#/components/parameters/X-Amz-Signature'
- $ref: '#/components/parameters/X-Amz-SignedHeaders'
get:
operationId: GetCostEstimation
description: Returns an estimate of the monthly cost for DevOps Guru to analyze your Amazon Web Services resources. For more information, see <a href="https://docs.aws.amazon.com/devops-guru/latest/userguide/cost-estimate.html">Estimate your Amazon DevOps Guru costs</a> and <a href="http://aws.amazon.com/devops-guru/pricing/">Amazon DevOps Guru pricing</a>.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GetCostEstimationResponse'
'480':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'481':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'482':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'483':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'484':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
parameters:
- name: NextToken
in: query
required: false
description: The pagination token to use to retrieve the next page of results for this operation. If this value is null, it retrieves the first page.
schema:
type: string
pattern: ^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$
minLength: 36
maxLength: 36
tags:
- Cost Estimation
put:
operationId: StartCostEstimation
description: Starts the creation of an estimate of the monthly cost to analyze your Amazon Web Services resources.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/StartCostEstimationResponse'
'480':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'481':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'482':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'483':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'484':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'485':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
parameters: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- ResourceCollection
properties:
ResourceCollection:
description: 'Information about a filter used to specify which Amazon Web Services resources are analyzed to create a monthly DevOps Guru cost estimate. For more information, see <a href="https://docs.aws.amazon.com/devops-guru/latest/userguide/cost-estimate.html">Estimate your Amazon DevOps Guru costs</a> and <a href="http://aws.amazon.com/devops-guru/pricing/">Amazon DevOps Guru pricing</a>. '
type: object
properties:
CloudFormation:
allOf:
- $ref: '#/components/schemas/CloudFormationCostEstimationResourceCollectionFilter'
- description: An object that specifies the CloudFormation stack that defines the Amazon Web Services resources used to create a monthly estimate for DevOps Guru.
Tags:
allOf:
- $ref: '#/components/schemas/TagCostEstimationResourceCollectionFilters'
- description: <p>The Amazon Web Services tags used to filter the resource collection that is used for a cost estimate.</p> <p>Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support tagging, so you can assign the same tag to resources from different services to indicate that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB table resource that you assign to an Lambda function. For more information about using tags, see the <a href="https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html">Tagging best practices</a> whitepaper. </p> <p>Each Amazon Web Services tag has two parts. </p> <ul> <li> <p>A tag <i>key</i> (for example, <code>CostCenter</code>, <code>Environment</code>, <code>Project</code>, or <code>Secret</code>). Tag <i>keys</i> are case-sensitive.</p> </li> <li> <p>An optional field known as a tag <i>value</i> (for example, <code>111122223333</code>, <code>Production</code>, or a team name). Omitting the tag <i>value</i> is the same as using an empty string. Like tag <i>keys</i>, tag <i>values</i> are case-sensitive.</p> </li> </ul> <p>Together these are known as <i>key</i>-<i>value</i> pairs.</p> <important> <p>The string used for a <i>key</i> in a tag that you use to define your resource coverage must begin with the prefix <code>Devops-guru-</code>. The tag <i>key</i> might be <code>DevOps-Guru-deployment-application</code> or <code>devops-guru-rds-application</code>. When you create a <i>key</i>, the case of characters in the <i>key</i> can be whatever you choose. After you create a <i>key</i>, it is case-sensitive. For example, DevOps Guru works with a <i>key</i> named <code>devops-guru-rds</code> and a <i>key</i> named <code>DevOps-Guru-RDS</code>, and these act as two different <i>keys</i>. Possible <i>key</i>/<i>value</i> pairs in your application might be <code>Devops-Guru-production-application/RDS</code> or <code>Devops-Guru-production-application/containers</code>.</p> </important>
ClientToken:
description: The idempotency token used to identify each cost estimate request.
type: string
pattern: ^[a-zA-Z0-9]+[a-zA-Z0-9-]*$
minLength: 1
maxLength: 100
tags:
- Cost Estimation
components:
schemas:
CostEstimationResourceCollectionFilter:
type: object
properties:
CloudFormation:
allOf:
- $ref: '#/components/schemas/CloudFormationCostEstimationResourceCollectionFilter'
- description: An object that specifies the CloudFormation stack that defines the Amazon Web Services resources used to create a monthly estimate for DevOps Guru.
Tags:
allOf:
- $ref: '#/components/schemas/TagCostEstimationResourceCollectionFilters'
- description: <p>The Amazon Web Services tags used to filter the resource collection that is used for a cost estimate.</p> <p>Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support tagging, so you can assign the same tag to resources from different services to indicate that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB table resource that you assign to an Lambda function. For more information about using tags, see the <a href="https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html">Tagging best practices</a> whitepaper. </p> <p>Each Amazon Web Services tag has two parts. </p> <ul> <li> <p>A tag <i>key</i> (for example, <code>CostCenter</code>, <code>Environment</code>, <code>Project</code>, or <code>Secret</code>). Tag <i>keys</i> are case-sensitive.</p> </li> <li> <p>An optional field known as a tag <i>value</i> (for example, <code>111122223333</code>, <code>Production</code>, or a team name). Omitting the tag <i>value</i> is the same as using an empty string. Like tag <i>keys</i>, tag <i>values</i> are case-sensitive.</p> </li> </ul> <p>Together these are known as <i>key</i>-<i>value</i> pairs.</p> <important> <p>The string used for a <i>key</i> in a tag that you use to define your resource coverage must begin with the prefix <code>Devops-guru-</code>. The tag <i>key</i> might be <code>DevOps-Guru-deployment-application</code> or <code>devops-guru-rds-application</code>. When you create a <i>key</i>, the case of characters in the <i>key</i> can be whatever you choose. After you create a <i>key</i>, it is case-sensitive. For example, DevOps Guru works with a <i>key</i> named <code>devops-guru-rds</code> and a <i>key</i> named <code>DevOps-Guru-RDS</code>, and these act as two different <i>keys</i>. Possible <i>key</i>/<i>value</i> pairs in your application might be <code>Devops-Guru-production-application/RDS</code> or <code>Devops-Guru-production-application/containers</code>.</p> </important>
description: 'Information about a filter used to specify which Amazon Web Services resources are analyzed to create a monthly DevOps Guru cost estimate. For more information, see <a href="https://docs.aws.amazon.com/devops-guru/latest/userguide/cost-estimate.html">Estimate your Amazon DevOps Guru costs</a> and <a href="http://aws.amazon.com/devops-guru/pricing/">Amazon DevOps Guru pricing</a>. '
InternalServerException: {}
CostEstimationTimeRange:
type: object
properties:
StartTime:
allOf:
- $ref: '#/components/schemas/Timestamp'
- description: The start time of the cost estimation.
EndTime:
allOf:
- $ref: '#/components/schemas/Timestamp'
- description: The end time of the cost estimation.
description: The time range of a cost estimation.
CostEstimationStackNames:
type: array
items:
$ref: '#/components/schemas/StackName'
minItems: 1
maxItems: 1
CloudFormationCostEstimationResourceCollectionFilter:
type: object
properties:
StackNames:
allOf:
- $ref: '#/components/schemas/CostEstimationStackNames'
- description: An array of CloudFormation stack names. Its size is fixed at 1 item.
description: Information about an Amazon Web Services CloudFormation stack used to create a monthly cost estimate for DevOps Guru to analyze Amazon Web Services resources. The maximum number of stacks you can specify for a cost estimate is one. The estimate created is for the cost to analyze the Amazon Web Services resources defined by the stack. For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacks.html">Stacks</a> in the <i>Amazon Web Services CloudFormation User Guide</i>.
ServiceResourceCost:
type: object
properties:
Type:
allOf:
- $ref: '#/components/schemas/ResourceType'
- description: The type of the Amazon Web Services resource.
State:
allOf:
- $ref: '#/components/schemas/CostEstimationServiceResourceState'
- description: 'The state of the resource. The resource is <code>ACTIVE</code> if it produces metrics, events, or logs within an hour, otherwise it is <code>INACTIVE</code>. You pay for the number of active Amazon Web Services resource hours analyzed for each resource. Inactive resources are not charged. '
Count:
allOf:
- $ref: '#/components/schemas/CostEstimationServiceResourceCount'
- description: The number of active resources analyzed for this service to create a monthly cost estimate.
UnitCost:
allOf:
- $ref: '#/components/schemas/Cost'
- description: The price per hour to analyze the resources in the service. For more information, see <a href="https://docs.aws.amazon.com/devops-guru/latest/userguide/cost-estimate.html">Estimate your Amazon DevOps Guru costs</a> and <a href="http://aws.amazon.com/devops-guru/pricing/">Amazon DevOps Guru pricing</a>.
Cost:
allOf:
- $ref: '#/components/schemas/Cost'
- description: The total estimated monthly cost to analyze the active resources for this resource.
description: An object that contains information about the estimated monthly cost to analyze an Amazon Web Services resource. For more information, see <a href="https://docs.aws.amazon.com/devops-guru/latest/userguide/cost-estimate.html">Estimate your Amazon DevOps Guru costs</a> and <a href="http://aws.amazon.com/devops-guru/pricing/">Amazon DevOps Guru pricing</a>.
ValidationException: {}
GetCostEstimationResponse:
type: object
properties:
ResourceCollection:
allOf:
- $ref: '#/components/schemas/CostEstimationResourceCollectionFilter'
- description: The collection of the Amazon Web Services resources used to create your monthly DevOps Guru cost estimate.
Status:
allOf:
- $ref: '#/components/schemas/CostEstimationStatus'
- description: The status of creating this cost estimate. If it's still in progress, the status <code>ONGOING</code> is returned. If it is finished, the status <code>COMPLETED</code> is returned.
Costs:
allOf:
- $ref: '#/components/schemas/ServiceResourceCosts'
- description: An array of <code>ResourceCost</code> objects that each contains details about the monthly cost estimate to analyze one of your Amazon Web Services resources.
TimeRange:
allOf:
- $ref: '#/components/schemas/CostEstimationTimeRange'
- description: The start and end time of the cost estimation.
TotalCost:
allOf:
- $ref: '#/components/schemas/Cost'
- description: The estimated monthly cost to analyze the Amazon Web Services resources. This value is the sum of the estimated costs to analyze each resource in the <code>Costs</code> object in this response.
NextToken:
allOf:
- $ref: '#/components/schemas/UuidNextToken'
- description: The pagination token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.
ThrottlingException: {}
CostEstimationServiceResourceCount:
type: integer
StartCostEstimationResponse:
type: object
properties: {}
UuidNextToken:
type: string
pattern: ^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$
minLength: 36
maxLength: 36
CostEstimationServiceResourceState:
type: string
enum:
- ACTIVE
- INACTIVE
CostEstimationTagValues:
type: array
items:
$ref: '#/components/schemas/TagValue'
minItems: 1
maxItems: 1
CostEstimationStatus:
type: string
enum:
- ONGOING
- COMPLETED
ResourceType:
type: string
pattern: ^[a-zA-Z]+[a-zA-Z0-9-_:]*$
minLength: 1
maxLength: 256
AccessDeniedException: {}
AppBoundaryKey:
type: string
pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$
minLength: 1
maxLength: 128
ServiceResourceCosts:
type: array
items:
$ref: '#/components/schemas/ServiceResourceCost'
Cost:
type: number
format: double
ConflictException: {}
TagValue:
type: string
pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*|\*)$
minLength: 0
maxLength: 256
Timestamp:
type: string
format: date-time
ResourceNotFoundException: {}
TagCostEstimationResourceCollectionFilter:
type: object
required:
- AppBoundaryKey
- TagValues
properties:
AppBoundaryKey:
allOf:
- $ref: '#/components/schemas/AppBoundaryKey'
- description: <p>An Amazon Web Services tag <i>key</i> that is used to identify the Amazon Web Services resources that DevOps Guru analyzes. All Amazon Web Services resources in your account and Region tagged with this <i>key</i> make up your DevOps Guru application and analysis boundary.</p> <important> <p>The string used for a <i>key</i> in a tag that you use to define your resource coverage must begin with the prefix <code>Devops-guru-</code>. The tag <i>key</i> might be <code>DevOps-Guru-deployment-application</code> or <code>devops-guru-rds-application</code>. When you create a <i>key</i>, the case of characters in the <i>key</i> can be whatever you choose. After you create a <i>key</i>, it is case-sensitive. For example, DevOps Guru works with a <i>key</i> named <code>devops-guru-rds</code> and a <i>key</i> named <code>DevOps-Guru-RDS</code>, and these act as two different <i>keys</i>. Possible <i>key</i>/<i>value</i> pairs in your application might be <code>Devops-Guru-production-application/RDS</code> or <code>Devops-Guru-production-application/containers</code>.</p> </important>
TagValues:
allOf:
- $ref: '#/components/schemas/CostEstimationTagValues'
- description: <p>The values in an Amazon Web Services tag collection.</p> <p>The tag's <i>value</i> is an optional field used to associate a string with the tag <i>key</i> (for example, <code>111122223333</code>, <code>Production</code>, or a team name). The <i>key</i> and <i>value</i> are the tag's <i>key</i> pair. Omitting the tag <i>value</i> is the same as using an empty string. Like tag <i>keys</i>, tag <i>values</i> are case-sensitive. You can specify a maximum of 256 characters for a tag value.</p>
description: Information about a collection of Amazon Web Services resources that are identified by an Amazon Web Services tag. This collection of resources is used to create a monthly cost estimate for DevOps Guru to analyze Amazon Web Services resources. The maximum number of tags you can specify for a cost estimate is one. The estimate created is for the cost to analyze the Amazon Web Services resources defined by the tag. For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacks.html">Stacks</a> in the <i>Amazon Web Services CloudFormation User Guide</i>.
StackName:
type: string
pattern: ^[a-zA-Z*]+[a-zA-Z0-9-]*$
minLength: 1
maxLength: 128
TagCostEstimationResourceCollectionFilters:
type: array
items:
$ref: '#/components/schemas/TagCostEstimationResourceCollectionFilter'
parameters:
X-Amz-SignedHeaders:
name: X-Amz-SignedHeaders
in: header
schema:
type: string
required: false
X-Amz-Signature:
name: X-Amz-Signature
in: header
schema:
type: string
required: false
X-Amz-Security-Token:
name: X-Amz-Security-Token
in: header
schema:
type: string
required: false
X-Amz-Content-Sha256:
name: X-Amz-Content-Sha256
in: header
schema:
type: string
required: false
X-Amz-Date:
name: X-Amz-Date
in: header
schema:
type: string
required: false
X-Amz-Credential:
name: X-Amz-Credential
in: header
schema:
type: string
required: false
X-Amz-Algorithm:
name: X-Amz-Algorithm
in: header
schema:
type: string
required: false
securitySchemes:
hmac:
type: apiKey
name: Authorization
in: header
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
externalDocs:
description: Amazon Web Services documentation
url: https://docs.aws.amazon.com/devops-guru/