gogol-billing-0.1.1: Google Cloud Billing SDK.

Copyright(c) 2015-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.Google.Billing

Contents

Description

Retrieves Google Developers Console billing accounts and associates them with projects.

See: Google Cloud Billing API Reference

Synopsis

Service Configuration

billingService :: ServiceConfig Source #

Default request referring to version v1 of the Google Cloud Billing API. This contains the host and root path used as a starting point for constructing service requests.

OAuth Scopes

cloudPlatformScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform"] Source #

View and manage your data across Google Cloud Platform services

API Declaration

type BillingAPI = ProjectsGetBillingInfoResource :<|> (ProjectsUpdateBillingInfoResource :<|> (BillingAccountsProjectsListResource :<|> (BillingAccountsListResource :<|> BillingAccountsGetResource))) Source #

Represents the entirety of the methods and resources available for the Google Cloud Billing API service.

Resources

cloudbilling.billingAccounts.get

cloudbilling.billingAccounts.list

cloudbilling.billingAccounts.projects.list

cloudbilling.projects.getBillingInfo

cloudbilling.projects.updateBillingInfo

Types

BillingAccount

data BillingAccount Source #

A billing account in Google Developers Console. You can assign a billing account to one or more projects.

See: billingAccount smart constructor.

Instances

Eq BillingAccount Source # 
Data BillingAccount Source # 

Methods

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

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

toConstr :: BillingAccount -> Constr #

dataTypeOf :: BillingAccount -> DataType #

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

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

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

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

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

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

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

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

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

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

Show BillingAccount Source # 
Generic BillingAccount Source # 

Associated Types

type Rep BillingAccount :: * -> * #

ToJSON BillingAccount Source # 
FromJSON BillingAccount Source # 
type Rep BillingAccount Source # 
type Rep BillingAccount = D1 (MetaData "BillingAccount" "Network.Google.Billing.Types.Product" "gogol-billing-0.1.1-5JFYEAeOibf1WNB0wx8WEI" False) (C1 (MetaCons "BillingAccount'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_baOpen") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool))) ((:*:) (S1 (MetaSel (Just Symbol "_baName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_baDisplayName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))))))

billingAccount :: BillingAccount Source #

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

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

baOpen :: Lens' BillingAccount (Maybe Bool) Source #

True if the billing account is open, and will therefore be charged for any usage on associated projects. False if the billing account is closed, and therefore projects associated with it will be unable to use paid services.

baName :: Lens' BillingAccount (Maybe Text) Source #

The resource name of the billing account. The resource name has the form `billingAccounts/{billing_account_id}`. For example, `billingAccounts/012345-567890-ABCDEF` would be the resource name for billing account `012345-567890-ABCDEF`.

baDisplayName :: Lens' BillingAccount (Maybe Text) Source #

The display name given to the billing account, such as `My Billing Account`. This name is displayed in the Google Developers Console.

ProjectBillingInfo

data ProjectBillingInfo Source #

Encapsulation of billing information for a Developers Console project. A project has at most one associated billing account at a time (but a billing account can be assigned to multiple projects).

See: projectBillingInfo smart constructor.

Instances

Eq ProjectBillingInfo Source # 
Data ProjectBillingInfo Source # 

Methods

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

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

toConstr :: ProjectBillingInfo -> Constr #

dataTypeOf :: ProjectBillingInfo -> DataType #

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

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

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

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

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

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

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

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

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

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

Show ProjectBillingInfo Source # 
Generic ProjectBillingInfo Source # 
ToJSON ProjectBillingInfo Source # 
FromJSON ProjectBillingInfo Source # 
type Rep ProjectBillingInfo Source # 
type Rep ProjectBillingInfo = D1 (MetaData "ProjectBillingInfo" "Network.Google.Billing.Types.Product" "gogol-billing-0.1.1-5JFYEAeOibf1WNB0wx8WEI" False) (C1 (MetaCons "ProjectBillingInfo'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_pbiName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_pbiBillingAccountName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)))) ((:*:) (S1 (MetaSel (Just Symbol "_pbiProjectId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_pbiBillingEnabled") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool))))))

projectBillingInfo :: ProjectBillingInfo Source #

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

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

pbiName :: Lens' ProjectBillingInfo (Maybe Text) Source #

The resource name for the `ProjectBillingInfo`; has the form `projects/{project_id}/billingInfo`. For example, the resource name for the billing information for project `tokyo-rain-123` would be `projects/tokyo-rain-123/billingInfo`. This field is read-only.

pbiBillingAccountName :: Lens' ProjectBillingInfo (Maybe Text) Source #

The resource name of the billing account associated with the project, if any. For example, `billingAccounts/012345-567890-ABCDEF`.

pbiProjectId :: Lens' ProjectBillingInfo (Maybe Text) Source #

The ID of the project that this `ProjectBillingInfo` represents, such as `tokyo-rain-123`. This is a convenience field so that you don't need to parse the `name` field to obtain a project ID. This field is read-only.

pbiBillingEnabled :: Lens' ProjectBillingInfo (Maybe Bool) Source #

True if the project is associated with an open billing account, to which usage on the project is charged. False if the project is associated with a closed billing account, or no billing account at all, and therefore cannot use paid services. This field is read-only.

ListProjectBillingInfoResponse

data ListProjectBillingInfoResponse Source #

Request message for `ListProjectBillingInfoResponse`.

See: listProjectBillingInfoResponse smart constructor.

Instances

Eq ListProjectBillingInfoResponse Source # 
Data ListProjectBillingInfoResponse Source # 

Methods

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

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

toConstr :: ListProjectBillingInfoResponse -> Constr #

dataTypeOf :: ListProjectBillingInfoResponse -> DataType #

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

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

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

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

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

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

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

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

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

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

Show ListProjectBillingInfoResponse Source # 
Generic ListProjectBillingInfoResponse Source # 
ToJSON ListProjectBillingInfoResponse Source # 
FromJSON ListProjectBillingInfoResponse Source # 
type Rep ListProjectBillingInfoResponse Source # 
type Rep ListProjectBillingInfoResponse = D1 (MetaData "ListProjectBillingInfoResponse" "Network.Google.Billing.Types.Product" "gogol-billing-0.1.1-5JFYEAeOibf1WNB0wx8WEI" False) (C1 (MetaCons "ListProjectBillingInfoResponse'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_lpbirNextPageToken") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_lpbirProjectBillingInfo") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe [ProjectBillingInfo])))))

listProjectBillingInfoResponse :: ListProjectBillingInfoResponse Source #

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

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

lpbirNextPageToken :: Lens' ListProjectBillingInfoResponse (Maybe Text) Source #

A token to retrieve the next page of results. To retrieve the next page, call `ListProjectBillingInfo` again with the `page_token` field set to this value. This field is empty if there are no more results to retrieve.

lpbirProjectBillingInfo :: Lens' ListProjectBillingInfoResponse [ProjectBillingInfo] Source #

A list of `ProjectBillingInfo` resources representing the projects associated with the billing account.

ListBillingAccountsResponse

data ListBillingAccountsResponse Source #

Response message for `ListBillingAccounts`.

See: listBillingAccountsResponse smart constructor.

Instances

Eq ListBillingAccountsResponse Source # 
Data ListBillingAccountsResponse Source # 

Methods

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

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

toConstr :: ListBillingAccountsResponse -> Constr #

dataTypeOf :: ListBillingAccountsResponse -> DataType #

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

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

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

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

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

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

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

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

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

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

Show ListBillingAccountsResponse Source # 
Generic ListBillingAccountsResponse Source # 
ToJSON ListBillingAccountsResponse Source # 
FromJSON ListBillingAccountsResponse Source # 
type Rep ListBillingAccountsResponse Source # 
type Rep ListBillingAccountsResponse = D1 (MetaData "ListBillingAccountsResponse" "Network.Google.Billing.Types.Product" "gogol-billing-0.1.1-5JFYEAeOibf1WNB0wx8WEI" False) (C1 (MetaCons "ListBillingAccountsResponse'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_lbarNextPageToken") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_lbarBillingAccounts") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe [BillingAccount])))))

listBillingAccountsResponse :: ListBillingAccountsResponse Source #

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

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

lbarNextPageToken :: Lens' ListBillingAccountsResponse (Maybe Text) Source #

A token to retrieve the next page of results. To retrieve the next page, call `ListBillingAccounts` again with the `page_token` field set to this value. This field is empty if there are no more results to retrieve.