module Network.AWS.IAM.DeleteAccessKey
(
deleteAccessKey
, DeleteAccessKey
, dakUserName
, dakAccessKeyId
, deleteAccessKeyResponse
, DeleteAccessKeyResponse
) where
import Network.AWS.IAM.Types
import Network.AWS.IAM.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DeleteAccessKey = DeleteAccessKey'
{ _dakUserName :: !(Maybe Text)
, _dakAccessKeyId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteAccessKey
:: Text
-> DeleteAccessKey
deleteAccessKey pAccessKeyId_ =
DeleteAccessKey'
{ _dakUserName = Nothing
, _dakAccessKeyId = pAccessKeyId_
}
dakUserName :: Lens' DeleteAccessKey (Maybe Text)
dakUserName = lens _dakUserName (\ s a -> s{_dakUserName = a});
dakAccessKeyId :: Lens' DeleteAccessKey Text
dakAccessKeyId = lens _dakAccessKeyId (\ s a -> s{_dakAccessKeyId = a});
instance AWSRequest DeleteAccessKey where
type Rs DeleteAccessKey = DeleteAccessKeyResponse
request = postQuery iam
response = receiveNull DeleteAccessKeyResponse'
instance Hashable DeleteAccessKey
instance NFData DeleteAccessKey
instance ToHeaders DeleteAccessKey where
toHeaders = const mempty
instance ToPath DeleteAccessKey where
toPath = const "/"
instance ToQuery DeleteAccessKey where
toQuery DeleteAccessKey'{..}
= mconcat
["Action" =: ("DeleteAccessKey" :: ByteString),
"Version" =: ("2010-05-08" :: ByteString),
"UserName" =: _dakUserName,
"AccessKeyId" =: _dakAccessKeyId]
data DeleteAccessKeyResponse =
DeleteAccessKeyResponse'
deriving (Eq,Read,Show,Data,Typeable,Generic)
deleteAccessKeyResponse
:: DeleteAccessKeyResponse
deleteAccessKeyResponse = DeleteAccessKeyResponse'
instance NFData DeleteAccessKeyResponse