module Network.Google.Resource.Content.Accounts.Update
(
AccountsUpdateResource
, accountsUpdate
, AccountsUpdate
, au1MerchantId
, au1Payload
, au1AccountId
, au1DryRun
) where
import Network.Google.Prelude
import Network.Google.ShoppingContent.Types
type AccountsUpdateResource =
"content" :>
"v2" :>
Capture "merchantId" (Textual Word64) :>
"accounts" :>
Capture "accountId" (Textual Word64) :>
QueryParam "dryRun" Bool :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] Account :> Put '[JSON] Account
data AccountsUpdate = AccountsUpdate'
{ _au1MerchantId :: !(Textual Word64)
, _au1Payload :: !Account
, _au1AccountId :: !(Textual Word64)
, _au1DryRun :: !(Maybe Bool)
} deriving (Eq,Show,Data,Typeable,Generic)
accountsUpdate
:: Word64
-> Account
-> Word64
-> AccountsUpdate
accountsUpdate pAu1MerchantId_ pAu1Payload_ pAu1AccountId_ =
AccountsUpdate'
{ _au1MerchantId = _Coerce # pAu1MerchantId_
, _au1Payload = pAu1Payload_
, _au1AccountId = _Coerce # pAu1AccountId_
, _au1DryRun = Nothing
}
au1MerchantId :: Lens' AccountsUpdate Word64
au1MerchantId
= lens _au1MerchantId
(\ s a -> s{_au1MerchantId = a})
. _Coerce
au1Payload :: Lens' AccountsUpdate Account
au1Payload
= lens _au1Payload (\ s a -> s{_au1Payload = a})
au1AccountId :: Lens' AccountsUpdate Word64
au1AccountId
= lens _au1AccountId (\ s a -> s{_au1AccountId = a})
. _Coerce
au1DryRun :: Lens' AccountsUpdate (Maybe Bool)
au1DryRun
= lens _au1DryRun (\ s a -> s{_au1DryRun = a})
instance GoogleRequest AccountsUpdate where
type Rs AccountsUpdate = Account
type Scopes AccountsUpdate =
'["https://www.googleapis.com/auth/content"]
requestClient AccountsUpdate'{..}
= go _au1MerchantId _au1AccountId _au1DryRun
(Just AltJSON)
_au1Payload
shoppingContentService
where go
= buildClient (Proxy :: Proxy AccountsUpdateResource)
mempty