amazonka-marketplace-metering-1.4.5: Amazon Marketplace Metering SDK.

Copyright(c) 2013-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.MarketplaceMetering.MeterUsage

Contents

Description

API to emit metering records. For identical requests, the API is idempotent. It simply returns the metering record ID.

MeterUsage is authenticated on the buyer's AWS account, generally when running from an EC2 instance on the AWS Marketplace.

Synopsis

Creating a Request

meterUsage #

Creates a value of MeterUsage with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • muProductCode - Product code is used to uniquely identify a product in AWS Marketplace. The product code should be the same as the one used during the publishing of a new product.
  • muTimestamp - Timestamp of the hour, recorded in UTC. The seconds and milliseconds portions of the timestamp will be ignored.
  • muUsageDimension - It will be one of the fcp dimension name provided during the publishing of the product.
  • muUsageQuantity - Consumption value for the hour.
  • muDryRun - Checks whether you have the permissions required for the action, but does not make the request. If you have the permissions, the request returns DryRunOperation; otherwise, it returns UnauthorizedException.

data MeterUsage #

See: meterUsage smart constructor.

Instances

Eq MeterUsage # 
Data MeterUsage # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MeterUsage -> c MeterUsage #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c MeterUsage #

toConstr :: MeterUsage -> Constr #

dataTypeOf :: MeterUsage -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c MeterUsage) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MeterUsage) #

gmapT :: (forall b. Data b => b -> b) -> MeterUsage -> MeterUsage #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MeterUsage -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MeterUsage -> r #

gmapQ :: (forall d. Data d => d -> u) -> MeterUsage -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> MeterUsage -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> MeterUsage -> m MeterUsage #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MeterUsage -> m MeterUsage #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MeterUsage -> m MeterUsage #

Read MeterUsage # 
Show MeterUsage # 
Generic MeterUsage # 

Associated Types

type Rep MeterUsage :: * -> * #

Hashable MeterUsage # 
ToJSON MeterUsage # 
NFData MeterUsage # 

Methods

rnf :: MeterUsage -> () #

AWSRequest MeterUsage # 
ToQuery MeterUsage # 
ToPath MeterUsage # 
ToHeaders MeterUsage # 

Methods

toHeaders :: MeterUsage -> [Header] #

type Rep MeterUsage # 
type Rep MeterUsage = D1 (MetaData "MeterUsage" "Network.AWS.MarketplaceMetering.MeterUsage" "amazonka-marketplace-metering-1.4.5-9px4Jx494it2K6FSd2bSk1" False) (C1 (MetaCons "MeterUsage'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_muProductCode") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_muTimestamp") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 POSIX))) ((:*:) (S1 (MetaSel (Just Symbol "_muUsageDimension") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) ((:*:) (S1 (MetaSel (Just Symbol "_muUsageQuantity") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Nat)) (S1 (MetaSel (Just Symbol "_muDryRun") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool))))))
type Rs MeterUsage # 

Request Lenses

muProductCode :: Lens' MeterUsage Text #

Product code is used to uniquely identify a product in AWS Marketplace. The product code should be the same as the one used during the publishing of a new product.

muTimestamp :: Lens' MeterUsage UTCTime #

Timestamp of the hour, recorded in UTC. The seconds and milliseconds portions of the timestamp will be ignored.

muUsageDimension :: Lens' MeterUsage Text #

It will be one of the fcp dimension name provided during the publishing of the product.

muUsageQuantity :: Lens' MeterUsage Natural #

Consumption value for the hour.

muDryRun :: Lens' MeterUsage Bool #

Checks whether you have the permissions required for the action, but does not make the request. If you have the permissions, the request returns DryRunOperation; otherwise, it returns UnauthorizedException.

Destructuring the Response

meterUsageResponse #

Creates a value of MeterUsageResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

data MeterUsageResponse #

See: meterUsageResponse smart constructor.

Instances

Eq MeterUsageResponse # 
Data MeterUsageResponse # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MeterUsageResponse -> c MeterUsageResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c MeterUsageResponse #

toConstr :: MeterUsageResponse -> Constr #

dataTypeOf :: MeterUsageResponse -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c MeterUsageResponse) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MeterUsageResponse) #

gmapT :: (forall b. Data b => b -> b) -> MeterUsageResponse -> MeterUsageResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MeterUsageResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MeterUsageResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> MeterUsageResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> MeterUsageResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> MeterUsageResponse -> m MeterUsageResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MeterUsageResponse -> m MeterUsageResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MeterUsageResponse -> m MeterUsageResponse #

Read MeterUsageResponse # 
Show MeterUsageResponse # 
Generic MeterUsageResponse # 
NFData MeterUsageResponse # 

Methods

rnf :: MeterUsageResponse -> () #

type Rep MeterUsageResponse # 
type Rep MeterUsageResponse = D1 (MetaData "MeterUsageResponse" "Network.AWS.MarketplaceMetering.MeterUsage" "amazonka-marketplace-metering-1.4.5-9px4Jx494it2K6FSd2bSk1" False) (C1 (MetaCons "MeterUsageResponse'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_mursMeteringRecordId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_mursResponseStatus") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int))))

Response Lenses

mursResponseStatus :: Lens' MeterUsageResponse Int #

  • - | The response status code.