{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.CostExplorer.Types
(
defaultService,
_UnknownSubscriptionException,
_BillExpirationException,
_RequestChangedException,
_UnresolvableUsageUnitException,
_ServiceQuotaExceededException,
_InvalidNextTokenException,
_DataUnavailableException,
_UnknownMonitorException,
_ResourceNotFoundException,
_LimitExceededException,
AccountScope (..),
AnomalyFeedbackType (..),
AnomalySubscriptionFrequency (..),
Context (..),
CostCategoryInheritedValueDimensionName (..),
CostCategoryRuleType (..),
CostCategoryRuleVersion (..),
CostCategorySplitChargeMethod (..),
CostCategorySplitChargeRuleParameterType (..),
CostCategoryStatus (..),
CostCategoryStatusComponent (..),
Dimension (..),
FindingReasonCode (..),
Granularity (..),
GroupDefinitionType (..),
LookbackPeriodInDays (..),
MatchOption (..),
Metric (..),
MonitorDimension (..),
MonitorType (..),
NumericOperator (..),
OfferingClass (..),
PaymentOption (..),
PlatformDifference (..),
RecommendationTarget (..),
RightsizingType (..),
SavingsPlansDataType (..),
SortOrder (..),
SubscriberStatus (..),
SubscriberType (..),
SupportedSavingsPlansType (..),
TermInYears (..),
Anomaly (..),
newAnomaly,
anomaly_anomalyStartDate,
anomaly_dimensionValue,
anomaly_rootCauses,
anomaly_anomalyEndDate,
anomaly_feedback,
anomaly_anomalyId,
anomaly_anomalyScore,
anomaly_impact,
anomaly_monitorArn,
AnomalyDateInterval (..),
newAnomalyDateInterval,
anomalyDateInterval_endDate,
anomalyDateInterval_startDate,
AnomalyMonitor (..),
newAnomalyMonitor,
anomalyMonitor_dimensionalValueCount,
anomalyMonitor_monitorSpecification,
anomalyMonitor_monitorDimension,
anomalyMonitor_creationDate,
anomalyMonitor_lastUpdatedDate,
anomalyMonitor_lastEvaluatedDate,
anomalyMonitor_monitorArn,
anomalyMonitor_monitorName,
anomalyMonitor_monitorType,
AnomalyScore (..),
newAnomalyScore,
anomalyScore_maxScore,
anomalyScore_currentScore,
AnomalySubscription (..),
newAnomalySubscription,
anomalySubscription_accountId,
anomalySubscription_subscriptionArn,
anomalySubscription_monitorArnList,
anomalySubscription_subscribers,
anomalySubscription_threshold,
anomalySubscription_frequency,
anomalySubscription_subscriptionName,
CostCategory (..),
newCostCategory,
costCategory_processingStatus,
costCategory_effectiveEnd,
costCategory_splitChargeRules,
costCategory_defaultValue,
costCategory_costCategoryArn,
costCategory_effectiveStart,
costCategory_name,
costCategory_ruleVersion,
costCategory_rules,
CostCategoryInheritedValueDimension (..),
newCostCategoryInheritedValueDimension,
costCategoryInheritedValueDimension_dimensionName,
costCategoryInheritedValueDimension_dimensionKey,
CostCategoryProcessingStatus (..),
newCostCategoryProcessingStatus,
costCategoryProcessingStatus_status,
costCategoryProcessingStatus_component,
CostCategoryReference (..),
newCostCategoryReference,
costCategoryReference_effectiveStart,
costCategoryReference_values,
costCategoryReference_costCategoryArn,
costCategoryReference_processingStatus,
costCategoryReference_numberOfRules,
costCategoryReference_name,
costCategoryReference_effectiveEnd,
costCategoryReference_defaultValue,
CostCategoryRule (..),
newCostCategoryRule,
costCategoryRule_inheritedValue,
costCategoryRule_value,
costCategoryRule_rule,
costCategoryRule_type,
CostCategorySplitChargeRule (..),
newCostCategorySplitChargeRule,
costCategorySplitChargeRule_parameters,
costCategorySplitChargeRule_source,
costCategorySplitChargeRule_targets,
costCategorySplitChargeRule_method,
CostCategorySplitChargeRuleParameter (..),
newCostCategorySplitChargeRuleParameter,
costCategorySplitChargeRuleParameter_type,
costCategorySplitChargeRuleParameter_values,
CostCategoryValues (..),
newCostCategoryValues,
costCategoryValues_values,
costCategoryValues_key,
costCategoryValues_matchOptions,
Coverage (..),
newCoverage,
coverage_coverageNormalizedUnits,
coverage_coverageHours,
coverage_coverageCost,
CoverageByTime (..),
newCoverageByTime,
coverageByTime_groups,
coverageByTime_timePeriod,
coverageByTime_total,
CoverageCost (..),
newCoverageCost,
coverageCost_onDemandCost,
CoverageHours (..),
newCoverageHours,
coverageHours_coverageHoursPercentage,
coverageHours_onDemandHours,
coverageHours_totalRunningHours,
coverageHours_reservedHours,
CoverageNormalizedUnits (..),
newCoverageNormalizedUnits,
coverageNormalizedUnits_reservedNormalizedUnits,
coverageNormalizedUnits_totalRunningNormalizedUnits,
coverageNormalizedUnits_coverageNormalizedUnitsPercentage,
coverageNormalizedUnits_onDemandNormalizedUnits,
CurrentInstance (..),
newCurrentInstance,
currentInstance_resourceId,
currentInstance_currencyCode,
currentInstance_resourceUtilization,
currentInstance_resourceDetails,
currentInstance_totalRunningHoursInLookbackPeriod,
currentInstance_reservationCoveredHoursInLookbackPeriod,
currentInstance_onDemandHoursInLookbackPeriod,
currentInstance_monthlyCost,
currentInstance_instanceName,
currentInstance_savingsPlansCoveredHoursInLookbackPeriod,
currentInstance_tags,
DateInterval (..),
newDateInterval,
dateInterval_start,
dateInterval_end,
DimensionValues (..),
newDimensionValues,
dimensionValues_values,
dimensionValues_key,
dimensionValues_matchOptions,
DimensionValuesWithAttributes (..),
newDimensionValuesWithAttributes,
dimensionValuesWithAttributes_value,
dimensionValuesWithAttributes_attributes,
DiskResourceUtilization (..),
newDiskResourceUtilization,
diskResourceUtilization_diskWriteOpsPerSecond,
diskResourceUtilization_diskReadOpsPerSecond,
diskResourceUtilization_diskWriteBytesPerSecond,
diskResourceUtilization_diskReadBytesPerSecond,
EBSResourceUtilization (..),
newEBSResourceUtilization,
eBSResourceUtilization_ebsWriteBytesPerSecond,
eBSResourceUtilization_ebsWriteOpsPerSecond,
eBSResourceUtilization_ebsReadOpsPerSecond,
eBSResourceUtilization_ebsReadBytesPerSecond,
EC2InstanceDetails (..),
newEC2InstanceDetails,
eC2InstanceDetails_currentGeneration,
eC2InstanceDetails_platform,
eC2InstanceDetails_family,
eC2InstanceDetails_instanceType,
eC2InstanceDetails_availabilityZone,
eC2InstanceDetails_sizeFlexEligible,
eC2InstanceDetails_tenancy,
eC2InstanceDetails_region,
EC2ResourceDetails (..),
newEC2ResourceDetails,
eC2ResourceDetails_platform,
eC2ResourceDetails_vcpu,
eC2ResourceDetails_networkPerformance,
eC2ResourceDetails_memory,
eC2ResourceDetails_instanceType,
eC2ResourceDetails_storage,
eC2ResourceDetails_sku,
eC2ResourceDetails_region,
eC2ResourceDetails_hourlyOnDemandRate,
EC2ResourceUtilization (..),
newEC2ResourceUtilization,
eC2ResourceUtilization_maxCpuUtilizationPercentage,
eC2ResourceUtilization_networkResourceUtilization,
eC2ResourceUtilization_eBSResourceUtilization,
eC2ResourceUtilization_maxStorageUtilizationPercentage,
eC2ResourceUtilization_maxMemoryUtilizationPercentage,
eC2ResourceUtilization_diskResourceUtilization,
EC2Specification (..),
newEC2Specification,
eC2Specification_offeringClass,
ESInstanceDetails (..),
newESInstanceDetails,
eSInstanceDetails_currentGeneration,
eSInstanceDetails_instanceClass,
eSInstanceDetails_instanceSize,
eSInstanceDetails_sizeFlexEligible,
eSInstanceDetails_region,
ElastiCacheInstanceDetails (..),
newElastiCacheInstanceDetails,
elastiCacheInstanceDetails_currentGeneration,
elastiCacheInstanceDetails_productDescription,
elastiCacheInstanceDetails_family,
elastiCacheInstanceDetails_sizeFlexEligible,
elastiCacheInstanceDetails_region,
elastiCacheInstanceDetails_nodeType,
Expression (..),
newExpression,
expression_not,
expression_and,
expression_or,
expression_costCategories,
expression_dimensions,
expression_tags,
ForecastResult (..),
newForecastResult,
forecastResult_timePeriod,
forecastResult_meanValue,
forecastResult_predictionIntervalUpperBound,
forecastResult_predictionIntervalLowerBound,
Group (..),
newGroup,
group_metrics,
group_keys,
GroupDefinition (..),
newGroupDefinition,
groupDefinition_key,
groupDefinition_type,
Impact (..),
newImpact,
impact_totalImpact,
impact_maxImpact,
InstanceDetails (..),
newInstanceDetails,
instanceDetails_eSInstanceDetails,
instanceDetails_rDSInstanceDetails,
instanceDetails_elastiCacheInstanceDetails,
instanceDetails_eC2InstanceDetails,
instanceDetails_redshiftInstanceDetails,
MetricValue (..),
newMetricValue,
metricValue_amount,
metricValue_unit,
ModifyRecommendationDetail (..),
newModifyRecommendationDetail,
modifyRecommendationDetail_targetInstances,
NetworkResourceUtilization (..),
newNetworkResourceUtilization,
networkResourceUtilization_networkPacketsOutPerSecond,
networkResourceUtilization_networkInBytesPerSecond,
networkResourceUtilization_networkPacketsInPerSecond,
networkResourceUtilization_networkOutBytesPerSecond,
RDSInstanceDetails (..),
newRDSInstanceDetails,
rDSInstanceDetails_currentGeneration,
rDSInstanceDetails_deploymentOption,
rDSInstanceDetails_family,
rDSInstanceDetails_instanceType,
rDSInstanceDetails_licenseModel,
rDSInstanceDetails_sizeFlexEligible,
rDSInstanceDetails_region,
rDSInstanceDetails_databaseEngine,
rDSInstanceDetails_databaseEdition,
RedshiftInstanceDetails (..),
newRedshiftInstanceDetails,
redshiftInstanceDetails_currentGeneration,
redshiftInstanceDetails_family,
redshiftInstanceDetails_sizeFlexEligible,
redshiftInstanceDetails_region,
redshiftInstanceDetails_nodeType,
ReservationAggregates (..),
newReservationAggregates,
reservationAggregates_purchasedHours,
reservationAggregates_totalActualHours,
reservationAggregates_utilizationPercentage,
reservationAggregates_totalAmortizedFee,
reservationAggregates_unusedUnits,
reservationAggregates_unrealizedSavings,
reservationAggregates_rICostForUnusedHours,
reservationAggregates_unusedHours,
reservationAggregates_realizedSavings,
reservationAggregates_purchasedUnits,
reservationAggregates_amortizedUpfrontFee,
reservationAggregates_amortizedRecurringFee,
reservationAggregates_utilizationPercentageInUnits,
reservationAggregates_netRISavings,
reservationAggregates_onDemandCostOfRIHoursUsed,
reservationAggregates_totalPotentialRISavings,
reservationAggregates_totalActualUnits,
ReservationCoverageGroup (..),
newReservationCoverageGroup,
reservationCoverageGroup_coverage,
reservationCoverageGroup_attributes,
ReservationPurchaseRecommendation (..),
newReservationPurchaseRecommendation,
reservationPurchaseRecommendation_termInYears,
reservationPurchaseRecommendation_recommendationSummary,
reservationPurchaseRecommendation_serviceSpecification,
reservationPurchaseRecommendation_accountScope,
reservationPurchaseRecommendation_recommendationDetails,
reservationPurchaseRecommendation_lookbackPeriodInDays,
reservationPurchaseRecommendation_paymentOption,
ReservationPurchaseRecommendationDetail (..),
newReservationPurchaseRecommendationDetail,
reservationPurchaseRecommendationDetail_maximumNormalizedUnitsUsedPerHour,
reservationPurchaseRecommendationDetail_recurringStandardMonthlyCost,
reservationPurchaseRecommendationDetail_averageNormalizedUnitsUsedPerHour,
reservationPurchaseRecommendationDetail_currencyCode,
reservationPurchaseRecommendationDetail_estimatedMonthlySavingsPercentage,
reservationPurchaseRecommendationDetail_recommendedNormalizedUnitsToPurchase,
reservationPurchaseRecommendationDetail_averageUtilization,
reservationPurchaseRecommendationDetail_accountId,
reservationPurchaseRecommendationDetail_estimatedMonthlySavingsAmount,
reservationPurchaseRecommendationDetail_upfrontCost,
reservationPurchaseRecommendationDetail_minimumNormalizedUnitsUsedPerHour,
reservationPurchaseRecommendationDetail_estimatedMonthlyOnDemandCost,
reservationPurchaseRecommendationDetail_recommendedNumberOfInstancesToPurchase,
reservationPurchaseRecommendationDetail_maximumNumberOfInstancesUsedPerHour,
reservationPurchaseRecommendationDetail_estimatedReservationCostForLookbackPeriod,
reservationPurchaseRecommendationDetail_instanceDetails,
reservationPurchaseRecommendationDetail_averageNumberOfInstancesUsedPerHour,
reservationPurchaseRecommendationDetail_minimumNumberOfInstancesUsedPerHour,
reservationPurchaseRecommendationDetail_estimatedBreakEvenInMonths,
ReservationPurchaseRecommendationMetadata (..),
newReservationPurchaseRecommendationMetadata,
reservationPurchaseRecommendationMetadata_recommendationId,
reservationPurchaseRecommendationMetadata_generationTimestamp,
ReservationPurchaseRecommendationSummary (..),
newReservationPurchaseRecommendationSummary,
reservationPurchaseRecommendationSummary_currencyCode,
reservationPurchaseRecommendationSummary_totalEstimatedMonthlySavingsPercentage,
reservationPurchaseRecommendationSummary_totalEstimatedMonthlySavingsAmount,
ReservationUtilizationGroup (..),
newReservationUtilizationGroup,
reservationUtilizationGroup_value,
reservationUtilizationGroup_key,
reservationUtilizationGroup_attributes,
reservationUtilizationGroup_utilization,
ResourceDetails (..),
newResourceDetails,
resourceDetails_eC2ResourceDetails,
ResourceUtilization (..),
newResourceUtilization,
resourceUtilization_eC2ResourceUtilization,
ResultByTime (..),
newResultByTime,
resultByTime_groups,
resultByTime_timePeriod,
resultByTime_total,
resultByTime_estimated,
RightsizingRecommendation (..),
newRightsizingRecommendation,
rightsizingRecommendation_accountId,
rightsizingRecommendation_findingReasonCodes,
rightsizingRecommendation_modifyRecommendationDetail,
rightsizingRecommendation_currentInstance,
rightsizingRecommendation_rightsizingType,
rightsizingRecommendation_terminateRecommendationDetail,
RightsizingRecommendationConfiguration (..),
newRightsizingRecommendationConfiguration,
rightsizingRecommendationConfiguration_recommendationTarget,
rightsizingRecommendationConfiguration_benefitsConsidered,
RightsizingRecommendationMetadata (..),
newRightsizingRecommendationMetadata,
rightsizingRecommendationMetadata_recommendationId,
rightsizingRecommendationMetadata_generationTimestamp,
rightsizingRecommendationMetadata_additionalMetadata,
rightsizingRecommendationMetadata_lookbackPeriodInDays,
RightsizingRecommendationSummary (..),
newRightsizingRecommendationSummary,
rightsizingRecommendationSummary_savingsPercentage,
rightsizingRecommendationSummary_savingsCurrencyCode,
rightsizingRecommendationSummary_totalRecommendationCount,
rightsizingRecommendationSummary_estimatedTotalMonthlySavingsAmount,
RootCause (..),
newRootCause,
rootCause_service,
rootCause_usageType,
rootCause_linkedAccount,
rootCause_region,
SavingsPlansAmortizedCommitment (..),
newSavingsPlansAmortizedCommitment,
savingsPlansAmortizedCommitment_amortizedUpfrontCommitment,
savingsPlansAmortizedCommitment_totalAmortizedCommitment,
savingsPlansAmortizedCommitment_amortizedRecurringCommitment,
SavingsPlansCoverage (..),
newSavingsPlansCoverage,
savingsPlansCoverage_timePeriod,
savingsPlansCoverage_coverage,
savingsPlansCoverage_attributes,
SavingsPlansCoverageData (..),
newSavingsPlansCoverageData,
savingsPlansCoverageData_onDemandCost,
savingsPlansCoverageData_spendCoveredBySavingsPlans,
savingsPlansCoverageData_coveragePercentage,
savingsPlansCoverageData_totalCost,
SavingsPlansDetails (..),
newSavingsPlansDetails,
savingsPlansDetails_instanceFamily,
savingsPlansDetails_offeringId,
savingsPlansDetails_region,
SavingsPlansPurchaseRecommendation (..),
newSavingsPlansPurchaseRecommendation,
savingsPlansPurchaseRecommendation_savingsPlansPurchaseRecommendationDetails,
savingsPlansPurchaseRecommendation_termInYears,
savingsPlansPurchaseRecommendation_accountScope,
savingsPlansPurchaseRecommendation_savingsPlansType,
savingsPlansPurchaseRecommendation_lookbackPeriodInDays,
savingsPlansPurchaseRecommendation_paymentOption,
savingsPlansPurchaseRecommendation_savingsPlansPurchaseRecommendationSummary,
SavingsPlansPurchaseRecommendationDetail (..),
newSavingsPlansPurchaseRecommendationDetail,
savingsPlansPurchaseRecommendationDetail_currencyCode,
savingsPlansPurchaseRecommendationDetail_currentAverageHourlyOnDemandSpend,
savingsPlansPurchaseRecommendationDetail_savingsPlansDetails,
savingsPlansPurchaseRecommendationDetail_currentMinimumHourlyOnDemandSpend,
savingsPlansPurchaseRecommendationDetail_estimatedROI,
savingsPlansPurchaseRecommendationDetail_currentMaximumHourlyOnDemandSpend,
savingsPlansPurchaseRecommendationDetail_estimatedSavingsAmount,
savingsPlansPurchaseRecommendationDetail_accountId,
savingsPlansPurchaseRecommendationDetail_estimatedMonthlySavingsAmount,
savingsPlansPurchaseRecommendationDetail_estimatedOnDemandCost,
savingsPlansPurchaseRecommendationDetail_estimatedOnDemandCostWithCurrentCommitment,
savingsPlansPurchaseRecommendationDetail_upfrontCost,
savingsPlansPurchaseRecommendationDetail_estimatedSPCost,
savingsPlansPurchaseRecommendationDetail_estimatedSavingsPercentage,
savingsPlansPurchaseRecommendationDetail_estimatedAverageUtilization,
savingsPlansPurchaseRecommendationDetail_hourlyCommitmentToPurchase,
SavingsPlansPurchaseRecommendationMetadata (..),
newSavingsPlansPurchaseRecommendationMetadata,
savingsPlansPurchaseRecommendationMetadata_recommendationId,
savingsPlansPurchaseRecommendationMetadata_generationTimestamp,
savingsPlansPurchaseRecommendationMetadata_additionalMetadata,
SavingsPlansPurchaseRecommendationSummary (..),
newSavingsPlansPurchaseRecommendationSummary,
savingsPlansPurchaseRecommendationSummary_currencyCode,
savingsPlansPurchaseRecommendationSummary_dailyCommitmentToPurchase,
savingsPlansPurchaseRecommendationSummary_estimatedTotalCost,
savingsPlansPurchaseRecommendationSummary_estimatedROI,
savingsPlansPurchaseRecommendationSummary_estimatedSavingsAmount,
savingsPlansPurchaseRecommendationSummary_estimatedMonthlySavingsAmount,
savingsPlansPurchaseRecommendationSummary_estimatedOnDemandCostWithCurrentCommitment,
savingsPlansPurchaseRecommendationSummary_estimatedSavingsPercentage,
savingsPlansPurchaseRecommendationSummary_totalRecommendationCount,
savingsPlansPurchaseRecommendationSummary_currentOnDemandSpend,
savingsPlansPurchaseRecommendationSummary_hourlyCommitmentToPurchase,
SavingsPlansSavings (..),
newSavingsPlansSavings,
savingsPlansSavings_netSavings,
savingsPlansSavings_onDemandCostEquivalent,
SavingsPlansUtilization (..),
newSavingsPlansUtilization,
savingsPlansUtilization_unusedCommitment,
savingsPlansUtilization_utilizationPercentage,
savingsPlansUtilization_totalCommitment,
savingsPlansUtilization_usedCommitment,
SavingsPlansUtilizationAggregates (..),
newSavingsPlansUtilizationAggregates,
savingsPlansUtilizationAggregates_amortizedCommitment,
savingsPlansUtilizationAggregates_savings,
savingsPlansUtilizationAggregates_utilization,
SavingsPlansUtilizationByTime (..),
newSavingsPlansUtilizationByTime,
savingsPlansUtilizationByTime_amortizedCommitment,
savingsPlansUtilizationByTime_savings,
savingsPlansUtilizationByTime_timePeriod,
savingsPlansUtilizationByTime_utilization,
SavingsPlansUtilizationDetail (..),
newSavingsPlansUtilizationDetail,
savingsPlansUtilizationDetail_amortizedCommitment,
savingsPlansUtilizationDetail_savings,
savingsPlansUtilizationDetail_attributes,
savingsPlansUtilizationDetail_utilization,
savingsPlansUtilizationDetail_savingsPlanArn,
ServiceSpecification (..),
newServiceSpecification,
serviceSpecification_eC2Specification,
SortDefinition (..),
newSortDefinition,
sortDefinition_sortOrder,
sortDefinition_key,
Subscriber (..),
newSubscriber,
subscriber_status,
subscriber_address,
subscriber_type,
TagValues (..),
newTagValues,
tagValues_values,
tagValues_key,
tagValues_matchOptions,
TargetInstance (..),
newTargetInstance,
targetInstance_currencyCode,
targetInstance_resourceDetails,
targetInstance_platformDifferences,
targetInstance_defaultTargetInstance,
targetInstance_estimatedMonthlyCost,
targetInstance_estimatedMonthlySavings,
targetInstance_expectedResourceUtilization,
TerminateRecommendationDetail (..),
newTerminateRecommendationDetail,
terminateRecommendationDetail_currencyCode,
terminateRecommendationDetail_estimatedMonthlySavings,
TotalImpactFilter (..),
newTotalImpactFilter,
totalImpactFilter_endValue,
totalImpactFilter_numericOperator,
totalImpactFilter_startValue,
UtilizationByTime (..),
newUtilizationByTime,
utilizationByTime_groups,
utilizationByTime_timePeriod,
utilizationByTime_total,
)
where
import qualified Amazonka.Core as Core
import Amazonka.CostExplorer.Types.AccountScope
import Amazonka.CostExplorer.Types.Anomaly
import Amazonka.CostExplorer.Types.AnomalyDateInterval
import Amazonka.CostExplorer.Types.AnomalyFeedbackType
import Amazonka.CostExplorer.Types.AnomalyMonitor
import Amazonka.CostExplorer.Types.AnomalyScore
import Amazonka.CostExplorer.Types.AnomalySubscription
import Amazonka.CostExplorer.Types.AnomalySubscriptionFrequency
import Amazonka.CostExplorer.Types.Context
import Amazonka.CostExplorer.Types.CostCategory
import Amazonka.CostExplorer.Types.CostCategoryInheritedValueDimension
import Amazonka.CostExplorer.Types.CostCategoryInheritedValueDimensionName
import Amazonka.CostExplorer.Types.CostCategoryProcessingStatus
import Amazonka.CostExplorer.Types.CostCategoryReference
import Amazonka.CostExplorer.Types.CostCategoryRule
import Amazonka.CostExplorer.Types.CostCategoryRuleType
import Amazonka.CostExplorer.Types.CostCategoryRuleVersion
import Amazonka.CostExplorer.Types.CostCategorySplitChargeMethod
import Amazonka.CostExplorer.Types.CostCategorySplitChargeRule
import Amazonka.CostExplorer.Types.CostCategorySplitChargeRuleParameter
import Amazonka.CostExplorer.Types.CostCategorySplitChargeRuleParameterType
import Amazonka.CostExplorer.Types.CostCategoryStatus
import Amazonka.CostExplorer.Types.CostCategoryStatusComponent
import Amazonka.CostExplorer.Types.CostCategoryValues
import Amazonka.CostExplorer.Types.Coverage
import Amazonka.CostExplorer.Types.CoverageByTime
import Amazonka.CostExplorer.Types.CoverageCost
import Amazonka.CostExplorer.Types.CoverageHours
import Amazonka.CostExplorer.Types.CoverageNormalizedUnits
import Amazonka.CostExplorer.Types.CurrentInstance
import Amazonka.CostExplorer.Types.DateInterval
import Amazonka.CostExplorer.Types.Dimension
import Amazonka.CostExplorer.Types.DimensionValues
import Amazonka.CostExplorer.Types.DimensionValuesWithAttributes
import Amazonka.CostExplorer.Types.DiskResourceUtilization
import Amazonka.CostExplorer.Types.EBSResourceUtilization
import Amazonka.CostExplorer.Types.EC2InstanceDetails
import Amazonka.CostExplorer.Types.EC2ResourceDetails
import Amazonka.CostExplorer.Types.EC2ResourceUtilization
import Amazonka.CostExplorer.Types.EC2Specification
import Amazonka.CostExplorer.Types.ESInstanceDetails
import Amazonka.CostExplorer.Types.ElastiCacheInstanceDetails
import Amazonka.CostExplorer.Types.Expression
import Amazonka.CostExplorer.Types.FindingReasonCode
import Amazonka.CostExplorer.Types.ForecastResult
import Amazonka.CostExplorer.Types.Granularity
import Amazonka.CostExplorer.Types.Group
import Amazonka.CostExplorer.Types.GroupDefinition
import Amazonka.CostExplorer.Types.GroupDefinitionType
import Amazonka.CostExplorer.Types.Impact
import Amazonka.CostExplorer.Types.InstanceDetails
import Amazonka.CostExplorer.Types.LookbackPeriodInDays
import Amazonka.CostExplorer.Types.MatchOption
import Amazonka.CostExplorer.Types.Metric
import Amazonka.CostExplorer.Types.MetricValue
import Amazonka.CostExplorer.Types.ModifyRecommendationDetail
import Amazonka.CostExplorer.Types.MonitorDimension
import Amazonka.CostExplorer.Types.MonitorType
import Amazonka.CostExplorer.Types.NetworkResourceUtilization
import Amazonka.CostExplorer.Types.NumericOperator
import Amazonka.CostExplorer.Types.OfferingClass
import Amazonka.CostExplorer.Types.PaymentOption
import Amazonka.CostExplorer.Types.PlatformDifference
import Amazonka.CostExplorer.Types.RDSInstanceDetails
import Amazonka.CostExplorer.Types.RecommendationTarget
import Amazonka.CostExplorer.Types.RedshiftInstanceDetails
import Amazonka.CostExplorer.Types.ReservationAggregates
import Amazonka.CostExplorer.Types.ReservationCoverageGroup
import Amazonka.CostExplorer.Types.ReservationPurchaseRecommendation
import Amazonka.CostExplorer.Types.ReservationPurchaseRecommendationDetail
import Amazonka.CostExplorer.Types.ReservationPurchaseRecommendationMetadata
import Amazonka.CostExplorer.Types.ReservationPurchaseRecommendationSummary
import Amazonka.CostExplorer.Types.ReservationUtilizationGroup
import Amazonka.CostExplorer.Types.ResourceDetails
import Amazonka.CostExplorer.Types.ResourceUtilization
import Amazonka.CostExplorer.Types.ResultByTime
import Amazonka.CostExplorer.Types.RightsizingRecommendation
import Amazonka.CostExplorer.Types.RightsizingRecommendationConfiguration
import Amazonka.CostExplorer.Types.RightsizingRecommendationMetadata
import Amazonka.CostExplorer.Types.RightsizingRecommendationSummary
import Amazonka.CostExplorer.Types.RightsizingType
import Amazonka.CostExplorer.Types.RootCause
import Amazonka.CostExplorer.Types.SavingsPlansAmortizedCommitment
import Amazonka.CostExplorer.Types.SavingsPlansCoverage
import Amazonka.CostExplorer.Types.SavingsPlansCoverageData
import Amazonka.CostExplorer.Types.SavingsPlansDataType
import Amazonka.CostExplorer.Types.SavingsPlansDetails
import Amazonka.CostExplorer.Types.SavingsPlansPurchaseRecommendation
import Amazonka.CostExplorer.Types.SavingsPlansPurchaseRecommendationDetail
import Amazonka.CostExplorer.Types.SavingsPlansPurchaseRecommendationMetadata
import Amazonka.CostExplorer.Types.SavingsPlansPurchaseRecommendationSummary
import Amazonka.CostExplorer.Types.SavingsPlansSavings
import Amazonka.CostExplorer.Types.SavingsPlansUtilization
import Amazonka.CostExplorer.Types.SavingsPlansUtilizationAggregates
import Amazonka.CostExplorer.Types.SavingsPlansUtilizationByTime
import Amazonka.CostExplorer.Types.SavingsPlansUtilizationDetail
import Amazonka.CostExplorer.Types.ServiceSpecification
import Amazonka.CostExplorer.Types.SortDefinition
import Amazonka.CostExplorer.Types.SortOrder
import Amazonka.CostExplorer.Types.Subscriber
import Amazonka.CostExplorer.Types.SubscriberStatus
import Amazonka.CostExplorer.Types.SubscriberType
import Amazonka.CostExplorer.Types.SupportedSavingsPlansType
import Amazonka.CostExplorer.Types.TagValues
import Amazonka.CostExplorer.Types.TargetInstance
import Amazonka.CostExplorer.Types.TermInYears
import Amazonka.CostExplorer.Types.TerminateRecommendationDetail
import Amazonka.CostExplorer.Types.TotalImpactFilter
import Amazonka.CostExplorer.Types.UtilizationByTime
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Sign.V4 as Sign
defaultService :: Core.Service
defaultService :: Service
defaultService =
Service :: Abbrev
-> Signer
-> ByteString
-> ByteString
-> ByteString
-> (Region -> Endpoint)
-> Maybe Seconds
-> (Status -> Bool)
-> (Status -> [Header] -> ByteStringLazy -> Error)
-> Retry
-> Service
Core.Service
{ $sel:_serviceAbbrev:Service :: Abbrev
Core._serviceAbbrev = Abbrev
"CostExplorer",
$sel:_serviceSigner:Service :: Signer
Core._serviceSigner = Signer
Sign.v4,
$sel:_serviceEndpointPrefix:Service :: ByteString
Core._serviceEndpointPrefix = ByteString
"ce",
$sel:_serviceSigningName:Service :: ByteString
Core._serviceSigningName = ByteString
"ce",
$sel:_serviceVersion:Service :: ByteString
Core._serviceVersion = ByteString
"2017-10-25",
$sel:_serviceEndpoint:Service :: Region -> Endpoint
Core._serviceEndpoint =
Service -> Region -> Endpoint
Core.defaultEndpoint Service
defaultService,
$sel:_serviceTimeout:Service :: Maybe Seconds
Core._serviceTimeout = Seconds -> Maybe Seconds
forall a. a -> Maybe a
Prelude.Just Seconds
70,
$sel:_serviceCheck:Service :: Status -> Bool
Core._serviceCheck = Status -> Bool
Core.statusSuccess,
$sel:_serviceError:Service :: Status -> [Header] -> ByteStringLazy -> Error
Core._serviceError =
Abbrev -> Status -> [Header] -> ByteStringLazy -> Error
Core.parseJSONError Abbrev
"CostExplorer",
$sel:_serviceRetry:Service :: Retry
Core._serviceRetry = Retry
retry
}
where
retry :: Retry
retry =
Exponential :: Double -> Int -> Int -> (ServiceError -> Maybe Text) -> Retry
Core.Exponential
{ $sel:_retryBase:Exponential :: Double
Core._retryBase = Double
5.0e-2,
$sel:_retryGrowth:Exponential :: Int
Core._retryGrowth = Int
2,
$sel:_retryAttempts:Exponential :: Int
Core._retryAttempts = Int
5,
$sel:_retryCheck:Exponential :: ServiceError -> Maybe Text
Core._retryCheck = ServiceError -> Maybe Text
forall a. IsString a => ServiceError -> Maybe a
check
}
check :: ServiceError -> Maybe a
check ServiceError
e
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"ThrottledException"
Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
)
ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"throttled_exception"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
429) ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"too_many_requests"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"ThrottlingException"
Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
)
ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"throttling_exception"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"Throttling"
Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
)
ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"throttling"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode
ErrorCode
"ProvisionedThroughputExceededException"
Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
)
ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"throughput_exceeded"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
504) ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"gateway_timeout"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"RequestThrottledException"
Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
)
ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"request_throttled_exception"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
502) ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"bad_gateway"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
503) ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"service_unavailable"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
500) ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"general_server_error"
| Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
509) ServiceError
e =
a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"limit_exceeded"
| Bool
Prelude.otherwise = Maybe a
forall a. Maybe a
Prelude.Nothing
_UnknownSubscriptionException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_UnknownSubscriptionException :: Getting (First ServiceError) a ServiceError
_UnknownSubscriptionException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"UnknownSubscriptionException"
_BillExpirationException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_BillExpirationException :: Getting (First ServiceError) a ServiceError
_BillExpirationException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"BillExpirationException"
_RequestChangedException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_RequestChangedException :: Getting (First ServiceError) a ServiceError
_RequestChangedException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"RequestChangedException"
_UnresolvableUsageUnitException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_UnresolvableUsageUnitException :: Getting (First ServiceError) a ServiceError
_UnresolvableUsageUnitException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"UnresolvableUsageUnitException"
_ServiceQuotaExceededException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_ServiceQuotaExceededException :: Getting (First ServiceError) a ServiceError
_ServiceQuotaExceededException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"ServiceQuotaExceededException"
_InvalidNextTokenException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_InvalidNextTokenException :: Getting (First ServiceError) a ServiceError
_InvalidNextTokenException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"InvalidNextTokenException"
_DataUnavailableException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_DataUnavailableException :: Getting (First ServiceError) a ServiceError
_DataUnavailableException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"DataUnavailableException"
_UnknownMonitorException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_UnknownMonitorException :: Getting (First ServiceError) a ServiceError
_UnknownMonitorException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"UnknownMonitorException"
_ResourceNotFoundException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_ResourceNotFoundException :: Getting (First ServiceError) a ServiceError
_ResourceNotFoundException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"ResourceNotFoundException"
_LimitExceededException :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_LimitExceededException :: Getting (First ServiceError) a ServiceError
_LimitExceededException =
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
Service
defaultService
ErrorCode
"LimitExceededException"