{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.Google.Resource.AccessApproval.Projects.ApprovalRequests.Approve
(
ProjectsApprovalRequestsApproveResource
, projectsApprovalRequestsApprove
, ProjectsApprovalRequestsApprove
, paraXgafv
, paraUploadProtocol
, paraAccessToken
, paraUploadType
, paraPayload
, paraName
, paraCallback
) where
import Network.Google.AccessApproval.Types
import Network.Google.Prelude
type ProjectsApprovalRequestsApproveResource =
"v1beta1" :>
CaptureMode "name" "approve" Text :>
QueryParam "$.xgafv" Xgafv :>
QueryParam "upload_protocol" Text :>
QueryParam "access_token" Text :>
QueryParam "uploadType" Text :>
QueryParam "callback" Text :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] ApproveApprovalRequestMessage :>
Post '[JSON] ApprovalRequest
data ProjectsApprovalRequestsApprove =
ProjectsApprovalRequestsApprove'
{ _paraXgafv :: !(Maybe Xgafv)
, _paraUploadProtocol :: !(Maybe Text)
, _paraAccessToken :: !(Maybe Text)
, _paraUploadType :: !(Maybe Text)
, _paraPayload :: !ApproveApprovalRequestMessage
, _paraName :: !Text
, _paraCallback :: !(Maybe Text)
}
deriving (Eq, Show, Data, Typeable, Generic)
projectsApprovalRequestsApprove
:: ApproveApprovalRequestMessage
-> Text
-> ProjectsApprovalRequestsApprove
projectsApprovalRequestsApprove pParaPayload_ pParaName_ =
ProjectsApprovalRequestsApprove'
{ _paraXgafv = Nothing
, _paraUploadProtocol = Nothing
, _paraAccessToken = Nothing
, _paraUploadType = Nothing
, _paraPayload = pParaPayload_
, _paraName = pParaName_
, _paraCallback = Nothing
}
paraXgafv :: Lens' ProjectsApprovalRequestsApprove (Maybe Xgafv)
paraXgafv
= lens _paraXgafv (\ s a -> s{_paraXgafv = a})
paraUploadProtocol :: Lens' ProjectsApprovalRequestsApprove (Maybe Text)
paraUploadProtocol
= lens _paraUploadProtocol
(\ s a -> s{_paraUploadProtocol = a})
paraAccessToken :: Lens' ProjectsApprovalRequestsApprove (Maybe Text)
paraAccessToken
= lens _paraAccessToken
(\ s a -> s{_paraAccessToken = a})
paraUploadType :: Lens' ProjectsApprovalRequestsApprove (Maybe Text)
paraUploadType
= lens _paraUploadType
(\ s a -> s{_paraUploadType = a})
paraPayload :: Lens' ProjectsApprovalRequestsApprove ApproveApprovalRequestMessage
paraPayload
= lens _paraPayload (\ s a -> s{_paraPayload = a})
paraName :: Lens' ProjectsApprovalRequestsApprove Text
paraName = lens _paraName (\ s a -> s{_paraName = a})
paraCallback :: Lens' ProjectsApprovalRequestsApprove (Maybe Text)
paraCallback
= lens _paraCallback (\ s a -> s{_paraCallback = a})
instance GoogleRequest
ProjectsApprovalRequestsApprove
where
type Rs ProjectsApprovalRequestsApprove =
ApprovalRequest
type Scopes ProjectsApprovalRequestsApprove =
'["https://www.googleapis.com/auth/cloud-platform"]
requestClient ProjectsApprovalRequestsApprove'{..}
= go _paraName _paraXgafv _paraUploadProtocol
_paraAccessToken
_paraUploadType
_paraCallback
(Just AltJSON)
_paraPayload
accessApprovalService
where go
= buildClient
(Proxy ::
Proxy ProjectsApprovalRequestsApproveResource)
mempty