AWS Savings Plans
Savings Plans are a pricing model that offer significant savings on AWS usage (for example, on Amazon EC2 instances)
COMMUNITYAPI KEY0 INSTALLS
OpenAPI Specificationv3.0
{
"openapi": "3.0.0",
"info": {
"version": "2019-06-28",
"x-release": "v4",
"title": "AWS Savings Plans",
"description": "Savings Plans are a pricing model that offer significant savings on AWS usage (for example, on Amazon EC2 instances). You commit to a consistent amount of usage, in USD per hour, for a term of 1 or 3 years, and receive a lower price for that usage. For more information, see the <a href=\"https://docs.aws.amazon.com/savingsplans/latest/userguide/\">AWS Savings Plans User Guide</a>.",
"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": "savingsplans",
"x-origin": [
{
"contentType": "application/json",
"url": "https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/savingsplans-2019-06-28.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
},
"externalDocs": {
"description": "Amazon Web Services documentation",
"url": "https://docs.aws.amazon.com/savingsplans/"
},
"servers": [
{
"url": "http://savingsplans.{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 AWSSavingsPlans multi-region endpoint"
},
{
"url": "https://savingsplans.{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 AWSSavingsPlans multi-region endpoint"
},
{
"url": "http://savingsplans.{region}.amazonaws.com.cn",
"variables": {
"region": {
"description": "The AWS region",
"enum": [
"cn-north-1",
"cn-northwest-1"
],
"default": "cn-north-1"
}
},
"description": "The AWSSavingsPlans endpoint for China (Beijing) and China (Ningxia)"
},
{
"url": "https://savingsplans.{region}.amazonaws.com.cn",
"variables": {
"region": {
"description": "The AWS region",
"enum": [
"cn-north-1",
"cn-northwest-1"
],
"default": "cn-north-1"
}
},
"description": "The AWSSavingsPlans endpoint for China (Beijing) and China (Ningxia)"
}
],
"paths": {
"/CreateSavingsPlan": {
"post": {
"operationId": "CreateSavingsPlan",
"description": "Creates a Savings Plan.",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateSavingsPlanResponse"
}
}
}
},
"480": {
"description": "ResourceNotFoundException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResourceNotFoundException"
}
}
}
},
"481": {
"description": "ValidationException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationException"
}
}
}
},
"482": {
"description": "InternalServerException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InternalServerException"
}
}
}
},
"483": {
"description": "ServiceQuotaExceededException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceQuotaExceededException"
}
}
}
}
},
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"savingsPlanOfferingId",
"commitment"
],
"properties": {
"savingsPlanOfferingId": {
"description": "The ID of the offering.",
"type": "string"
},
"commitment": {
"description": "The hourly commitment, in USD. This is a value between 0.001 and 1 million. You cannot specify more than five digits after the decimal point.",
"type": "string"
},
"upfrontPaymentAmount": {
"description": "The up-front payment amount. This is a whole number between 50 and 99 percent of the total value of the Savings Plan. This parameter is supported only if the payment option is <code>Partial Upfront</code>.",
"type": "string"
},
"purchaseTime": {
"description": "The time at which to purchase the Savings Plan, in UTC format (YYYY-MM-DDTHH:MM:SSZ).",
"type": "string",
"format": "date-time"
},
"clientToken": {
"description": "Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.",
"type": "string"
},
"tags": {
"description": "One or more tags.",
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/TagValue"
}
}
}
}
}
}
}
},
"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"
}
]
},
"/DeleteQueuedSavingsPlan": {
"post": {
"operationId": "DeleteQueuedSavingsPlan",
"description": "Deletes the queued purchase for the specified Savings Plan.",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeleteQueuedSavingsPlanResponse"
}
}
}
},
"480": {
"description": "ValidationException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationException"
}
}
}
},
"481": {
"description": "ResourceNotFoundException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResourceNotFoundException"
}
}
}
},
"482": {
"description": "InternalServerException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InternalServerException"
}
}
}
},
"483": {
"description": "ServiceQuotaExceededException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceQuotaExceededException"
}
}
}
}
},
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"savingsPlanId"
],
"properties": {
"savingsPlanId": {
"description": "The ID of the Savings Plan.",
"type": "string"
}
}
}
}
}
}
},
"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"
}
]
},
"/DescribeSavingsPlanRates": {
"post": {
"operationId": "DescribeSavingsPlanRates",
"description": "Describes the specified Savings Plans rates.",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DescribeSavingsPlanRatesResponse"
}
}
}
},
"480": {
"description": "ResourceNotFoundException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResourceNotFoundException"
}
}
}
},
"481": {
"description": "ValidationException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationException"
}
}
}
}
},
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"savingsPlanId"
],
"properties": {
"savingsPlanId": {
"description": "The ID of the Savings Plan.",
"type": "string"
},
"filters": {
"description": "The filters.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRateFilter"
}
},
"nextToken": {
"description": "The token for the next page of results.",
"type": "string",
"pattern": "^[A-Za-z0-9/=\\+]+$",
"maxLength": 1024
},
"maxResults": {
"description": "The maximum number of results to return with a single call. To retrieve additional results, make another call with the returned token value.",
"type": "integer",
"minimum": 1,
"maximum": 1000
}
}
}
}
}
}
},
"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"
}
]
},
"/DescribeSavingsPlans": {
"post": {
"operationId": "DescribeSavingsPlans",
"description": "Describes the specified Savings Plans.",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DescribeSavingsPlansResponse"
}
}
}
},
"480": {
"description": "InternalServerException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InternalServerException"
}
}
}
},
"481": {
"description": "ValidationException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationException"
}
}
}
}
},
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"savingsPlanArns": {
"description": "The Amazon Resource Names (ARN) of the Savings Plans.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanArn"
},
"maxItems": 100
},
"savingsPlanIds": {
"description": "The IDs of the Savings Plans.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanId"
}
},
"nextToken": {
"description": "The token for the next page of results.",
"type": "string",
"pattern": "^[A-Za-z0-9/=\\+]+$",
"maxLength": 1024
},
"maxResults": {
"description": "The maximum number of results to return with a single call. To retrieve additional results, make another call with the returned token value.",
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"states": {
"description": "The states.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanState"
}
},
"filters": {
"description": "The filters.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanFilter"
}
}
}
}
}
}
}
},
"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"
}
]
},
"/DescribeSavingsPlansOfferingRates": {
"post": {
"operationId": "DescribeSavingsPlansOfferingRates",
"description": "Describes the specified Savings Plans offering rates.",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DescribeSavingsPlansOfferingRatesResponse"
}
}
}
},
"480": {
"description": "ValidationException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationException"
}
}
}
},
"481": {
"description": "InternalServerException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InternalServerException"
}
}
}
}
},
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"savingsPlanOfferingIds": {
"description": "The IDs of the offerings.",
"type": "array",
"items": {
"$ref": "#/components/schemas/UUID"
}
},
"savingsPlanPaymentOptions": {
"description": "The payment options.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanPaymentOption"
}
},
"savingsPlanTypes": {
"description": "The plan types.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanType"
}
},
"products": {
"description": "The AWS products.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanProductType"
}
},
"serviceCodes": {
"description": "The services.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRateServiceCode"
}
},
"usageTypes": {
"description": "The usage details of the line item in the billing report.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRateUsageType"
}
},
"operations": {
"description": "The specific AWS operation for the line item in the billing report.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRateOperation"
}
},
"filters": {
"description": "The filters.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOfferingRateFilterElement"
}
},
"nextToken": {
"description": "The token for the next page of results.",
"type": "string",
"pattern": "^[A-Za-z0-9/=\\+]+$",
"maxLength": 1024
},
"maxResults": {
"description": "The maximum number of results to return with a single call. To retrieve additional results, make another call with the returned token value.",
"type": "integer",
"minimum": 0,
"maximum": 1000
}
}
}
}
}
}
},
"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"
}
]
},
"/DescribeSavingsPlansOfferings": {
"post": {
"operationId": "DescribeSavingsPlansOfferings",
"description": "Describes the specified Savings Plans offerings.",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DescribeSavingsPlansOfferingsResponse"
}
}
}
},
"480": {
"description": "ValidationException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationException"
}
}
}
},
"481": {
"description": "InternalServerException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InternalServerException"
}
}
}
}
},
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"offeringIds": {
"description": "The IDs of the offerings.",
"type": "array",
"items": {
"$ref": "#/components/schemas/UUID"
}
},
"paymentOptions": {
"description": "The payment options.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanPaymentOption"
}
},
"productType": {
"description": "The product type.",
"type": "string",
"enum": [
"EC2",
"Fargate",
"Lambda",
"SageMaker"
]
},
"planTypes": {
"description": "The plan type.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanType"
}
},
"durations": {
"description": "The durations, in seconds.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlansDuration"
}
},
"currencies": {
"description": "The currencies.",
"type": "array",
"items": {
"$ref": "#/components/schemas/CurrencyCode"
}
},
"descriptions": {
"description": "The descriptions.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanDescription"
}
},
"serviceCodes": {
"description": "The services.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanServiceCode"
}
},
"usageTypes": {
"description": "The usage details of the line item in the billing report.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanUsageType"
}
},
"operations": {
"description": "The specific AWS operation for the line item in the billing report.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOperation"
}
},
"filters": {
"description": "The filters.",
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOfferingFilterElement"
}
},
"nextToken": {
"description": "The token for the next page of results.",
"type": "string",
"pattern": "^[A-Za-z0-9/=\\+]+$",
"maxLength": 1024
},
"maxResults": {
"description": "The maximum number of results to return with a single call. To retrieve additional results, make another call with the returned token value.",
"type": "integer",
"minimum": 0,
"maximum": 1000
}
}
}
}
}
}
},
"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"
}
]
},
"/ListTagsForResource": {
"post": {
"operationId": "ListTagsForResource",
"description": "Lists the tags for the specified resource.",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ListTagsForResourceResponse"
}
}
}
},
"480": {
"description": "ResourceNotFoundException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResourceNotFoundException"
}
}
}
},
"481": {
"description": "ValidationException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationException"
}
}
}
},
"482": {
"description": "InternalServerException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InternalServerException"
}
}
}
}
},
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"resourceArn"
],
"properties": {
"resourceArn": {
"description": "The Amazon Resource Name (ARN) of the resource.",
"type": "string",
"pattern": "arn:aws:[a-z]+:([a-z]{2}-[a-z]+-\\d{1}|):(\\d{12}):savingsplan\\/([0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12})$"
}
}
}
}
}
}
},
"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"
}
]
},
"/TagResource": {
"post": {
"operationId": "TagResource",
"description": "Adds the specified tags to the specified resource.",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TagResourceResponse"
}
}
}
},
"480": {
"description": "ResourceNotFoundException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResourceNotFoundException"
}
}
}
},
"481": {
"description": "ServiceQuotaExceededException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceQuotaExceededException"
}
}
}
},
"482": {
"description": "ValidationException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationException"
}
}
}
},
"483": {
"description": "InternalServerException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InternalServerException"
}
}
}
}
},
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"resourceArn",
"tags"
],
"properties": {
"resourceArn": {
"description": "The Amazon Resource Name (ARN) of the resource.",
"type": "string",
"pattern": "arn:aws:[a-z]+:([a-z]{2}-[a-z]+-\\d{1}|):(\\d{12}):savingsplan\\/([0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12})$"
},
"tags": {
"description": "One or more tags. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.",
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/TagValue"
}
}
}
}
}
}
}
},
"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"
}
]
},
"/UntagResource": {
"post": {
"operationId": "UntagResource",
"description": "Removes the specified tags from the specified resource.",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UntagResourceResponse"
}
}
}
},
"480": {
"description": "ResourceNotFoundException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResourceNotFoundException"
}
}
}
},
"481": {
"description": "ValidationException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidationException"
}
}
}
},
"482": {
"description": "InternalServerException",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InternalServerException"
}
}
}
}
},
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"resourceArn",
"tagKeys"
],
"properties": {
"resourceArn": {
"description": "The Amazon Resource Name (ARN) of the resource.",
"type": "string",
"pattern": "arn:aws:[a-z]+:([a-z]{2}-[a-z]+-\\d{1}|):(\\d{12}):savingsplan\\/([0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12})$"
},
"tagKeys": {
"description": "The tag keys.",
"type": "array",
"items": {
"$ref": "#/components/schemas/TagKey"
}
}
}
}
}
}
}
},
"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"
}
]
}
},
"components": {
"parameters": {
"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-Algorithm": {
"name": "X-Amz-Algorithm",
"in": "header",
"schema": {
"type": "string"
},
"required": false
},
"X-Amz-Credential": {
"name": "X-Amz-Credential",
"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-Signature": {
"name": "X-Amz-Signature",
"in": "header",
"schema": {
"type": "string"
},
"required": false
},
"X-Amz-SignedHeaders": {
"name": "X-Amz-SignedHeaders",
"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"
}
},
"schemas": {
"CreateSavingsPlanResponse": {
"type": "object",
"properties": {
"savingsPlanId": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanId"
},
{
"description": "The ID of the Savings Plan."
}
]
}
}
},
"TagValue": {
"type": "string"
},
"ResourceNotFoundException": {},
"ValidationException": {},
"InternalServerException": {},
"ServiceQuotaExceededException": {},
"DeleteQueuedSavingsPlanResponse": {
"type": "object",
"properties": {}
},
"DescribeSavingsPlanRatesResponse": {
"type": "object",
"properties": {
"savingsPlanId": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanId"
},
{
"description": "The ID of the Savings Plan."
}
]
},
"searchResults": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateList"
},
{
"description": "Information about the Savings Plans rates."
}
]
},
"nextToken": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationToken"
},
{
"description": "The token to use to retrieve the next page of results. This value is null when there are no more results to return."
}
]
}
}
},
"SavingsPlanRateFilter": {
"type": "object",
"properties": {
"name": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateFilterName"
},
{
"description": "The filter name."
}
]
},
"values": {
"allOf": [
{
"$ref": "#/components/schemas/ListOfStrings"
},
{
"description": "The filter values."
}
]
}
},
"description": "Information about a filter."
},
"DescribeSavingsPlansResponse": {
"type": "object",
"properties": {
"savingsPlans": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanList"
},
{
"description": "Information about the Savings Plans."
}
]
},
"nextToken": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationToken"
},
{
"description": "The token to use to retrieve the next page of results. This value is null when there are no more results to return."
}
]
}
}
},
"SavingsPlanArn": {
"type": "string",
"pattern": "arn:aws:[a-z]+:([a-z]{2}-[a-z]+-\\d{1}|):(\\d{12}):savingsplan\\/([0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12})$"
},
"SavingsPlanId": {
"type": "string"
},
"SavingsPlanState": {
"type": "string",
"enum": [
"payment-pending",
"payment-failed",
"active",
"retired",
"queued",
"queued-deleted"
]
},
"SavingsPlanFilter": {
"type": "object",
"properties": {
"name": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlansFilterName"
},
{
"description": "The filter name."
}
]
},
"values": {
"allOf": [
{
"$ref": "#/components/schemas/ListOfStrings"
},
{
"description": "The filter value."
}
]
}
},
"description": "Information about a filter."
},
"DescribeSavingsPlansOfferingRatesResponse": {
"type": "object",
"properties": {
"searchResults": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOfferingRatesList"
},
{
"description": "Information about the Savings Plans offering rates."
}
]
},
"nextToken": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationToken"
},
{
"description": "The token to use to retrieve the next page of results. This value is null when there are no more results to return."
}
]
}
}
},
"UUID": {
"type": "string",
"pattern": "[a-f0-9]+(-[a-f0-9]+)*"
},
"SavingsPlanPaymentOption": {
"type": "string",
"enum": [
"All Upfront",
"Partial Upfront",
"No Upfront"
]
},
"SavingsPlanType": {
"type": "string",
"enum": [
"Compute",
"EC2Instance",
"SageMaker"
]
},
"SavingsPlanProductType": {
"type": "string",
"enum": [
"EC2",
"Fargate",
"Lambda",
"SageMaker"
]
},
"SavingsPlanRateServiceCode": {
"type": "string",
"enum": [
"AmazonEC2",
"AmazonECS",
"AmazonEKS",
"AWSLambda",
"AmazonSageMaker"
]
},
"SavingsPlanRateUsageType": {
"type": "string",
"pattern": "^[a-zA-Z0-9_ \\/.:-]+$",
"maxLength": 255
},
"SavingsPlanRateOperation": {
"type": "string",
"pattern": "^[a-zA-Z0-9_ \\/.:-]*$",
"maxLength": 255
},
"SavingsPlanOfferingRateFilterElement": {
"type": "object",
"properties": {
"name": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateFilterAttribute"
},
{
"description": "The filter name."
}
]
},
"values": {
"allOf": [
{
"$ref": "#/components/schemas/FilterValuesList"
},
{
"description": "The filter values."
}
]
}
},
"description": "Information about a filter."
},
"DescribeSavingsPlansOfferingsResponse": {
"type": "object",
"properties": {
"searchResults": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOfferingsList"
},
{
"description": "Information about the Savings Plans offerings."
}
]
},
"nextToken": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationToken"
},
{
"description": "The token to use to retrieve the next page of results. This value is null when there are no more results to return."
}
]
}
}
},
"SavingsPlansDuration": {
"type": "integer",
"minimum": 0
},
"CurrencyCode": {
"type": "string",
"enum": [
"CNY",
"USD"
]
},
"SavingsPlanDescription": {
"type": "string",
"pattern": "^[a-zA-Z0-9_\\- ]+$"
},
"SavingsPlanServiceCode": {
"type": "string",
"pattern": "^[a-zA-Z]+$",
"maxLength": 255
},
"SavingsPlanUsageType": {
"type": "string",
"pattern": "^[a-zA-Z0-9_ \\/.:-]+$",
"maxLength": 255
},
"SavingsPlanOperation": {
"type": "string",
"pattern": "^[a-zA-Z0-9_ \\/.:-]*$",
"maxLength": 255
},
"SavingsPlanOfferingFilterElement": {
"type": "object",
"properties": {
"name": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOfferingFilterAttribute"
},
{
"description": "The filter name."
}
]
},
"values": {
"allOf": [
{
"$ref": "#/components/schemas/FilterValuesList"
},
{
"description": "The filter values."
}
]
}
},
"description": "Information about a filter."
},
"ListTagsForResourceResponse": {
"type": "object",
"properties": {
"tags": {
"allOf": [
{
"$ref": "#/components/schemas/TagMap"
},
{
"description": "Information about the tags."
}
]
}
}
},
"TagResourceResponse": {
"type": "object",
"properties": {}
},
"UntagResourceResponse": {
"type": "object",
"properties": {}
},
"TagKey": {
"type": "string"
},
"Amount": {
"type": "string"
},
"ClientToken": {
"type": "string"
},
"SavingsPlanOfferingId": {
"type": "string"
},
"DateTime": {
"type": "string",
"format": "date-time"
},
"TagMap": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/TagValue"
}
},
"CreateSavingsPlanRequest": {
"type": "object",
"required": [
"savingsPlanOfferingId",
"commitment"
],
"title": "CreateSavingsPlanRequest",
"properties": {
"savingsPlanOfferingId": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOfferingId"
},
{
"description": "The ID of the offering."
}
]
},
"commitment": {
"allOf": [
{
"$ref": "#/components/schemas/Amount"
},
{
"description": "The hourly commitment, in USD. This is a value between 0.001 and 1 million. You cannot specify more than five digits after the decimal point."
}
]
},
"upfrontPaymentAmount": {
"allOf": [
{
"$ref": "#/components/schemas/Amount"
},
{
"description": "The up-front payment amount. This is a whole number between 50 and 99 percent of the total value of the Savings Plan. This parameter is supported only if the payment option is <code>Partial Upfront</code>."
}
]
},
"purchaseTime": {
"allOf": [
{
"$ref": "#/components/schemas/DateTime"
},
{
"description": "The time at which to purchase the Savings Plan, in UTC format (YYYY-MM-DDTHH:MM:SSZ)."
}
]
},
"clientToken": {
"allOf": [
{
"$ref": "#/components/schemas/ClientToken"
},
{
"description": "Unique, case-sensitive identifier that you provide to ensure the idempotency of the request."
}
]
},
"tags": {
"allOf": [
{
"$ref": "#/components/schemas/TagMap"
},
{
"description": "One or more tags."
}
]
}
}
},
"CurrencyList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CurrencyCode"
}
},
"DeleteQueuedSavingsPlanRequest": {
"type": "object",
"required": [
"savingsPlanId"
],
"title": "DeleteQueuedSavingsPlanRequest",
"properties": {
"savingsPlanId": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanId"
},
{
"description": "The ID of the Savings Plan."
}
]
}
}
},
"SavingsPlanRateFilterList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRateFilter"
}
},
"PaginationToken": {
"type": "string",
"pattern": "^[A-Za-z0-9/=\\+]+$",
"maxLength": 1024
},
"MaxResults": {
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"DescribeSavingsPlanRatesRequest": {
"type": "object",
"required": [
"savingsPlanId"
],
"title": "DescribeSavingsPlanRatesRequest",
"properties": {
"savingsPlanId": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanId"
},
{
"description": "The ID of the Savings Plan."
}
]
},
"filters": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateFilterList"
},
{
"description": "The filters."
}
]
},
"nextToken": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationToken"
},
{
"description": "The token for the next page of results."
}
]
},
"maxResults": {
"allOf": [
{
"$ref": "#/components/schemas/MaxResults"
},
{
"description": "The maximum number of results to return with a single call. To retrieve additional results, make another call with the returned token value."
}
]
}
}
},
"SavingsPlanRateList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRate"
}
},
"UUIDs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UUID"
}
},
"SavingsPlanPaymentOptionList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanPaymentOption"
}
},
"SavingsPlanTypeList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanType"
}
},
"SavingsPlanProductTypeList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanProductType"
}
},
"SavingsPlanRateServiceCodeList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRateServiceCode"
}
},
"SavingsPlanRateUsageTypeList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRateUsageType"
}
},
"SavingsPlanRateOperationList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRateOperation"
}
},
"SavingsPlanOfferingRateFiltersList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOfferingRateFilterElement"
}
},
"PageSize": {
"type": "integer",
"minimum": 0,
"maximum": 1000
},
"DescribeSavingsPlansOfferingRatesRequest": {
"type": "object",
"title": "DescribeSavingsPlansOfferingRatesRequest",
"properties": {
"savingsPlanOfferingIds": {
"allOf": [
{
"$ref": "#/components/schemas/UUIDs"
},
{
"description": "The IDs of the offerings."
}
]
},
"savingsPlanPaymentOptions": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanPaymentOptionList"
},
{
"description": "The payment options."
}
]
},
"savingsPlanTypes": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanTypeList"
},
{
"description": "The plan types."
}
]
},
"products": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanProductTypeList"
},
{
"description": "The AWS products."
}
]
},
"serviceCodes": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateServiceCodeList"
},
{
"description": "The services."
}
]
},
"usageTypes": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateUsageTypeList"
},
{
"description": "The usage details of the line item in the billing report."
}
]
},
"operations": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateOperationList"
},
{
"description": "The specific AWS operation for the line item in the billing report."
}
]
},
"filters": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOfferingRateFiltersList"
},
{
"description": "The filters."
}
]
},
"nextToken": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationToken"
},
{
"description": "The token for the next page of results."
}
]
},
"maxResults": {
"allOf": [
{
"$ref": "#/components/schemas/PageSize"
},
{
"description": "The maximum number of results to return with a single call. To retrieve additional results, make another call with the returned token value."
}
]
}
}
},
"SavingsPlanOfferingRatesList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOfferingRate"
}
},
"DurationsList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlansDuration"
}
},
"SavingsPlanDescriptionsList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanDescription"
}
},
"SavingsPlanServiceCodeList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanServiceCode"
}
},
"SavingsPlanUsageTypeList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanUsageType"
}
},
"SavingsPlanOperationList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOperation"
}
},
"SavingsPlanOfferingFiltersList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOfferingFilterElement"
}
},
"DescribeSavingsPlansOfferingsRequest": {
"type": "object",
"title": "DescribeSavingsPlansOfferingsRequest",
"properties": {
"offeringIds": {
"allOf": [
{
"$ref": "#/components/schemas/UUIDs"
},
{
"description": "The IDs of the offerings."
}
]
},
"paymentOptions": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanPaymentOptionList"
},
{
"description": "The payment options."
}
]
},
"productType": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanProductType"
},
{
"description": "The product type."
}
]
},
"planTypes": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanTypeList"
},
{
"description": "The plan type."
}
]
},
"durations": {
"allOf": [
{
"$ref": "#/components/schemas/DurationsList"
},
{
"description": "The durations, in seconds."
}
]
},
"currencies": {
"allOf": [
{
"$ref": "#/components/schemas/CurrencyList"
},
{
"description": "The currencies."
}
]
},
"descriptions": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanDescriptionsList"
},
{
"description": "The descriptions."
}
]
},
"serviceCodes": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanServiceCodeList"
},
{
"description": "The services."
}
]
},
"usageTypes": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanUsageTypeList"
},
{
"description": "The usage details of the line item in the billing report."
}
]
},
"operations": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOperationList"
},
{
"description": "The specific AWS operation for the line item in the billing report."
}
]
},
"filters": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOfferingFiltersList"
},
{
"description": "The filters."
}
]
},
"nextToken": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationToken"
},
{
"description": "The token for the next page of results."
}
]
},
"maxResults": {
"allOf": [
{
"$ref": "#/components/schemas/PageSize"
},
{
"description": "The maximum number of results to return with a single call. To retrieve additional results, make another call with the returned token value."
}
]
}
}
},
"SavingsPlanOfferingsList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOffering"
}
},
"SavingsPlanArnList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanArn"
},
"maxItems": 100
},
"SavingsPlanIdList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanId"
}
},
"SavingsPlanStateList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanState"
}
},
"SavingsPlanFilterList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanFilter"
}
},
"DescribeSavingsPlansRequest": {
"type": "object",
"title": "DescribeSavingsPlansRequest",
"properties": {
"savingsPlanArns": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanArnList"
},
{
"description": "The Amazon Resource Names (ARN) of the Savings Plans."
}
]
},
"savingsPlanIds": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanIdList"
},
{
"description": "The IDs of the Savings Plans."
}
]
},
"nextToken": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationToken"
},
{
"description": "The token for the next page of results."
}
]
},
"maxResults": {
"allOf": [
{
"$ref": "#/components/schemas/MaxResults"
},
{
"description": "The maximum number of results to return with a single call. To retrieve additional results, make another call with the returned token value."
}
]
},
"states": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanStateList"
},
{
"description": "The states."
}
]
},
"filters": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanFilterList"
},
{
"description": "The filters."
}
]
}
}
},
"SavingsPlanList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlan"
}
},
"EC2InstanceFamily": {
"type": "string"
},
"JsonSafeFilterValueString": {
"type": "string",
"pattern": "^[a-zA-Z0-9_ \\/.\\:\\-\\(\\)]+$"
},
"FilterValuesList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/JsonSafeFilterValueString"
}
},
"String": {
"type": "string"
},
"ListOfStrings": {
"type": "array",
"items": {
"$ref": "#/components/schemas/String"
}
},
"ListTagsForResourceRequest": {
"type": "object",
"required": [
"resourceArn"
],
"title": "ListTagsForResourceRequest",
"properties": {
"resourceArn": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanArn"
},
{
"description": "The Amazon Resource Name (ARN) of the resource."
}
]
}
}
},
"ParentSavingsPlanOffering": {
"type": "object",
"properties": {
"offeringId": {
"allOf": [
{
"$ref": "#/components/schemas/UUID"
},
{
"description": "The ID of the offering."
}
]
},
"paymentOption": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanPaymentOption"
},
{
"description": "The payment option."
}
]
},
"planType": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanType"
},
{
"description": "The plan type."
}
]
},
"durationSeconds": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlansDuration"
},
{
"description": "The duration, in seconds."
}
]
},
"currency": {
"allOf": [
{
"$ref": "#/components/schemas/CurrencyCode"
},
{
"description": "The currency."
}
]
},
"planDescription": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanDescription"
},
{
"description": "The description."
}
]
}
},
"description": "Information about a Savings Plan offering."
},
"Region": {
"type": "string"
},
"TermDurationInSeconds": {
"type": "integer"
},
"SavingsPlan": {
"type": "object",
"properties": {
"offeringId": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOfferingId"
},
{
"description": "The ID of the offering."
}
]
},
"savingsPlanId": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanId"
},
{
"description": "The ID of the Savings Plan."
}
]
},
"savingsPlanArn": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanArn"
},
{
"description": "The Amazon Resource Name (ARN) of the Savings Plan."
}
]
},
"description": {
"allOf": [
{
"$ref": "#/components/schemas/String"
},
{
"description": "The description."
}
]
},
"start": {
"allOf": [
{
"$ref": "#/components/schemas/String"
},
{
"description": "The start time."
}
]
},
"end": {
"allOf": [
{
"$ref": "#/components/schemas/String"
},
{
"description": "The end time."
}
]
},
"state": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanState"
},
{
"description": "The state."
}
]
},
"region": {
"allOf": [
{
"$ref": "#/components/schemas/Region"
},
{
"description": "The AWS Region."
}
]
},
"ec2InstanceFamily": {
"allOf": [
{
"$ref": "#/components/schemas/EC2InstanceFamily"
},
{
"description": "The EC2 instance family."
}
]
},
"savingsPlanType": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanType"
},
{
"description": "The plan type."
}
]
},
"paymentOption": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanPaymentOption"
},
{
"description": "The payment option."
}
]
},
"productTypes": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanProductTypeList"
},
{
"description": "The product types."
}
]
},
"currency": {
"allOf": [
{
"$ref": "#/components/schemas/CurrencyCode"
},
{
"description": "The currency."
}
]
},
"commitment": {
"allOf": [
{
"$ref": "#/components/schemas/Amount"
},
{
"description": "The hourly commitment, in USD."
}
]
},
"upfrontPaymentAmount": {
"allOf": [
{
"$ref": "#/components/schemas/Amount"
},
{
"description": "The up-front payment amount."
}
]
},
"recurringPaymentAmount": {
"allOf": [
{
"$ref": "#/components/schemas/Amount"
},
{
"description": "The recurring payment amount."
}
]
},
"termDurationInSeconds": {
"allOf": [
{
"$ref": "#/components/schemas/TermDurationInSeconds"
},
{
"description": "The duration of the term, in seconds."
}
]
},
"tags": {
"allOf": [
{
"$ref": "#/components/schemas/TagMap"
},
{
"description": "One or more tags."
}
]
}
},
"description": "Information about a Savings Plan."
},
"SavingsPlansFilterName": {
"type": "string",
"enum": [
"region",
"ec2-instance-family",
"commitment",
"upfront",
"term",
"savings-plan-type",
"payment-option",
"start",
"end"
]
},
"SavingsPlanOffering": {
"type": "object",
"properties": {
"offeringId": {
"allOf": [
{
"$ref": "#/components/schemas/UUID"
},
{
"description": "The ID of the offering."
}
]
},
"productTypes": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanProductTypeList"
},
{
"description": "The product type."
}
]
},
"planType": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanType"
},
{
"description": "The plan type."
}
]
},
"description": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanDescription"
},
{
"description": "The description."
}
]
},
"paymentOption": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanPaymentOption"
},
{
"description": "The payment option."
}
]
},
"durationSeconds": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlansDuration"
},
{
"description": "The duration, in seconds."
}
]
},
"currency": {
"allOf": [
{
"$ref": "#/components/schemas/CurrencyCode"
},
{
"description": "The currency."
}
]
},
"serviceCode": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanServiceCode"
},
{
"description": "The service."
}
]
},
"usageType": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanUsageType"
},
{
"description": "The usage details of the line item in the billing report."
}
]
},
"operation": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOperation"
},
{
"description": "The specific AWS operation for the line item in the billing report."
}
]
},
"properties": {
"description": "The properties."
}
},
"description": "Information about a Savings Plan offering."
},
"SavingsPlanOfferingFilterAttribute": {
"type": "string",
"enum": [
"region",
"instanceFamily"
]
},
"SavingsPlanOfferingPropertyKey": {
"type": "string",
"enum": [
"region",
"instanceFamily"
]
},
"SavingsPlanOfferingProperty": {
"type": "object",
"properties": {
"name": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanOfferingPropertyKey"
},
{
"description": "The property name."
}
]
},
"value": {
"allOf": [
{
"$ref": "#/components/schemas/JsonSafeFilterValueString"
},
{
"description": "The property value."
}
]
}
},
"description": "Information about a property."
},
"SavingsPlanOfferingPropertyList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOfferingProperty"
}
},
"SavingsPlanRatePricePerUnit": {
"type": "string"
},
"SavingsPlanRateUnit": {
"type": "string",
"enum": [
"Hrs",
"Lambda-GB-Second",
"Request"
]
},
"SavingsPlanOfferingRate": {
"type": "object",
"properties": {
"savingsPlanOffering": {
"allOf": [
{
"$ref": "#/components/schemas/ParentSavingsPlanOffering"
},
{
"description": "The Savings Plan offering."
}
]
},
"rate": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRatePricePerUnit"
},
{
"description": "The Savings Plan rate."
}
]
},
"unit": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateUnit"
},
{
"description": "The unit."
}
]
},
"productType": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanProductType"
},
{
"description": "The product type."
}
]
},
"serviceCode": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateServiceCode"
},
{
"description": "The service."
}
]
},
"usageType": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateUsageType"
},
{
"description": "The usage details of the line item in the billing report."
}
]
},
"operation": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateOperation"
},
{
"description": "The specific AWS operation for the line item in the billing report."
}
]
},
"properties": {
"description": "The properties."
}
},
"description": "Information about a Savings Plan offering rate."
},
"SavingsPlanRateFilterAttribute": {
"type": "string",
"enum": [
"region",
"instanceFamily",
"instanceType",
"productDescription",
"tenancy",
"productId"
]
},
"SavingsPlanOfferingRateProperty": {
"type": "object",
"properties": {
"name": {
"allOf": [
{
"$ref": "#/components/schemas/JsonSafeFilterValueString"
},
{
"description": "The property name."
}
]
},
"value": {
"allOf": [
{
"$ref": "#/components/schemas/JsonSafeFilterValueString"
},
{
"description": "The property value."
}
]
}
},
"description": "Information about a property."
},
"SavingsPlanOfferingRatePropertyList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanOfferingRateProperty"
}
},
"SavingsPlanRate": {
"type": "object",
"properties": {
"rate": {
"allOf": [
{
"$ref": "#/components/schemas/Amount"
},
{
"description": "The rate."
}
]
},
"currency": {
"allOf": [
{
"$ref": "#/components/schemas/CurrencyCode"
},
{
"description": "The currency."
}
]
},
"unit": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateUnit"
},
{
"description": "The unit."
}
]
},
"productType": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanProductType"
},
{
"description": "The product type."
}
]
},
"serviceCode": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateServiceCode"
},
{
"description": "The service."
}
]
},
"usageType": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateUsageType"
},
{
"description": "The usage details of the line item in the billing report."
}
]
},
"operation": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRateOperation"
},
{
"description": "The specific AWS operation for the line item in the billing report."
}
]
},
"properties": {
"description": "The properties."
}
},
"description": "Information about a Savings Plan rate."
},
"SavingsPlanRateFilterName": {
"type": "string",
"enum": [
"region",
"instanceType",
"productDescription",
"tenancy",
"productType",
"serviceCode",
"usageType",
"operation"
]
},
"SavingsPlanRatePropertyKey": {
"type": "string",
"enum": [
"region",
"instanceType",
"instanceFamily",
"productDescription",
"tenancy"
]
},
"SavingsPlanRateProperty": {
"type": "object",
"properties": {
"name": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanRatePropertyKey"
},
{
"description": "The property name."
}
]
},
"value": {
"allOf": [
{
"$ref": "#/components/schemas/JsonSafeFilterValueString"
},
{
"description": "The property value."
}
]
}
},
"description": "Information about a property."
},
"SavingsPlanRatePropertyList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SavingsPlanRateProperty"
}
},
"TagKeyList": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TagKey"
}
},
"TagResourceRequest": {
"type": "object",
"required": [
"resourceArn",
"tags"
],
"title": "TagResourceRequest",
"properties": {
"resourceArn": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanArn"
},
{
"description": "The Amazon Resource Name (ARN) of the resource."
}
]
},
"tags": {
"allOf": [
{
"$ref": "#/components/schemas/TagMap"
},
{
"description": "One or more tags. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }."
}
]
}
}
},
"UntagResourceRequest": {
"type": "object",
"required": [
"resourceArn",
"tagKeys"
],
"title": "UntagResourceRequest",
"properties": {
"resourceArn": {
"allOf": [
{
"$ref": "#/components/schemas/SavingsPlanArn"
},
{
"description": "The Amazon Resource Name (ARN) of the resource."
}
]
},
"tagKeys": {
"allOf": [
{
"$ref": "#/components/schemas/TagKeyList"
},
{
"description": "The tag keys."
}
]
}
}
}
}
},
"security": [
{
"hmac": []
}
]
}