Module: Aws::PI::ClientApi Private

Includes:
Seahorse::Model
Defined in:
lib/aws-sdk-pi/client_api.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Constant Summary collapse

AcceptLanguage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AcceptLanguage')
AdditionalMetricsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'AdditionalMetricsList')
AdditionalMetricsMap =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'AdditionalMetricsMap')
AmazonResourceName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AmazonResourceName')
AnalysisReport =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AnalysisReport')
AnalysisReportId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AnalysisReportId')
AnalysisReportSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AnalysisReportSummary')
AnalysisReportSummaryList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'AnalysisReportSummaryList')
AnalysisStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AnalysisStatus')
AuthorizedActionsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'AuthorizedActionsList')
Boolean =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::BooleanShape.new(name: 'Boolean')
ContextType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ContextType')
CreatePerformanceAnalysisReportRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreatePerformanceAnalysisReportRequest')
CreatePerformanceAnalysisReportResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreatePerformanceAnalysisReportResponse')
Data =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Data')
DataList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DataList')
DataPoint =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DataPoint')
DataPointsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DataPointsList')
DeletePerformanceAnalysisReportRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeletePerformanceAnalysisReportRequest')
DeletePerformanceAnalysisReportResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeletePerformanceAnalysisReportResponse')
DescribeDimensionKeysRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeDimensionKeysRequest')
DescribeDimensionKeysResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeDimensionKeysResponse')
Description =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Description')
DescriptiveMap =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'DescriptiveMap')
DescriptiveString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DescriptiveString')
DetailStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DetailStatus')
DimensionDetail =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DimensionDetail')
DimensionDetailList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DimensionDetailList')
DimensionGroup =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DimensionGroup')
DimensionGroupDetail =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DimensionGroupDetail')
DimensionGroupDetailList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DimensionGroupDetailList')
DimensionKeyDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DimensionKeyDescription')
DimensionKeyDescriptionList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DimensionKeyDescriptionList')
DimensionKeyDetail =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DimensionKeyDetail')
DimensionKeyDetailList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DimensionKeyDetailList')
DimensionMap =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'DimensionMap')
DimensionsMetricList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'DimensionsMetricList')
Double =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::FloatShape.new(name: 'Double')
ErrorString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ErrorString')
FeatureMetadata =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'FeatureMetadata')
FeatureMetadataMap =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'FeatureMetadataMap')
FeatureStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FeatureStatus')
FineGrainedAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FineGrainedAction')
GetDimensionKeyDetailsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetDimensionKeyDetailsRequest')
GetDimensionKeyDetailsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetDimensionKeyDetailsResponse')
GetPerformanceAnalysisReportRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetPerformanceAnalysisReportRequest')
GetPerformanceAnalysisReportResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetPerformanceAnalysisReportResponse')
GetResourceMetadataRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetResourceMetadataRequest')
GetResourceMetadataResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetResourceMetadataResponse')
GetResourceMetricsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetResourceMetricsRequest')
GetResourceMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetResourceMetricsResponse')
ISOTimestamp =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::TimestampShape.new(name: 'ISOTimestamp')
IdentifierString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IdentifierString')
Insight =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Insight')
InsightList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'InsightList')
Integer =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'Integer')
InternalServiceError =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InternalServiceError')
InvalidArgumentException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InvalidArgumentException')
Limit =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'Limit')
ListAvailableResourceDimensionsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailableResourceDimensionsRequest')
ListAvailableResourceDimensionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailableResourceDimensionsResponse')
ListAvailableResourceMetricsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailableResourceMetricsRequest')
ListAvailableResourceMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailableResourceMetricsResponse')
ListPerformanceAnalysisReportsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListPerformanceAnalysisReportsRequest')
ListPerformanceAnalysisReportsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListPerformanceAnalysisReportsResponse')
ListTagsForResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
ListTagsForResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
MarkdownString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MarkdownString')
MaxResults =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'MaxResults')
MetricDimensionGroups =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MetricDimensionGroups')
MetricDimensionsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'MetricDimensionsList')
MetricKeyDataPoints =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MetricKeyDataPoints')
MetricKeyDataPointsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'MetricKeyDataPointsList')
MetricQuery =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MetricQuery')
MetricQueryFilterMap =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MetricQueryFilterMap')
MetricQueryList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'MetricQueryList')
MetricTypeList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'MetricTypeList')
MetricValuesList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'MetricValuesList')
NextToken =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'NextToken')
NotAuthorizedException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'NotAuthorizedException')
PerformanceInsightsMetric =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PerformanceInsightsMetric')
PeriodAlignment =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'PeriodAlignment')
Recommendation =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Recommendation')
RecommendationList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RecommendationList')
RequestString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RequestString')
RequestedDimensionList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RequestedDimensionList')
ResponsePartitionKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResponsePartitionKey')
ResponsePartitionKeyList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponsePartitionKeyList')
ResponseResourceMetric =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResponseResourceMetric')
ResponseResourceMetricKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResponseResourceMetricKey')
ResponseResourceMetricList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponseResourceMetricList')
SanitizedString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'SanitizedString')
SanitizedStringList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'SanitizedStringList')
ServiceType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ServiceType')
Severity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Severity')
String =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'String')
Tag =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Tag')
TagKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagKey')
TagKeyList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TagKeyList')
TagList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TagList')
TagResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceRequest')
TagResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceResponse')
TagValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagValue')
TextFormat =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TextFormat')
UntagResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceRequest')
UntagResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceResponse')
API =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Seahorse::Model::Api.new.tap do |api|

  api.version = "2018-02-27"

  api. = {
    "apiVersion" => "2018-02-27",
    "auth" => ["aws.auth#sigv4"],
    "endpointPrefix" => "pi",
    "jsonVersion" => "1.1",
    "protocol" => "json",
    "protocols" => ["json"],
    "serviceAbbreviation" => "AWS PI",
    "serviceFullName" => "AWS Performance Insights",
    "serviceId" => "PI",
    "signatureVersion" => "v4",
    "signingName" => "pi",
    "targetPrefix" => "PerformanceInsightsv20180227",
    "uid" => "pi-2018-02-27",
  }

  api.add_operation(:create_performance_analysis_report, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreatePerformanceAnalysisReport"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreatePerformanceAnalysisReportRequest)
    o.output = Shapes::ShapeRef.new(shape: CreatePerformanceAnalysisReportResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
  end)

  api.add_operation(:delete_performance_analysis_report, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeletePerformanceAnalysisReport"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeletePerformanceAnalysisReportRequest)
    o.output = Shapes::ShapeRef.new(shape: DeletePerformanceAnalysisReportResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
  end)

  api.add_operation(:describe_dimension_keys, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeDimensionKeys"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeDimensionKeysRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeDimensionKeysResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:get_dimension_key_details, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetDimensionKeyDetails"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetDimensionKeyDetailsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetDimensionKeyDetailsResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
  end)

  api.add_operation(:get_performance_analysis_report, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetPerformanceAnalysisReport"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetPerformanceAnalysisReportRequest)
    o.output = Shapes::ShapeRef.new(shape: GetPerformanceAnalysisReportResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
  end)

  api.add_operation(:get_resource_metadata, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetResourceMetadata"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetResourceMetadataRequest)
    o.output = Shapes::ShapeRef.new(shape: GetResourceMetadataResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
  end)

  api.add_operation(:get_resource_metrics, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetResourceMetrics"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetResourceMetricsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetResourceMetricsResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_available_resource_dimensions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListAvailableResourceDimensions"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListAvailableResourceDimensionsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListAvailableResourceDimensionsResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_available_resource_metrics, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListAvailableResourceMetrics"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListAvailableResourceMetricsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListAvailableResourceMetricsResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_performance_analysis_reports, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListPerformanceAnalysisReports"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListPerformanceAnalysisReportsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListPerformanceAnalysisReportsResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListTagsForResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
  end)

  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "TagResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
  end)

  api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UntagResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
    o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
  end)
end