{-# LANGUAGE DisambiguateRecordFields #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Amazonka.Route53Domains.Types -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) module Amazonka.Route53Domains.Types ( -- * Service Configuration defaultService, -- * Errors _DnssecLimitExceeded, _DomainLimitExceeded, _DuplicateRequest, _InvalidInput, _OperationLimitExceeded, _TLDRulesViolation, _UnsupportedTLD, -- * ContactType ContactType (..), -- * CountryCode CountryCode (..), -- * DomainAvailability DomainAvailability (..), -- * ExtraParamName ExtraParamName (..), -- * ListDomainsAttributeName ListDomainsAttributeName (..), -- * ListOperationsSortAttributeName ListOperationsSortAttributeName (..), -- * OperationStatus OperationStatus (..), -- * OperationType OperationType (..), -- * Operator Operator (..), -- * ReachabilityStatus ReachabilityStatus (..), -- * SortOrder SortOrder (..), -- * StatusFlag StatusFlag (..), -- * Transferable Transferable (..), -- * BillingRecord BillingRecord (..), newBillingRecord, billingRecord_billDate, billingRecord_domainName, billingRecord_invoiceId, billingRecord_operation, billingRecord_price, -- * Consent Consent (..), newConsent, consent_maxPrice, consent_currency, -- * ContactDetail ContactDetail (..), newContactDetail, contactDetail_addressLine1, contactDetail_addressLine2, contactDetail_city, contactDetail_contactType, contactDetail_countryCode, contactDetail_email, contactDetail_extraParams, contactDetail_fax, contactDetail_firstName, contactDetail_lastName, contactDetail_organizationName, contactDetail_phoneNumber, contactDetail_state, contactDetail_zipCode, -- * DnssecKey DnssecKey (..), newDnssecKey, dnssecKey_algorithm, dnssecKey_digest, dnssecKey_digestType, dnssecKey_flags, dnssecKey_id, dnssecKey_keyTag, dnssecKey_publicKey, -- * DnssecSigningAttributes DnssecSigningAttributes (..), newDnssecSigningAttributes, dnssecSigningAttributes_algorithm, dnssecSigningAttributes_flags, dnssecSigningAttributes_publicKey, -- * DomainPrice DomainPrice (..), newDomainPrice, domainPrice_changeOwnershipPrice, domainPrice_name, domainPrice_registrationPrice, domainPrice_renewalPrice, domainPrice_restorationPrice, domainPrice_transferPrice, -- * DomainSuggestion DomainSuggestion (..), newDomainSuggestion, domainSuggestion_availability, domainSuggestion_domainName, -- * DomainSummary DomainSummary (..), newDomainSummary, domainSummary_autoRenew, domainSummary_domainName, domainSummary_expiry, domainSummary_transferLock, -- * DomainTransferability DomainTransferability (..), newDomainTransferability, domainTransferability_transferable, -- * ExtraParam ExtraParam (..), newExtraParam, extraParam_name, extraParam_value, -- * FilterCondition FilterCondition (..), newFilterCondition, filterCondition_name, filterCondition_operator, filterCondition_values, -- * Nameserver Nameserver (..), newNameserver, nameserver_glueIps, nameserver_name, -- * OperationSummary OperationSummary (..), newOperationSummary, operationSummary_domainName, operationSummary_lastUpdatedDate, operationSummary_message, operationSummary_operationId, operationSummary_status, operationSummary_statusFlag, operationSummary_submittedDate, operationSummary_type, -- * PriceWithCurrency PriceWithCurrency (..), newPriceWithCurrency, priceWithCurrency_price, priceWithCurrency_currency, -- * SortCondition SortCondition (..), newSortCondition, sortCondition_name, sortCondition_sortOrder, -- * Tag Tag (..), newTag, tag_key, tag_value, ) where import qualified Amazonka.Core as Core import qualified Amazonka.Core.Lens.Internal as Lens import qualified Amazonka.Prelude as Prelude import Amazonka.Route53Domains.Types.BillingRecord import Amazonka.Route53Domains.Types.Consent import Amazonka.Route53Domains.Types.ContactDetail import Amazonka.Route53Domains.Types.ContactType import Amazonka.Route53Domains.Types.CountryCode import Amazonka.Route53Domains.Types.DnssecKey import Amazonka.Route53Domains.Types.DnssecSigningAttributes import Amazonka.Route53Domains.Types.DomainAvailability import Amazonka.Route53Domains.Types.DomainPrice import Amazonka.Route53Domains.Types.DomainSuggestion import Amazonka.Route53Domains.Types.DomainSummary import Amazonka.Route53Domains.Types.DomainTransferability import Amazonka.Route53Domains.Types.ExtraParam import Amazonka.Route53Domains.Types.ExtraParamName import Amazonka.Route53Domains.Types.FilterCondition import Amazonka.Route53Domains.Types.ListDomainsAttributeName import Amazonka.Route53Domains.Types.ListOperationsSortAttributeName import Amazonka.Route53Domains.Types.Nameserver import Amazonka.Route53Domains.Types.OperationStatus import Amazonka.Route53Domains.Types.OperationSummary import Amazonka.Route53Domains.Types.OperationType import Amazonka.Route53Domains.Types.Operator import Amazonka.Route53Domains.Types.PriceWithCurrency import Amazonka.Route53Domains.Types.ReachabilityStatus import Amazonka.Route53Domains.Types.SortCondition import Amazonka.Route53Domains.Types.SortOrder import Amazonka.Route53Domains.Types.StatusFlag import Amazonka.Route53Domains.Types.Tag import Amazonka.Route53Domains.Types.Transferable import qualified Amazonka.Sign.V4 as Sign -- | API version @2014-05-15@ of the Amazon Route 53 Domains SDK configuration. defaultService :: Core.Service defaultService = Core.Service { Core.abbrev = "Route53Domains", Core.signer = Sign.v4, Core.endpointPrefix = "route53domains", Core.signingName = "route53domains", Core.version = "2014-05-15", Core.s3AddressingStyle = Core.S3AddressingStyleAuto, Core.endpoint = Core.defaultEndpoint defaultService, Core.timeout = Prelude.Just 70, Core.check = Core.statusSuccess, Core.error = Core.parseJSONError "Route53Domains", Core.retry = retry } where retry = Core.Exponential { Core.base = 5.0e-2, Core.growth = 2, Core.attempts = 5, Core.check = check } check e | Lens.has (Core.hasStatus 502) e = Prelude.Just "bad_gateway" | Lens.has (Core.hasStatus 504) e = Prelude.Just "gateway_timeout" | Lens.has (Core.hasStatus 500) e = Prelude.Just "general_server_error" | Lens.has (Core.hasStatus 509) e = Prelude.Just "limit_exceeded" | Lens.has ( Core.hasCode "RequestThrottledException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "request_throttled_exception" | Lens.has (Core.hasStatus 503) e = Prelude.Just "service_unavailable" | Lens.has ( Core.hasCode "ThrottledException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throttled_exception" | Lens.has ( Core.hasCode "Throttling" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throttling" | Lens.has ( Core.hasCode "ThrottlingException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throttling_exception" | Lens.has ( Core.hasCode "ProvisionedThroughputExceededException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throughput_exceeded" | Lens.has (Core.hasStatus 429) e = Prelude.Just "too_many_requests" | Prelude.otherwise = Prelude.Nothing -- | This error is returned if you call @AssociateDelegationSignerToDomain@ -- when the specified domain has reached the maximum number of DS records. -- You can\'t add any additional DS records unless you delete an existing -- one first. _DnssecLimitExceeded :: (Core.AsError a) => Lens.Fold a Core.ServiceError _DnssecLimitExceeded = Core._MatchServiceError defaultService "DnssecLimitExceeded" -- | The number of domains has exceeded the allowed threshold for the -- account. _DomainLimitExceeded :: (Core.AsError a) => Lens.Fold a Core.ServiceError _DomainLimitExceeded = Core._MatchServiceError defaultService "DomainLimitExceeded" -- | The request is already in progress for the domain. _DuplicateRequest :: (Core.AsError a) => Lens.Fold a Core.ServiceError _DuplicateRequest = Core._MatchServiceError defaultService "DuplicateRequest" -- | The requested item is not acceptable. For example, for APIs that accept -- a domain name, the request might specify a domain name that doesn\'t -- belong to the account that submitted the request. For -- @AcceptDomainTransferFromAnotherAwsAccount@, the password might be -- invalid. _InvalidInput :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidInput = Core._MatchServiceError defaultService "InvalidInput" -- | The number of operations or jobs running exceeded the allowed threshold -- for the account. _OperationLimitExceeded :: (Core.AsError a) => Lens.Fold a Core.ServiceError _OperationLimitExceeded = Core._MatchServiceError defaultService "OperationLimitExceeded" -- | The top-level domain does not support this operation. _TLDRulesViolation :: (Core.AsError a) => Lens.Fold a Core.ServiceError _TLDRulesViolation = Core._MatchServiceError defaultService "TLDRulesViolation" -- | Amazon Route 53 does not support this top-level domain (TLD). _UnsupportedTLD :: (Core.AsError a) => Lens.Fold a Core.ServiceError _UnsupportedTLD = Core._MatchServiceError defaultService "UnsupportedTLD"