gogol-cloudidentity-1.0.0: gen/Gogol/CloudIdentity/Devices/DeviceUsers/Wipe.hs
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE ImportQualifiedPost #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
-- |
-- Module : Gogol.CloudIdentity.Devices.DeviceUsers.Wipe
-- Copyright : (c) 2015-2025 Brendan Hay
-- License : Mozilla Public License, v. 2.0.
-- Maintainer : Brendan Hay <brendan.g.hay+gogol@gmail.com>
-- Toni Cebrián <toni@tonicebrian.com>
-- Stability : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Wipes the user\'s account on a device. Other data on the device that is not associated with the user\'s work account is not affected. For example, if a Gmail app is installed on a device that is used for personal and work purposes, and the user is logged in to the Gmail app with their personal account as well as their work account, wiping the \"deviceUser\" by their work administrator will not affect their personal account within Gmail or other apps such as Photos.
--
-- /See:/ <https://cloud.google.com/identity/ Cloud Identity API Reference> for @cloudidentity.devices.deviceUsers.wipe@.
module Gogol.CloudIdentity.Devices.DeviceUsers.Wipe
( -- * Resource
CloudIdentityDevicesDeviceUsersWipeResource,
-- ** Constructing a Request
CloudIdentityDevicesDeviceUsersWipe (..),
newCloudIdentityDevicesDeviceUsersWipe,
)
where
import Gogol.CloudIdentity.Types
import Gogol.Prelude qualified as Core
-- | A resource alias for @cloudidentity.devices.deviceUsers.wipe@ method which the
-- 'CloudIdentityDevicesDeviceUsersWipe' request conforms to.
type CloudIdentityDevicesDeviceUsersWipeResource =
"v1"
Core.:> Core.CaptureMode "name" "wipe" Core.Text
Core.:> Core.QueryParam "$.xgafv" Xgafv
Core.:> Core.QueryParam "access_token" Core.Text
Core.:> Core.QueryParam "callback" Core.Text
Core.:> Core.QueryParam "uploadType" Core.Text
Core.:> Core.QueryParam "upload_protocol" Core.Text
Core.:> Core.QueryParam "alt" Core.AltJSON
Core.:> Core.ReqBody
'[Core.JSON]
GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest
Core.:> Core.Post '[Core.JSON] Operation
-- | Wipes the user\'s account on a device. Other data on the device that is not associated with the user\'s work account is not affected. For example, if a Gmail app is installed on a device that is used for personal and work purposes, and the user is logged in to the Gmail app with their personal account as well as their work account, wiping the \"deviceUser\" by their work administrator will not affect their personal account within Gmail or other apps such as Photos.
--
-- /See:/ 'newCloudIdentityDevicesDeviceUsersWipe' smart constructor.
data CloudIdentityDevicesDeviceUsersWipe = CloudIdentityDevicesDeviceUsersWipe
{ -- | V1 error format.
xgafv :: (Core.Maybe Xgafv),
-- | OAuth access token.
accessToken :: (Core.Maybe Core.Text),
-- | JSONP
callback :: (Core.Maybe Core.Text),
-- | Required. <https://cloud.google.com/apis/design/resource_names Resource name> of the Device in format: @devices\/{device}\/deviceUsers\/{device_user}@, where device is the unique ID assigned to the Device, and device_user is the unique ID assigned to the User.
name :: Core.Text,
-- | Multipart request metadata.
payload :: GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest,
-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
uploadType :: (Core.Maybe Core.Text),
-- | Upload protocol for media (e.g. \"raw\", \"multipart\").
uploadProtocol :: (Core.Maybe Core.Text)
}
deriving (Core.Eq, Core.Show, Core.Generic)
-- | Creates a value of 'CloudIdentityDevicesDeviceUsersWipe' with the minimum fields required to make a request.
newCloudIdentityDevicesDeviceUsersWipe ::
-- | Required. <https://cloud.google.com/apis/design/resource_names Resource name> of the Device in format: @devices\/{device}\/deviceUsers\/{device_user}@, where device is the unique ID assigned to the Device, and device_user is the unique ID assigned to the User. See 'name'.
Core.Text ->
-- | Multipart request metadata. See 'payload'.
GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest ->
CloudIdentityDevicesDeviceUsersWipe
newCloudIdentityDevicesDeviceUsersWipe name payload =
CloudIdentityDevicesDeviceUsersWipe
{ xgafv = Core.Nothing,
accessToken = Core.Nothing,
callback = Core.Nothing,
name = name,
payload = payload,
uploadType = Core.Nothing,
uploadProtocol = Core.Nothing
}
instance Core.GoogleRequest CloudIdentityDevicesDeviceUsersWipe where
type Rs CloudIdentityDevicesDeviceUsersWipe = Operation
type
Scopes CloudIdentityDevicesDeviceUsersWipe =
'[CloudIdentity'Devices]
requestClient CloudIdentityDevicesDeviceUsersWipe {..} =
go
name
xgafv
accessToken
callback
uploadType
uploadProtocol
(Core.Just Core.AltJSON)
payload
cloudIdentityService
where
go =
Core.buildClient
( Core.Proxy ::
Core.Proxy CloudIdentityDevicesDeviceUsersWipeResource
)
Core.mempty