gogol-admin-directory (empty) → 0.0.1
raw patch · 97 files changed
+18377/−0 lines, 97 filesdep +basedep +gogol-coresetup-changed
Dependencies added: base, gogol-core
Files
- LICENSE +367/−0
- README.md +28/−0
- Setup.hs +2/−0
- gen/Network/Google/Directory.hs +1168/−0
- gen/Network/Google/Directory/Types.hs +838/−0
- gen/Network/Google/Directory/Types/Product.hs +5677/−0
- gen/Network/Google/Directory/Types/Sum.hs +862/−0
- gen/Network/Google/Resource/Admin/Channels/Stop.hs +86/−0
- gen/Network/Google/Resource/Directory/Asps/Delete.hs +99/−0
- gen/Network/Google/Resource/Directory/Asps/Get.hs +98/−0
- gen/Network/Google/Resource/Directory/Asps/List.hs +85/−0
- gen/Network/Google/Resource/Directory/ChromeosDevices/Get.hs +115/−0
- gen/Network/Google/Resource/Directory/ChromeosDevices/List.hs +166/−0
- gen/Network/Google/Resource/Directory/ChromeosDevices/Patch.hs +129/−0
- gen/Network/Google/Resource/Directory/ChromeosDevices/Update.hs +129/−0
- gen/Network/Google/Resource/Directory/Customers/Get.hs +84/−0
- gen/Network/Google/Resource/Directory/Customers/Patch.hs +97/−0
- gen/Network/Google/Resource/Directory/Customers/Update.hs +98/−0
- gen/Network/Google/Resource/Directory/DomainAliases/Delete.hs +99/−0
- gen/Network/Google/Resource/Directory/DomainAliases/Get.hs +99/−0
- gen/Network/Google/Resource/Directory/DomainAliases/Insert.hs +99/−0
- gen/Network/Google/Resource/Directory/DomainAliases/List.hs +98/−0
- gen/Network/Google/Resource/Directory/Domains/Delete.hs +97/−0
- gen/Network/Google/Resource/Directory/Domains/Get.hs +97/−0
- gen/Network/Google/Resource/Directory/Domains/Insert.hs +97/−0
- gen/Network/Google/Resource/Directory/Domains/List.hs +84/−0
- gen/Network/Google/Resource/Directory/Groups/Aliases/Delete.hs +97/−0
- gen/Network/Google/Resource/Directory/Groups/Aliases/Insert.hs +98/−0
- gen/Network/Google/Resource/Directory/Groups/Aliases/List.hs +85/−0
- gen/Network/Google/Resource/Directory/Groups/Delete.hs +83/−0
- gen/Network/Google/Resource/Directory/Groups/Get.hs +83/−0
- gen/Network/Google/Resource/Directory/Groups/Insert.hs +83/−0
- gen/Network/Google/Resource/Directory/Groups/List.hs +133/−0
- gen/Network/Google/Resource/Directory/Groups/Patch.hs +97/−0
- gen/Network/Google/Resource/Directory/Groups/Update.hs +97/−0
- gen/Network/Google/Resource/Directory/Members/Delete.hs +97/−0
- gen/Network/Google/Resource/Directory/Members/Get.hs +97/−0
- gen/Network/Google/Resource/Directory/Members/Insert.hs +97/−0
- gen/Network/Google/Resource/Directory/Members/List.hs +119/−0
- gen/Network/Google/Resource/Directory/Members/Patch.hs +114/−0
- gen/Network/Google/Resource/Directory/Members/Update.hs +112/−0
- gen/Network/Google/Resource/Directory/MobileDevices/Action.hs +115/−0
- gen/Network/Google/Resource/Directory/MobileDevices/Delete.hs +101/−0
- gen/Network/Google/Resource/Directory/MobileDevices/Get.hs +114/−0
- gen/Network/Google/Resource/Directory/MobileDevices/List.hs +165/−0
- gen/Network/Google/Resource/Directory/Notifications/Delete.hs +100/−0
- gen/Network/Google/Resource/Directory/Notifications/Get.hs +100/−0
- gen/Network/Google/Resource/Directory/Notifications/List.hs +123/−0
- gen/Network/Google/Resource/Directory/Notifications/Patch.hs +113/−0
- gen/Network/Google/Resource/Directory/Notifications/Update.hs +113/−0
- gen/Network/Google/Resource/Directory/OrgUnits/Delete.hs +100/−0
- gen/Network/Google/Resource/Directory/OrgUnits/Get.hs +100/−0
- gen/Network/Google/Resource/Directory/OrgUnits/Insert.hs +98/−0
- gen/Network/Google/Resource/Directory/OrgUnits/List.hs +109/−0
- gen/Network/Google/Resource/Directory/OrgUnits/Patch.hs +113/−0
- gen/Network/Google/Resource/Directory/OrgUnits/Update.hs +113/−0
- gen/Network/Google/Resource/Directory/Privileges/List.hs +86/−0
- gen/Network/Google/Resource/Directory/RoleAssignments/Delete.hs +99/−0
- gen/Network/Google/Resource/Directory/RoleAssignments/Get.hs +100/−0
- gen/Network/Google/Resource/Directory/RoleAssignments/Insert.hs +99/−0
- gen/Network/Google/Resource/Directory/RoleAssignments/List.hs +139/−0
- gen/Network/Google/Resource/Directory/Roles/Delete.hs +96/−0
- gen/Network/Google/Resource/Directory/Roles/Get.hs +96/−0
- gen/Network/Google/Resource/Directory/Roles/Insert.hs +97/−0
- gen/Network/Google/Resource/Directory/Roles/List.hs +109/−0
- gen/Network/Google/Resource/Directory/Roles/Patch.hs +108/−0
- gen/Network/Google/Resource/Directory/Roles/Update.hs +108/−0
- gen/Network/Google/Resource/Directory/Schemas/Delete.hs +97/−0
- gen/Network/Google/Resource/Directory/Schemas/Get.hs +97/−0
- gen/Network/Google/Resource/Directory/Schemas/Insert.hs +97/−0
- gen/Network/Google/Resource/Directory/Schemas/List.hs +84/−0
- gen/Network/Google/Resource/Directory/Schemas/Patch.hs +110/−0
- gen/Network/Google/Resource/Directory/Schemas/Update.hs +110/−0
- gen/Network/Google/Resource/Directory/Tokens/Delete.hs +98/−0
- gen/Network/Google/Resource/Directory/Tokens/Get.hs +98/−0
- gen/Network/Google/Resource/Directory/Tokens/List.hs +87/−0
- gen/Network/Google/Resource/Directory/Users/Aliases/Delete.hs +97/−0
- gen/Network/Google/Resource/Directory/Users/Aliases/Insert.hs +98/−0
- gen/Network/Google/Resource/Directory/Users/Aliases/List.hs +96/−0
- gen/Network/Google/Resource/Directory/Users/Aliases/Watch.hs +109/−0
- gen/Network/Google/Resource/Directory/Users/Delete.hs +83/−0
- gen/Network/Google/Resource/Directory/Users/Get.hs +121/−0
- gen/Network/Google/Resource/Directory/Users/Insert.hs +83/−0
- gen/Network/Google/Resource/Directory/Users/List.hs +220/−0
- gen/Network/Google/Resource/Directory/Users/MakeAdmin.hs +97/−0
- gen/Network/Google/Resource/Directory/Users/Patch.hs +97/−0
- gen/Network/Google/Resource/Directory/Users/Photos/Delete.hs +86/−0
- gen/Network/Google/Resource/Directory/Users/Photos/Get.hs +85/−0
- gen/Network/Google/Resource/Directory/Users/Photos/Patch.hs +99/−0
- gen/Network/Google/Resource/Directory/Users/Photos/Update.hs +99/−0
- gen/Network/Google/Resource/Directory/Users/Undelete.hs +97/−0
- gen/Network/Google/Resource/Directory/Users/Update.hs +95/−0
- gen/Network/Google/Resource/Directory/Users/Watch.hs +234/−0
- gen/Network/Google/Resource/Directory/VerificationCodes/Generate.hs +87/−0
- gen/Network/Google/Resource/Directory/VerificationCodes/Invalidate.hs +87/−0
- gen/Network/Google/Resource/Directory/VerificationCodes/List.hs +89/−0
- gogol-admin-directory.cabal +136/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,28 @@+# gogol-admin-directory++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version++`0.0.1`+++## Description++A client library for the Google Admin Directory.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`gogol-admin-directory` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ gen/Network/Google/Directory.hs view
@@ -0,0 +1,1168 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- |+-- Module : Network.Google.Directory+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- The Admin SDK Directory API lets you view and manage enterprise+-- resources such as users and groups, administrative notifications,+-- security features, and more.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference>+module Network.Google.Directory+ (+ -- * Service Configuration+ directoryService++ -- * API Declaration+ , DirectoryAPI++ -- * Resources++ -- ** admin.channels.stop+ , module Network.Google.Resource.Admin.Channels.Stop++ -- ** directory.asps.delete+ , module Network.Google.Resource.Directory.Asps.Delete++ -- ** directory.asps.get+ , module Network.Google.Resource.Directory.Asps.Get++ -- ** directory.asps.list+ , module Network.Google.Resource.Directory.Asps.List++ -- ** directory.chromeosdevices.get+ , module Network.Google.Resource.Directory.ChromeosDevices.Get++ -- ** directory.chromeosdevices.list+ , module Network.Google.Resource.Directory.ChromeosDevices.List++ -- ** directory.chromeosdevices.patch+ , module Network.Google.Resource.Directory.ChromeosDevices.Patch++ -- ** directory.chromeosdevices.update+ , module Network.Google.Resource.Directory.ChromeosDevices.Update++ -- ** directory.customers.get+ , module Network.Google.Resource.Directory.Customers.Get++ -- ** directory.customers.patch+ , module Network.Google.Resource.Directory.Customers.Patch++ -- ** directory.customers.update+ , module Network.Google.Resource.Directory.Customers.Update++ -- ** directory.domainAliases.delete+ , module Network.Google.Resource.Directory.DomainAliases.Delete++ -- ** directory.domainAliases.get+ , module Network.Google.Resource.Directory.DomainAliases.Get++ -- ** directory.domainAliases.insert+ , module Network.Google.Resource.Directory.DomainAliases.Insert++ -- ** directory.domainAliases.list+ , module Network.Google.Resource.Directory.DomainAliases.List++ -- ** directory.domains.delete+ , module Network.Google.Resource.Directory.Domains.Delete++ -- ** directory.domains.get+ , module Network.Google.Resource.Directory.Domains.Get++ -- ** directory.domains.insert+ , module Network.Google.Resource.Directory.Domains.Insert++ -- ** directory.domains.list+ , module Network.Google.Resource.Directory.Domains.List++ -- ** directory.groups.aliases.delete+ , module Network.Google.Resource.Directory.Groups.Aliases.Delete++ -- ** directory.groups.aliases.insert+ , module Network.Google.Resource.Directory.Groups.Aliases.Insert++ -- ** directory.groups.aliases.list+ , module Network.Google.Resource.Directory.Groups.Aliases.List++ -- ** directory.groups.delete+ , module Network.Google.Resource.Directory.Groups.Delete++ -- ** directory.groups.get+ , module Network.Google.Resource.Directory.Groups.Get++ -- ** directory.groups.insert+ , module Network.Google.Resource.Directory.Groups.Insert++ -- ** directory.groups.list+ , module Network.Google.Resource.Directory.Groups.List++ -- ** directory.groups.patch+ , module Network.Google.Resource.Directory.Groups.Patch++ -- ** directory.groups.update+ , module Network.Google.Resource.Directory.Groups.Update++ -- ** directory.members.delete+ , module Network.Google.Resource.Directory.Members.Delete++ -- ** directory.members.get+ , module Network.Google.Resource.Directory.Members.Get++ -- ** directory.members.insert+ , module Network.Google.Resource.Directory.Members.Insert++ -- ** directory.members.list+ , module Network.Google.Resource.Directory.Members.List++ -- ** directory.members.patch+ , module Network.Google.Resource.Directory.Members.Patch++ -- ** directory.members.update+ , module Network.Google.Resource.Directory.Members.Update++ -- ** directory.mobiledevices.action+ , module Network.Google.Resource.Directory.MobileDevices.Action++ -- ** directory.mobiledevices.delete+ , module Network.Google.Resource.Directory.MobileDevices.Delete++ -- ** directory.mobiledevices.get+ , module Network.Google.Resource.Directory.MobileDevices.Get++ -- ** directory.mobiledevices.list+ , module Network.Google.Resource.Directory.MobileDevices.List++ -- ** directory.notifications.delete+ , module Network.Google.Resource.Directory.Notifications.Delete++ -- ** directory.notifications.get+ , module Network.Google.Resource.Directory.Notifications.Get++ -- ** directory.notifications.list+ , module Network.Google.Resource.Directory.Notifications.List++ -- ** directory.notifications.patch+ , module Network.Google.Resource.Directory.Notifications.Patch++ -- ** directory.notifications.update+ , module Network.Google.Resource.Directory.Notifications.Update++ -- ** directory.orgunits.delete+ , module Network.Google.Resource.Directory.OrgUnits.Delete++ -- ** directory.orgunits.get+ , module Network.Google.Resource.Directory.OrgUnits.Get++ -- ** directory.orgunits.insert+ , module Network.Google.Resource.Directory.OrgUnits.Insert++ -- ** directory.orgunits.list+ , module Network.Google.Resource.Directory.OrgUnits.List++ -- ** directory.orgunits.patch+ , module Network.Google.Resource.Directory.OrgUnits.Patch++ -- ** directory.orgunits.update+ , module Network.Google.Resource.Directory.OrgUnits.Update++ -- ** directory.privileges.list+ , module Network.Google.Resource.Directory.Privileges.List++ -- ** directory.roleAssignments.delete+ , module Network.Google.Resource.Directory.RoleAssignments.Delete++ -- ** directory.roleAssignments.get+ , module Network.Google.Resource.Directory.RoleAssignments.Get++ -- ** directory.roleAssignments.insert+ , module Network.Google.Resource.Directory.RoleAssignments.Insert++ -- ** directory.roleAssignments.list+ , module Network.Google.Resource.Directory.RoleAssignments.List++ -- ** directory.roles.delete+ , module Network.Google.Resource.Directory.Roles.Delete++ -- ** directory.roles.get+ , module Network.Google.Resource.Directory.Roles.Get++ -- ** directory.roles.insert+ , module Network.Google.Resource.Directory.Roles.Insert++ -- ** directory.roles.list+ , module Network.Google.Resource.Directory.Roles.List++ -- ** directory.roles.patch+ , module Network.Google.Resource.Directory.Roles.Patch++ -- ** directory.roles.update+ , module Network.Google.Resource.Directory.Roles.Update++ -- ** directory.schemas.delete+ , module Network.Google.Resource.Directory.Schemas.Delete++ -- ** directory.schemas.get+ , module Network.Google.Resource.Directory.Schemas.Get++ -- ** directory.schemas.insert+ , module Network.Google.Resource.Directory.Schemas.Insert++ -- ** directory.schemas.list+ , module Network.Google.Resource.Directory.Schemas.List++ -- ** directory.schemas.patch+ , module Network.Google.Resource.Directory.Schemas.Patch++ -- ** directory.schemas.update+ , module Network.Google.Resource.Directory.Schemas.Update++ -- ** directory.tokens.delete+ , module Network.Google.Resource.Directory.Tokens.Delete++ -- ** directory.tokens.get+ , module Network.Google.Resource.Directory.Tokens.Get++ -- ** directory.tokens.list+ , module Network.Google.Resource.Directory.Tokens.List++ -- ** directory.users.aliases.delete+ , module Network.Google.Resource.Directory.Users.Aliases.Delete++ -- ** directory.users.aliases.insert+ , module Network.Google.Resource.Directory.Users.Aliases.Insert++ -- ** directory.users.aliases.list+ , module Network.Google.Resource.Directory.Users.Aliases.List++ -- ** directory.users.aliases.watch+ , module Network.Google.Resource.Directory.Users.Aliases.Watch++ -- ** directory.users.delete+ , module Network.Google.Resource.Directory.Users.Delete++ -- ** directory.users.get+ , module Network.Google.Resource.Directory.Users.Get++ -- ** directory.users.insert+ , module Network.Google.Resource.Directory.Users.Insert++ -- ** directory.users.list+ , module Network.Google.Resource.Directory.Users.List++ -- ** directory.users.makeAdmin+ , module Network.Google.Resource.Directory.Users.MakeAdmin++ -- ** directory.users.patch+ , module Network.Google.Resource.Directory.Users.Patch++ -- ** directory.users.photos.delete+ , module Network.Google.Resource.Directory.Users.Photos.Delete++ -- ** directory.users.photos.get+ , module Network.Google.Resource.Directory.Users.Photos.Get++ -- ** directory.users.photos.patch+ , module Network.Google.Resource.Directory.Users.Photos.Patch++ -- ** directory.users.photos.update+ , module Network.Google.Resource.Directory.Users.Photos.Update++ -- ** directory.users.undelete+ , module Network.Google.Resource.Directory.Users.Undelete++ -- ** directory.users.update+ , module Network.Google.Resource.Directory.Users.Update++ -- ** directory.users.watch+ , module Network.Google.Resource.Directory.Users.Watch++ -- ** directory.verificationCodes.generate+ , module Network.Google.Resource.Directory.VerificationCodes.Generate++ -- ** directory.verificationCodes.invalidate+ , module Network.Google.Resource.Directory.VerificationCodes.Invalidate++ -- ** directory.verificationCodes.list+ , module Network.Google.Resource.Directory.VerificationCodes.List++ -- * Types++ -- ** VerificationCode+ , VerificationCode+ , verificationCode+ , vcVerificationCode+ , vcEtag+ , vcKind+ , vcUserId++ -- ** OrgUnit+ , OrgUnit+ , orgUnit+ , ouEtag+ , ouParentOrgUnitPath+ , ouKind+ , ouOrgUnitPath+ , ouName+ , ouBlockInheritance+ , ouParentOrgUnitId+ , ouDescription+ , ouOrgUnitId++ -- ** UserMakeAdmin+ , UserMakeAdmin+ , userMakeAdmin+ , umaStatus++ -- ** UserAbout+ , UserAbout+ , userAbout+ , uaValue+ , uaContentType++ -- ** UsersListEvent+ , UsersListEvent (..)++ -- ** Privileges+ , Privileges+ , privileges+ , pEtag+ , pKind+ , pItems++ -- ** Groups+ , Groups+ , groups+ , gGroups+ , gEtag+ , gNextPageToken+ , gKind++ -- ** UsersAliasesListEvent+ , UsersAliasesListEvent (..)++ -- ** RoleAssignments+ , RoleAssignments+ , roleAssignments+ , raEtag+ , raNextPageToken+ , raKind+ , raItems++ -- ** Privilege+ , Privilege+ , privilege+ , priEtag+ , priIsOuScopable+ , priKind+ , priServiceName+ , priServiceId+ , priPrivilegeName+ , priChildPrivileges++ -- ** UsersAliasesWatchEvent+ , UsersAliasesWatchEvent (..)++ -- ** Roles+ , Roles+ , roles+ , rEtag+ , rNextPageToken+ , rKind+ , rItems++ -- ** UsersWatchEvent+ , UsersWatchEvent (..)++ -- ** UserAddress+ , UserAddress+ , userAddress+ , uaStreetAddress+ , uaPoBox+ , uaCountry+ , uaPostalCode+ , uaFormatted+ , uaExtendedAddress+ , uaLocality+ , uaPrimary+ , uaCountryCode+ , uaRegion+ , uaType+ , uaCustomType+ , uaSourceIsStructured++ -- ** CustomerPostalAddress+ , CustomerPostalAddress+ , customerPostalAddress+ , cpaOrganizationName+ , cpaPostalCode+ , cpaAddressLine1+ , cpaLocality+ , cpaContactName+ , cpaAddressLine2+ , cpaCountryCode+ , cpaRegion+ , cpaAddressLine3++ -- ** RoleAssignment+ , RoleAssignment+ , roleAssignment+ , rolEtag+ , rolScopeType+ , rolKind+ , rolAssignedTo+ , rolRoleId+ , rolRoleAssignmentId+ , rolOrgUnitId++ -- ** Group+ , Group+ , group'+ , groEmail+ , groEtag+ , groDirectMembersCount+ , groKind+ , groAliases+ , groNonEditableAliases+ , groName+ , groAdminCreated+ , groId+ , groDescription++ -- ** ChromeOSDevice+ , ChromeOSDevice+ , chromeOSDevice+ , codStatus+ , codEtag+ , codAnnotatedUser+ , codPlatformVersion+ , codLastSync+ , codActiveTimeRanges+ , codKind+ , codEthernetMACAddress+ , codLastEnrollmentTime+ , codAnnotatedLocation+ , codMACAddress+ , codOrgUnitPath+ , codRecentUsers+ , codSupportEndDate+ , codModel+ , codWillAutoRenew+ , codMeid+ , codDeviceId+ , codBootMode+ , codOrderNumber+ , codAnnotatedAssetId+ , codNotes+ , codSerialNumber+ , codFirmwareVersion+ , codOSVersion++ -- ** ChromeosDevicesPatchProjection+ , ChromeosDevicesPatchProjection (..)++ -- ** ChromeosDevicesGetProjection+ , ChromeosDevicesGetProjection (..)++ -- ** Users+ , Users+ , users+ , uEtag+ , uNextPageToken+ , uUsers+ , uKind+ , uTriggerEvent++ -- ** Asp+ , Asp+ , asp+ , aCreationTime+ , aEtag+ , aCodeId+ , aKind+ , aName+ , aLastTimeUsed+ , aUserKey++ -- ** Schemas+ , Schemas+ , schemas+ , sEtag+ , sSchemas+ , sKind++ -- ** UsersListViewType+ , UsersListViewType (..)++ -- ** OrgUnitsListType+ , OrgUnitsListType (..)++ -- ** Notification+ , Notification+ , notification+ , nSubject+ , nEtag+ , nKind+ , nBody+ , nFromAddress+ , nIsUnread+ , nNotificationId+ , nSendTime++ -- ** MobileDevicesListSortOrder+ , MobileDevicesListSortOrder (..)++ -- ** UserIm+ , UserIm+ , userIm+ , uiIm+ , uiProtocol+ , uiPrimary+ , uiCustomProtocol+ , uiType+ , uiCustomType++ -- ** UsersListOrderBy+ , UsersListOrderBy (..)++ -- ** Tokens+ , Tokens+ , tokens+ , tEtag+ , tKind+ , tItems++ -- ** UserCustomSchemas+ , UserCustomSchemas+ , userCustomSchemas+ , ucsAddtional++ -- ** DomainAliases+ , DomainAliases+ , domainAliases+ , daEtag+ , daKind+ , daDomainAliases++ -- ** Aliases+ , Aliases+ , aliases+ , aliEtag+ , aliKind+ , aliAliases++ -- ** UserUndelete+ , UserUndelete+ , userUndelete+ , uuOrgUnitPath++ -- ** Members+ , Members+ , members+ , mEtag+ , mNextPageToken+ , mKind+ , mMembers++ -- ** Channel+ , Channel+ , channel+ , cResourceURI+ , cResourceId+ , cKind+ , cExpiration+ , cToken+ , cAddress+ , cPayload+ , cParams+ , cId+ , cType++ -- ** MobileDevices+ , MobileDevices+ , mobileDevices+ , mdEtag+ , mdNextPageToken+ , mdKind+ , mdMobileDevices++ -- ** Token+ , Token+ , token+ , tokClientId+ , tokEtag+ , tokDisplayText+ , tokKind+ , tokScopes+ , tokNATiveApp+ , tokAnonymous+ , tokUserKey++ -- ** UserName+ , UserName+ , userName+ , unGivenName+ , unFullName+ , unFamilyName++ -- ** UsersWatchViewType+ , UsersWatchViewType (..)++ -- ** ChromeOSDeviceRecentUsersItem+ , ChromeOSDeviceRecentUsersItem+ , chromeOSDeviceRecentUsersItem+ , codruiEmail+ , codruiType++ -- ** DomainAlias+ , DomainAlias+ , domainAlias+ , dCreationTime+ , dEtag+ , dKind+ , dVerified+ , dDomainAliasName+ , dParentDomainName++ -- ** Alias+ , Alias+ , alias+ , aaEtag+ , aaKind+ , aaAlias+ , aaId+ , aaPrimaryEmail++ -- ** UsersGetProjection+ , UsersGetProjection (..)++ -- ** Schema+ , Schema+ , schema+ , schEtag+ , schKind+ , schSchemaName+ , schSchemaId+ , schFields++ -- ** User+ , User+ , user+ , useCreationTime+ , useLastLoginTime+ , useThumbnailPhotoEtag+ , useEtag+ , useIPWhiteListed+ , useRelations+ , useHashFunction+ , useKind+ , useChangePasswordAtNextLogin+ , useWebsites+ , useAddresses+ , useAliases+ , useThumbnailPhotoURL+ , useExternalIds+ , useSuspended+ , useAgreedToTerms+ , useDeletionTime+ , useNonEditableAliases+ , useOrgUnitPath+ , useCustomerId+ , useIncludeInGlobalAddressList+ , usePhones+ , useName+ , usePassword+ , useEmails+ , useIms+ , useIsAdmin+ , useId+ , useOrganizations+ , usePrimaryEmail+ , useNotes+ , useIsDelegatedAdmin+ , useIsMailboxSetup+ , useCustomSchemas+ , useSuspensionReason++ -- ** MobileDevicesListProjection+ , MobileDevicesListProjection (..)++ -- ** Role+ , Role+ , role+ , rrEtag+ , rrKind+ , rrRoleName+ , rrIsSystemRole+ , rrRoleId+ , rrRoleDescription+ , rrIsSuperAdminRole+ , rrRolePrivileges++ -- ** Customer+ , Customer+ , customer+ , cusEtag+ , cusKind+ , cusAlternateEmail+ , cusCustomerDomain+ , cusPhoneNumber+ , cusLanguage+ , cusId+ , cusCustomerCreationTime+ , cusPostalAddress++ -- ** MobileDeviceApplicationsItem+ , MobileDeviceApplicationsItem+ , mobileDeviceApplicationsItem+ , mdaiVersionCode+ , mdaiVersionName+ , mdaiPackageName+ , mdaiDisplayName+ , mdaiPermission++ -- ** MobileDevicesListOrderBy+ , MobileDevicesListOrderBy (..)++ -- ** UsersListSortOrder+ , UsersListSortOrder (..)++ -- ** OrgUnits+ , OrgUnits+ , orgUnits+ , oEtag+ , oKind+ , oOrganizationUnits++ -- ** VerificationCodes+ , VerificationCodes+ , verificationCodes+ , vEtag+ , vKind+ , vItems++ -- ** ChromeosDevicesListSortOrder+ , ChromeosDevicesListSortOrder (..)++ -- ** UserRelation+ , UserRelation+ , userRelation+ , urValue+ , urType+ , urCustomType++ -- ** UsersWatchSortOrder+ , UsersWatchSortOrder (..)++ -- ** ChannelParams+ , ChannelParams+ , channelParams+ , cpAddtional++ -- ** UserOrganization+ , UserOrganization+ , userOrganization+ , uoDePartment+ , uoLocation+ , uoCostCenter+ , uoDomain+ , uoSymbol+ , uoPrimary+ , uoName+ , uoTitle+ , uoType+ , uoCustomType+ , uoDescription++ -- ** UserWebsite+ , UserWebsite+ , userWebsite+ , uwValue+ , uwPrimary+ , uwType+ , uwCustomType++ -- ** ChromeOSDeviceActiveTimeRangesItem+ , ChromeOSDeviceActiveTimeRangesItem+ , chromeOSDeviceActiveTimeRangesItem+ , codatriDate+ , codatriActiveTime++ -- ** UserEmail+ , UserEmail+ , userEmail+ , ueAddress+ , uePrimary+ , ueType+ , ueCustomType++ -- ** UserPhone+ , UserPhone+ , userPhone+ , upValue+ , upPrimary+ , upType+ , upCustomType++ -- ** UserPhoto+ , UserPhoto+ , userPhoto+ , upPhotoData+ , upEtag+ , upHeight+ , upKind+ , upWidth+ , upMimeType+ , upId+ , upPrimaryEmail++ -- ** UsersListProjection+ , UsersListProjection (..)++ -- ** ChromeosDevicesUpdateProjection+ , ChromeosDevicesUpdateProjection (..)++ -- ** MobileDevicesGetProjection+ , MobileDevicesGetProjection (..)++ -- ** MobileDevice+ , MobileDevice+ , mobileDevice+ , mobEmail+ , mobStatus+ , mobEtag+ , mobResourceId+ , mobBuildNumber+ , mobManagedAccountIsOnOwnerProFile+ , mobLastSync+ , mobOtherAccountsInfo+ , mobKind+ , mobAdbStatus+ , mobNetworkOperator+ , mobKernelVersion+ , mobOS+ , mobName+ , mobModel+ , mobDeveloperOptionsStatus+ , mobUnknownSourcesStatus+ , mobMeid+ , mobDeviceId+ , mobFirstSync+ , mobUserAgent+ , mobImei+ , mobType+ , mobWifiMACAddress+ , mobSerialNumber+ , mobHardwareId+ , mobBasebandVersion+ , mobSupportsWorkProFile+ , mobDeviceCompromisedStatus+ , mobApplications+ , mobDefaultLanguage++ -- ** Member+ , Member+ , member+ , memEmail+ , memEtag+ , memKind+ , memRole+ , memId+ , memType++ -- ** UserCustomProperties+ , UserCustomProperties+ , userCustomProperties+ , ucpAddtional++ -- ** Domains+ , Domains+ , domains+ , domCreationTime+ , domEtag+ , domKind+ , domDomainAliases+ , domVerified+ , domDomainName+ , domIsPrimary++ -- ** ChromeosDevicesListOrderBy+ , ChromeosDevicesListOrderBy (..)++ -- ** UsersWatchProjection+ , UsersWatchProjection (..)++ -- ** UsersWatchOrderBy+ , UsersWatchOrderBy (..)++ -- ** Notifications+ , Notifications+ , notifications+ , notEtag+ , notNextPageToken+ , notKind+ , notItems+ , notUnreadNotificationsCount++ -- ** ChromeosDevicesListProjection+ , ChromeosDevicesListProjection (..)++ -- ** SchemaFieldSpecNumericIndexingSpec+ , SchemaFieldSpecNumericIndexingSpec+ , schemaFieldSpecNumericIndexingSpec+ , sfsnisMaxValue+ , sfsnisMinValue++ -- ** MobileDeviceAction+ , MobileDeviceAction+ , mobileDeviceAction+ , mdaAction++ -- ** SchemaFieldSpec+ , SchemaFieldSpec+ , schemaFieldSpec+ , sfsEtag+ , sfsKind+ , sfsNumericIndexingSpec+ , sfsReadAccessType+ , sfsFieldId+ , sfsIndexed+ , sfsFieldType+ , sfsFieldName+ , sfsMultiValued++ -- ** ChromeOSDevices+ , ChromeOSDevices+ , chromeOSDevices+ , cosdEtag+ , cosdNextPageToken+ , cosdKind+ , cosdChromeosDevices++ -- ** UserExternalId+ , UserExternalId+ , userExternalId+ , ueiValue+ , ueiType+ , ueiCustomType++ -- ** Asps+ , Asps+ , asps+ , aspEtag+ , aspKind+ , aspItems++ -- ** UsersGetViewType+ , UsersGetViewType (..)++ -- ** RoleRolePrivilegesItem+ , RoleRolePrivilegesItem+ , roleRolePrivilegesItem+ , rrpiServiceId+ , rrpiPrivilegeName++ -- ** Domains2+ , Domains2+ , domains2+ , ddEtag+ , ddKind+ , ddDomains+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude+import Network.Google.Resource.Admin.Channels.Stop+import Network.Google.Resource.Directory.Asps.Delete+import Network.Google.Resource.Directory.Asps.Get+import Network.Google.Resource.Directory.Asps.List+import Network.Google.Resource.Directory.ChromeosDevices.Get+import Network.Google.Resource.Directory.ChromeosDevices.List+import Network.Google.Resource.Directory.ChromeosDevices.Patch+import Network.Google.Resource.Directory.ChromeosDevices.Update+import Network.Google.Resource.Directory.Customers.Get+import Network.Google.Resource.Directory.Customers.Patch+import Network.Google.Resource.Directory.Customers.Update+import Network.Google.Resource.Directory.DomainAliases.Delete+import Network.Google.Resource.Directory.DomainAliases.Get+import Network.Google.Resource.Directory.DomainAliases.Insert+import Network.Google.Resource.Directory.DomainAliases.List+import Network.Google.Resource.Directory.Domains.Delete+import Network.Google.Resource.Directory.Domains.Get+import Network.Google.Resource.Directory.Domains.Insert+import Network.Google.Resource.Directory.Domains.List+import Network.Google.Resource.Directory.Groups.Aliases.Delete+import Network.Google.Resource.Directory.Groups.Aliases.Insert+import Network.Google.Resource.Directory.Groups.Aliases.List+import Network.Google.Resource.Directory.Groups.Delete+import Network.Google.Resource.Directory.Groups.Get+import Network.Google.Resource.Directory.Groups.Insert+import Network.Google.Resource.Directory.Groups.List+import Network.Google.Resource.Directory.Groups.Patch+import Network.Google.Resource.Directory.Groups.Update+import Network.Google.Resource.Directory.Members.Delete+import Network.Google.Resource.Directory.Members.Get+import Network.Google.Resource.Directory.Members.Insert+import Network.Google.Resource.Directory.Members.List+import Network.Google.Resource.Directory.Members.Patch+import Network.Google.Resource.Directory.Members.Update+import Network.Google.Resource.Directory.MobileDevices.Action+import Network.Google.Resource.Directory.MobileDevices.Delete+import Network.Google.Resource.Directory.MobileDevices.Get+import Network.Google.Resource.Directory.MobileDevices.List+import Network.Google.Resource.Directory.Notifications.Delete+import Network.Google.Resource.Directory.Notifications.Get+import Network.Google.Resource.Directory.Notifications.List+import Network.Google.Resource.Directory.Notifications.Patch+import Network.Google.Resource.Directory.Notifications.Update+import Network.Google.Resource.Directory.OrgUnits.Delete+import Network.Google.Resource.Directory.OrgUnits.Get+import Network.Google.Resource.Directory.OrgUnits.Insert+import Network.Google.Resource.Directory.OrgUnits.List+import Network.Google.Resource.Directory.OrgUnits.Patch+import Network.Google.Resource.Directory.OrgUnits.Update+import Network.Google.Resource.Directory.Privileges.List+import Network.Google.Resource.Directory.RoleAssignments.Delete+import Network.Google.Resource.Directory.RoleAssignments.Get+import Network.Google.Resource.Directory.RoleAssignments.Insert+import Network.Google.Resource.Directory.RoleAssignments.List+import Network.Google.Resource.Directory.Roles.Delete+import Network.Google.Resource.Directory.Roles.Get+import Network.Google.Resource.Directory.Roles.Insert+import Network.Google.Resource.Directory.Roles.List+import Network.Google.Resource.Directory.Roles.Patch+import Network.Google.Resource.Directory.Roles.Update+import Network.Google.Resource.Directory.Schemas.Delete+import Network.Google.Resource.Directory.Schemas.Get+import Network.Google.Resource.Directory.Schemas.Insert+import Network.Google.Resource.Directory.Schemas.List+import Network.Google.Resource.Directory.Schemas.Patch+import Network.Google.Resource.Directory.Schemas.Update+import Network.Google.Resource.Directory.Tokens.Delete+import Network.Google.Resource.Directory.Tokens.Get+import Network.Google.Resource.Directory.Tokens.List+import Network.Google.Resource.Directory.Users.Aliases.Delete+import Network.Google.Resource.Directory.Users.Aliases.Insert+import Network.Google.Resource.Directory.Users.Aliases.List+import Network.Google.Resource.Directory.Users.Aliases.Watch+import Network.Google.Resource.Directory.Users.Delete+import Network.Google.Resource.Directory.Users.Get+import Network.Google.Resource.Directory.Users.Insert+import Network.Google.Resource.Directory.Users.List+import Network.Google.Resource.Directory.Users.MakeAdmin+import Network.Google.Resource.Directory.Users.Patch+import Network.Google.Resource.Directory.Users.Photos.Delete+import Network.Google.Resource.Directory.Users.Photos.Get+import Network.Google.Resource.Directory.Users.Photos.Patch+import Network.Google.Resource.Directory.Users.Photos.Update+import Network.Google.Resource.Directory.Users.Undelete+import Network.Google.Resource.Directory.Users.Update+import Network.Google.Resource.Directory.Users.Watch+import Network.Google.Resource.Directory.VerificationCodes.Generate+import Network.Google.Resource.Directory.VerificationCodes.Invalidate+import Network.Google.Resource.Directory.VerificationCodes.List++{- $resources+TODO+-}++-- | Represents the entirety of the methods and resources available for the Admin Directory API service.+type DirectoryAPI =+ PrivilegesListResource :<|>+ GroupsAliasesInsertResource+ :<|> GroupsAliasesListResource+ :<|> GroupsAliasesDeleteResource+ :<|> GroupsInsertResource+ :<|> GroupsListResource+ :<|> GroupsPatchResource+ :<|> GroupsGetResource+ :<|> GroupsDeleteResource+ :<|> GroupsUpdateResource+ :<|> RoleAssignmentsInsertResource+ :<|> RoleAssignmentsListResource+ :<|> RoleAssignmentsGetResource+ :<|> RoleAssignmentsDeleteResource+ :<|> RolesInsertResource+ :<|> RolesListResource+ :<|> RolesPatchResource+ :<|> RolesGetResource+ :<|> RolesDeleteResource+ :<|> RolesUpdateResource+ :<|> CustomersPatchResource+ :<|> CustomersGetResource+ :<|> CustomersUpdateResource+ :<|> UsersAliasesInsertResource+ :<|> UsersAliasesListResource+ :<|> UsersAliasesDeleteResource+ :<|> UsersAliasesWatchResource+ :<|> UsersPhotosPatchResource+ :<|> UsersPhotosGetResource+ :<|> UsersPhotosDeleteResource+ :<|> UsersPhotosUpdateResource+ :<|> UsersInsertResource+ :<|> UsersListResource+ :<|> UsersUndeleteResource+ :<|> UsersPatchResource+ :<|> UsersGetResource+ :<|> UsersMakeAdminResource+ :<|> UsersDeleteResource+ :<|> UsersUpdateResource+ :<|> UsersWatchResource+ :<|> SchemasInsertResource+ :<|> SchemasListResource+ :<|> SchemasPatchResource+ :<|> SchemasGetResource+ :<|> SchemasDeleteResource+ :<|> SchemasUpdateResource+ :<|> TokensListResource+ :<|> TokensGetResource+ :<|> TokensDeleteResource+ :<|> DomainAliasesInsertResource+ :<|> DomainAliasesListResource+ :<|> DomainAliasesGetResource+ :<|> DomainAliasesDeleteResource+ :<|> ChannelsStopResource+ :<|> MembersInsertResource+ :<|> MembersListResource+ :<|> MembersPatchResource+ :<|> MembersGetResource+ :<|> MembersDeleteResource+ :<|> MembersUpdateResource+ :<|> MobileDevicesListResource+ :<|> MobileDevicesGetResource+ :<|> MobileDevicesActionResource+ :<|> MobileDevicesDeleteResource+ :<|> OrgUnitsInsertResource+ :<|> OrgUnitsListResource+ :<|> OrgUnitsPatchResource+ :<|> OrgUnitsGetResource+ :<|> OrgUnitsDeleteResource+ :<|> OrgUnitsUpdateResource+ :<|> VerificationCodesListResource+ :<|> VerificationCodesGenerateResource+ :<|> VerificationCodesInvalidateResource+ :<|> DomainsInsertResource+ :<|> DomainsListResource+ :<|> DomainsGetResource+ :<|> DomainsDeleteResource+ :<|> NotificationsListResource+ :<|> NotificationsPatchResource+ :<|> NotificationsGetResource+ :<|> NotificationsDeleteResource+ :<|> NotificationsUpdateResource+ :<|> ChromeosDevicesListResource+ :<|> ChromeosDevicesPatchResource+ :<|> ChromeosDevicesGetResource+ :<|> ChromeosDevicesUpdateResource+ :<|> AspsListResource+ :<|> AspsGetResource+ :<|> AspsDeleteResource
+ gen/Network/Google/Directory/Types.hs view
@@ -0,0 +1,838 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Directory.Types+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.Google.Directory.Types+ (+ -- * Service Configuration+ directoryService++ -- * OAuth Scopes+ , adminDirectoryRolemanagementReadonlyScope+ , adminDirectoryGroupReadonlyScope+ , adminDirectoryDeviceChromeosReadonlyScope+ , adminDirectoryDeviceChromeosScope+ , adminDirectoryUserScope+ , adminDirectoryGroupMemberReadonlyScope+ , adminDirectoryUserAliasScope+ , adminDirectoryDeviceMobileActionScope+ , adminDirectoryDomainReadonlyScope+ , adminDirectoryUserschemaScope+ , adminDirectoryUserschemaReadonlyScope+ , adminDirectoryDomainScope+ , adminDirectoryRolemanagementScope+ , adminDirectoryGroupScope+ , adminDirectoryOrgunitReadonlyScope+ , adminDirectoryCustomerScope+ , adminDirectoryCustomerReadonlyScope+ , adminDirectoryOrgunitScope+ , adminDirectoryUserReadonlyScope+ , adminDirectoryUserAliasReadonlyScope+ , adminDirectoryUserSecurityScope+ , adminDirectoryGroupMemberScope+ , adminDirectoryNotificationsScope+ , adminDirectoryDeviceMobileScope+ , adminDirectoryDeviceMobileReadonlyScope++ -- * VerificationCode+ , VerificationCode+ , verificationCode+ , vcVerificationCode+ , vcEtag+ , vcKind+ , vcUserId++ -- * OrgUnit+ , OrgUnit+ , orgUnit+ , ouEtag+ , ouParentOrgUnitPath+ , ouKind+ , ouOrgUnitPath+ , ouName+ , ouBlockInheritance+ , ouParentOrgUnitId+ , ouDescription+ , ouOrgUnitId++ -- * UserMakeAdmin+ , UserMakeAdmin+ , userMakeAdmin+ , umaStatus++ -- * UserAbout+ , UserAbout+ , userAbout+ , uaValue+ , uaContentType++ -- * UsersListEvent+ , UsersListEvent (..)++ -- * Privileges+ , Privileges+ , privileges+ , pEtag+ , pKind+ , pItems++ -- * Groups+ , Groups+ , groups+ , gGroups+ , gEtag+ , gNextPageToken+ , gKind++ -- * UsersAliasesListEvent+ , UsersAliasesListEvent (..)++ -- * RoleAssignments+ , RoleAssignments+ , roleAssignments+ , raEtag+ , raNextPageToken+ , raKind+ , raItems++ -- * Privilege+ , Privilege+ , privilege+ , priEtag+ , priIsOuScopable+ , priKind+ , priServiceName+ , priServiceId+ , priPrivilegeName+ , priChildPrivileges++ -- * UsersAliasesWatchEvent+ , UsersAliasesWatchEvent (..)++ -- * Roles+ , Roles+ , roles+ , rEtag+ , rNextPageToken+ , rKind+ , rItems++ -- * UsersWatchEvent+ , UsersWatchEvent (..)++ -- * UserAddress+ , UserAddress+ , userAddress+ , uaStreetAddress+ , uaPoBox+ , uaCountry+ , uaPostalCode+ , uaFormatted+ , uaExtendedAddress+ , uaLocality+ , uaPrimary+ , uaCountryCode+ , uaRegion+ , uaType+ , uaCustomType+ , uaSourceIsStructured++ -- * CustomerPostalAddress+ , CustomerPostalAddress+ , customerPostalAddress+ , cpaOrganizationName+ , cpaPostalCode+ , cpaAddressLine1+ , cpaLocality+ , cpaContactName+ , cpaAddressLine2+ , cpaCountryCode+ , cpaRegion+ , cpaAddressLine3++ -- * RoleAssignment+ , RoleAssignment+ , roleAssignment+ , rolEtag+ , rolScopeType+ , rolKind+ , rolAssignedTo+ , rolRoleId+ , rolRoleAssignmentId+ , rolOrgUnitId++ -- * Group+ , Group+ , group'+ , groEmail+ , groEtag+ , groDirectMembersCount+ , groKind+ , groAliases+ , groNonEditableAliases+ , groName+ , groAdminCreated+ , groId+ , groDescription++ -- * ChromeOSDevice+ , ChromeOSDevice+ , chromeOSDevice+ , codStatus+ , codEtag+ , codAnnotatedUser+ , codPlatformVersion+ , codLastSync+ , codActiveTimeRanges+ , codKind+ , codEthernetMACAddress+ , codLastEnrollmentTime+ , codAnnotatedLocation+ , codMACAddress+ , codOrgUnitPath+ , codRecentUsers+ , codSupportEndDate+ , codModel+ , codWillAutoRenew+ , codMeid+ , codDeviceId+ , codBootMode+ , codOrderNumber+ , codAnnotatedAssetId+ , codNotes+ , codSerialNumber+ , codFirmwareVersion+ , codOSVersion++ -- * ChromeosDevicesPatchProjection+ , ChromeosDevicesPatchProjection (..)++ -- * ChromeosDevicesGetProjection+ , ChromeosDevicesGetProjection (..)++ -- * Users+ , Users+ , users+ , uEtag+ , uNextPageToken+ , uUsers+ , uKind+ , uTriggerEvent++ -- * Asp+ , Asp+ , asp+ , aCreationTime+ , aEtag+ , aCodeId+ , aKind+ , aName+ , aLastTimeUsed+ , aUserKey++ -- * Schemas+ , Schemas+ , schemas+ , sEtag+ , sSchemas+ , sKind++ -- * UsersListViewType+ , UsersListViewType (..)++ -- * OrgUnitsListType+ , OrgUnitsListType (..)++ -- * Notification+ , Notification+ , notification+ , nSubject+ , nEtag+ , nKind+ , nBody+ , nFromAddress+ , nIsUnread+ , nNotificationId+ , nSendTime++ -- * MobileDevicesListSortOrder+ , MobileDevicesListSortOrder (..)++ -- * UserIm+ , UserIm+ , userIm+ , uiIm+ , uiProtocol+ , uiPrimary+ , uiCustomProtocol+ , uiType+ , uiCustomType++ -- * UsersListOrderBy+ , UsersListOrderBy (..)++ -- * Tokens+ , Tokens+ , tokens+ , tEtag+ , tKind+ , tItems++ -- * UserCustomSchemas+ , UserCustomSchemas+ , userCustomSchemas+ , ucsAddtional++ -- * DomainAliases+ , DomainAliases+ , domainAliases+ , daEtag+ , daKind+ , daDomainAliases++ -- * Aliases+ , Aliases+ , aliases+ , aliEtag+ , aliKind+ , aliAliases++ -- * UserUndelete+ , UserUndelete+ , userUndelete+ , uuOrgUnitPath++ -- * Members+ , Members+ , members+ , mEtag+ , mNextPageToken+ , mKind+ , mMembers++ -- * Channel+ , Channel+ , channel+ , cResourceURI+ , cResourceId+ , cKind+ , cExpiration+ , cToken+ , cAddress+ , cPayload+ , cParams+ , cId+ , cType++ -- * MobileDevices+ , MobileDevices+ , mobileDevices+ , mdEtag+ , mdNextPageToken+ , mdKind+ , mdMobileDevices++ -- * Token+ , Token+ , token+ , tokClientId+ , tokEtag+ , tokDisplayText+ , tokKind+ , tokScopes+ , tokNATiveApp+ , tokAnonymous+ , tokUserKey++ -- * UserName+ , UserName+ , userName+ , unGivenName+ , unFullName+ , unFamilyName++ -- * UsersWatchViewType+ , UsersWatchViewType (..)++ -- * ChromeOSDeviceRecentUsersItem+ , ChromeOSDeviceRecentUsersItem+ , chromeOSDeviceRecentUsersItem+ , codruiEmail+ , codruiType++ -- * DomainAlias+ , DomainAlias+ , domainAlias+ , dCreationTime+ , dEtag+ , dKind+ , dVerified+ , dDomainAliasName+ , dParentDomainName++ -- * Alias+ , Alias+ , alias+ , aaEtag+ , aaKind+ , aaAlias+ , aaId+ , aaPrimaryEmail++ -- * UsersGetProjection+ , UsersGetProjection (..)++ -- * Schema+ , Schema+ , schema+ , schEtag+ , schKind+ , schSchemaName+ , schSchemaId+ , schFields++ -- * User+ , User+ , user+ , useCreationTime+ , useLastLoginTime+ , useThumbnailPhotoEtag+ , useEtag+ , useIPWhiteListed+ , useRelations+ , useHashFunction+ , useKind+ , useChangePasswordAtNextLogin+ , useWebsites+ , useAddresses+ , useAliases+ , useThumbnailPhotoURL+ , useExternalIds+ , useSuspended+ , useAgreedToTerms+ , useDeletionTime+ , useNonEditableAliases+ , useOrgUnitPath+ , useCustomerId+ , useIncludeInGlobalAddressList+ , usePhones+ , useName+ , usePassword+ , useEmails+ , useIms+ , useIsAdmin+ , useId+ , useOrganizations+ , usePrimaryEmail+ , useNotes+ , useIsDelegatedAdmin+ , useIsMailboxSetup+ , useCustomSchemas+ , useSuspensionReason++ -- * MobileDevicesListProjection+ , MobileDevicesListProjection (..)++ -- * Role+ , Role+ , role+ , rrEtag+ , rrKind+ , rrRoleName+ , rrIsSystemRole+ , rrRoleId+ , rrRoleDescription+ , rrIsSuperAdminRole+ , rrRolePrivileges++ -- * Customer+ , Customer+ , customer+ , cusEtag+ , cusKind+ , cusAlternateEmail+ , cusCustomerDomain+ , cusPhoneNumber+ , cusLanguage+ , cusId+ , cusCustomerCreationTime+ , cusPostalAddress++ -- * MobileDeviceApplicationsItem+ , MobileDeviceApplicationsItem+ , mobileDeviceApplicationsItem+ , mdaiVersionCode+ , mdaiVersionName+ , mdaiPackageName+ , mdaiDisplayName+ , mdaiPermission++ -- * MobileDevicesListOrderBy+ , MobileDevicesListOrderBy (..)++ -- * UsersListSortOrder+ , UsersListSortOrder (..)++ -- * OrgUnits+ , OrgUnits+ , orgUnits+ , oEtag+ , oKind+ , oOrganizationUnits++ -- * VerificationCodes+ , VerificationCodes+ , verificationCodes+ , vEtag+ , vKind+ , vItems++ -- * ChromeosDevicesListSortOrder+ , ChromeosDevicesListSortOrder (..)++ -- * UserRelation+ , UserRelation+ , userRelation+ , urValue+ , urType+ , urCustomType++ -- * UsersWatchSortOrder+ , UsersWatchSortOrder (..)++ -- * ChannelParams+ , ChannelParams+ , channelParams+ , cpAddtional++ -- * UserOrganization+ , UserOrganization+ , userOrganization+ , uoDePartment+ , uoLocation+ , uoCostCenter+ , uoDomain+ , uoSymbol+ , uoPrimary+ , uoName+ , uoTitle+ , uoType+ , uoCustomType+ , uoDescription++ -- * UserWebsite+ , UserWebsite+ , userWebsite+ , uwValue+ , uwPrimary+ , uwType+ , uwCustomType++ -- * ChromeOSDeviceActiveTimeRangesItem+ , ChromeOSDeviceActiveTimeRangesItem+ , chromeOSDeviceActiveTimeRangesItem+ , codatriDate+ , codatriActiveTime++ -- * UserEmail+ , UserEmail+ , userEmail+ , ueAddress+ , uePrimary+ , ueType+ , ueCustomType++ -- * UserPhone+ , UserPhone+ , userPhone+ , upValue+ , upPrimary+ , upType+ , upCustomType++ -- * UserPhoto+ , UserPhoto+ , userPhoto+ , upPhotoData+ , upEtag+ , upHeight+ , upKind+ , upWidth+ , upMimeType+ , upId+ , upPrimaryEmail++ -- * UsersListProjection+ , UsersListProjection (..)++ -- * ChromeosDevicesUpdateProjection+ , ChromeosDevicesUpdateProjection (..)++ -- * MobileDevicesGetProjection+ , MobileDevicesGetProjection (..)++ -- * MobileDevice+ , MobileDevice+ , mobileDevice+ , mobEmail+ , mobStatus+ , mobEtag+ , mobResourceId+ , mobBuildNumber+ , mobManagedAccountIsOnOwnerProFile+ , mobLastSync+ , mobOtherAccountsInfo+ , mobKind+ , mobAdbStatus+ , mobNetworkOperator+ , mobKernelVersion+ , mobOS+ , mobName+ , mobModel+ , mobDeveloperOptionsStatus+ , mobUnknownSourcesStatus+ , mobMeid+ , mobDeviceId+ , mobFirstSync+ , mobUserAgent+ , mobImei+ , mobType+ , mobWifiMACAddress+ , mobSerialNumber+ , mobHardwareId+ , mobBasebandVersion+ , mobSupportsWorkProFile+ , mobDeviceCompromisedStatus+ , mobApplications+ , mobDefaultLanguage++ -- * Member+ , Member+ , member+ , memEmail+ , memEtag+ , memKind+ , memRole+ , memId+ , memType++ -- * UserCustomProperties+ , UserCustomProperties+ , userCustomProperties+ , ucpAddtional++ -- * Domains+ , Domains+ , domains+ , domCreationTime+ , domEtag+ , domKind+ , domDomainAliases+ , domVerified+ , domDomainName+ , domIsPrimary++ -- * ChromeosDevicesListOrderBy+ , ChromeosDevicesListOrderBy (..)++ -- * UsersWatchProjection+ , UsersWatchProjection (..)++ -- * UsersWatchOrderBy+ , UsersWatchOrderBy (..)++ -- * Notifications+ , Notifications+ , notifications+ , notEtag+ , notNextPageToken+ , notKind+ , notItems+ , notUnreadNotificationsCount++ -- * ChromeosDevicesListProjection+ , ChromeosDevicesListProjection (..)++ -- * SchemaFieldSpecNumericIndexingSpec+ , SchemaFieldSpecNumericIndexingSpec+ , schemaFieldSpecNumericIndexingSpec+ , sfsnisMaxValue+ , sfsnisMinValue++ -- * MobileDeviceAction+ , MobileDeviceAction+ , mobileDeviceAction+ , mdaAction++ -- * SchemaFieldSpec+ , SchemaFieldSpec+ , schemaFieldSpec+ , sfsEtag+ , sfsKind+ , sfsNumericIndexingSpec+ , sfsReadAccessType+ , sfsFieldId+ , sfsIndexed+ , sfsFieldType+ , sfsFieldName+ , sfsMultiValued++ -- * ChromeOSDevices+ , ChromeOSDevices+ , chromeOSDevices+ , cosdEtag+ , cosdNextPageToken+ , cosdKind+ , cosdChromeosDevices++ -- * UserExternalId+ , UserExternalId+ , userExternalId+ , ueiValue+ , ueiType+ , ueiCustomType++ -- * Asps+ , Asps+ , asps+ , aspEtag+ , aspKind+ , aspItems++ -- * UsersGetViewType+ , UsersGetViewType (..)++ -- * RoleRolePrivilegesItem+ , RoleRolePrivilegesItem+ , roleRolePrivilegesItem+ , rrpiServiceId+ , rrpiPrivilegeName++ -- * Domains2+ , Domains2+ , domains2+ , ddEtag+ , ddKind+ , ddDomains+ ) where++import Network.Google.Directory.Types.Product+import Network.Google.Directory.Types.Sum+import Network.Google.Prelude++-- | Default request referring to version 'directory_v1' of the Admin Directory API. This contains the host and root path used as a starting point for constructing service requests.+directoryService :: Service+directoryService+ = defaultService (ServiceId "admin:directory_v1")+ "www.googleapis.com"++-- | View delegated admin roles for your domain+adminDirectoryRolemanagementReadonlyScope :: OAuthScope+adminDirectoryRolemanagementReadonlyScope = "https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly";++-- | View groups on your domain+adminDirectoryGroupReadonlyScope :: OAuthScope+adminDirectoryGroupReadonlyScope = "https://www.googleapis.com/auth/admin.directory.group.readonly";++-- | View your Chrome OS devices\' metadata+adminDirectoryDeviceChromeosReadonlyScope :: OAuthScope+adminDirectoryDeviceChromeosReadonlyScope = "https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly";++-- | View and manage your Chrome OS devices\' metadata+adminDirectoryDeviceChromeosScope :: OAuthScope+adminDirectoryDeviceChromeosScope = "https://www.googleapis.com/auth/admin.directory.device.chromeos";++-- | View and manage the provisioning of users on your domain+adminDirectoryUserScope :: OAuthScope+adminDirectoryUserScope = "https://www.googleapis.com/auth/admin.directory.user";++-- | View group subscriptions on your domain+adminDirectoryGroupMemberReadonlyScope :: OAuthScope+adminDirectoryGroupMemberReadonlyScope = "https://www.googleapis.com/auth/admin.directory.group.member.readonly";++-- | View and manage user aliases on your domain+adminDirectoryUserAliasScope :: OAuthScope+adminDirectoryUserAliasScope = "https://www.googleapis.com/auth/admin.directory.user.alias";++-- | Manage your mobile devices by performing administrative tasks+adminDirectoryDeviceMobileActionScope :: OAuthScope+adminDirectoryDeviceMobileActionScope = "https://www.googleapis.com/auth/admin.directory.device.mobile.action";++-- | View domains related to your customers+adminDirectoryDomainReadonlyScope :: OAuthScope+adminDirectoryDomainReadonlyScope = "https://www.googleapis.com/auth/admin.directory.domain.readonly";++-- | View and manage the provisioning of user schemas on your domain+adminDirectoryUserschemaScope :: OAuthScope+adminDirectoryUserschemaScope = "https://www.googleapis.com/auth/admin.directory.userschema";++-- | View user schemas on your domain+adminDirectoryUserschemaReadonlyScope :: OAuthScope+adminDirectoryUserschemaReadonlyScope = "https://www.googleapis.com/auth/admin.directory.userschema.readonly";++-- | View and manage the provisioning of domains for your customers+adminDirectoryDomainScope :: OAuthScope+adminDirectoryDomainScope = "https://www.googleapis.com/auth/admin.directory.domain";++-- | Manage delegated admin roles for your domain+adminDirectoryRolemanagementScope :: OAuthScope+adminDirectoryRolemanagementScope = "https://www.googleapis.com/auth/admin.directory.rolemanagement";++-- | View and manage the provisioning of groups on your domain+adminDirectoryGroupScope :: OAuthScope+adminDirectoryGroupScope = "https://www.googleapis.com/auth/admin.directory.group";++-- | View organization units on your domain+adminDirectoryOrgunitReadonlyScope :: OAuthScope+adminDirectoryOrgunitReadonlyScope = "https://www.googleapis.com/auth/admin.directory.orgunit.readonly";++-- | View and manage customer related information+adminDirectoryCustomerScope :: OAuthScope+adminDirectoryCustomerScope = "https://www.googleapis.com/auth/admin.directory.customer";++-- | View customer related information+adminDirectoryCustomerReadonlyScope :: OAuthScope+adminDirectoryCustomerReadonlyScope = "https://www.googleapis.com/auth/admin.directory.customer.readonly";++-- | View and manage organization units on your domain+adminDirectoryOrgunitScope :: OAuthScope+adminDirectoryOrgunitScope = "https://www.googleapis.com/auth/admin.directory.orgunit";++-- | View users on your domain+adminDirectoryUserReadonlyScope :: OAuthScope+adminDirectoryUserReadonlyScope = "https://www.googleapis.com/auth/admin.directory.user.readonly";++-- | View user aliases on your domain+adminDirectoryUserAliasReadonlyScope :: OAuthScope+adminDirectoryUserAliasReadonlyScope = "https://www.googleapis.com/auth/admin.directory.user.alias.readonly";++-- | Manage data access permissions for users on your domain+adminDirectoryUserSecurityScope :: OAuthScope+adminDirectoryUserSecurityScope = "https://www.googleapis.com/auth/admin.directory.user.security";++-- | View and manage group subscriptions on your domain+adminDirectoryGroupMemberScope :: OAuthScope+adminDirectoryGroupMemberScope = "https://www.googleapis.com/auth/admin.directory.group.member";++-- | View and manage notifications received on your domain+adminDirectoryNotificationsScope :: OAuthScope+adminDirectoryNotificationsScope = "https://www.googleapis.com/auth/admin.directory.notifications";++-- | View and manage your mobile devices\' metadata+adminDirectoryDeviceMobileScope :: OAuthScope+adminDirectoryDeviceMobileScope = "https://www.googleapis.com/auth/admin.directory.device.mobile";++-- | View your mobile devices\' metadata+adminDirectoryDeviceMobileReadonlyScope :: OAuthScope+adminDirectoryDeviceMobileReadonlyScope = "https://www.googleapis.com/auth/admin.directory.device.mobile.readonly";
+ gen/Network/Google/Directory/Types/Product.hs view
@@ -0,0 +1,5677 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Directory.Types.Product+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.Google.Directory.Types.Product where++import Network.Google.Directory.Types.Sum+import Network.Google.Prelude++-- | JSON template for verification codes in Directory API.+--+-- /See:/ 'verificationCode' smart constructor.+data VerificationCode = VerificationCode+ { _vcVerificationCode :: !(Maybe Text)+ , _vcEtag :: !(Maybe Text)+ , _vcKind :: !Text+ , _vcUserId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VerificationCode' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vcVerificationCode'+--+-- * 'vcEtag'+--+-- * 'vcKind'+--+-- * 'vcUserId'+verificationCode+ :: VerificationCode+verificationCode =+ VerificationCode+ { _vcVerificationCode = Nothing+ , _vcEtag = Nothing+ , _vcKind = "admin#directory#verificationCode"+ , _vcUserId = Nothing+ }++-- | A current verification code for the user. Invalidated or used+-- verification codes are not returned as part of the result.+vcVerificationCode :: Lens' VerificationCode (Maybe Text)+vcVerificationCode+ = lens _vcVerificationCode+ (\ s a -> s{_vcVerificationCode = a})++-- | ETag of the resource.+vcEtag :: Lens' VerificationCode (Maybe Text)+vcEtag = lens _vcEtag (\ s a -> s{_vcEtag = a})++-- | The type of the resource. This is always+-- admin#directory#verificationCode.+vcKind :: Lens' VerificationCode Text+vcKind = lens _vcKind (\ s a -> s{_vcKind = a})++-- | The obfuscated unique ID of the user.+vcUserId :: Lens' VerificationCode (Maybe Text)+vcUserId = lens _vcUserId (\ s a -> s{_vcUserId = a})++instance FromJSON VerificationCode where+ parseJSON+ = withObject "VerificationCode"+ (\ o ->+ VerificationCode <$>+ (o .:? "verificationCode") <*> (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#verificationCode")+ <*> (o .:? "userId"))++instance ToJSON VerificationCode where+ toJSON VerificationCode{..}+ = object+ (catMaybes+ [("verificationCode" .=) <$> _vcVerificationCode,+ ("etag" .=) <$> _vcEtag, Just ("kind" .= _vcKind),+ ("userId" .=) <$> _vcUserId])++-- | JSON template for Org Unit resource in Directory API.+--+-- /See:/ 'orgUnit' smart constructor.+data OrgUnit = OrgUnit+ { _ouEtag :: !(Maybe Text)+ , _ouParentOrgUnitPath :: !(Maybe Text)+ , _ouKind :: !Text+ , _ouOrgUnitPath :: !(Maybe Text)+ , _ouName :: !(Maybe Text)+ , _ouBlockInheritance :: !(Maybe Bool)+ , _ouParentOrgUnitId :: !(Maybe Text)+ , _ouDescription :: !(Maybe Text)+ , _ouOrgUnitId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OrgUnit' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ouEtag'+--+-- * 'ouParentOrgUnitPath'+--+-- * 'ouKind'+--+-- * 'ouOrgUnitPath'+--+-- * 'ouName'+--+-- * 'ouBlockInheritance'+--+-- * 'ouParentOrgUnitId'+--+-- * 'ouDescription'+--+-- * 'ouOrgUnitId'+orgUnit+ :: OrgUnit+orgUnit =+ OrgUnit+ { _ouEtag = Nothing+ , _ouParentOrgUnitPath = Nothing+ , _ouKind = "admin#directory#orgUnit"+ , _ouOrgUnitPath = Nothing+ , _ouName = Nothing+ , _ouBlockInheritance = Nothing+ , _ouParentOrgUnitId = Nothing+ , _ouDescription = Nothing+ , _ouOrgUnitId = Nothing+ }++-- | ETag of the resource.+ouEtag :: Lens' OrgUnit (Maybe Text)+ouEtag = lens _ouEtag (\ s a -> s{_ouEtag = a})++-- | Path of parent OrgUnit+ouParentOrgUnitPath :: Lens' OrgUnit (Maybe Text)+ouParentOrgUnitPath+ = lens _ouParentOrgUnitPath+ (\ s a -> s{_ouParentOrgUnitPath = a})++-- | Kind of resource this is.+ouKind :: Lens' OrgUnit Text+ouKind = lens _ouKind (\ s a -> s{_ouKind = a})++-- | Path of OrgUnit+ouOrgUnitPath :: Lens' OrgUnit (Maybe Text)+ouOrgUnitPath+ = lens _ouOrgUnitPath+ (\ s a -> s{_ouOrgUnitPath = a})++-- | Name of OrgUnit+ouName :: Lens' OrgUnit (Maybe Text)+ouName = lens _ouName (\ s a -> s{_ouName = a})++-- | Should block inheritance+ouBlockInheritance :: Lens' OrgUnit (Maybe Bool)+ouBlockInheritance+ = lens _ouBlockInheritance+ (\ s a -> s{_ouBlockInheritance = a})++-- | Id of parent OrgUnit+ouParentOrgUnitId :: Lens' OrgUnit (Maybe Text)+ouParentOrgUnitId+ = lens _ouParentOrgUnitId+ (\ s a -> s{_ouParentOrgUnitId = a})++-- | Description of OrgUnit+ouDescription :: Lens' OrgUnit (Maybe Text)+ouDescription+ = lens _ouDescription+ (\ s a -> s{_ouDescription = a})++-- | Id of OrgUnit+ouOrgUnitId :: Lens' OrgUnit (Maybe Text)+ouOrgUnitId+ = lens _ouOrgUnitId (\ s a -> s{_ouOrgUnitId = a})++instance FromJSON OrgUnit where+ parseJSON+ = withObject "OrgUnit"+ (\ o ->+ OrgUnit <$>+ (o .:? "etag") <*> (o .:? "parentOrgUnitPath") <*>+ (o .:? "kind" .!= "admin#directory#orgUnit")+ <*> (o .:? "orgUnitPath")+ <*> (o .:? "name")+ <*> (o .:? "blockInheritance")+ <*> (o .:? "parentOrgUnitId")+ <*> (o .:? "description")+ <*> (o .:? "orgUnitId"))++instance ToJSON OrgUnit where+ toJSON OrgUnit{..}+ = object+ (catMaybes+ [("etag" .=) <$> _ouEtag,+ ("parentOrgUnitPath" .=) <$> _ouParentOrgUnitPath,+ Just ("kind" .= _ouKind),+ ("orgUnitPath" .=) <$> _ouOrgUnitPath,+ ("name" .=) <$> _ouName,+ ("blockInheritance" .=) <$> _ouBlockInheritance,+ ("parentOrgUnitId" .=) <$> _ouParentOrgUnitId,+ ("description" .=) <$> _ouDescription,+ ("orgUnitId" .=) <$> _ouOrgUnitId])++-- | JSON request template for setting\/revoking admin status of a user in+-- Directory API.+--+-- /See:/ 'userMakeAdmin' smart constructor.+newtype UserMakeAdmin = UserMakeAdmin+ { _umaStatus :: Maybe Bool+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserMakeAdmin' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'umaStatus'+userMakeAdmin+ :: UserMakeAdmin+userMakeAdmin =+ UserMakeAdmin+ { _umaStatus = Nothing+ }++-- | Boolean indicating new admin status of the user+umaStatus :: Lens' UserMakeAdmin (Maybe Bool)+umaStatus+ = lens _umaStatus (\ s a -> s{_umaStatus = a})++instance FromJSON UserMakeAdmin where+ parseJSON+ = withObject "UserMakeAdmin"+ (\ o -> UserMakeAdmin <$> (o .:? "status"))++instance ToJSON UserMakeAdmin where+ toJSON UserMakeAdmin{..}+ = object (catMaybes [("status" .=) <$> _umaStatus])++-- | JSON template for About (notes) of a user in Directory API.+--+-- /See:/ 'userAbout' smart constructor.+data UserAbout = UserAbout+ { _uaValue :: !(Maybe Text)+ , _uaContentType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserAbout' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uaValue'+--+-- * 'uaContentType'+userAbout+ :: UserAbout+userAbout =+ UserAbout+ { _uaValue = Nothing+ , _uaContentType = Nothing+ }++-- | Actual value of notes.+uaValue :: Lens' UserAbout (Maybe Text)+uaValue = lens _uaValue (\ s a -> s{_uaValue = a})++-- | About entry can have a type which indicates the content type. It can+-- either be plain or html. By default, notes contents are assumed to+-- contain plain text.+uaContentType :: Lens' UserAbout (Maybe Text)+uaContentType+ = lens _uaContentType+ (\ s a -> s{_uaContentType = a})++instance FromJSON UserAbout where+ parseJSON+ = withObject "UserAbout"+ (\ o ->+ UserAbout <$>+ (o .:? "value") <*> (o .:? "contentType"))++instance ToJSON UserAbout where+ toJSON UserAbout{..}+ = object+ (catMaybes+ [("value" .=) <$> _uaValue,+ ("contentType" .=) <$> _uaContentType])++-- | JSON response template for List privileges operation in Directory API.+--+-- /See:/ 'privileges' smart constructor.+data Privileges = Privileges+ { _pEtag :: !(Maybe Text)+ , _pKind :: !Text+ , _pItems :: !(Maybe [Privilege])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Privileges' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pEtag'+--+-- * 'pKind'+--+-- * 'pItems'+privileges+ :: Privileges+privileges =+ Privileges+ { _pEtag = Nothing+ , _pKind = "admin#directory#privileges"+ , _pItems = Nothing+ }++-- | ETag of the resource.+pEtag :: Lens' Privileges (Maybe Text)+pEtag = lens _pEtag (\ s a -> s{_pEtag = a})++-- | The type of the API resource. This is always admin#directory#privileges.+pKind :: Lens' Privileges Text+pKind = lens _pKind (\ s a -> s{_pKind = a})++-- | A list of Privilege resources.+pItems :: Lens' Privileges [Privilege]+pItems+ = lens _pItems (\ s a -> s{_pItems = a}) . _Default .+ _Coerce++instance FromJSON Privileges where+ parseJSON+ = withObject "Privileges"+ (\ o ->+ Privileges <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#privileges")+ <*> (o .:? "items" .!= mempty))++instance ToJSON Privileges where+ toJSON Privileges{..}+ = object+ (catMaybes+ [("etag" .=) <$> _pEtag, Just ("kind" .= _pKind),+ ("items" .=) <$> _pItems])++-- | JSON response template for List Groups operation in Directory API.+--+-- /See:/ 'groups' smart constructor.+data Groups = Groups+ { _gGroups :: !(Maybe [Group])+ , _gEtag :: !(Maybe Text)+ , _gNextPageToken :: !(Maybe Text)+ , _gKind :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Groups' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gGroups'+--+-- * 'gEtag'+--+-- * 'gNextPageToken'+--+-- * 'gKind'+groups+ :: Groups+groups =+ Groups+ { _gGroups = Nothing+ , _gEtag = Nothing+ , _gNextPageToken = Nothing+ , _gKind = "admin#directory#groups"+ }++-- | List of group objects.+gGroups :: Lens' Groups [Group]+gGroups+ = lens _gGroups (\ s a -> s{_gGroups = a}) . _Default+ . _Coerce++-- | ETag of the resource.+gEtag :: Lens' Groups (Maybe Text)+gEtag = lens _gEtag (\ s a -> s{_gEtag = a})++-- | Token used to access next page of this result.+gNextPageToken :: Lens' Groups (Maybe Text)+gNextPageToken+ = lens _gNextPageToken+ (\ s a -> s{_gNextPageToken = a})++-- | Kind of resource this is.+gKind :: Lens' Groups Text+gKind = lens _gKind (\ s a -> s{_gKind = a})++instance FromJSON Groups where+ parseJSON+ = withObject "Groups"+ (\ o ->+ Groups <$>+ (o .:? "groups" .!= mempty) <*> (o .:? "etag") <*>+ (o .:? "nextPageToken")+ <*> (o .:? "kind" .!= "admin#directory#groups"))++instance ToJSON Groups where+ toJSON Groups{..}+ = object+ (catMaybes+ [("groups" .=) <$> _gGroups, ("etag" .=) <$> _gEtag,+ ("nextPageToken" .=) <$> _gNextPageToken,+ Just ("kind" .= _gKind)])++-- | JSON response template for List roleAssignments operation in Directory+-- API.+--+-- /See:/ 'roleAssignments' smart constructor.+data RoleAssignments = RoleAssignments+ { _raEtag :: !(Maybe Text)+ , _raNextPageToken :: !(Maybe Text)+ , _raKind :: !Text+ , _raItems :: !(Maybe [RoleAssignment])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RoleAssignments' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'raEtag'+--+-- * 'raNextPageToken'+--+-- * 'raKind'+--+-- * 'raItems'+roleAssignments+ :: RoleAssignments+roleAssignments =+ RoleAssignments+ { _raEtag = Nothing+ , _raNextPageToken = Nothing+ , _raKind = "admin#directory#roleAssignments"+ , _raItems = Nothing+ }++-- | ETag of the resource.+raEtag :: Lens' RoleAssignments (Maybe Text)+raEtag = lens _raEtag (\ s a -> s{_raEtag = a})++raNextPageToken :: Lens' RoleAssignments (Maybe Text)+raNextPageToken+ = lens _raNextPageToken+ (\ s a -> s{_raNextPageToken = a})++-- | The type of the API resource. This is always+-- admin#directory#roleAssignments.+raKind :: Lens' RoleAssignments Text+raKind = lens _raKind (\ s a -> s{_raKind = a})++-- | A list of RoleAssignment resources.+raItems :: Lens' RoleAssignments [RoleAssignment]+raItems+ = lens _raItems (\ s a -> s{_raItems = a}) . _Default+ . _Coerce++instance FromJSON RoleAssignments where+ parseJSON+ = withObject "RoleAssignments"+ (\ o ->+ RoleAssignments <$>+ (o .:? "etag") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "admin#directory#roleAssignments")+ <*> (o .:? "items" .!= mempty))++instance ToJSON RoleAssignments where+ toJSON RoleAssignments{..}+ = object+ (catMaybes+ [("etag" .=) <$> _raEtag,+ ("nextPageToken" .=) <$> _raNextPageToken,+ Just ("kind" .= _raKind), ("items" .=) <$> _raItems])++-- | JSON template for privilege resource in Directory API.+--+-- /See:/ 'privilege' smart constructor.+data Privilege = Privilege+ { _priEtag :: !(Maybe Text)+ , _priIsOuScopable :: !(Maybe Bool)+ , _priKind :: !Text+ , _priServiceName :: !(Maybe Text)+ , _priServiceId :: !(Maybe Text)+ , _priPrivilegeName :: !(Maybe Text)+ , _priChildPrivileges :: !(Maybe [Privilege])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Privilege' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'priEtag'+--+-- * 'priIsOuScopable'+--+-- * 'priKind'+--+-- * 'priServiceName'+--+-- * 'priServiceId'+--+-- * 'priPrivilegeName'+--+-- * 'priChildPrivileges'+privilege+ :: Privilege+privilege =+ Privilege+ { _priEtag = Nothing+ , _priIsOuScopable = Nothing+ , _priKind = "admin#directory#privilege"+ , _priServiceName = Nothing+ , _priServiceId = Nothing+ , _priPrivilegeName = Nothing+ , _priChildPrivileges = Nothing+ }++-- | ETag of the resource.+priEtag :: Lens' Privilege (Maybe Text)+priEtag = lens _priEtag (\ s a -> s{_priEtag = a})++-- | If the privilege can be restricted to an organization unit.+priIsOuScopable :: Lens' Privilege (Maybe Bool)+priIsOuScopable+ = lens _priIsOuScopable+ (\ s a -> s{_priIsOuScopable = a})++-- | The type of the API resource. This is always admin#directory#privilege.+priKind :: Lens' Privilege Text+priKind = lens _priKind (\ s a -> s{_priKind = a})++-- | The name of the service this privilege is for.+priServiceName :: Lens' Privilege (Maybe Text)+priServiceName+ = lens _priServiceName+ (\ s a -> s{_priServiceName = a})++-- | The obfuscated ID of the service this privilege is for.+priServiceId :: Lens' Privilege (Maybe Text)+priServiceId+ = lens _priServiceId (\ s a -> s{_priServiceId = a})++-- | The name of the privilege.+priPrivilegeName :: Lens' Privilege (Maybe Text)+priPrivilegeName+ = lens _priPrivilegeName+ (\ s a -> s{_priPrivilegeName = a})++-- | A list of child privileges. Privileges for a service form a tree. Each+-- privilege can have a list of child privileges; this list is empty for a+-- leaf privilege.+priChildPrivileges :: Lens' Privilege [Privilege]+priChildPrivileges+ = lens _priChildPrivileges+ (\ s a -> s{_priChildPrivileges = a})+ . _Default+ . _Coerce++instance FromJSON Privilege where+ parseJSON+ = withObject "Privilege"+ (\ o ->+ Privilege <$>+ (o .:? "etag") <*> (o .:? "isOuScopable") <*>+ (o .:? "kind" .!= "admin#directory#privilege")+ <*> (o .:? "serviceName")+ <*> (o .:? "serviceId")+ <*> (o .:? "privilegeName")+ <*> (o .:? "childPrivileges" .!= mempty))++instance ToJSON Privilege where+ toJSON Privilege{..}+ = object+ (catMaybes+ [("etag" .=) <$> _priEtag,+ ("isOuScopable" .=) <$> _priIsOuScopable,+ Just ("kind" .= _priKind),+ ("serviceName" .=) <$> _priServiceName,+ ("serviceId" .=) <$> _priServiceId,+ ("privilegeName" .=) <$> _priPrivilegeName,+ ("childPrivileges" .=) <$> _priChildPrivileges])++-- | JSON response template for List roles operation in Directory API.+--+-- /See:/ 'roles' smart constructor.+data Roles = Roles+ { _rEtag :: !(Maybe Text)+ , _rNextPageToken :: !(Maybe Text)+ , _rKind :: !Text+ , _rItems :: !(Maybe [Role])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Roles' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rEtag'+--+-- * 'rNextPageToken'+--+-- * 'rKind'+--+-- * 'rItems'+roles+ :: Roles+roles =+ Roles+ { _rEtag = Nothing+ , _rNextPageToken = Nothing+ , _rKind = "admin#directory#roles"+ , _rItems = Nothing+ }++-- | ETag of the resource.+rEtag :: Lens' Roles (Maybe Text)+rEtag = lens _rEtag (\ s a -> s{_rEtag = a})++rNextPageToken :: Lens' Roles (Maybe Text)+rNextPageToken+ = lens _rNextPageToken+ (\ s a -> s{_rNextPageToken = a})++-- | The type of the API resource. This is always admin#directory#roles.+rKind :: Lens' Roles Text+rKind = lens _rKind (\ s a -> s{_rKind = a})++-- | A list of Role resources.+rItems :: Lens' Roles [Role]+rItems+ = lens _rItems (\ s a -> s{_rItems = a}) . _Default .+ _Coerce++instance FromJSON Roles where+ parseJSON+ = withObject "Roles"+ (\ o ->+ Roles <$>+ (o .:? "etag") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "admin#directory#roles")+ <*> (o .:? "items" .!= mempty))++instance ToJSON Roles where+ toJSON Roles{..}+ = object+ (catMaybes+ [("etag" .=) <$> _rEtag,+ ("nextPageToken" .=) <$> _rNextPageToken,+ Just ("kind" .= _rKind), ("items" .=) <$> _rItems])++-- | JSON template for address.+--+-- /See:/ 'userAddress' smart constructor.+data UserAddress = UserAddress+ { _uaStreetAddress :: !(Maybe Text)+ , _uaPoBox :: !(Maybe Text)+ , _uaCountry :: !(Maybe Text)+ , _uaPostalCode :: !(Maybe Text)+ , _uaFormatted :: !(Maybe Text)+ , _uaExtendedAddress :: !(Maybe Text)+ , _uaLocality :: !(Maybe Text)+ , _uaPrimary :: !(Maybe Bool)+ , _uaCountryCode :: !(Maybe Text)+ , _uaRegion :: !(Maybe Text)+ , _uaType :: !(Maybe Text)+ , _uaCustomType :: !(Maybe Text)+ , _uaSourceIsStructured :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserAddress' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uaStreetAddress'+--+-- * 'uaPoBox'+--+-- * 'uaCountry'+--+-- * 'uaPostalCode'+--+-- * 'uaFormatted'+--+-- * 'uaExtendedAddress'+--+-- * 'uaLocality'+--+-- * 'uaPrimary'+--+-- * 'uaCountryCode'+--+-- * 'uaRegion'+--+-- * 'uaType'+--+-- * 'uaCustomType'+--+-- * 'uaSourceIsStructured'+userAddress+ :: UserAddress+userAddress =+ UserAddress+ { _uaStreetAddress = Nothing+ , _uaPoBox = Nothing+ , _uaCountry = Nothing+ , _uaPostalCode = Nothing+ , _uaFormatted = Nothing+ , _uaExtendedAddress = Nothing+ , _uaLocality = Nothing+ , _uaPrimary = Nothing+ , _uaCountryCode = Nothing+ , _uaRegion = Nothing+ , _uaType = Nothing+ , _uaCustomType = Nothing+ , _uaSourceIsStructured = Nothing+ }++-- | Street.+uaStreetAddress :: Lens' UserAddress (Maybe Text)+uaStreetAddress+ = lens _uaStreetAddress+ (\ s a -> s{_uaStreetAddress = a})++-- | Other parts of address.+uaPoBox :: Lens' UserAddress (Maybe Text)+uaPoBox = lens _uaPoBox (\ s a -> s{_uaPoBox = a})++-- | Country.+uaCountry :: Lens' UserAddress (Maybe Text)+uaCountry+ = lens _uaCountry (\ s a -> s{_uaCountry = a})++-- | Postal code.+uaPostalCode :: Lens' UserAddress (Maybe Text)+uaPostalCode+ = lens _uaPostalCode (\ s a -> s{_uaPostalCode = a})++-- | Formatted address.+uaFormatted :: Lens' UserAddress (Maybe Text)+uaFormatted+ = lens _uaFormatted (\ s a -> s{_uaFormatted = a})++-- | Extended Address.+uaExtendedAddress :: Lens' UserAddress (Maybe Text)+uaExtendedAddress+ = lens _uaExtendedAddress+ (\ s a -> s{_uaExtendedAddress = a})++-- | Locality.+uaLocality :: Lens' UserAddress (Maybe Text)+uaLocality+ = lens _uaLocality (\ s a -> s{_uaLocality = a})++-- | If this is user\'s primary address. Only one entry could be marked as+-- primary.+uaPrimary :: Lens' UserAddress (Maybe Bool)+uaPrimary+ = lens _uaPrimary (\ s a -> s{_uaPrimary = a})++-- | Country code.+uaCountryCode :: Lens' UserAddress (Maybe Text)+uaCountryCode+ = lens _uaCountryCode+ (\ s a -> s{_uaCountryCode = a})++-- | Region.+uaRegion :: Lens' UserAddress (Maybe Text)+uaRegion = lens _uaRegion (\ s a -> s{_uaRegion = a})++-- | Each entry can have a type which indicates standard values of that+-- entry. For example address could be of home, work etc. In addition to+-- the standard type, an entry can have a custom type and can take any+-- value. Such type should have the CUSTOM value as type and also have a+-- customType value.+uaType :: Lens' UserAddress (Maybe Text)+uaType = lens _uaType (\ s a -> s{_uaType = a})++-- | Custom type.+uaCustomType :: Lens' UserAddress (Maybe Text)+uaCustomType+ = lens _uaCustomType (\ s a -> s{_uaCustomType = a})++-- | User supplied address was structured. Structured addresses are NOT+-- supported at this time. You might be able to write structured addresses,+-- but any values will eventually be clobbered.+uaSourceIsStructured :: Lens' UserAddress (Maybe Bool)+uaSourceIsStructured+ = lens _uaSourceIsStructured+ (\ s a -> s{_uaSourceIsStructured = a})++instance FromJSON UserAddress where+ parseJSON+ = withObject "UserAddress"+ (\ o ->+ UserAddress <$>+ (o .:? "streetAddress") <*> (o .:? "poBox") <*>+ (o .:? "country")+ <*> (o .:? "postalCode")+ <*> (o .:? "formatted")+ <*> (o .:? "extendedAddress")+ <*> (o .:? "locality")+ <*> (o .:? "primary")+ <*> (o .:? "countryCode")+ <*> (o .:? "region")+ <*> (o .:? "type")+ <*> (o .:? "customType")+ <*> (o .:? "sourceIsStructured"))++instance ToJSON UserAddress where+ toJSON UserAddress{..}+ = object+ (catMaybes+ [("streetAddress" .=) <$> _uaStreetAddress,+ ("poBox" .=) <$> _uaPoBox,+ ("country" .=) <$> _uaCountry,+ ("postalCode" .=) <$> _uaPostalCode,+ ("formatted" .=) <$> _uaFormatted,+ ("extendedAddress" .=) <$> _uaExtendedAddress,+ ("locality" .=) <$> _uaLocality,+ ("primary" .=) <$> _uaPrimary,+ ("countryCode" .=) <$> _uaCountryCode,+ ("region" .=) <$> _uaRegion, ("type" .=) <$> _uaType,+ ("customType" .=) <$> _uaCustomType,+ ("sourceIsStructured" .=) <$> _uaSourceIsStructured])++-- | JSON template for postal address of a customer.+--+-- /See:/ 'customerPostalAddress' smart constructor.+data CustomerPostalAddress = CustomerPostalAddress+ { _cpaOrganizationName :: !(Maybe Text)+ , _cpaPostalCode :: !(Maybe Text)+ , _cpaAddressLine1 :: !(Maybe Text)+ , _cpaLocality :: !(Maybe Text)+ , _cpaContactName :: !(Maybe Text)+ , _cpaAddressLine2 :: !(Maybe Text)+ , _cpaCountryCode :: !(Maybe Text)+ , _cpaRegion :: !(Maybe Text)+ , _cpaAddressLine3 :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomerPostalAddress' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cpaOrganizationName'+--+-- * 'cpaPostalCode'+--+-- * 'cpaAddressLine1'+--+-- * 'cpaLocality'+--+-- * 'cpaContactName'+--+-- * 'cpaAddressLine2'+--+-- * 'cpaCountryCode'+--+-- * 'cpaRegion'+--+-- * 'cpaAddressLine3'+customerPostalAddress+ :: CustomerPostalAddress+customerPostalAddress =+ CustomerPostalAddress+ { _cpaOrganizationName = Nothing+ , _cpaPostalCode = Nothing+ , _cpaAddressLine1 = Nothing+ , _cpaLocality = Nothing+ , _cpaContactName = Nothing+ , _cpaAddressLine2 = Nothing+ , _cpaCountryCode = Nothing+ , _cpaRegion = Nothing+ , _cpaAddressLine3 = Nothing+ }++-- | The company or company division name.+cpaOrganizationName :: Lens' CustomerPostalAddress (Maybe Text)+cpaOrganizationName+ = lens _cpaOrganizationName+ (\ s a -> s{_cpaOrganizationName = a})++-- | The postal code. A postalCode example is a postal zip code such as+-- 10009. This is in accordance with -+-- http:\/\/portablecontacts.net\/draft-spec.html#address_element.+cpaPostalCode :: Lens' CustomerPostalAddress (Maybe Text)+cpaPostalCode+ = lens _cpaPostalCode+ (\ s a -> s{_cpaPostalCode = a})++-- | A customer\'s physical address. The address can be composed of one to+-- three lines.+cpaAddressLine1 :: Lens' CustomerPostalAddress (Maybe Text)+cpaAddressLine1+ = lens _cpaAddressLine1+ (\ s a -> s{_cpaAddressLine1 = a})++-- | Name of the locality. An example of a locality value is the city of San+-- Francisco.+cpaLocality :: Lens' CustomerPostalAddress (Maybe Text)+cpaLocality+ = lens _cpaLocality (\ s a -> s{_cpaLocality = a})++-- | The customer contact\'s name.+cpaContactName :: Lens' CustomerPostalAddress (Maybe Text)+cpaContactName+ = lens _cpaContactName+ (\ s a -> s{_cpaContactName = a})++-- | Address line 2 of the address.+cpaAddressLine2 :: Lens' CustomerPostalAddress (Maybe Text)+cpaAddressLine2+ = lens _cpaAddressLine2+ (\ s a -> s{_cpaAddressLine2 = a})++-- | This is a required property. For countryCode information see the ISO+-- 3166 country code elements.+cpaCountryCode :: Lens' CustomerPostalAddress (Maybe Text)+cpaCountryCode+ = lens _cpaCountryCode+ (\ s a -> s{_cpaCountryCode = a})++-- | Name of the region. An example of a region value is NY for the state of+-- New York.+cpaRegion :: Lens' CustomerPostalAddress (Maybe Text)+cpaRegion+ = lens _cpaRegion (\ s a -> s{_cpaRegion = a})++-- | Address line 3 of the address.+cpaAddressLine3 :: Lens' CustomerPostalAddress (Maybe Text)+cpaAddressLine3+ = lens _cpaAddressLine3+ (\ s a -> s{_cpaAddressLine3 = a})++instance FromJSON CustomerPostalAddress where+ parseJSON+ = withObject "CustomerPostalAddress"+ (\ o ->+ CustomerPostalAddress <$>+ (o .:? "organizationName") <*> (o .:? "postalCode")+ <*> (o .:? "addressLine1")+ <*> (o .:? "locality")+ <*> (o .:? "contactName")+ <*> (o .:? "addressLine2")+ <*> (o .:? "countryCode")+ <*> (o .:? "region")+ <*> (o .:? "addressLine3"))++instance ToJSON CustomerPostalAddress where+ toJSON CustomerPostalAddress{..}+ = object+ (catMaybes+ [("organizationName" .=) <$> _cpaOrganizationName,+ ("postalCode" .=) <$> _cpaPostalCode,+ ("addressLine1" .=) <$> _cpaAddressLine1,+ ("locality" .=) <$> _cpaLocality,+ ("contactName" .=) <$> _cpaContactName,+ ("addressLine2" .=) <$> _cpaAddressLine2,+ ("countryCode" .=) <$> _cpaCountryCode,+ ("region" .=) <$> _cpaRegion,+ ("addressLine3" .=) <$> _cpaAddressLine3])++-- | JSON template for roleAssignment resource in Directory API.+--+-- /See:/ 'roleAssignment' smart constructor.+data RoleAssignment = RoleAssignment+ { _rolEtag :: !(Maybe Text)+ , _rolScopeType :: !(Maybe Text)+ , _rolKind :: !Text+ , _rolAssignedTo :: !(Maybe Text)+ , _rolRoleId :: !(Maybe (Textual Int64))+ , _rolRoleAssignmentId :: !(Maybe (Textual Int64))+ , _rolOrgUnitId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RoleAssignment' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rolEtag'+--+-- * 'rolScopeType'+--+-- * 'rolKind'+--+-- * 'rolAssignedTo'+--+-- * 'rolRoleId'+--+-- * 'rolRoleAssignmentId'+--+-- * 'rolOrgUnitId'+roleAssignment+ :: RoleAssignment+roleAssignment =+ RoleAssignment+ { _rolEtag = Nothing+ , _rolScopeType = Nothing+ , _rolKind = "admin#directory#roleAssignment"+ , _rolAssignedTo = Nothing+ , _rolRoleId = Nothing+ , _rolRoleAssignmentId = Nothing+ , _rolOrgUnitId = Nothing+ }++-- | ETag of the resource.+rolEtag :: Lens' RoleAssignment (Maybe Text)+rolEtag = lens _rolEtag (\ s a -> s{_rolEtag = a})++-- | The scope in which this role is assigned. Possible values are: -+-- CUSTOMER - ORG_UNIT+rolScopeType :: Lens' RoleAssignment (Maybe Text)+rolScopeType+ = lens _rolScopeType (\ s a -> s{_rolScopeType = a})++-- | The type of the API resource. This is always+-- admin#directory#roleAssignment.+rolKind :: Lens' RoleAssignment Text+rolKind = lens _rolKind (\ s a -> s{_rolKind = a})++-- | The unique ID of the user this role is assigned to.+rolAssignedTo :: Lens' RoleAssignment (Maybe Text)+rolAssignedTo+ = lens _rolAssignedTo+ (\ s a -> s{_rolAssignedTo = a})++-- | The ID of the role that is assigned.+rolRoleId :: Lens' RoleAssignment (Maybe Int64)+rolRoleId+ = lens _rolRoleId (\ s a -> s{_rolRoleId = a}) .+ mapping _Coerce++-- | ID of this roleAssignment.+rolRoleAssignmentId :: Lens' RoleAssignment (Maybe Int64)+rolRoleAssignmentId+ = lens _rolRoleAssignmentId+ (\ s a -> s{_rolRoleAssignmentId = a})+ . mapping _Coerce++-- | If the role is restricted to an organization unit, this contains the ID+-- for the organization unit the exercise of this role is restricted to.+rolOrgUnitId :: Lens' RoleAssignment (Maybe Text)+rolOrgUnitId+ = lens _rolOrgUnitId (\ s a -> s{_rolOrgUnitId = a})++instance FromJSON RoleAssignment where+ parseJSON+ = withObject "RoleAssignment"+ (\ o ->+ RoleAssignment <$>+ (o .:? "etag") <*> (o .:? "scopeType") <*>+ (o .:? "kind" .!= "admin#directory#roleAssignment")+ <*> (o .:? "assignedTo")+ <*> (o .:? "roleId")+ <*> (o .:? "roleAssignmentId")+ <*> (o .:? "orgUnitId"))++instance ToJSON RoleAssignment where+ toJSON RoleAssignment{..}+ = object+ (catMaybes+ [("etag" .=) <$> _rolEtag,+ ("scopeType" .=) <$> _rolScopeType,+ Just ("kind" .= _rolKind),+ ("assignedTo" .=) <$> _rolAssignedTo,+ ("roleId" .=) <$> _rolRoleId,+ ("roleAssignmentId" .=) <$> _rolRoleAssignmentId,+ ("orgUnitId" .=) <$> _rolOrgUnitId])++-- | JSON template for Group resource in Directory API.+--+-- /See:/ 'group'' smart constructor.+data Group = Group+ { _groEmail :: !(Maybe Text)+ , _groEtag :: !(Maybe Text)+ , _groDirectMembersCount :: !(Maybe (Textual Int64))+ , _groKind :: !Text+ , _groAliases :: !(Maybe [Text])+ , _groNonEditableAliases :: !(Maybe [Text])+ , _groName :: !(Maybe Text)+ , _groAdminCreated :: !(Maybe Bool)+ , _groId :: !(Maybe Text)+ , _groDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Group' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'groEmail'+--+-- * 'groEtag'+--+-- * 'groDirectMembersCount'+--+-- * 'groKind'+--+-- * 'groAliases'+--+-- * 'groNonEditableAliases'+--+-- * 'groName'+--+-- * 'groAdminCreated'+--+-- * 'groId'+--+-- * 'groDescription'+group'+ :: Group+group' =+ Group+ { _groEmail = Nothing+ , _groEtag = Nothing+ , _groDirectMembersCount = Nothing+ , _groKind = "admin#directory#group"+ , _groAliases = Nothing+ , _groNonEditableAliases = Nothing+ , _groName = Nothing+ , _groAdminCreated = Nothing+ , _groId = Nothing+ , _groDescription = Nothing+ }++-- | Email of Group+groEmail :: Lens' Group (Maybe Text)+groEmail = lens _groEmail (\ s a -> s{_groEmail = a})++-- | ETag of the resource.+groEtag :: Lens' Group (Maybe Text)+groEtag = lens _groEtag (\ s a -> s{_groEtag = a})++-- | Group direct members count+groDirectMembersCount :: Lens' Group (Maybe Int64)+groDirectMembersCount+ = lens _groDirectMembersCount+ (\ s a -> s{_groDirectMembersCount = a})+ . mapping _Coerce++-- | Kind of resource this is.+groKind :: Lens' Group Text+groKind = lens _groKind (\ s a -> s{_groKind = a})++-- | List of aliases (Read-only)+groAliases :: Lens' Group [Text]+groAliases+ = lens _groAliases (\ s a -> s{_groAliases = a}) .+ _Default+ . _Coerce++-- | List of non editable aliases (Read-only)+groNonEditableAliases :: Lens' Group [Text]+groNonEditableAliases+ = lens _groNonEditableAliases+ (\ s a -> s{_groNonEditableAliases = a})+ . _Default+ . _Coerce++-- | Group name+groName :: Lens' Group (Maybe Text)+groName = lens _groName (\ s a -> s{_groName = a})++-- | Is the group created by admin (Read-only) *+groAdminCreated :: Lens' Group (Maybe Bool)+groAdminCreated+ = lens _groAdminCreated+ (\ s a -> s{_groAdminCreated = a})++-- | Unique identifier of Group (Read-only)+groId :: Lens' Group (Maybe Text)+groId = lens _groId (\ s a -> s{_groId = a})++-- | Description of the group+groDescription :: Lens' Group (Maybe Text)+groDescription+ = lens _groDescription+ (\ s a -> s{_groDescription = a})++instance FromJSON Group where+ parseJSON+ = withObject "Group"+ (\ o ->+ Group <$>+ (o .:? "email") <*> (o .:? "etag") <*>+ (o .:? "directMembersCount")+ <*> (o .:? "kind" .!= "admin#directory#group")+ <*> (o .:? "aliases" .!= mempty)+ <*> (o .:? "nonEditableAliases" .!= mempty)+ <*> (o .:? "name")+ <*> (o .:? "adminCreated")+ <*> (o .:? "id")+ <*> (o .:? "description"))++instance ToJSON Group where+ toJSON Group{..}+ = object+ (catMaybes+ [("email" .=) <$> _groEmail,+ ("etag" .=) <$> _groEtag,+ ("directMembersCount" .=) <$> _groDirectMembersCount,+ Just ("kind" .= _groKind),+ ("aliases" .=) <$> _groAliases,+ ("nonEditableAliases" .=) <$> _groNonEditableAliases,+ ("name" .=) <$> _groName,+ ("adminCreated" .=) <$> _groAdminCreated,+ ("id" .=) <$> _groId,+ ("description" .=) <$> _groDescription])++-- | JSON template for Chrome Os Device resource in Directory API.+--+-- /See:/ 'chromeOSDevice' smart constructor.+data ChromeOSDevice = ChromeOSDevice+ { _codStatus :: !(Maybe Text)+ , _codEtag :: !(Maybe Text)+ , _codAnnotatedUser :: !(Maybe Text)+ , _codPlatformVersion :: !(Maybe Text)+ , _codLastSync :: !(Maybe DateTime')+ , _codActiveTimeRanges :: !(Maybe [ChromeOSDeviceActiveTimeRangesItem])+ , _codKind :: !Text+ , _codEthernetMACAddress :: !(Maybe Text)+ , _codLastEnrollmentTime :: !(Maybe DateTime')+ , _codAnnotatedLocation :: !(Maybe Text)+ , _codMACAddress :: !(Maybe Text)+ , _codOrgUnitPath :: !(Maybe Text)+ , _codRecentUsers :: !(Maybe [ChromeOSDeviceRecentUsersItem])+ , _codSupportEndDate :: !(Maybe DateTime')+ , _codModel :: !(Maybe Text)+ , _codWillAutoRenew :: !(Maybe Bool)+ , _codMeid :: !(Maybe Text)+ , _codDeviceId :: !(Maybe Text)+ , _codBootMode :: !(Maybe Text)+ , _codOrderNumber :: !(Maybe Text)+ , _codAnnotatedAssetId :: !(Maybe Text)+ , _codNotes :: !(Maybe Text)+ , _codSerialNumber :: !(Maybe Text)+ , _codFirmwareVersion :: !(Maybe Text)+ , _codOSVersion :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChromeOSDevice' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'codStatus'+--+-- * 'codEtag'+--+-- * 'codAnnotatedUser'+--+-- * 'codPlatformVersion'+--+-- * 'codLastSync'+--+-- * 'codActiveTimeRanges'+--+-- * 'codKind'+--+-- * 'codEthernetMACAddress'+--+-- * 'codLastEnrollmentTime'+--+-- * 'codAnnotatedLocation'+--+-- * 'codMACAddress'+--+-- * 'codOrgUnitPath'+--+-- * 'codRecentUsers'+--+-- * 'codSupportEndDate'+--+-- * 'codModel'+--+-- * 'codWillAutoRenew'+--+-- * 'codMeid'+--+-- * 'codDeviceId'+--+-- * 'codBootMode'+--+-- * 'codOrderNumber'+--+-- * 'codAnnotatedAssetId'+--+-- * 'codNotes'+--+-- * 'codSerialNumber'+--+-- * 'codFirmwareVersion'+--+-- * 'codOSVersion'+chromeOSDevice+ :: ChromeOSDevice+chromeOSDevice =+ ChromeOSDevice+ { _codStatus = Nothing+ , _codEtag = Nothing+ , _codAnnotatedUser = Nothing+ , _codPlatformVersion = Nothing+ , _codLastSync = Nothing+ , _codActiveTimeRanges = Nothing+ , _codKind = "admin#directory#chromeosdevice"+ , _codEthernetMACAddress = Nothing+ , _codLastEnrollmentTime = Nothing+ , _codAnnotatedLocation = Nothing+ , _codMACAddress = Nothing+ , _codOrgUnitPath = Nothing+ , _codRecentUsers = Nothing+ , _codSupportEndDate = Nothing+ , _codModel = Nothing+ , _codWillAutoRenew = Nothing+ , _codMeid = Nothing+ , _codDeviceId = Nothing+ , _codBootMode = Nothing+ , _codOrderNumber = Nothing+ , _codAnnotatedAssetId = Nothing+ , _codNotes = Nothing+ , _codSerialNumber = Nothing+ , _codFirmwareVersion = Nothing+ , _codOSVersion = Nothing+ }++-- | status of the device (Read-only)+codStatus :: Lens' ChromeOSDevice (Maybe Text)+codStatus+ = lens _codStatus (\ s a -> s{_codStatus = a})++-- | ETag of the resource.+codEtag :: Lens' ChromeOSDevice (Maybe Text)+codEtag = lens _codEtag (\ s a -> s{_codEtag = a})++-- | User of the device+codAnnotatedUser :: Lens' ChromeOSDevice (Maybe Text)+codAnnotatedUser+ = lens _codAnnotatedUser+ (\ s a -> s{_codAnnotatedUser = a})++-- | Chromebook platform version (Read-only)+codPlatformVersion :: Lens' ChromeOSDevice (Maybe Text)+codPlatformVersion+ = lens _codPlatformVersion+ (\ s a -> s{_codPlatformVersion = a})++-- | Date and time the device was last synchronized with the policy settings+-- in the Google Apps administrator control panel (Read-only)+codLastSync :: Lens' ChromeOSDevice (Maybe UTCTime)+codLastSync+ = lens _codLastSync (\ s a -> s{_codLastSync = a}) .+ mapping _DateTime++-- | List of active time ranges (Read-only)+codActiveTimeRanges :: Lens' ChromeOSDevice [ChromeOSDeviceActiveTimeRangesItem]+codActiveTimeRanges+ = lens _codActiveTimeRanges+ (\ s a -> s{_codActiveTimeRanges = a})+ . _Default+ . _Coerce++-- | Kind of resource this is.+codKind :: Lens' ChromeOSDevice Text+codKind = lens _codKind (\ s a -> s{_codKind = a})++-- | Chromebook Mac Address on ethernet network interface (Read-only)+codEthernetMACAddress :: Lens' ChromeOSDevice (Maybe Text)+codEthernetMACAddress+ = lens _codEthernetMACAddress+ (\ s a -> s{_codEthernetMACAddress = a})++-- | Date and time the device was last enrolled (Read-only)+codLastEnrollmentTime :: Lens' ChromeOSDevice (Maybe UTCTime)+codLastEnrollmentTime+ = lens _codLastEnrollmentTime+ (\ s a -> s{_codLastEnrollmentTime = a})+ . mapping _DateTime++-- | Address or location of the device as noted by the administrator+codAnnotatedLocation :: Lens' ChromeOSDevice (Maybe Text)+codAnnotatedLocation+ = lens _codAnnotatedLocation+ (\ s a -> s{_codAnnotatedLocation = a})++-- | Chromebook Mac Address on wifi network interface (Read-only)+codMACAddress :: Lens' ChromeOSDevice (Maybe Text)+codMACAddress+ = lens _codMACAddress+ (\ s a -> s{_codMACAddress = a})++-- | OrgUnit of the device+codOrgUnitPath :: Lens' ChromeOSDevice (Maybe Text)+codOrgUnitPath+ = lens _codOrgUnitPath+ (\ s a -> s{_codOrgUnitPath = a})++-- | List of recent device users, in descending order by last login time+-- (Read-only)+codRecentUsers :: Lens' ChromeOSDevice [ChromeOSDeviceRecentUsersItem]+codRecentUsers+ = lens _codRecentUsers+ (\ s a -> s{_codRecentUsers = a})+ . _Default+ . _Coerce++-- | Final date the device will be supported (Read-only)+codSupportEndDate :: Lens' ChromeOSDevice (Maybe UTCTime)+codSupportEndDate+ = lens _codSupportEndDate+ (\ s a -> s{_codSupportEndDate = a})+ . mapping _DateTime++-- | Chromebook Model (Read-only)+codModel :: Lens' ChromeOSDevice (Maybe Text)+codModel = lens _codModel (\ s a -> s{_codModel = a})++-- | Will Chromebook auto renew after support end date (Read-only)+codWillAutoRenew :: Lens' ChromeOSDevice (Maybe Bool)+codWillAutoRenew+ = lens _codWillAutoRenew+ (\ s a -> s{_codWillAutoRenew = a})++-- | Mobile Equipment identifier for the 3G mobile card in the Chromebook+-- (Read-only)+codMeid :: Lens' ChromeOSDevice (Maybe Text)+codMeid = lens _codMeid (\ s a -> s{_codMeid = a})++-- | Unique identifier of Chrome OS Device (Read-only)+codDeviceId :: Lens' ChromeOSDevice (Maybe Text)+codDeviceId+ = lens _codDeviceId (\ s a -> s{_codDeviceId = a})++-- | Chromebook boot mode (Read-only)+codBootMode :: Lens' ChromeOSDevice (Maybe Text)+codBootMode+ = lens _codBootMode (\ s a -> s{_codBootMode = a})++-- | Chromebook order number (Read-only)+codOrderNumber :: Lens' ChromeOSDevice (Maybe Text)+codOrderNumber+ = lens _codOrderNumber+ (\ s a -> s{_codOrderNumber = a})++-- | AssetId specified during enrollment or through later annotation+codAnnotatedAssetId :: Lens' ChromeOSDevice (Maybe Text)+codAnnotatedAssetId+ = lens _codAnnotatedAssetId+ (\ s a -> s{_codAnnotatedAssetId = a})++-- | Notes added by the administrator+codNotes :: Lens' ChromeOSDevice (Maybe Text)+codNotes = lens _codNotes (\ s a -> s{_codNotes = a})++-- | Chromebook serial number (Read-only)+codSerialNumber :: Lens' ChromeOSDevice (Maybe Text)+codSerialNumber+ = lens _codSerialNumber+ (\ s a -> s{_codSerialNumber = a})++-- | Chromebook firmware version (Read-only)+codFirmwareVersion :: Lens' ChromeOSDevice (Maybe Text)+codFirmwareVersion+ = lens _codFirmwareVersion+ (\ s a -> s{_codFirmwareVersion = a})++-- | Chromebook Os Version (Read-only)+codOSVersion :: Lens' ChromeOSDevice (Maybe Text)+codOSVersion+ = lens _codOSVersion (\ s a -> s{_codOSVersion = a})++instance FromJSON ChromeOSDevice where+ parseJSON+ = withObject "ChromeOSDevice"+ (\ o ->+ ChromeOSDevice <$>+ (o .:? "status") <*> (o .:? "etag") <*>+ (o .:? "annotatedUser")+ <*> (o .:? "platformVersion")+ <*> (o .:? "lastSync")+ <*> (o .:? "activeTimeRanges" .!= mempty)+ <*>+ (o .:? "kind" .!= "admin#directory#chromeosdevice")+ <*> (o .:? "ethernetMacAddress")+ <*> (o .:? "lastEnrollmentTime")+ <*> (o .:? "annotatedLocation")+ <*> (o .:? "macAddress")+ <*> (o .:? "orgUnitPath")+ <*> (o .:? "recentUsers" .!= mempty)+ <*> (o .:? "supportEndDate")+ <*> (o .:? "model")+ <*> (o .:? "willAutoRenew")+ <*> (o .:? "meid")+ <*> (o .:? "deviceId")+ <*> (o .:? "bootMode")+ <*> (o .:? "orderNumber")+ <*> (o .:? "annotatedAssetId")+ <*> (o .:? "notes")+ <*> (o .:? "serialNumber")+ <*> (o .:? "firmwareVersion")+ <*> (o .:? "osVersion"))++instance ToJSON ChromeOSDevice where+ toJSON ChromeOSDevice{..}+ = object+ (catMaybes+ [("status" .=) <$> _codStatus,+ ("etag" .=) <$> _codEtag,+ ("annotatedUser" .=) <$> _codAnnotatedUser,+ ("platformVersion" .=) <$> _codPlatformVersion,+ ("lastSync" .=) <$> _codLastSync,+ ("activeTimeRanges" .=) <$> _codActiveTimeRanges,+ Just ("kind" .= _codKind),+ ("ethernetMacAddress" .=) <$> _codEthernetMACAddress,+ ("lastEnrollmentTime" .=) <$> _codLastEnrollmentTime,+ ("annotatedLocation" .=) <$> _codAnnotatedLocation,+ ("macAddress" .=) <$> _codMACAddress,+ ("orgUnitPath" .=) <$> _codOrgUnitPath,+ ("recentUsers" .=) <$> _codRecentUsers,+ ("supportEndDate" .=) <$> _codSupportEndDate,+ ("model" .=) <$> _codModel,+ ("willAutoRenew" .=) <$> _codWillAutoRenew,+ ("meid" .=) <$> _codMeid,+ ("deviceId" .=) <$> _codDeviceId,+ ("bootMode" .=) <$> _codBootMode,+ ("orderNumber" .=) <$> _codOrderNumber,+ ("annotatedAssetId" .=) <$> _codAnnotatedAssetId,+ ("notes" .=) <$> _codNotes,+ ("serialNumber" .=) <$> _codSerialNumber,+ ("firmwareVersion" .=) <$> _codFirmwareVersion,+ ("osVersion" .=) <$> _codOSVersion])++-- | JSON response template for List Users operation in Apps Directory API.+--+-- /See:/ 'users' smart constructor.+data Users = Users+ { _uEtag :: !(Maybe Text)+ , _uNextPageToken :: !(Maybe Text)+ , _uUsers :: !(Maybe [User])+ , _uKind :: !Text+ , _uTriggerEvent :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Users' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uEtag'+--+-- * 'uNextPageToken'+--+-- * 'uUsers'+--+-- * 'uKind'+--+-- * 'uTriggerEvent'+users+ :: Users+users =+ Users+ { _uEtag = Nothing+ , _uNextPageToken = Nothing+ , _uUsers = Nothing+ , _uKind = "admin#directory#users"+ , _uTriggerEvent = Nothing+ }++-- | ETag of the resource.+uEtag :: Lens' Users (Maybe Text)+uEtag = lens _uEtag (\ s a -> s{_uEtag = a})++-- | Token used to access next page of this result.+uNextPageToken :: Lens' Users (Maybe Text)+uNextPageToken+ = lens _uNextPageToken+ (\ s a -> s{_uNextPageToken = a})++-- | List of user objects.+uUsers :: Lens' Users [User]+uUsers+ = lens _uUsers (\ s a -> s{_uUsers = a}) . _Default .+ _Coerce++-- | Kind of resource this is.+uKind :: Lens' Users Text+uKind = lens _uKind (\ s a -> s{_uKind = a})++-- | Event that triggered this response (only used in case of Push Response)+uTriggerEvent :: Lens' Users (Maybe Text)+uTriggerEvent+ = lens _uTriggerEvent+ (\ s a -> s{_uTriggerEvent = a})++instance FromJSON Users where+ parseJSON+ = withObject "Users"+ (\ o ->+ Users <$>+ (o .:? "etag") <*> (o .:? "nextPageToken") <*>+ (o .:? "users" .!= mempty)+ <*> (o .:? "kind" .!= "admin#directory#users")+ <*> (o .:? "trigger_event"))++instance ToJSON Users where+ toJSON Users{..}+ = object+ (catMaybes+ [("etag" .=) <$> _uEtag,+ ("nextPageToken" .=) <$> _uNextPageToken,+ ("users" .=) <$> _uUsers, Just ("kind" .= _uKind),+ ("trigger_event" .=) <$> _uTriggerEvent])++-- | The template that returns individual ASP (Access Code) data.+--+-- /See:/ 'asp' smart constructor.+data Asp = Asp+ { _aCreationTime :: !(Maybe (Textual Int64))+ , _aEtag :: !(Maybe Text)+ , _aCodeId :: !(Maybe (Textual Int32))+ , _aKind :: !Text+ , _aName :: !(Maybe Text)+ , _aLastTimeUsed :: !(Maybe (Textual Int64))+ , _aUserKey :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Asp' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aCreationTime'+--+-- * 'aEtag'+--+-- * 'aCodeId'+--+-- * 'aKind'+--+-- * 'aName'+--+-- * 'aLastTimeUsed'+--+-- * 'aUserKey'+asp+ :: Asp+asp =+ Asp+ { _aCreationTime = Nothing+ , _aEtag = Nothing+ , _aCodeId = Nothing+ , _aKind = "admin#directory#asp"+ , _aName = Nothing+ , _aLastTimeUsed = Nothing+ , _aUserKey = Nothing+ }++-- | The time when the ASP was created. Expressed in Unix time format.+aCreationTime :: Lens' Asp (Maybe Int64)+aCreationTime+ = lens _aCreationTime+ (\ s a -> s{_aCreationTime = a})+ . mapping _Coerce++-- | ETag of the ASP.+aEtag :: Lens' Asp (Maybe Text)+aEtag = lens _aEtag (\ s a -> s{_aEtag = a})++-- | The unique ID of the ASP.+aCodeId :: Lens' Asp (Maybe Int32)+aCodeId+ = lens _aCodeId (\ s a -> s{_aCodeId = a}) .+ mapping _Coerce++-- | The type of the API resource. This is always admin#directory#asp.+aKind :: Lens' Asp Text+aKind = lens _aKind (\ s a -> s{_aKind = a})++-- | The name of the application that the user, represented by their userId,+-- entered when the ASP was created.+aName :: Lens' Asp (Maybe Text)+aName = lens _aName (\ s a -> s{_aName = a})++-- | The time when the ASP was last used. Expressed in Unix time format.+aLastTimeUsed :: Lens' Asp (Maybe Int64)+aLastTimeUsed+ = lens _aLastTimeUsed+ (\ s a -> s{_aLastTimeUsed = a})+ . mapping _Coerce++-- | The unique ID of the user who issued the ASP.+aUserKey :: Lens' Asp (Maybe Text)+aUserKey = lens _aUserKey (\ s a -> s{_aUserKey = a})++instance FromJSON Asp where+ parseJSON+ = withObject "Asp"+ (\ o ->+ Asp <$>+ (o .:? "creationTime") <*> (o .:? "etag") <*>+ (o .:? "codeId")+ <*> (o .:? "kind" .!= "admin#directory#asp")+ <*> (o .:? "name")+ <*> (o .:? "lastTimeUsed")+ <*> (o .:? "userKey"))++instance ToJSON Asp where+ toJSON Asp{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _aCreationTime,+ ("etag" .=) <$> _aEtag, ("codeId" .=) <$> _aCodeId,+ Just ("kind" .= _aKind), ("name" .=) <$> _aName,+ ("lastTimeUsed" .=) <$> _aLastTimeUsed,+ ("userKey" .=) <$> _aUserKey])++-- | JSON response template for List Schema operation in Directory API.+--+-- /See:/ 'schemas' smart constructor.+data Schemas = Schemas+ { _sEtag :: !(Maybe Text)+ , _sSchemas :: !(Maybe [Schema])+ , _sKind :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Schemas' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sEtag'+--+-- * 'sSchemas'+--+-- * 'sKind'+schemas+ :: Schemas+schemas =+ Schemas+ { _sEtag = Nothing+ , _sSchemas = Nothing+ , _sKind = "admin#directory#schemas"+ }++-- | ETag of the resource.+sEtag :: Lens' Schemas (Maybe Text)+sEtag = lens _sEtag (\ s a -> s{_sEtag = a})++-- | List of UserSchema objects.+sSchemas :: Lens' Schemas [Schema]+sSchemas+ = lens _sSchemas (\ s a -> s{_sSchemas = a}) .+ _Default+ . _Coerce++-- | Kind of resource this is.+sKind :: Lens' Schemas Text+sKind = lens _sKind (\ s a -> s{_sKind = a})++instance FromJSON Schemas where+ parseJSON+ = withObject "Schemas"+ (\ o ->+ Schemas <$>+ (o .:? "etag") <*> (o .:? "schemas" .!= mempty) <*>+ (o .:? "kind" .!= "admin#directory#schemas"))++instance ToJSON Schemas where+ toJSON Schemas{..}+ = object+ (catMaybes+ [("etag" .=) <$> _sEtag,+ ("schemas" .=) <$> _sSchemas,+ Just ("kind" .= _sKind)])++-- | Template for a notification resource.+--+-- /See:/ 'notification' smart constructor.+data Notification = Notification+ { _nSubject :: !(Maybe Text)+ , _nEtag :: !(Maybe Text)+ , _nKind :: !Text+ , _nBody :: !(Maybe Text)+ , _nFromAddress :: !(Maybe Text)+ , _nIsUnread :: !(Maybe Bool)+ , _nNotificationId :: !(Maybe Text)+ , _nSendTime :: !(Maybe DateTime')+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Notification' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'nSubject'+--+-- * 'nEtag'+--+-- * 'nKind'+--+-- * 'nBody'+--+-- * 'nFromAddress'+--+-- * 'nIsUnread'+--+-- * 'nNotificationId'+--+-- * 'nSendTime'+notification+ :: Notification+notification =+ Notification+ { _nSubject = Nothing+ , _nEtag = Nothing+ , _nKind = "admin#directory#notification"+ , _nBody = Nothing+ , _nFromAddress = Nothing+ , _nIsUnread = Nothing+ , _nNotificationId = Nothing+ , _nSendTime = Nothing+ }++-- | Subject of the notification (Read-only)+nSubject :: Lens' Notification (Maybe Text)+nSubject = lens _nSubject (\ s a -> s{_nSubject = a})++-- | ETag of the resource.+nEtag :: Lens' Notification (Maybe Text)+nEtag = lens _nEtag (\ s a -> s{_nEtag = a})++-- | The type of the resource.+nKind :: Lens' Notification Text+nKind = lens _nKind (\ s a -> s{_nKind = a})++-- | Body of the notification (Read-only)+nBody :: Lens' Notification (Maybe Text)+nBody = lens _nBody (\ s a -> s{_nBody = a})++-- | Address from which the notification is received (Read-only)+nFromAddress :: Lens' Notification (Maybe Text)+nFromAddress+ = lens _nFromAddress (\ s a -> s{_nFromAddress = a})++-- | Boolean indicating whether the notification is unread or not.+nIsUnread :: Lens' Notification (Maybe Bool)+nIsUnread+ = lens _nIsUnread (\ s a -> s{_nIsUnread = a})++nNotificationId :: Lens' Notification (Maybe Text)+nNotificationId+ = lens _nNotificationId+ (\ s a -> s{_nNotificationId = a})++-- | Time at which notification was sent (Read-only)+nSendTime :: Lens' Notification (Maybe UTCTime)+nSendTime+ = lens _nSendTime (\ s a -> s{_nSendTime = a}) .+ mapping _DateTime++instance FromJSON Notification where+ parseJSON+ = withObject "Notification"+ (\ o ->+ Notification <$>+ (o .:? "subject") <*> (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#notification")+ <*> (o .:? "body")+ <*> (o .:? "fromAddress")+ <*> (o .:? "isUnread")+ <*> (o .:? "notificationId")+ <*> (o .:? "sendTime"))++instance ToJSON Notification where+ toJSON Notification{..}+ = object+ (catMaybes+ [("subject" .=) <$> _nSubject,+ ("etag" .=) <$> _nEtag, Just ("kind" .= _nKind),+ ("body" .=) <$> _nBody,+ ("fromAddress" .=) <$> _nFromAddress,+ ("isUnread" .=) <$> _nIsUnread,+ ("notificationId" .=) <$> _nNotificationId,+ ("sendTime" .=) <$> _nSendTime])++-- | JSON template for instant messenger of an user.+--+-- /See:/ 'userIm' smart constructor.+data UserIm = UserIm+ { _uiIm :: !(Maybe Text)+ , _uiProtocol :: !(Maybe Text)+ , _uiPrimary :: !(Maybe Bool)+ , _uiCustomProtocol :: !(Maybe Text)+ , _uiType :: !(Maybe Text)+ , _uiCustomType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserIm' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uiIm'+--+-- * 'uiProtocol'+--+-- * 'uiPrimary'+--+-- * 'uiCustomProtocol'+--+-- * 'uiType'+--+-- * 'uiCustomType'+userIm+ :: UserIm+userIm =+ UserIm+ { _uiIm = Nothing+ , _uiProtocol = Nothing+ , _uiPrimary = Nothing+ , _uiCustomProtocol = Nothing+ , _uiType = Nothing+ , _uiCustomType = Nothing+ }++-- | Instant messenger id.+uiIm :: Lens' UserIm (Maybe Text)+uiIm = lens _uiIm (\ s a -> s{_uiIm = a})++-- | Protocol used in the instant messenger. It should be one of the values+-- from ImProtocolTypes map. Similar to type, it can take a CUSTOM value+-- and specify the custom name in customProtocol field.+uiProtocol :: Lens' UserIm (Maybe Text)+uiProtocol+ = lens _uiProtocol (\ s a -> s{_uiProtocol = a})++-- | If this is user\'s primary im. Only one entry could be marked as+-- primary.+uiPrimary :: Lens' UserIm (Maybe Bool)+uiPrimary+ = lens _uiPrimary (\ s a -> s{_uiPrimary = a})++-- | Custom protocol.+uiCustomProtocol :: Lens' UserIm (Maybe Text)+uiCustomProtocol+ = lens _uiCustomProtocol+ (\ s a -> s{_uiCustomProtocol = a})++-- | Each entry can have a type which indicates standard types of that entry.+-- For example instant messengers could be of home, work etc. In addition+-- to the standard type, an entry can have a custom type and can take any+-- value. Such types should have the CUSTOM value as type and also have a+-- customType value.+uiType :: Lens' UserIm (Maybe Text)+uiType = lens _uiType (\ s a -> s{_uiType = a})++-- | Custom type.+uiCustomType :: Lens' UserIm (Maybe Text)+uiCustomType+ = lens _uiCustomType (\ s a -> s{_uiCustomType = a})++instance FromJSON UserIm where+ parseJSON+ = withObject "UserIm"+ (\ o ->+ UserIm <$>+ (o .:? "im") <*> (o .:? "protocol") <*>+ (o .:? "primary")+ <*> (o .:? "customProtocol")+ <*> (o .:? "type")+ <*> (o .:? "customType"))++instance ToJSON UserIm where+ toJSON UserIm{..}+ = object+ (catMaybes+ [("im" .=) <$> _uiIm,+ ("protocol" .=) <$> _uiProtocol,+ ("primary" .=) <$> _uiPrimary,+ ("customProtocol" .=) <$> _uiCustomProtocol,+ ("type" .=) <$> _uiType,+ ("customType" .=) <$> _uiCustomType])++-- | JSON response template for List tokens operation in Directory API.+--+-- /See:/ 'tokens' smart constructor.+data Tokens = Tokens+ { _tEtag :: !(Maybe Text)+ , _tKind :: !Text+ , _tItems :: !(Maybe [Token])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Tokens' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tEtag'+--+-- * 'tKind'+--+-- * 'tItems'+tokens+ :: Tokens+tokens =+ Tokens+ { _tEtag = Nothing+ , _tKind = "admin#directory#tokenList"+ , _tItems = Nothing+ }++-- | ETag of the resource.+tEtag :: Lens' Tokens (Maybe Text)+tEtag = lens _tEtag (\ s a -> s{_tEtag = a})++-- | The type of the API resource. This is always admin#directory#tokenList.+tKind :: Lens' Tokens Text+tKind = lens _tKind (\ s a -> s{_tKind = a})++-- | A list of Token resources.+tItems :: Lens' Tokens [Token]+tItems+ = lens _tItems (\ s a -> s{_tItems = a}) . _Default .+ _Coerce++instance FromJSON Tokens where+ parseJSON+ = withObject "Tokens"+ (\ o ->+ Tokens <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#tokenList")+ <*> (o .:? "items" .!= mempty))++instance ToJSON Tokens where+ toJSON Tokens{..}+ = object+ (catMaybes+ [("etag" .=) <$> _tEtag, Just ("kind" .= _tKind),+ ("items" .=) <$> _tItems])++-- | Custom fields of the user.+--+-- /See:/ 'userCustomSchemas' smart constructor.+newtype UserCustomSchemas = UserCustomSchemas+ { _ucsAddtional :: HashMap Text UserCustomProperties+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserCustomSchemas' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ucsAddtional'+userCustomSchemas+ :: HashMap Text UserCustomProperties -- ^ 'ucsAddtional'+ -> UserCustomSchemas+userCustomSchemas pUcsAddtional_ =+ UserCustomSchemas+ { _ucsAddtional = _Coerce # pUcsAddtional_+ }++ucsAddtional :: Lens' UserCustomSchemas (HashMap Text UserCustomProperties)+ucsAddtional+ = lens _ucsAddtional (\ s a -> s{_ucsAddtional = a})+ . _Coerce++instance FromJSON UserCustomSchemas where+ parseJSON+ = withObject "UserCustomSchemas"+ (\ o -> UserCustomSchemas <$> (parseJSONObject o))++instance ToJSON UserCustomSchemas where+ toJSON = toJSON . _ucsAddtional++-- | JSON response template to list domain aliases in Directory API.+--+-- /See:/ 'domainAliases' smart constructor.+data DomainAliases = DomainAliases+ { _daEtag :: !(Maybe Text)+ , _daKind :: !Text+ , _daDomainAliases :: !(Maybe [DomainAlias])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainAliases' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'daEtag'+--+-- * 'daKind'+--+-- * 'daDomainAliases'+domainAliases+ :: DomainAliases+domainAliases =+ DomainAliases+ { _daEtag = Nothing+ , _daKind = "admin#directory#domainAliases"+ , _daDomainAliases = Nothing+ }++-- | ETag of the resource.+daEtag :: Lens' DomainAliases (Maybe Text)+daEtag = lens _daEtag (\ s a -> s{_daEtag = a})++-- | Kind of resource this is.+daKind :: Lens' DomainAliases Text+daKind = lens _daKind (\ s a -> s{_daKind = a})++-- | List of domain alias objects.+daDomainAliases :: Lens' DomainAliases [DomainAlias]+daDomainAliases+ = lens _daDomainAliases+ (\ s a -> s{_daDomainAliases = a})+ . _Default+ . _Coerce++instance FromJSON DomainAliases where+ parseJSON+ = withObject "DomainAliases"+ (\ o ->+ DomainAliases <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#domainAliases")+ <*> (o .:? "domainAliases" .!= mempty))++instance ToJSON DomainAliases where+ toJSON DomainAliases{..}+ = object+ (catMaybes+ [("etag" .=) <$> _daEtag, Just ("kind" .= _daKind),+ ("domainAliases" .=) <$> _daDomainAliases])++-- | JSON response template to list aliases in Directory API.+--+-- /See:/ 'aliases' smart constructor.+data Aliases = Aliases+ { _aliEtag :: !(Maybe Text)+ , _aliKind :: !Text+ , _aliAliases :: !(Maybe [Alias])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Aliases' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aliEtag'+--+-- * 'aliKind'+--+-- * 'aliAliases'+aliases+ :: Aliases+aliases =+ Aliases+ { _aliEtag = Nothing+ , _aliKind = "admin#directory#aliases"+ , _aliAliases = Nothing+ }++-- | ETag of the resource.+aliEtag :: Lens' Aliases (Maybe Text)+aliEtag = lens _aliEtag (\ s a -> s{_aliEtag = a})++-- | Kind of resource this is.+aliKind :: Lens' Aliases Text+aliKind = lens _aliKind (\ s a -> s{_aliKind = a})++-- | List of alias objects.+aliAliases :: Lens' Aliases [Alias]+aliAliases+ = lens _aliAliases (\ s a -> s{_aliAliases = a}) .+ _Default+ . _Coerce++instance FromJSON Aliases where+ parseJSON+ = withObject "Aliases"+ (\ o ->+ Aliases <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#aliases")+ <*> (o .:? "aliases" .!= mempty))++instance ToJSON Aliases where+ toJSON Aliases{..}+ = object+ (catMaybes+ [("etag" .=) <$> _aliEtag, Just ("kind" .= _aliKind),+ ("aliases" .=) <$> _aliAliases])++-- | JSON request template to undelete a user in Directory API.+--+-- /See:/ 'userUndelete' smart constructor.+newtype UserUndelete = UserUndelete+ { _uuOrgUnitPath :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserUndelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uuOrgUnitPath'+userUndelete+ :: UserUndelete+userUndelete =+ UserUndelete+ { _uuOrgUnitPath = Nothing+ }++-- | OrgUnit of User+uuOrgUnitPath :: Lens' UserUndelete (Maybe Text)+uuOrgUnitPath+ = lens _uuOrgUnitPath+ (\ s a -> s{_uuOrgUnitPath = a})++instance FromJSON UserUndelete where+ parseJSON+ = withObject "UserUndelete"+ (\ o -> UserUndelete <$> (o .:? "orgUnitPath"))++instance ToJSON UserUndelete where+ toJSON UserUndelete{..}+ = object+ (catMaybes [("orgUnitPath" .=) <$> _uuOrgUnitPath])++-- | JSON response template for List Members operation in Directory API.+--+-- /See:/ 'members' smart constructor.+data Members = Members+ { _mEtag :: !(Maybe Text)+ , _mNextPageToken :: !(Maybe Text)+ , _mKind :: !Text+ , _mMembers :: !(Maybe [Member])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Members' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mEtag'+--+-- * 'mNextPageToken'+--+-- * 'mKind'+--+-- * 'mMembers'+members+ :: Members+members =+ Members+ { _mEtag = Nothing+ , _mNextPageToken = Nothing+ , _mKind = "admin#directory#members"+ , _mMembers = Nothing+ }++-- | ETag of the resource.+mEtag :: Lens' Members (Maybe Text)+mEtag = lens _mEtag (\ s a -> s{_mEtag = a})++-- | Token used to access next page of this result.+mNextPageToken :: Lens' Members (Maybe Text)+mNextPageToken+ = lens _mNextPageToken+ (\ s a -> s{_mNextPageToken = a})++-- | Kind of resource this is.+mKind :: Lens' Members Text+mKind = lens _mKind (\ s a -> s{_mKind = a})++-- | List of member objects.+mMembers :: Lens' Members [Member]+mMembers+ = lens _mMembers (\ s a -> s{_mMembers = a}) .+ _Default+ . _Coerce++instance FromJSON Members where+ parseJSON+ = withObject "Members"+ (\ o ->+ Members <$>+ (o .:? "etag") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "admin#directory#members")+ <*> (o .:? "members" .!= mempty))++instance ToJSON Members where+ toJSON Members{..}+ = object+ (catMaybes+ [("etag" .=) <$> _mEtag,+ ("nextPageToken" .=) <$> _mNextPageToken,+ Just ("kind" .= _mKind),+ ("members" .=) <$> _mMembers])++-- | An notification channel used to watch for resource changes.+--+-- /See:/ 'channel' smart constructor.+data Channel = Channel+ { _cResourceURI :: !(Maybe Text)+ , _cResourceId :: !(Maybe Text)+ , _cKind :: !Text+ , _cExpiration :: !(Maybe (Textual Int64))+ , _cToken :: !(Maybe Text)+ , _cAddress :: !(Maybe Text)+ , _cPayload :: !(Maybe Bool)+ , _cParams :: !(Maybe ChannelParams)+ , _cId :: !(Maybe Text)+ , _cType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Channel' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cResourceURI'+--+-- * 'cResourceId'+--+-- * 'cKind'+--+-- * 'cExpiration'+--+-- * 'cToken'+--+-- * 'cAddress'+--+-- * 'cPayload'+--+-- * 'cParams'+--+-- * 'cId'+--+-- * 'cType'+channel+ :: Channel+channel =+ Channel+ { _cResourceURI = Nothing+ , _cResourceId = Nothing+ , _cKind = "api#channel"+ , _cExpiration = Nothing+ , _cToken = Nothing+ , _cAddress = Nothing+ , _cPayload = Nothing+ , _cParams = Nothing+ , _cId = Nothing+ , _cType = Nothing+ }++-- | A version-specific identifier for the watched resource.+cResourceURI :: Lens' Channel (Maybe Text)+cResourceURI+ = lens _cResourceURI (\ s a -> s{_cResourceURI = a})++-- | An opaque ID that identifies the resource being watched on this channel.+-- Stable across different API versions.+cResourceId :: Lens' Channel (Maybe Text)+cResourceId+ = lens _cResourceId (\ s a -> s{_cResourceId = a})++-- | Identifies this as a notification channel used to watch for changes to a+-- resource. Value: the fixed string \"api#channel\".+cKind :: Lens' Channel Text+cKind = lens _cKind (\ s a -> s{_cKind = a})++-- | Date and time of notification channel expiration, expressed as a Unix+-- timestamp, in milliseconds. Optional.+cExpiration :: Lens' Channel (Maybe Int64)+cExpiration+ = lens _cExpiration (\ s a -> s{_cExpiration = a}) .+ mapping _Coerce++-- | An arbitrary string delivered to the target address with each+-- notification delivered over this channel. Optional.+cToken :: Lens' Channel (Maybe Text)+cToken = lens _cToken (\ s a -> s{_cToken = a})++-- | The address where notifications are delivered for this channel.+cAddress :: Lens' Channel (Maybe Text)+cAddress = lens _cAddress (\ s a -> s{_cAddress = a})++-- | A Boolean value to indicate whether payload is wanted. Optional.+cPayload :: Lens' Channel (Maybe Bool)+cPayload = lens _cPayload (\ s a -> s{_cPayload = a})++-- | Additional parameters controlling delivery channel behavior. Optional.+cParams :: Lens' Channel (Maybe ChannelParams)+cParams = lens _cParams (\ s a -> s{_cParams = a})++-- | A UUID or similar unique string that identifies this channel.+cId :: Lens' Channel (Maybe Text)+cId = lens _cId (\ s a -> s{_cId = a})++-- | The type of delivery mechanism used for this channel.+cType :: Lens' Channel (Maybe Text)+cType = lens _cType (\ s a -> s{_cType = a})++instance FromJSON Channel where+ parseJSON+ = withObject "Channel"+ (\ o ->+ Channel <$>+ (o .:? "resourceUri") <*> (o .:? "resourceId") <*>+ (o .:? "kind" .!= "api#channel")+ <*> (o .:? "expiration")+ <*> (o .:? "token")+ <*> (o .:? "address")+ <*> (o .:? "payload")+ <*> (o .:? "params")+ <*> (o .:? "id")+ <*> (o .:? "type"))++instance ToJSON Channel where+ toJSON Channel{..}+ = object+ (catMaybes+ [("resourceUri" .=) <$> _cResourceURI,+ ("resourceId" .=) <$> _cResourceId,+ Just ("kind" .= _cKind),+ ("expiration" .=) <$> _cExpiration,+ ("token" .=) <$> _cToken,+ ("address" .=) <$> _cAddress,+ ("payload" .=) <$> _cPayload,+ ("params" .=) <$> _cParams, ("id" .=) <$> _cId,+ ("type" .=) <$> _cType])++-- | JSON response template for List Mobile Devices operation in Directory+-- API.+--+-- /See:/ 'mobileDevices' smart constructor.+data MobileDevices = MobileDevices+ { _mdEtag :: !(Maybe Text)+ , _mdNextPageToken :: !(Maybe Text)+ , _mdKind :: !Text+ , _mdMobileDevices :: !(Maybe [MobileDevice])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MobileDevices' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdEtag'+--+-- * 'mdNextPageToken'+--+-- * 'mdKind'+--+-- * 'mdMobileDevices'+mobileDevices+ :: MobileDevices+mobileDevices =+ MobileDevices+ { _mdEtag = Nothing+ , _mdNextPageToken = Nothing+ , _mdKind = "admin#directory#mobiledevices"+ , _mdMobileDevices = Nothing+ }++-- | ETag of the resource.+mdEtag :: Lens' MobileDevices (Maybe Text)+mdEtag = lens _mdEtag (\ s a -> s{_mdEtag = a})++-- | Token used to access next page of this result.+mdNextPageToken :: Lens' MobileDevices (Maybe Text)+mdNextPageToken+ = lens _mdNextPageToken+ (\ s a -> s{_mdNextPageToken = a})++-- | Kind of resource this is.+mdKind :: Lens' MobileDevices Text+mdKind = lens _mdKind (\ s a -> s{_mdKind = a})++-- | List of Mobile Device objects.+mdMobileDevices :: Lens' MobileDevices [MobileDevice]+mdMobileDevices+ = lens _mdMobileDevices+ (\ s a -> s{_mdMobileDevices = a})+ . _Default+ . _Coerce++instance FromJSON MobileDevices where+ parseJSON+ = withObject "MobileDevices"+ (\ o ->+ MobileDevices <$>+ (o .:? "etag") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "admin#directory#mobiledevices")+ <*> (o .:? "mobiledevices" .!= mempty))++instance ToJSON MobileDevices where+ toJSON MobileDevices{..}+ = object+ (catMaybes+ [("etag" .=) <$> _mdEtag,+ ("nextPageToken" .=) <$> _mdNextPageToken,+ Just ("kind" .= _mdKind),+ ("mobiledevices" .=) <$> _mdMobileDevices])++-- | JSON template for token resource in Directory API.+--+-- /See:/ 'token' smart constructor.+data Token = Token+ { _tokClientId :: !(Maybe Text)+ , _tokEtag :: !(Maybe Text)+ , _tokDisplayText :: !(Maybe Text)+ , _tokKind :: !Text+ , _tokScopes :: !(Maybe [Text])+ , _tokNATiveApp :: !(Maybe Bool)+ , _tokAnonymous :: !(Maybe Bool)+ , _tokUserKey :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Token' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tokClientId'+--+-- * 'tokEtag'+--+-- * 'tokDisplayText'+--+-- * 'tokKind'+--+-- * 'tokScopes'+--+-- * 'tokNATiveApp'+--+-- * 'tokAnonymous'+--+-- * 'tokUserKey'+token+ :: Token+token =+ Token+ { _tokClientId = Nothing+ , _tokEtag = Nothing+ , _tokDisplayText = Nothing+ , _tokKind = "admin#directory#token"+ , _tokScopes = Nothing+ , _tokNATiveApp = Nothing+ , _tokAnonymous = Nothing+ , _tokUserKey = Nothing+ }++-- | The Client ID of the application the token is issued to.+tokClientId :: Lens' Token (Maybe Text)+tokClientId+ = lens _tokClientId (\ s a -> s{_tokClientId = a})++-- | ETag of the resource.+tokEtag :: Lens' Token (Maybe Text)+tokEtag = lens _tokEtag (\ s a -> s{_tokEtag = a})++-- | The displayable name of the application the token is issued to.+tokDisplayText :: Lens' Token (Maybe Text)+tokDisplayText+ = lens _tokDisplayText+ (\ s a -> s{_tokDisplayText = a})++-- | The type of the API resource. This is always admin#directory#token.+tokKind :: Lens' Token Text+tokKind = lens _tokKind (\ s a -> s{_tokKind = a})++-- | A list of authorization scopes the application is granted.+tokScopes :: Lens' Token [Text]+tokScopes+ = lens _tokScopes (\ s a -> s{_tokScopes = a}) .+ _Default+ . _Coerce++-- | Whether the token is issued to an installed application. The value is+-- true if the application is installed to a desktop or mobile device.+tokNATiveApp :: Lens' Token (Maybe Bool)+tokNATiveApp+ = lens _tokNATiveApp (\ s a -> s{_tokNATiveApp = a})++-- | Whether the application is registered with Google. The value is true if+-- the application has an anonymous Client ID.+tokAnonymous :: Lens' Token (Maybe Bool)+tokAnonymous+ = lens _tokAnonymous (\ s a -> s{_tokAnonymous = a})++-- | The unique ID of the user that issued the token.+tokUserKey :: Lens' Token (Maybe Text)+tokUserKey+ = lens _tokUserKey (\ s a -> s{_tokUserKey = a})++instance FromJSON Token where+ parseJSON+ = withObject "Token"+ (\ o ->+ Token <$>+ (o .:? "clientId") <*> (o .:? "etag") <*>+ (o .:? "displayText")+ <*> (o .:? "kind" .!= "admin#directory#token")+ <*> (o .:? "scopes" .!= mempty)+ <*> (o .:? "nativeApp")+ <*> (o .:? "anonymous")+ <*> (o .:? "userKey"))++instance ToJSON Token where+ toJSON Token{..}+ = object+ (catMaybes+ [("clientId" .=) <$> _tokClientId,+ ("etag" .=) <$> _tokEtag,+ ("displayText" .=) <$> _tokDisplayText,+ Just ("kind" .= _tokKind),+ ("scopes" .=) <$> _tokScopes,+ ("nativeApp" .=) <$> _tokNATiveApp,+ ("anonymous" .=) <$> _tokAnonymous,+ ("userKey" .=) <$> _tokUserKey])++-- | JSON template for name of a user in Directory API.+--+-- /See:/ 'userName' smart constructor.+data UserName = UserName+ { _unGivenName :: !(Maybe Text)+ , _unFullName :: !(Maybe Text)+ , _unFamilyName :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserName' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'unGivenName'+--+-- * 'unFullName'+--+-- * 'unFamilyName'+userName+ :: UserName+userName =+ UserName+ { _unGivenName = Nothing+ , _unFullName = Nothing+ , _unFamilyName = Nothing+ }++-- | First Name+unGivenName :: Lens' UserName (Maybe Text)+unGivenName+ = lens _unGivenName (\ s a -> s{_unGivenName = a})++-- | Full Name+unFullName :: Lens' UserName (Maybe Text)+unFullName+ = lens _unFullName (\ s a -> s{_unFullName = a})++-- | Last Name+unFamilyName :: Lens' UserName (Maybe Text)+unFamilyName+ = lens _unFamilyName (\ s a -> s{_unFamilyName = a})++instance FromJSON UserName where+ parseJSON+ = withObject "UserName"+ (\ o ->+ UserName <$>+ (o .:? "givenName") <*> (o .:? "fullName") <*>+ (o .:? "familyName"))++instance ToJSON UserName where+ toJSON UserName{..}+ = object+ (catMaybes+ [("givenName" .=) <$> _unGivenName,+ ("fullName" .=) <$> _unFullName,+ ("familyName" .=) <$> _unFamilyName])++--+-- /See:/ 'chromeOSDeviceRecentUsersItem' smart constructor.+data ChromeOSDeviceRecentUsersItem = ChromeOSDeviceRecentUsersItem+ { _codruiEmail :: !(Maybe Text)+ , _codruiType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChromeOSDeviceRecentUsersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'codruiEmail'+--+-- * 'codruiType'+chromeOSDeviceRecentUsersItem+ :: ChromeOSDeviceRecentUsersItem+chromeOSDeviceRecentUsersItem =+ ChromeOSDeviceRecentUsersItem+ { _codruiEmail = Nothing+ , _codruiType = Nothing+ }++-- | Email address of the user. Present only if the user type is managed+codruiEmail :: Lens' ChromeOSDeviceRecentUsersItem (Maybe Text)+codruiEmail+ = lens _codruiEmail (\ s a -> s{_codruiEmail = a})++-- | The type of the user+codruiType :: Lens' ChromeOSDeviceRecentUsersItem (Maybe Text)+codruiType+ = lens _codruiType (\ s a -> s{_codruiType = a})++instance FromJSON ChromeOSDeviceRecentUsersItem where+ parseJSON+ = withObject "ChromeOSDeviceRecentUsersItem"+ (\ o ->+ ChromeOSDeviceRecentUsersItem <$>+ (o .:? "email") <*> (o .:? "type"))++instance ToJSON ChromeOSDeviceRecentUsersItem where+ toJSON ChromeOSDeviceRecentUsersItem{..}+ = object+ (catMaybes+ [("email" .=) <$> _codruiEmail,+ ("type" .=) <$> _codruiType])++-- | JSON template for Domain Alias object in Directory API.+--+-- /See:/ 'domainAlias' smart constructor.+data DomainAlias = DomainAlias+ { _dCreationTime :: !(Maybe (Textual Int64))+ , _dEtag :: !(Maybe Text)+ , _dKind :: !Text+ , _dVerified :: !(Maybe Bool)+ , _dDomainAliasName :: !(Maybe Text)+ , _dParentDomainName :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainAlias' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dCreationTime'+--+-- * 'dEtag'+--+-- * 'dKind'+--+-- * 'dVerified'+--+-- * 'dDomainAliasName'+--+-- * 'dParentDomainName'+domainAlias+ :: DomainAlias+domainAlias =+ DomainAlias+ { _dCreationTime = Nothing+ , _dEtag = Nothing+ , _dKind = "admin#directory#domainAlias"+ , _dVerified = Nothing+ , _dDomainAliasName = Nothing+ , _dParentDomainName = Nothing+ }++-- | The creation time of the domain alias. (Read-only).+dCreationTime :: Lens' DomainAlias (Maybe Int64)+dCreationTime+ = lens _dCreationTime+ (\ s a -> s{_dCreationTime = a})+ . mapping _Coerce++-- | ETag of the resource.+dEtag :: Lens' DomainAlias (Maybe Text)+dEtag = lens _dEtag (\ s a -> s{_dEtag = a})++-- | Kind of resource this is.+dKind :: Lens' DomainAlias Text+dKind = lens _dKind (\ s a -> s{_dKind = a})++-- | Indicates the verification state of a domain alias. (Read-only)+dVerified :: Lens' DomainAlias (Maybe Bool)+dVerified+ = lens _dVerified (\ s a -> s{_dVerified = a})++-- | The domain alias name.+dDomainAliasName :: Lens' DomainAlias (Maybe Text)+dDomainAliasName+ = lens _dDomainAliasName+ (\ s a -> s{_dDomainAliasName = a})++-- | The parent domain name that the domain alias is associated with. This+-- can either be a primary or secondary domain name within a customer.+dParentDomainName :: Lens' DomainAlias (Maybe Text)+dParentDomainName+ = lens _dParentDomainName+ (\ s a -> s{_dParentDomainName = a})++instance FromJSON DomainAlias where+ parseJSON+ = withObject "DomainAlias"+ (\ o ->+ DomainAlias <$>+ (o .:? "creationTime") <*> (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#domainAlias")+ <*> (o .:? "verified")+ <*> (o .:? "domainAliasName")+ <*> (o .:? "parentDomainName"))++instance ToJSON DomainAlias where+ toJSON DomainAlias{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _dCreationTime,+ ("etag" .=) <$> _dEtag, Just ("kind" .= _dKind),+ ("verified" .=) <$> _dVerified,+ ("domainAliasName" .=) <$> _dDomainAliasName,+ ("parentDomainName" .=) <$> _dParentDomainName])++-- | JSON template for Alias object in Directory API.+--+-- /See:/ 'alias' smart constructor.+data Alias = Alias+ { _aaEtag :: !(Maybe Text)+ , _aaKind :: !Text+ , _aaAlias :: !(Maybe Text)+ , _aaId :: !(Maybe Text)+ , _aaPrimaryEmail :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Alias' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaEtag'+--+-- * 'aaKind'+--+-- * 'aaAlias'+--+-- * 'aaId'+--+-- * 'aaPrimaryEmail'+alias+ :: Alias+alias =+ Alias+ { _aaEtag = Nothing+ , _aaKind = "admin#directory#alias"+ , _aaAlias = Nothing+ , _aaId = Nothing+ , _aaPrimaryEmail = Nothing+ }++-- | ETag of the resource.+aaEtag :: Lens' Alias (Maybe Text)+aaEtag = lens _aaEtag (\ s a -> s{_aaEtag = a})++-- | Kind of resource this is.+aaKind :: Lens' Alias Text+aaKind = lens _aaKind (\ s a -> s{_aaKind = a})++-- | A alias email+aaAlias :: Lens' Alias (Maybe Text)+aaAlias = lens _aaAlias (\ s a -> s{_aaAlias = a})++-- | Unique id of the group (Read-only) Unique id of the user (Read-only)+aaId :: Lens' Alias (Maybe Text)+aaId = lens _aaId (\ s a -> s{_aaId = a})++-- | Group\'s primary email (Read-only) User\'s primary email (Read-only)+aaPrimaryEmail :: Lens' Alias (Maybe Text)+aaPrimaryEmail+ = lens _aaPrimaryEmail+ (\ s a -> s{_aaPrimaryEmail = a})++instance FromJSON Alias where+ parseJSON+ = withObject "Alias"+ (\ o ->+ Alias <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#alias")+ <*> (o .:? "alias")+ <*> (o .:? "id")+ <*> (o .:? "primaryEmail"))++instance ToJSON Alias where+ toJSON Alias{..}+ = object+ (catMaybes+ [("etag" .=) <$> _aaEtag, Just ("kind" .= _aaKind),+ ("alias" .=) <$> _aaAlias, ("id" .=) <$> _aaId,+ ("primaryEmail" .=) <$> _aaPrimaryEmail])++-- | JSON template for Schema resource in Directory API.+--+-- /See:/ 'schema' smart constructor.+data Schema = Schema+ { _schEtag :: !(Maybe Text)+ , _schKind :: !Text+ , _schSchemaName :: !(Maybe Text)+ , _schSchemaId :: !(Maybe Text)+ , _schFields :: !(Maybe [SchemaFieldSpec])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Schema' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'schEtag'+--+-- * 'schKind'+--+-- * 'schSchemaName'+--+-- * 'schSchemaId'+--+-- * 'schFields'+schema+ :: Schema+schema =+ Schema+ { _schEtag = Nothing+ , _schKind = "admin#directory#schema"+ , _schSchemaName = Nothing+ , _schSchemaId = Nothing+ , _schFields = Nothing+ }++-- | ETag of the resource.+schEtag :: Lens' Schema (Maybe Text)+schEtag = lens _schEtag (\ s a -> s{_schEtag = a})++-- | Kind of resource this is.+schKind :: Lens' Schema Text+schKind = lens _schKind (\ s a -> s{_schKind = a})++-- | Schema name+schSchemaName :: Lens' Schema (Maybe Text)+schSchemaName+ = lens _schSchemaName+ (\ s a -> s{_schSchemaName = a})++-- | Unique identifier of Schema (Read-only)+schSchemaId :: Lens' Schema (Maybe Text)+schSchemaId+ = lens _schSchemaId (\ s a -> s{_schSchemaId = a})++-- | Fields of Schema+schFields :: Lens' Schema [SchemaFieldSpec]+schFields+ = lens _schFields (\ s a -> s{_schFields = a}) .+ _Default+ . _Coerce++instance FromJSON Schema where+ parseJSON+ = withObject "Schema"+ (\ o ->+ Schema <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#schema")+ <*> (o .:? "schemaName")+ <*> (o .:? "schemaId")+ <*> (o .:? "fields" .!= mempty))++instance ToJSON Schema where+ toJSON Schema{..}+ = object+ (catMaybes+ [("etag" .=) <$> _schEtag, Just ("kind" .= _schKind),+ ("schemaName" .=) <$> _schSchemaName,+ ("schemaId" .=) <$> _schSchemaId,+ ("fields" .=) <$> _schFields])++-- | JSON template for User object in Directory API.+--+-- /See:/ 'user' smart constructor.+data User = User+ { _useCreationTime :: !(Maybe DateTime')+ , _useLastLoginTime :: !(Maybe DateTime')+ , _useThumbnailPhotoEtag :: !(Maybe Text)+ , _useEtag :: !(Maybe Text)+ , _useIPWhiteListed :: !(Maybe Bool)+ , _useRelations :: !(Maybe JSONValue)+ , _useHashFunction :: !(Maybe Text)+ , _useKind :: !Text+ , _useChangePasswordAtNextLogin :: !(Maybe Bool)+ , _useWebsites :: !(Maybe JSONValue)+ , _useAddresses :: !(Maybe JSONValue)+ , _useAliases :: !(Maybe [Text])+ , _useThumbnailPhotoURL :: !(Maybe Text)+ , _useExternalIds :: !(Maybe JSONValue)+ , _useSuspended :: !(Maybe Bool)+ , _useAgreedToTerms :: !(Maybe Bool)+ , _useDeletionTime :: !(Maybe DateTime')+ , _useNonEditableAliases :: !(Maybe [Text])+ , _useOrgUnitPath :: !(Maybe Text)+ , _useCustomerId :: !(Maybe Text)+ , _useIncludeInGlobalAddressList :: !(Maybe Bool)+ , _usePhones :: !(Maybe JSONValue)+ , _useName :: !(Maybe UserName)+ , _usePassword :: !(Maybe Text)+ , _useEmails :: !(Maybe JSONValue)+ , _useIms :: !(Maybe JSONValue)+ , _useIsAdmin :: !(Maybe Bool)+ , _useId :: !(Maybe Text)+ , _useOrganizations :: !(Maybe JSONValue)+ , _usePrimaryEmail :: !(Maybe Text)+ , _useNotes :: !(Maybe JSONValue)+ , _useIsDelegatedAdmin :: !(Maybe Bool)+ , _useIsMailboxSetup :: !(Maybe Bool)+ , _useCustomSchemas :: !(Maybe UserCustomSchemas)+ , _useSuspensionReason :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'User' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'useCreationTime'+--+-- * 'useLastLoginTime'+--+-- * 'useThumbnailPhotoEtag'+--+-- * 'useEtag'+--+-- * 'useIPWhiteListed'+--+-- * 'useRelations'+--+-- * 'useHashFunction'+--+-- * 'useKind'+--+-- * 'useChangePasswordAtNextLogin'+--+-- * 'useWebsites'+--+-- * 'useAddresses'+--+-- * 'useAliases'+--+-- * 'useThumbnailPhotoURL'+--+-- * 'useExternalIds'+--+-- * 'useSuspended'+--+-- * 'useAgreedToTerms'+--+-- * 'useDeletionTime'+--+-- * 'useNonEditableAliases'+--+-- * 'useOrgUnitPath'+--+-- * 'useCustomerId'+--+-- * 'useIncludeInGlobalAddressList'+--+-- * 'usePhones'+--+-- * 'useName'+--+-- * 'usePassword'+--+-- * 'useEmails'+--+-- * 'useIms'+--+-- * 'useIsAdmin'+--+-- * 'useId'+--+-- * 'useOrganizations'+--+-- * 'usePrimaryEmail'+--+-- * 'useNotes'+--+-- * 'useIsDelegatedAdmin'+--+-- * 'useIsMailboxSetup'+--+-- * 'useCustomSchemas'+--+-- * 'useSuspensionReason'+user+ :: User+user =+ User+ { _useCreationTime = Nothing+ , _useLastLoginTime = Nothing+ , _useThumbnailPhotoEtag = Nothing+ , _useEtag = Nothing+ , _useIPWhiteListed = Nothing+ , _useRelations = Nothing+ , _useHashFunction = Nothing+ , _useKind = "admin#directory#user"+ , _useChangePasswordAtNextLogin = Nothing+ , _useWebsites = Nothing+ , _useAddresses = Nothing+ , _useAliases = Nothing+ , _useThumbnailPhotoURL = Nothing+ , _useExternalIds = Nothing+ , _useSuspended = Nothing+ , _useAgreedToTerms = Nothing+ , _useDeletionTime = Nothing+ , _useNonEditableAliases = Nothing+ , _useOrgUnitPath = Nothing+ , _useCustomerId = Nothing+ , _useIncludeInGlobalAddressList = Nothing+ , _usePhones = Nothing+ , _useName = Nothing+ , _usePassword = Nothing+ , _useEmails = Nothing+ , _useIms = Nothing+ , _useIsAdmin = Nothing+ , _useId = Nothing+ , _useOrganizations = Nothing+ , _usePrimaryEmail = Nothing+ , _useNotes = Nothing+ , _useIsDelegatedAdmin = Nothing+ , _useIsMailboxSetup = Nothing+ , _useCustomSchemas = Nothing+ , _useSuspensionReason = Nothing+ }++-- | User\'s Google account creation time. (Read-only)+useCreationTime :: Lens' User (Maybe UTCTime)+useCreationTime+ = lens _useCreationTime+ (\ s a -> s{_useCreationTime = a})+ . mapping _DateTime++-- | User\'s last login time. (Read-only)+useLastLoginTime :: Lens' User (Maybe UTCTime)+useLastLoginTime+ = lens _useLastLoginTime+ (\ s a -> s{_useLastLoginTime = a})+ . mapping _DateTime++-- | ETag of the user\'s photo (Read-only)+useThumbnailPhotoEtag :: Lens' User (Maybe Text)+useThumbnailPhotoEtag+ = lens _useThumbnailPhotoEtag+ (\ s a -> s{_useThumbnailPhotoEtag = a})++-- | ETag of the resource.+useEtag :: Lens' User (Maybe Text)+useEtag = lens _useEtag (\ s a -> s{_useEtag = a})++-- | Boolean indicating if ip is whitelisted+useIPWhiteListed :: Lens' User (Maybe Bool)+useIPWhiteListed+ = lens _useIPWhiteListed+ (\ s a -> s{_useIPWhiteListed = a})++useRelations :: Lens' User (Maybe JSONValue)+useRelations+ = lens _useRelations (\ s a -> s{_useRelations = a})++-- | Hash function name for password. Supported are MD5, SHA-1 and crypt+useHashFunction :: Lens' User (Maybe Text)+useHashFunction+ = lens _useHashFunction+ (\ s a -> s{_useHashFunction = a})++-- | Kind of resource this is.+useKind :: Lens' User Text+useKind = lens _useKind (\ s a -> s{_useKind = a})++-- | Boolean indicating if the user should change password in next login+useChangePasswordAtNextLogin :: Lens' User (Maybe Bool)+useChangePasswordAtNextLogin+ = lens _useChangePasswordAtNextLogin+ (\ s a -> s{_useChangePasswordAtNextLogin = a})++useWebsites :: Lens' User (Maybe JSONValue)+useWebsites+ = lens _useWebsites (\ s a -> s{_useWebsites = a})++useAddresses :: Lens' User (Maybe JSONValue)+useAddresses+ = lens _useAddresses (\ s a -> s{_useAddresses = a})++-- | List of aliases (Read-only)+useAliases :: Lens' User [Text]+useAliases+ = lens _useAliases (\ s a -> s{_useAliases = a}) .+ _Default+ . _Coerce++-- | Photo Url of the user (Read-only)+useThumbnailPhotoURL :: Lens' User (Maybe Text)+useThumbnailPhotoURL+ = lens _useThumbnailPhotoURL+ (\ s a -> s{_useThumbnailPhotoURL = a})++useExternalIds :: Lens' User (Maybe JSONValue)+useExternalIds+ = lens _useExternalIds+ (\ s a -> s{_useExternalIds = a})++-- | Indicates if user is suspended+useSuspended :: Lens' User (Maybe Bool)+useSuspended+ = lens _useSuspended (\ s a -> s{_useSuspended = a})++-- | Indicates if user has agreed to terms (Read-only)+useAgreedToTerms :: Lens' User (Maybe Bool)+useAgreedToTerms+ = lens _useAgreedToTerms+ (\ s a -> s{_useAgreedToTerms = a})++useDeletionTime :: Lens' User (Maybe UTCTime)+useDeletionTime+ = lens _useDeletionTime+ (\ s a -> s{_useDeletionTime = a})+ . mapping _DateTime++-- | List of non editable aliases (Read-only)+useNonEditableAliases :: Lens' User [Text]+useNonEditableAliases+ = lens _useNonEditableAliases+ (\ s a -> s{_useNonEditableAliases = a})+ . _Default+ . _Coerce++-- | OrgUnit of User+useOrgUnitPath :: Lens' User (Maybe Text)+useOrgUnitPath+ = lens _useOrgUnitPath+ (\ s a -> s{_useOrgUnitPath = a})++-- | CustomerId of User (Read-only)+useCustomerId :: Lens' User (Maybe Text)+useCustomerId+ = lens _useCustomerId+ (\ s a -> s{_useCustomerId = a})++-- | Boolean indicating if user is included in Global Address List+useIncludeInGlobalAddressList :: Lens' User (Maybe Bool)+useIncludeInGlobalAddressList+ = lens _useIncludeInGlobalAddressList+ (\ s a -> s{_useIncludeInGlobalAddressList = a})++usePhones :: Lens' User (Maybe JSONValue)+usePhones+ = lens _usePhones (\ s a -> s{_usePhones = a})++-- | User\'s name+useName :: Lens' User (Maybe UserName)+useName = lens _useName (\ s a -> s{_useName = a})++-- | User\'s password+usePassword :: Lens' User (Maybe Text)+usePassword+ = lens _usePassword (\ s a -> s{_usePassword = a})++useEmails :: Lens' User (Maybe JSONValue)+useEmails+ = lens _useEmails (\ s a -> s{_useEmails = a})++useIms :: Lens' User (Maybe JSONValue)+useIms = lens _useIms (\ s a -> s{_useIms = a})++-- | Boolean indicating if the user is admin (Read-only)+useIsAdmin :: Lens' User (Maybe Bool)+useIsAdmin+ = lens _useIsAdmin (\ s a -> s{_useIsAdmin = a})++-- | Unique identifier of User (Read-only)+useId :: Lens' User (Maybe Text)+useId = lens _useId (\ s a -> s{_useId = a})++useOrganizations :: Lens' User (Maybe JSONValue)+useOrganizations+ = lens _useOrganizations+ (\ s a -> s{_useOrganizations = a})++-- | username of User+usePrimaryEmail :: Lens' User (Maybe Text)+usePrimaryEmail+ = lens _usePrimaryEmail+ (\ s a -> s{_usePrimaryEmail = a})++useNotes :: Lens' User (Maybe JSONValue)+useNotes = lens _useNotes (\ s a -> s{_useNotes = a})++-- | Boolean indicating if the user is delegated admin (Read-only)+useIsDelegatedAdmin :: Lens' User (Maybe Bool)+useIsDelegatedAdmin+ = lens _useIsDelegatedAdmin+ (\ s a -> s{_useIsDelegatedAdmin = a})++-- | Is mailbox setup (Read-only)+useIsMailboxSetup :: Lens' User (Maybe Bool)+useIsMailboxSetup+ = lens _useIsMailboxSetup+ (\ s a -> s{_useIsMailboxSetup = a})++-- | Custom fields of the user.+useCustomSchemas :: Lens' User (Maybe UserCustomSchemas)+useCustomSchemas+ = lens _useCustomSchemas+ (\ s a -> s{_useCustomSchemas = a})++-- | Suspension reason if user is suspended (Read-only)+useSuspensionReason :: Lens' User (Maybe Text)+useSuspensionReason+ = lens _useSuspensionReason+ (\ s a -> s{_useSuspensionReason = a})++instance FromJSON User where+ parseJSON+ = withObject "User"+ (\ o ->+ User <$>+ (o .:? "creationTime") <*> (o .:? "lastLoginTime")+ <*> (o .:? "thumbnailPhotoEtag")+ <*> (o .:? "etag")+ <*> (o .:? "ipWhitelisted")+ <*> (o .:? "relations")+ <*> (o .:? "hashFunction")+ <*> (o .:? "kind" .!= "admin#directory#user")+ <*> (o .:? "changePasswordAtNextLogin")+ <*> (o .:? "websites")+ <*> (o .:? "addresses")+ <*> (o .:? "aliases" .!= mempty)+ <*> (o .:? "thumbnailPhotoUrl")+ <*> (o .:? "externalIds")+ <*> (o .:? "suspended")+ <*> (o .:? "agreedToTerms")+ <*> (o .:? "deletionTime")+ <*> (o .:? "nonEditableAliases" .!= mempty)+ <*> (o .:? "orgUnitPath")+ <*> (o .:? "customerId")+ <*> (o .:? "includeInGlobalAddressList")+ <*> (o .:? "phones")+ <*> (o .:? "name")+ <*> (o .:? "password")+ <*> (o .:? "emails")+ <*> (o .:? "ims")+ <*> (o .:? "isAdmin")+ <*> (o .:? "id")+ <*> (o .:? "organizations")+ <*> (o .:? "primaryEmail")+ <*> (o .:? "notes")+ <*> (o .:? "isDelegatedAdmin")+ <*> (o .:? "isMailboxSetup")+ <*> (o .:? "customSchemas")+ <*> (o .:? "suspensionReason"))++instance ToJSON User where+ toJSON User{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _useCreationTime,+ ("lastLoginTime" .=) <$> _useLastLoginTime,+ ("thumbnailPhotoEtag" .=) <$> _useThumbnailPhotoEtag,+ ("etag" .=) <$> _useEtag,+ ("ipWhitelisted" .=) <$> _useIPWhiteListed,+ ("relations" .=) <$> _useRelations,+ ("hashFunction" .=) <$> _useHashFunction,+ Just ("kind" .= _useKind),+ ("changePasswordAtNextLogin" .=) <$>+ _useChangePasswordAtNextLogin,+ ("websites" .=) <$> _useWebsites,+ ("addresses" .=) <$> _useAddresses,+ ("aliases" .=) <$> _useAliases,+ ("thumbnailPhotoUrl" .=) <$> _useThumbnailPhotoURL,+ ("externalIds" .=) <$> _useExternalIds,+ ("suspended" .=) <$> _useSuspended,+ ("agreedToTerms" .=) <$> _useAgreedToTerms,+ ("deletionTime" .=) <$> _useDeletionTime,+ ("nonEditableAliases" .=) <$> _useNonEditableAliases,+ ("orgUnitPath" .=) <$> _useOrgUnitPath,+ ("customerId" .=) <$> _useCustomerId,+ ("includeInGlobalAddressList" .=) <$>+ _useIncludeInGlobalAddressList,+ ("phones" .=) <$> _usePhones,+ ("name" .=) <$> _useName,+ ("password" .=) <$> _usePassword,+ ("emails" .=) <$> _useEmails, ("ims" .=) <$> _useIms,+ ("isAdmin" .=) <$> _useIsAdmin, ("id" .=) <$> _useId,+ ("organizations" .=) <$> _useOrganizations,+ ("primaryEmail" .=) <$> _usePrimaryEmail,+ ("notes" .=) <$> _useNotes,+ ("isDelegatedAdmin" .=) <$> _useIsDelegatedAdmin,+ ("isMailboxSetup" .=) <$> _useIsMailboxSetup,+ ("customSchemas" .=) <$> _useCustomSchemas,+ ("suspensionReason" .=) <$> _useSuspensionReason])++-- | JSON template for role resource in Directory API.+--+-- /See:/ 'role' smart constructor.+data Role = Role+ { _rrEtag :: !(Maybe Text)+ , _rrKind :: !Text+ , _rrRoleName :: !(Maybe Text)+ , _rrIsSystemRole :: !(Maybe Bool)+ , _rrRoleId :: !(Maybe (Textual Int64))+ , _rrRoleDescription :: !(Maybe Text)+ , _rrIsSuperAdminRole :: !(Maybe Bool)+ , _rrRolePrivileges :: !(Maybe [RoleRolePrivilegesItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Role' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rrEtag'+--+-- * 'rrKind'+--+-- * 'rrRoleName'+--+-- * 'rrIsSystemRole'+--+-- * 'rrRoleId'+--+-- * 'rrRoleDescription'+--+-- * 'rrIsSuperAdminRole'+--+-- * 'rrRolePrivileges'+role+ :: Role+role =+ Role+ { _rrEtag = Nothing+ , _rrKind = "admin#directory#role"+ , _rrRoleName = Nothing+ , _rrIsSystemRole = Nothing+ , _rrRoleId = Nothing+ , _rrRoleDescription = Nothing+ , _rrIsSuperAdminRole = Nothing+ , _rrRolePrivileges = Nothing+ }++-- | ETag of the resource.+rrEtag :: Lens' Role (Maybe Text)+rrEtag = lens _rrEtag (\ s a -> s{_rrEtag = a})++-- | The type of the API resource. This is always admin#directory#role.+rrKind :: Lens' Role Text+rrKind = lens _rrKind (\ s a -> s{_rrKind = a})++-- | Name of the role.+rrRoleName :: Lens' Role (Maybe Text)+rrRoleName+ = lens _rrRoleName (\ s a -> s{_rrRoleName = a})++-- | Returns true if this is a pre-defined system role.+rrIsSystemRole :: Lens' Role (Maybe Bool)+rrIsSystemRole+ = lens _rrIsSystemRole+ (\ s a -> s{_rrIsSystemRole = a})++-- | ID of the role.+rrRoleId :: Lens' Role (Maybe Int64)+rrRoleId+ = lens _rrRoleId (\ s a -> s{_rrRoleId = a}) .+ mapping _Coerce++-- | A short description of the role.+rrRoleDescription :: Lens' Role (Maybe Text)+rrRoleDescription+ = lens _rrRoleDescription+ (\ s a -> s{_rrRoleDescription = a})++-- | Returns true if the role is a super admin role.+rrIsSuperAdminRole :: Lens' Role (Maybe Bool)+rrIsSuperAdminRole+ = lens _rrIsSuperAdminRole+ (\ s a -> s{_rrIsSuperAdminRole = a})++-- | The set of privileges that are granted to this role.+rrRolePrivileges :: Lens' Role [RoleRolePrivilegesItem]+rrRolePrivileges+ = lens _rrRolePrivileges+ (\ s a -> s{_rrRolePrivileges = a})+ . _Default+ . _Coerce++instance FromJSON Role where+ parseJSON+ = withObject "Role"+ (\ o ->+ Role <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#role")+ <*> (o .:? "roleName")+ <*> (o .:? "isSystemRole")+ <*> (o .:? "roleId")+ <*> (o .:? "roleDescription")+ <*> (o .:? "isSuperAdminRole")+ <*> (o .:? "rolePrivileges" .!= mempty))++instance ToJSON Role where+ toJSON Role{..}+ = object+ (catMaybes+ [("etag" .=) <$> _rrEtag, Just ("kind" .= _rrKind),+ ("roleName" .=) <$> _rrRoleName,+ ("isSystemRole" .=) <$> _rrIsSystemRole,+ ("roleId" .=) <$> _rrRoleId,+ ("roleDescription" .=) <$> _rrRoleDescription,+ ("isSuperAdminRole" .=) <$> _rrIsSuperAdminRole,+ ("rolePrivileges" .=) <$> _rrRolePrivileges])++-- | JSON template for Customer Resource object in Directory API.+--+-- /See:/ 'customer' smart constructor.+data Customer = Customer+ { _cusEtag :: !(Maybe Text)+ , _cusKind :: !Text+ , _cusAlternateEmail :: !(Maybe Text)+ , _cusCustomerDomain :: !(Maybe Text)+ , _cusPhoneNumber :: !(Maybe Text)+ , _cusLanguage :: !(Maybe Text)+ , _cusId :: !(Maybe Text)+ , _cusCustomerCreationTime :: !(Maybe DateTime')+ , _cusPostalAddress :: !(Maybe CustomerPostalAddress)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Customer' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cusEtag'+--+-- * 'cusKind'+--+-- * 'cusAlternateEmail'+--+-- * 'cusCustomerDomain'+--+-- * 'cusPhoneNumber'+--+-- * 'cusLanguage'+--+-- * 'cusId'+--+-- * 'cusCustomerCreationTime'+--+-- * 'cusPostalAddress'+customer+ :: Customer+customer =+ Customer+ { _cusEtag = Nothing+ , _cusKind = "admin#directory#customer"+ , _cusAlternateEmail = Nothing+ , _cusCustomerDomain = Nothing+ , _cusPhoneNumber = Nothing+ , _cusLanguage = Nothing+ , _cusId = Nothing+ , _cusCustomerCreationTime = Nothing+ , _cusPostalAddress = Nothing+ }++-- | ETag of the resource.+cusEtag :: Lens' Customer (Maybe Text)+cusEtag = lens _cusEtag (\ s a -> s{_cusEtag = a})++-- | Identifies the resource as a customer. Value: admin#directory#customer+cusKind :: Lens' Customer Text+cusKind = lens _cusKind (\ s a -> s{_cusKind = a})++-- | The customer\'s secondary contact email address. This email address+-- cannot be on the same domain as the customerDomain+cusAlternateEmail :: Lens' Customer (Maybe Text)+cusAlternateEmail+ = lens _cusAlternateEmail+ (\ s a -> s{_cusAlternateEmail = a})++-- | The customer\'s primary domain name string. Do not include the www+-- prefix when creating a new customer.+cusCustomerDomain :: Lens' Customer (Maybe Text)+cusCustomerDomain+ = lens _cusCustomerDomain+ (\ s a -> s{_cusCustomerDomain = a})++-- | The customer\'s contact phone number in E.164 format.+cusPhoneNumber :: Lens' Customer (Maybe Text)+cusPhoneNumber+ = lens _cusPhoneNumber+ (\ s a -> s{_cusPhoneNumber = a})++-- | The customer\'s ISO 639-2 language code. The default value is en-US+cusLanguage :: Lens' Customer (Maybe Text)+cusLanguage+ = lens _cusLanguage (\ s a -> s{_cusLanguage = a})++-- | The unique ID for the customer\'s Google account. (Readonly)+cusId :: Lens' Customer (Maybe Text)+cusId = lens _cusId (\ s a -> s{_cusId = a})++-- | The customer\'s creation time (Readonly)+cusCustomerCreationTime :: Lens' Customer (Maybe UTCTime)+cusCustomerCreationTime+ = lens _cusCustomerCreationTime+ (\ s a -> s{_cusCustomerCreationTime = a})+ . mapping _DateTime++-- | The customer\'s postal address information.+cusPostalAddress :: Lens' Customer (Maybe CustomerPostalAddress)+cusPostalAddress+ = lens _cusPostalAddress+ (\ s a -> s{_cusPostalAddress = a})++instance FromJSON Customer where+ parseJSON+ = withObject "Customer"+ (\ o ->+ Customer <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#customer")+ <*> (o .:? "alternateEmail")+ <*> (o .:? "customerDomain")+ <*> (o .:? "phoneNumber")+ <*> (o .:? "language")+ <*> (o .:? "id")+ <*> (o .:? "customerCreationTime")+ <*> (o .:? "postalAddress"))++instance ToJSON Customer where+ toJSON Customer{..}+ = object+ (catMaybes+ [("etag" .=) <$> _cusEtag, Just ("kind" .= _cusKind),+ ("alternateEmail" .=) <$> _cusAlternateEmail,+ ("customerDomain" .=) <$> _cusCustomerDomain,+ ("phoneNumber" .=) <$> _cusPhoneNumber,+ ("language" .=) <$> _cusLanguage,+ ("id" .=) <$> _cusId,+ ("customerCreationTime" .=) <$>+ _cusCustomerCreationTime,+ ("postalAddress" .=) <$> _cusPostalAddress])++--+-- /See:/ 'mobileDeviceApplicationsItem' smart constructor.+data MobileDeviceApplicationsItem = MobileDeviceApplicationsItem+ { _mdaiVersionCode :: !(Maybe (Textual Int32))+ , _mdaiVersionName :: !(Maybe Text)+ , _mdaiPackageName :: !(Maybe Text)+ , _mdaiDisplayName :: !(Maybe Text)+ , _mdaiPermission :: !(Maybe [Text])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MobileDeviceApplicationsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdaiVersionCode'+--+-- * 'mdaiVersionName'+--+-- * 'mdaiPackageName'+--+-- * 'mdaiDisplayName'+--+-- * 'mdaiPermission'+mobileDeviceApplicationsItem+ :: MobileDeviceApplicationsItem+mobileDeviceApplicationsItem =+ MobileDeviceApplicationsItem+ { _mdaiVersionCode = Nothing+ , _mdaiVersionName = Nothing+ , _mdaiPackageName = Nothing+ , _mdaiDisplayName = Nothing+ , _mdaiPermission = Nothing+ }++-- | Version code of application+mdaiVersionCode :: Lens' MobileDeviceApplicationsItem (Maybe Int32)+mdaiVersionCode+ = lens _mdaiVersionCode+ (\ s a -> s{_mdaiVersionCode = a})+ . mapping _Coerce++-- | Version name of application+mdaiVersionName :: Lens' MobileDeviceApplicationsItem (Maybe Text)+mdaiVersionName+ = lens _mdaiVersionName+ (\ s a -> s{_mdaiVersionName = a})++-- | Package name of application+mdaiPackageName :: Lens' MobileDeviceApplicationsItem (Maybe Text)+mdaiPackageName+ = lens _mdaiPackageName+ (\ s a -> s{_mdaiPackageName = a})++-- | Display name of application+mdaiDisplayName :: Lens' MobileDeviceApplicationsItem (Maybe Text)+mdaiDisplayName+ = lens _mdaiDisplayName+ (\ s a -> s{_mdaiDisplayName = a})++-- | List of Permissions for application+mdaiPermission :: Lens' MobileDeviceApplicationsItem [Text]+mdaiPermission+ = lens _mdaiPermission+ (\ s a -> s{_mdaiPermission = a})+ . _Default+ . _Coerce++instance FromJSON MobileDeviceApplicationsItem where+ parseJSON+ = withObject "MobileDeviceApplicationsItem"+ (\ o ->+ MobileDeviceApplicationsItem <$>+ (o .:? "versionCode") <*> (o .:? "versionName") <*>+ (o .:? "packageName")+ <*> (o .:? "displayName")+ <*> (o .:? "permission" .!= mempty))++instance ToJSON MobileDeviceApplicationsItem where+ toJSON MobileDeviceApplicationsItem{..}+ = object+ (catMaybes+ [("versionCode" .=) <$> _mdaiVersionCode,+ ("versionName" .=) <$> _mdaiVersionName,+ ("packageName" .=) <$> _mdaiPackageName,+ ("displayName" .=) <$> _mdaiDisplayName,+ ("permission" .=) <$> _mdaiPermission])++-- | JSON response template for List Organization Units operation in+-- Directory API.+--+-- /See:/ 'orgUnits' smart constructor.+data OrgUnits = OrgUnits+ { _oEtag :: !(Maybe Text)+ , _oKind :: !Text+ , _oOrganizationUnits :: !(Maybe [OrgUnit])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OrgUnits' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oEtag'+--+-- * 'oKind'+--+-- * 'oOrganizationUnits'+orgUnits+ :: OrgUnits+orgUnits =+ OrgUnits+ { _oEtag = Nothing+ , _oKind = "admin#directory#orgUnits"+ , _oOrganizationUnits = Nothing+ }++-- | ETag of the resource.+oEtag :: Lens' OrgUnits (Maybe Text)+oEtag = lens _oEtag (\ s a -> s{_oEtag = a})++-- | Kind of resource this is.+oKind :: Lens' OrgUnits Text+oKind = lens _oKind (\ s a -> s{_oKind = a})++-- | List of user objects.+oOrganizationUnits :: Lens' OrgUnits [OrgUnit]+oOrganizationUnits+ = lens _oOrganizationUnits+ (\ s a -> s{_oOrganizationUnits = a})+ . _Default+ . _Coerce++instance FromJSON OrgUnits where+ parseJSON+ = withObject "OrgUnits"+ (\ o ->+ OrgUnits <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#orgUnits")+ <*> (o .:? "organizationUnits" .!= mempty))++instance ToJSON OrgUnits where+ toJSON OrgUnits{..}+ = object+ (catMaybes+ [("etag" .=) <$> _oEtag, Just ("kind" .= _oKind),+ ("organizationUnits" .=) <$> _oOrganizationUnits])++-- | JSON response template for List verification codes operation in+-- Directory API.+--+-- /See:/ 'verificationCodes' smart constructor.+data VerificationCodes = VerificationCodes+ { _vEtag :: !(Maybe Text)+ , _vKind :: !Text+ , _vItems :: !(Maybe [VerificationCode])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VerificationCodes' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vEtag'+--+-- * 'vKind'+--+-- * 'vItems'+verificationCodes+ :: VerificationCodes+verificationCodes =+ VerificationCodes+ { _vEtag = Nothing+ , _vKind = "admin#directory#verificationCodesList"+ , _vItems = Nothing+ }++-- | ETag of the resource.+vEtag :: Lens' VerificationCodes (Maybe Text)+vEtag = lens _vEtag (\ s a -> s{_vEtag = a})++-- | The type of the resource. This is always+-- admin#directory#verificationCodesList.+vKind :: Lens' VerificationCodes Text+vKind = lens _vKind (\ s a -> s{_vKind = a})++-- | A list of verification code resources.+vItems :: Lens' VerificationCodes [VerificationCode]+vItems+ = lens _vItems (\ s a -> s{_vItems = a}) . _Default .+ _Coerce++instance FromJSON VerificationCodes where+ parseJSON+ = withObject "VerificationCodes"+ (\ o ->+ VerificationCodes <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!=+ "admin#directory#verificationCodesList")+ <*> (o .:? "items" .!= mempty))++instance ToJSON VerificationCodes where+ toJSON VerificationCodes{..}+ = object+ (catMaybes+ [("etag" .=) <$> _vEtag, Just ("kind" .= _vKind),+ ("items" .=) <$> _vItems])++-- | JSON template for a relation entry.+--+-- /See:/ 'userRelation' smart constructor.+data UserRelation = UserRelation+ { _urValue :: !(Maybe Text)+ , _urType :: !(Maybe Text)+ , _urCustomType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserRelation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'urValue'+--+-- * 'urType'+--+-- * 'urCustomType'+userRelation+ :: UserRelation+userRelation =+ UserRelation+ { _urValue = Nothing+ , _urType = Nothing+ , _urCustomType = Nothing+ }++-- | The name of the relation.+urValue :: Lens' UserRelation (Maybe Text)+urValue = lens _urValue (\ s a -> s{_urValue = a})++-- | The relation of the user. Some of the possible values are mother,+-- father, sister, brother, manager, assistant, partner.+urType :: Lens' UserRelation (Maybe Text)+urType = lens _urType (\ s a -> s{_urType = a})++-- | Custom Type.+urCustomType :: Lens' UserRelation (Maybe Text)+urCustomType+ = lens _urCustomType (\ s a -> s{_urCustomType = a})++instance FromJSON UserRelation where+ parseJSON+ = withObject "UserRelation"+ (\ o ->+ UserRelation <$>+ (o .:? "value") <*> (o .:? "type") <*>+ (o .:? "customType"))++instance ToJSON UserRelation where+ toJSON UserRelation{..}+ = object+ (catMaybes+ [("value" .=) <$> _urValue, ("type" .=) <$> _urType,+ ("customType" .=) <$> _urCustomType])++-- | Additional parameters controlling delivery channel behavior. Optional.+--+-- /See:/ 'channelParams' smart constructor.+newtype ChannelParams = ChannelParams+ { _cpAddtional :: HashMap Text Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChannelParams' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cpAddtional'+channelParams+ :: HashMap Text Text -- ^ 'cpAddtional'+ -> ChannelParams+channelParams pCpAddtional_ =+ ChannelParams+ { _cpAddtional = _Coerce # pCpAddtional_+ }++-- | Declares a new parameter by name.+cpAddtional :: Lens' ChannelParams (HashMap Text Text)+cpAddtional+ = lens _cpAddtional (\ s a -> s{_cpAddtional = a}) .+ _Coerce++instance FromJSON ChannelParams where+ parseJSON+ = withObject "ChannelParams"+ (\ o -> ChannelParams <$> (parseJSONObject o))++instance ToJSON ChannelParams where+ toJSON = toJSON . _cpAddtional++-- | JSON template for an organization entry.+--+-- /See:/ 'userOrganization' smart constructor.+data UserOrganization = UserOrganization+ { _uoDePartment :: !(Maybe Text)+ , _uoLocation :: !(Maybe Text)+ , _uoCostCenter :: !(Maybe Text)+ , _uoDomain :: !(Maybe Text)+ , _uoSymbol :: !(Maybe Text)+ , _uoPrimary :: !(Maybe Bool)+ , _uoName :: !(Maybe Text)+ , _uoTitle :: !(Maybe Text)+ , _uoType :: !(Maybe Text)+ , _uoCustomType :: !(Maybe Text)+ , _uoDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserOrganization' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uoDePartment'+--+-- * 'uoLocation'+--+-- * 'uoCostCenter'+--+-- * 'uoDomain'+--+-- * 'uoSymbol'+--+-- * 'uoPrimary'+--+-- * 'uoName'+--+-- * 'uoTitle'+--+-- * 'uoType'+--+-- * 'uoCustomType'+--+-- * 'uoDescription'+userOrganization+ :: UserOrganization+userOrganization =+ UserOrganization+ { _uoDePartment = Nothing+ , _uoLocation = Nothing+ , _uoCostCenter = Nothing+ , _uoDomain = Nothing+ , _uoSymbol = Nothing+ , _uoPrimary = Nothing+ , _uoName = Nothing+ , _uoTitle = Nothing+ , _uoType = Nothing+ , _uoCustomType = Nothing+ , _uoDescription = Nothing+ }++-- | Department within the organization.+uoDePartment :: Lens' UserOrganization (Maybe Text)+uoDePartment+ = lens _uoDePartment (\ s a -> s{_uoDePartment = a})++-- | Location of the organization. This need not be fully qualified address.+uoLocation :: Lens' UserOrganization (Maybe Text)+uoLocation+ = lens _uoLocation (\ s a -> s{_uoLocation = a})++-- | The cost center of the users department.+uoCostCenter :: Lens' UserOrganization (Maybe Text)+uoCostCenter+ = lens _uoCostCenter (\ s a -> s{_uoCostCenter = a})++-- | The domain to which the organization belongs to.+uoDomain :: Lens' UserOrganization (Maybe Text)+uoDomain = lens _uoDomain (\ s a -> s{_uoDomain = a})++-- | Symbol of the organization.+uoSymbol :: Lens' UserOrganization (Maybe Text)+uoSymbol = lens _uoSymbol (\ s a -> s{_uoSymbol = a})++-- | If it user\'s primary organization.+uoPrimary :: Lens' UserOrganization (Maybe Bool)+uoPrimary+ = lens _uoPrimary (\ s a -> s{_uoPrimary = a})++-- | Name of the organization+uoName :: Lens' UserOrganization (Maybe Text)+uoName = lens _uoName (\ s a -> s{_uoName = a})++-- | Title (designation) of the user in the organization.+uoTitle :: Lens' UserOrganization (Maybe Text)+uoTitle = lens _uoTitle (\ s a -> s{_uoTitle = a})++-- | Each entry can have a type which indicates standard types of that entry.+-- For example organization could be of school, work etc. In addition to+-- the standard type, an entry can have a custom type and can give it any+-- name. Such types should have the CUSTOM value as type and also have a+-- CustomType value.+uoType :: Lens' UserOrganization (Maybe Text)+uoType = lens _uoType (\ s a -> s{_uoType = a})++-- | Custom type.+uoCustomType :: Lens' UserOrganization (Maybe Text)+uoCustomType+ = lens _uoCustomType (\ s a -> s{_uoCustomType = a})++-- | Description of the organization.+uoDescription :: Lens' UserOrganization (Maybe Text)+uoDescription+ = lens _uoDescription+ (\ s a -> s{_uoDescription = a})++instance FromJSON UserOrganization where+ parseJSON+ = withObject "UserOrganization"+ (\ o ->+ UserOrganization <$>+ (o .:? "department") <*> (o .:? "location") <*>+ (o .:? "costCenter")+ <*> (o .:? "domain")+ <*> (o .:? "symbol")+ <*> (o .:? "primary")+ <*> (o .:? "name")+ <*> (o .:? "title")+ <*> (o .:? "type")+ <*> (o .:? "customType")+ <*> (o .:? "description"))++instance ToJSON UserOrganization where+ toJSON UserOrganization{..}+ = object+ (catMaybes+ [("department" .=) <$> _uoDePartment,+ ("location" .=) <$> _uoLocation,+ ("costCenter" .=) <$> _uoCostCenter,+ ("domain" .=) <$> _uoDomain,+ ("symbol" .=) <$> _uoSymbol,+ ("primary" .=) <$> _uoPrimary,+ ("name" .=) <$> _uoName, ("title" .=) <$> _uoTitle,+ ("type" .=) <$> _uoType,+ ("customType" .=) <$> _uoCustomType,+ ("description" .=) <$> _uoDescription])++-- | JSON template for a website entry.+--+-- /See:/ 'userWebsite' smart constructor.+data UserWebsite = UserWebsite+ { _uwValue :: !(Maybe Text)+ , _uwPrimary :: !(Maybe Bool)+ , _uwType :: !(Maybe Text)+ , _uwCustomType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserWebsite' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uwValue'+--+-- * 'uwPrimary'+--+-- * 'uwType'+--+-- * 'uwCustomType'+userWebsite+ :: UserWebsite+userWebsite =+ UserWebsite+ { _uwValue = Nothing+ , _uwPrimary = Nothing+ , _uwType = Nothing+ , _uwCustomType = Nothing+ }++-- | Website.+uwValue :: Lens' UserWebsite (Maybe Text)+uwValue = lens _uwValue (\ s a -> s{_uwValue = a})++-- | If this is user\'s primary website or not.+uwPrimary :: Lens' UserWebsite (Maybe Bool)+uwPrimary+ = lens _uwPrimary (\ s a -> s{_uwPrimary = a})++-- | Each entry can have a type which indicates standard types of that entry.+-- For example website could be of home, work, blog etc. In addition to the+-- standard type, an entry can have a custom type and can give it any name.+-- Such types should have the CUSTOM value as type and also have a+-- customType value.+uwType :: Lens' UserWebsite (Maybe Text)+uwType = lens _uwType (\ s a -> s{_uwType = a})++-- | Custom Type.+uwCustomType :: Lens' UserWebsite (Maybe Text)+uwCustomType+ = lens _uwCustomType (\ s a -> s{_uwCustomType = a})++instance FromJSON UserWebsite where+ parseJSON+ = withObject "UserWebsite"+ (\ o ->+ UserWebsite <$>+ (o .:? "value") <*> (o .:? "primary") <*>+ (o .:? "type")+ <*> (o .:? "customType"))++instance ToJSON UserWebsite where+ toJSON UserWebsite{..}+ = object+ (catMaybes+ [("value" .=) <$> _uwValue,+ ("primary" .=) <$> _uwPrimary,+ ("type" .=) <$> _uwType,+ ("customType" .=) <$> _uwCustomType])++--+-- /See:/ 'chromeOSDeviceActiveTimeRangesItem' smart constructor.+data ChromeOSDeviceActiveTimeRangesItem = ChromeOSDeviceActiveTimeRangesItem+ { _codatriDate :: !(Maybe Date')+ , _codatriActiveTime :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChromeOSDeviceActiveTimeRangesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'codatriDate'+--+-- * 'codatriActiveTime'+chromeOSDeviceActiveTimeRangesItem+ :: ChromeOSDeviceActiveTimeRangesItem+chromeOSDeviceActiveTimeRangesItem =+ ChromeOSDeviceActiveTimeRangesItem+ { _codatriDate = Nothing+ , _codatriActiveTime = Nothing+ }++-- | Date of usage+codatriDate :: Lens' ChromeOSDeviceActiveTimeRangesItem (Maybe Day)+codatriDate+ = lens _codatriDate (\ s a -> s{_codatriDate = a}) .+ mapping _Date++-- | Duration in milliseconds+codatriActiveTime :: Lens' ChromeOSDeviceActiveTimeRangesItem (Maybe Int32)+codatriActiveTime+ = lens _codatriActiveTime+ (\ s a -> s{_codatriActiveTime = a})+ . mapping _Coerce++instance FromJSON ChromeOSDeviceActiveTimeRangesItem+ where+ parseJSON+ = withObject "ChromeOSDeviceActiveTimeRangesItem"+ (\ o ->+ ChromeOSDeviceActiveTimeRangesItem <$>+ (o .:? "date") <*> (o .:? "activeTime"))++instance ToJSON ChromeOSDeviceActiveTimeRangesItem+ where+ toJSON ChromeOSDeviceActiveTimeRangesItem{..}+ = object+ (catMaybes+ [("date" .=) <$> _codatriDate,+ ("activeTime" .=) <$> _codatriActiveTime])++-- | JSON template for an email.+--+-- /See:/ 'userEmail' smart constructor.+data UserEmail = UserEmail+ { _ueAddress :: !(Maybe Text)+ , _uePrimary :: !(Maybe Bool)+ , _ueType :: !(Maybe Text)+ , _ueCustomType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserEmail' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ueAddress'+--+-- * 'uePrimary'+--+-- * 'ueType'+--+-- * 'ueCustomType'+userEmail+ :: UserEmail+userEmail =+ UserEmail+ { _ueAddress = Nothing+ , _uePrimary = Nothing+ , _ueType = Nothing+ , _ueCustomType = Nothing+ }++-- | Email id of the user.+ueAddress :: Lens' UserEmail (Maybe Text)+ueAddress+ = lens _ueAddress (\ s a -> s{_ueAddress = a})++-- | If this is user\'s primary email. Only one entry could be marked as+-- primary.+uePrimary :: Lens' UserEmail (Maybe Bool)+uePrimary+ = lens _uePrimary (\ s a -> s{_uePrimary = a})++-- | Each entry can have a type which indicates standard types of that entry.+-- For example email could be of home, work etc. In addition to the+-- standard type, an entry can have a custom type and can take any value+-- Such types should have the CUSTOM value as type and also have a+-- customType value.+ueType :: Lens' UserEmail (Maybe Text)+ueType = lens _ueType (\ s a -> s{_ueType = a})++-- | Custom Type.+ueCustomType :: Lens' UserEmail (Maybe Text)+ueCustomType+ = lens _ueCustomType (\ s a -> s{_ueCustomType = a})++instance FromJSON UserEmail where+ parseJSON+ = withObject "UserEmail"+ (\ o ->+ UserEmail <$>+ (o .:? "address") <*> (o .:? "primary") <*>+ (o .:? "type")+ <*> (o .:? "customType"))++instance ToJSON UserEmail where+ toJSON UserEmail{..}+ = object+ (catMaybes+ [("address" .=) <$> _ueAddress,+ ("primary" .=) <$> _uePrimary,+ ("type" .=) <$> _ueType,+ ("customType" .=) <$> _ueCustomType])++-- | JSON template for a phone entry.+--+-- /See:/ 'userPhone' smart constructor.+data UserPhone = UserPhone+ { _upValue :: !(Maybe Text)+ , _upPrimary :: !(Maybe Bool)+ , _upType :: !(Maybe Text)+ , _upCustomType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserPhone' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'upValue'+--+-- * 'upPrimary'+--+-- * 'upType'+--+-- * 'upCustomType'+userPhone+ :: UserPhone+userPhone =+ UserPhone+ { _upValue = Nothing+ , _upPrimary = Nothing+ , _upType = Nothing+ , _upCustomType = Nothing+ }++-- | Phone number.+upValue :: Lens' UserPhone (Maybe Text)+upValue = lens _upValue (\ s a -> s{_upValue = a})++-- | If this is user\'s primary phone or not.+upPrimary :: Lens' UserPhone (Maybe Bool)+upPrimary+ = lens _upPrimary (\ s a -> s{_upPrimary = a})++-- | Each entry can have a type which indicates standard types of that entry.+-- For example phone could be of home_fax, work, mobile etc. In addition to+-- the standard type, an entry can have a custom type and can give it any+-- name. Such types should have the CUSTOM value as type and also have a+-- customType value.+upType :: Lens' UserPhone (Maybe Text)+upType = lens _upType (\ s a -> s{_upType = a})++-- | Custom Type.+upCustomType :: Lens' UserPhone (Maybe Text)+upCustomType+ = lens _upCustomType (\ s a -> s{_upCustomType = a})++instance FromJSON UserPhone where+ parseJSON+ = withObject "UserPhone"+ (\ o ->+ UserPhone <$>+ (o .:? "value") <*> (o .:? "primary") <*>+ (o .:? "type")+ <*> (o .:? "customType"))++instance ToJSON UserPhone where+ toJSON UserPhone{..}+ = object+ (catMaybes+ [("value" .=) <$> _upValue,+ ("primary" .=) <$> _upPrimary,+ ("type" .=) <$> _upType,+ ("customType" .=) <$> _upCustomType])++-- | JSON template for Photo object in Directory API.+--+-- /See:/ 'userPhoto' smart constructor.+data UserPhoto = UserPhoto+ { _upPhotoData :: !(Maybe (Textual Word8))+ , _upEtag :: !(Maybe Text)+ , _upHeight :: !(Maybe (Textual Int32))+ , _upKind :: !Text+ , _upWidth :: !(Maybe (Textual Int32))+ , _upMimeType :: !(Maybe Text)+ , _upId :: !(Maybe Text)+ , _upPrimaryEmail :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserPhoto' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'upPhotoData'+--+-- * 'upEtag'+--+-- * 'upHeight'+--+-- * 'upKind'+--+-- * 'upWidth'+--+-- * 'upMimeType'+--+-- * 'upId'+--+-- * 'upPrimaryEmail'+userPhoto+ :: UserPhoto+userPhoto =+ UserPhoto+ { _upPhotoData = Nothing+ , _upEtag = Nothing+ , _upHeight = Nothing+ , _upKind = "admin#directory#user#photo"+ , _upWidth = Nothing+ , _upMimeType = Nothing+ , _upId = Nothing+ , _upPrimaryEmail = Nothing+ }++-- | Base64 encoded photo data+upPhotoData :: Lens' UserPhoto (Maybe Word8)+upPhotoData+ = lens _upPhotoData (\ s a -> s{_upPhotoData = a}) .+ mapping _Coerce++-- | ETag of the resource.+upEtag :: Lens' UserPhoto (Maybe Text)+upEtag = lens _upEtag (\ s a -> s{_upEtag = a})++-- | Height in pixels of the photo+upHeight :: Lens' UserPhoto (Maybe Int32)+upHeight+ = lens _upHeight (\ s a -> s{_upHeight = a}) .+ mapping _Coerce++-- | Kind of resource this is.+upKind :: Lens' UserPhoto Text+upKind = lens _upKind (\ s a -> s{_upKind = a})++-- | Width in pixels of the photo+upWidth :: Lens' UserPhoto (Maybe Int32)+upWidth+ = lens _upWidth (\ s a -> s{_upWidth = a}) .+ mapping _Coerce++-- | Mime Type of the photo+upMimeType :: Lens' UserPhoto (Maybe Text)+upMimeType+ = lens _upMimeType (\ s a -> s{_upMimeType = a})++-- | Unique identifier of User (Read-only)+upId :: Lens' UserPhoto (Maybe Text)+upId = lens _upId (\ s a -> s{_upId = a})++-- | Primary email of User (Read-only)+upPrimaryEmail :: Lens' UserPhoto (Maybe Text)+upPrimaryEmail+ = lens _upPrimaryEmail+ (\ s a -> s{_upPrimaryEmail = a})++instance FromJSON UserPhoto where+ parseJSON+ = withObject "UserPhoto"+ (\ o ->+ UserPhoto <$>+ (o .:? "photoData") <*> (o .:? "etag") <*>+ (o .:? "height")+ <*> (o .:? "kind" .!= "admin#directory#user#photo")+ <*> (o .:? "width")+ <*> (o .:? "mimeType")+ <*> (o .:? "id")+ <*> (o .:? "primaryEmail"))++instance ToJSON UserPhoto where+ toJSON UserPhoto{..}+ = object+ (catMaybes+ [("photoData" .=) <$> _upPhotoData,+ ("etag" .=) <$> _upEtag, ("height" .=) <$> _upHeight,+ Just ("kind" .= _upKind), ("width" .=) <$> _upWidth,+ ("mimeType" .=) <$> _upMimeType, ("id" .=) <$> _upId,+ ("primaryEmail" .=) <$> _upPrimaryEmail])++-- | JSON template for Mobile Device resource in Directory API.+--+-- /See:/ 'mobileDevice' smart constructor.+data MobileDevice = MobileDevice+ { _mobEmail :: !(Maybe [Text])+ , _mobStatus :: !(Maybe Text)+ , _mobEtag :: !(Maybe Text)+ , _mobResourceId :: !(Maybe Text)+ , _mobBuildNumber :: !(Maybe Text)+ , _mobManagedAccountIsOnOwnerProFile :: !(Maybe Bool)+ , _mobLastSync :: !(Maybe DateTime')+ , _mobOtherAccountsInfo :: !(Maybe [Text])+ , _mobKind :: !Text+ , _mobAdbStatus :: !(Maybe Bool)+ , _mobNetworkOperator :: !(Maybe Text)+ , _mobKernelVersion :: !(Maybe Text)+ , _mobOS :: !(Maybe Text)+ , _mobName :: !(Maybe [Text])+ , _mobModel :: !(Maybe Text)+ , _mobDeveloperOptionsStatus :: !(Maybe Bool)+ , _mobUnknownSourcesStatus :: !(Maybe Bool)+ , _mobMeid :: !(Maybe Text)+ , _mobDeviceId :: !(Maybe Text)+ , _mobFirstSync :: !(Maybe DateTime')+ , _mobUserAgent :: !(Maybe Text)+ , _mobImei :: !(Maybe Text)+ , _mobType :: !(Maybe Text)+ , _mobWifiMACAddress :: !(Maybe Text)+ , _mobSerialNumber :: !(Maybe Text)+ , _mobHardwareId :: !(Maybe Text)+ , _mobBasebandVersion :: !(Maybe Text)+ , _mobSupportsWorkProFile :: !(Maybe Bool)+ , _mobDeviceCompromisedStatus :: !(Maybe Text)+ , _mobApplications :: !(Maybe [MobileDeviceApplicationsItem])+ , _mobDefaultLanguage :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MobileDevice' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mobEmail'+--+-- * 'mobStatus'+--+-- * 'mobEtag'+--+-- * 'mobResourceId'+--+-- * 'mobBuildNumber'+--+-- * 'mobManagedAccountIsOnOwnerProFile'+--+-- * 'mobLastSync'+--+-- * 'mobOtherAccountsInfo'+--+-- * 'mobKind'+--+-- * 'mobAdbStatus'+--+-- * 'mobNetworkOperator'+--+-- * 'mobKernelVersion'+--+-- * 'mobOS'+--+-- * 'mobName'+--+-- * 'mobModel'+--+-- * 'mobDeveloperOptionsStatus'+--+-- * 'mobUnknownSourcesStatus'+--+-- * 'mobMeid'+--+-- * 'mobDeviceId'+--+-- * 'mobFirstSync'+--+-- * 'mobUserAgent'+--+-- * 'mobImei'+--+-- * 'mobType'+--+-- * 'mobWifiMACAddress'+--+-- * 'mobSerialNumber'+--+-- * 'mobHardwareId'+--+-- * 'mobBasebandVersion'+--+-- * 'mobSupportsWorkProFile'+--+-- * 'mobDeviceCompromisedStatus'+--+-- * 'mobApplications'+--+-- * 'mobDefaultLanguage'+mobileDevice+ :: MobileDevice+mobileDevice =+ MobileDevice+ { _mobEmail = Nothing+ , _mobStatus = Nothing+ , _mobEtag = Nothing+ , _mobResourceId = Nothing+ , _mobBuildNumber = Nothing+ , _mobManagedAccountIsOnOwnerProFile = Nothing+ , _mobLastSync = Nothing+ , _mobOtherAccountsInfo = Nothing+ , _mobKind = "admin#directory#mobiledevice"+ , _mobAdbStatus = Nothing+ , _mobNetworkOperator = Nothing+ , _mobKernelVersion = Nothing+ , _mobOS = Nothing+ , _mobName = Nothing+ , _mobModel = Nothing+ , _mobDeveloperOptionsStatus = Nothing+ , _mobUnknownSourcesStatus = Nothing+ , _mobMeid = Nothing+ , _mobDeviceId = Nothing+ , _mobFirstSync = Nothing+ , _mobUserAgent = Nothing+ , _mobImei = Nothing+ , _mobType = Nothing+ , _mobWifiMACAddress = Nothing+ , _mobSerialNumber = Nothing+ , _mobHardwareId = Nothing+ , _mobBasebandVersion = Nothing+ , _mobSupportsWorkProFile = Nothing+ , _mobDeviceCompromisedStatus = Nothing+ , _mobApplications = Nothing+ , _mobDefaultLanguage = Nothing+ }++-- | List of owner user\'s email addresses (Read-only)+mobEmail :: Lens' MobileDevice [Text]+mobEmail+ = lens _mobEmail (\ s a -> s{_mobEmail = a}) .+ _Default+ . _Coerce++-- | Status of the device (Read-only)+mobStatus :: Lens' MobileDevice (Maybe Text)+mobStatus+ = lens _mobStatus (\ s a -> s{_mobStatus = a})++-- | ETag of the resource.+mobEtag :: Lens' MobileDevice (Maybe Text)+mobEtag = lens _mobEtag (\ s a -> s{_mobEtag = a})++-- | Unique identifier of Mobile Device (Read-only)+mobResourceId :: Lens' MobileDevice (Maybe Text)+mobResourceId+ = lens _mobResourceId+ (\ s a -> s{_mobResourceId = a})++-- | Mobile Device Build number (Read-only)+mobBuildNumber :: Lens' MobileDevice (Maybe Text)+mobBuildNumber+ = lens _mobBuildNumber+ (\ s a -> s{_mobBuildNumber = a})++-- | Boolean indicating if this account is on owner\/primary profile or not+-- (Read-only)+mobManagedAccountIsOnOwnerProFile :: Lens' MobileDevice (Maybe Bool)+mobManagedAccountIsOnOwnerProFile+ = lens _mobManagedAccountIsOnOwnerProFile+ (\ s a -> s{_mobManagedAccountIsOnOwnerProFile = a})++-- | Date and time the device was last synchronized with the policy settings+-- in the Google Apps administrator control panel (Read-only)+mobLastSync :: Lens' MobileDevice (Maybe UTCTime)+mobLastSync+ = lens _mobLastSync (\ s a -> s{_mobLastSync = a}) .+ mapping _DateTime++-- | List of accounts added on device (Read-only)+mobOtherAccountsInfo :: Lens' MobileDevice [Text]+mobOtherAccountsInfo+ = lens _mobOtherAccountsInfo+ (\ s a -> s{_mobOtherAccountsInfo = a})+ . _Default+ . _Coerce++-- | Kind of resource this is.+mobKind :: Lens' MobileDevice Text+mobKind = lens _mobKind (\ s a -> s{_mobKind = a})++-- | Adb (USB debugging) enabled or disabled on device (Read-only)+mobAdbStatus :: Lens' MobileDevice (Maybe Bool)+mobAdbStatus+ = lens _mobAdbStatus (\ s a -> s{_mobAdbStatus = a})++-- | Mobile Device mobile or network operator (if available) (Read-only)+mobNetworkOperator :: Lens' MobileDevice (Maybe Text)+mobNetworkOperator+ = lens _mobNetworkOperator+ (\ s a -> s{_mobNetworkOperator = a})++-- | Mobile Device Kernel version (Read-only)+mobKernelVersion :: Lens' MobileDevice (Maybe Text)+mobKernelVersion+ = lens _mobKernelVersion+ (\ s a -> s{_mobKernelVersion = a})++-- | Name of the mobile operating system+mobOS :: Lens' MobileDevice (Maybe Text)+mobOS = lens _mobOS (\ s a -> s{_mobOS = a})++-- | List of owner user\'s names (Read-only)+mobName :: Lens' MobileDevice [Text]+mobName+ = lens _mobName (\ s a -> s{_mobName = a}) . _Default+ . _Coerce++-- | Name of the model of the device+mobModel :: Lens' MobileDevice (Maybe Text)+mobModel = lens _mobModel (\ s a -> s{_mobModel = a})++-- | Developer options enabled or disabled on device (Read-only)+mobDeveloperOptionsStatus :: Lens' MobileDevice (Maybe Bool)+mobDeveloperOptionsStatus+ = lens _mobDeveloperOptionsStatus+ (\ s a -> s{_mobDeveloperOptionsStatus = a})++-- | Unknown sources enabled or disabled on device (Read-only)+mobUnknownSourcesStatus :: Lens' MobileDevice (Maybe Bool)+mobUnknownSourcesStatus+ = lens _mobUnknownSourcesStatus+ (\ s a -> s{_mobUnknownSourcesStatus = a})++-- | Mobile Device MEID number (Read-only)+mobMeid :: Lens' MobileDevice (Maybe Text)+mobMeid = lens _mobMeid (\ s a -> s{_mobMeid = a})++-- | Mobile Device serial number (Read-only)+mobDeviceId :: Lens' MobileDevice (Maybe Text)+mobDeviceId+ = lens _mobDeviceId (\ s a -> s{_mobDeviceId = a})++-- | Date and time the device was first synchronized with the policy settings+-- in the Google Apps administrator control panel (Read-only)+mobFirstSync :: Lens' MobileDevice (Maybe UTCTime)+mobFirstSync+ = lens _mobFirstSync (\ s a -> s{_mobFirstSync = a})+ . mapping _DateTime++-- | Mobile Device user agent+mobUserAgent :: Lens' MobileDevice (Maybe Text)+mobUserAgent+ = lens _mobUserAgent (\ s a -> s{_mobUserAgent = a})++-- | Mobile Device IMEI number (Read-only)+mobImei :: Lens' MobileDevice (Maybe Text)+mobImei = lens _mobImei (\ s a -> s{_mobImei = a})++-- | The type of device (Read-only)+mobType :: Lens' MobileDevice (Maybe Text)+mobType = lens _mobType (\ s a -> s{_mobType = a})++-- | Mobile Device WiFi MAC address (Read-only)+mobWifiMACAddress :: Lens' MobileDevice (Maybe Text)+mobWifiMACAddress+ = lens _mobWifiMACAddress+ (\ s a -> s{_mobWifiMACAddress = a})++-- | Mobile Device SSN or Serial Number (Read-only)+mobSerialNumber :: Lens' MobileDevice (Maybe Text)+mobSerialNumber+ = lens _mobSerialNumber+ (\ s a -> s{_mobSerialNumber = a})++-- | Mobile Device Hardware Id (Read-only)+mobHardwareId :: Lens' MobileDevice (Maybe Text)+mobHardwareId+ = lens _mobHardwareId+ (\ s a -> s{_mobHardwareId = a})++-- | Mobile Device Baseband version (Read-only)+mobBasebandVersion :: Lens' MobileDevice (Maybe Text)+mobBasebandVersion+ = lens _mobBasebandVersion+ (\ s a -> s{_mobBasebandVersion = a})++-- | Work profile supported on device (Read-only)+mobSupportsWorkProFile :: Lens' MobileDevice (Maybe Bool)+mobSupportsWorkProFile+ = lens _mobSupportsWorkProFile+ (\ s a -> s{_mobSupportsWorkProFile = a})++-- | Mobile Device compromised status (Read-only)+mobDeviceCompromisedStatus :: Lens' MobileDevice (Maybe Text)+mobDeviceCompromisedStatus+ = lens _mobDeviceCompromisedStatus+ (\ s a -> s{_mobDeviceCompromisedStatus = a})++-- | List of applications installed on Mobile Device+mobApplications :: Lens' MobileDevice [MobileDeviceApplicationsItem]+mobApplications+ = lens _mobApplications+ (\ s a -> s{_mobApplications = a})+ . _Default+ . _Coerce++-- | The default locale used on the Mobile Device (Read-only)+mobDefaultLanguage :: Lens' MobileDevice (Maybe Text)+mobDefaultLanguage+ = lens _mobDefaultLanguage+ (\ s a -> s{_mobDefaultLanguage = a})++instance FromJSON MobileDevice where+ parseJSON+ = withObject "MobileDevice"+ (\ o ->+ MobileDevice <$>+ (o .:? "email" .!= mempty) <*> (o .:? "status") <*>+ (o .:? "etag")+ <*> (o .:? "resourceId")+ <*> (o .:? "buildNumber")+ <*> (o .:? "managedAccountIsOnOwnerProfile")+ <*> (o .:? "lastSync")+ <*> (o .:? "otherAccountsInfo" .!= mempty)+ <*> (o .:? "kind" .!= "admin#directory#mobiledevice")+ <*> (o .:? "adbStatus")+ <*> (o .:? "networkOperator")+ <*> (o .:? "kernelVersion")+ <*> (o .:? "os")+ <*> (o .:? "name" .!= mempty)+ <*> (o .:? "model")+ <*> (o .:? "developerOptionsStatus")+ <*> (o .:? "unknownSourcesStatus")+ <*> (o .:? "meid")+ <*> (o .:? "deviceId")+ <*> (o .:? "firstSync")+ <*> (o .:? "userAgent")+ <*> (o .:? "imei")+ <*> (o .:? "type")+ <*> (o .:? "wifiMacAddress")+ <*> (o .:? "serialNumber")+ <*> (o .:? "hardwareId")+ <*> (o .:? "basebandVersion")+ <*> (o .:? "supportsWorkProfile")+ <*> (o .:? "deviceCompromisedStatus")+ <*> (o .:? "applications" .!= mempty)+ <*> (o .:? "defaultLanguage"))++instance ToJSON MobileDevice where+ toJSON MobileDevice{..}+ = object+ (catMaybes+ [("email" .=) <$> _mobEmail,+ ("status" .=) <$> _mobStatus,+ ("etag" .=) <$> _mobEtag,+ ("resourceId" .=) <$> _mobResourceId,+ ("buildNumber" .=) <$> _mobBuildNumber,+ ("managedAccountIsOnOwnerProfile" .=) <$>+ _mobManagedAccountIsOnOwnerProFile,+ ("lastSync" .=) <$> _mobLastSync,+ ("otherAccountsInfo" .=) <$> _mobOtherAccountsInfo,+ Just ("kind" .= _mobKind),+ ("adbStatus" .=) <$> _mobAdbStatus,+ ("networkOperator" .=) <$> _mobNetworkOperator,+ ("kernelVersion" .=) <$> _mobKernelVersion,+ ("os" .=) <$> _mobOS, ("name" .=) <$> _mobName,+ ("model" .=) <$> _mobModel,+ ("developerOptionsStatus" .=) <$>+ _mobDeveloperOptionsStatus,+ ("unknownSourcesStatus" .=) <$>+ _mobUnknownSourcesStatus,+ ("meid" .=) <$> _mobMeid,+ ("deviceId" .=) <$> _mobDeviceId,+ ("firstSync" .=) <$> _mobFirstSync,+ ("userAgent" .=) <$> _mobUserAgent,+ ("imei" .=) <$> _mobImei, ("type" .=) <$> _mobType,+ ("wifiMacAddress" .=) <$> _mobWifiMACAddress,+ ("serialNumber" .=) <$> _mobSerialNumber,+ ("hardwareId" .=) <$> _mobHardwareId,+ ("basebandVersion" .=) <$> _mobBasebandVersion,+ ("supportsWorkProfile" .=) <$>+ _mobSupportsWorkProFile,+ ("deviceCompromisedStatus" .=) <$>+ _mobDeviceCompromisedStatus,+ ("applications" .=) <$> _mobApplications,+ ("defaultLanguage" .=) <$> _mobDefaultLanguage])++-- | JSON template for Member resource in Directory API.+--+-- /See:/ 'member' smart constructor.+data Member = Member+ { _memEmail :: !(Maybe Text)+ , _memEtag :: !(Maybe Text)+ , _memKind :: !Text+ , _memRole :: !(Maybe Text)+ , _memId :: !(Maybe Text)+ , _memType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Member' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'memEmail'+--+-- * 'memEtag'+--+-- * 'memKind'+--+-- * 'memRole'+--+-- * 'memId'+--+-- * 'memType'+member+ :: Member+member =+ Member+ { _memEmail = Nothing+ , _memEtag = Nothing+ , _memKind = "admin#directory#member"+ , _memRole = Nothing+ , _memId = Nothing+ , _memType = Nothing+ }++-- | Email of member (Read-only)+memEmail :: Lens' Member (Maybe Text)+memEmail = lens _memEmail (\ s a -> s{_memEmail = a})++-- | ETag of the resource.+memEtag :: Lens' Member (Maybe Text)+memEtag = lens _memEtag (\ s a -> s{_memEtag = a})++-- | Kind of resource this is.+memKind :: Lens' Member Text+memKind = lens _memKind (\ s a -> s{_memKind = a})++-- | Role of member+memRole :: Lens' Member (Maybe Text)+memRole = lens _memRole (\ s a -> s{_memRole = a})++-- | Unique identifier of customer member (Read-only) Unique identifier of+-- group (Read-only) Unique identifier of member (Read-only)+memId :: Lens' Member (Maybe Text)+memId = lens _memId (\ s a -> s{_memId = a})++-- | Type of member (Immutable)+memType :: Lens' Member (Maybe Text)+memType = lens _memType (\ s a -> s{_memType = a})++instance FromJSON Member where+ parseJSON+ = withObject "Member"+ (\ o ->+ Member <$>+ (o .:? "email") <*> (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#member")+ <*> (o .:? "role")+ <*> (o .:? "id")+ <*> (o .:? "type"))++instance ToJSON Member where+ toJSON Member{..}+ = object+ (catMaybes+ [("email" .=) <$> _memEmail,+ ("etag" .=) <$> _memEtag, Just ("kind" .= _memKind),+ ("role" .=) <$> _memRole, ("id" .=) <$> _memId,+ ("type" .=) <$> _memType])++-- | JSON template for a set of custom properties (i.e. all fields in a+-- particular schema)+--+-- /See:/ 'userCustomProperties' smart constructor.+newtype UserCustomProperties = UserCustomProperties+ { _ucpAddtional :: HashMap Text JSONValue+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserCustomProperties' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ucpAddtional'+userCustomProperties+ :: HashMap Text JSONValue -- ^ 'ucpAddtional'+ -> UserCustomProperties+userCustomProperties pUcpAddtional_ =+ UserCustomProperties+ { _ucpAddtional = _Coerce # pUcpAddtional_+ }++ucpAddtional :: Lens' UserCustomProperties (HashMap Text JSONValue)+ucpAddtional+ = lens _ucpAddtional (\ s a -> s{_ucpAddtional = a})+ . _Coerce++instance FromJSON UserCustomProperties where+ parseJSON+ = withObject "UserCustomProperties"+ (\ o -> UserCustomProperties <$> (parseJSONObject o))++instance ToJSON UserCustomProperties where+ toJSON = toJSON . _ucpAddtional++-- | JSON template for Domain object in Directory API.+--+-- /See:/ 'domains' smart constructor.+data Domains = Domains+ { _domCreationTime :: !(Maybe (Textual Int64))+ , _domEtag :: !(Maybe Text)+ , _domKind :: !Text+ , _domDomainAliases :: !(Maybe [DomainAlias])+ , _domVerified :: !(Maybe Bool)+ , _domDomainName :: !(Maybe Text)+ , _domIsPrimary :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Domains' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'domCreationTime'+--+-- * 'domEtag'+--+-- * 'domKind'+--+-- * 'domDomainAliases'+--+-- * 'domVerified'+--+-- * 'domDomainName'+--+-- * 'domIsPrimary'+domains+ :: Domains+domains =+ Domains+ { _domCreationTime = Nothing+ , _domEtag = Nothing+ , _domKind = "admin#directory#domain"+ , _domDomainAliases = Nothing+ , _domVerified = Nothing+ , _domDomainName = Nothing+ , _domIsPrimary = Nothing+ }++-- | Creation time of the domain. (Read-only).+domCreationTime :: Lens' Domains (Maybe Int64)+domCreationTime+ = lens _domCreationTime+ (\ s a -> s{_domCreationTime = a})+ . mapping _Coerce++-- | ETag of the resource.+domEtag :: Lens' Domains (Maybe Text)+domEtag = lens _domEtag (\ s a -> s{_domEtag = a})++-- | Kind of resource this is.+domKind :: Lens' Domains Text+domKind = lens _domKind (\ s a -> s{_domKind = a})++-- | List of domain alias objects. (Read-only)+domDomainAliases :: Lens' Domains [DomainAlias]+domDomainAliases+ = lens _domDomainAliases+ (\ s a -> s{_domDomainAliases = a})+ . _Default+ . _Coerce++-- | Indicates the verification state of a domain. (Read-only).+domVerified :: Lens' Domains (Maybe Bool)+domVerified+ = lens _domVerified (\ s a -> s{_domVerified = a})++-- | The domain name of the customer.+domDomainName :: Lens' Domains (Maybe Text)+domDomainName+ = lens _domDomainName+ (\ s a -> s{_domDomainName = a})++-- | Indicates if the domain is a primary domain (Read-only).+domIsPrimary :: Lens' Domains (Maybe Bool)+domIsPrimary+ = lens _domIsPrimary (\ s a -> s{_domIsPrimary = a})++instance FromJSON Domains where+ parseJSON+ = withObject "Domains"+ (\ o ->+ Domains <$>+ (o .:? "creationTime") <*> (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#domain")+ <*> (o .:? "domainAliases" .!= mempty)+ <*> (o .:? "verified")+ <*> (o .:? "domainName")+ <*> (o .:? "isPrimary"))++instance ToJSON Domains where+ toJSON Domains{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _domCreationTime,+ ("etag" .=) <$> _domEtag, Just ("kind" .= _domKind),+ ("domainAliases" .=) <$> _domDomainAliases,+ ("verified" .=) <$> _domVerified,+ ("domainName" .=) <$> _domDomainName,+ ("isPrimary" .=) <$> _domIsPrimary])++-- | Template for notifications list response.+--+-- /See:/ 'notifications' smart constructor.+data Notifications = Notifications+ { _notEtag :: !(Maybe Text)+ , _notNextPageToken :: !(Maybe Text)+ , _notKind :: !Text+ , _notItems :: !(Maybe [Notification])+ , _notUnreadNotificationsCount :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Notifications' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'notEtag'+--+-- * 'notNextPageToken'+--+-- * 'notKind'+--+-- * 'notItems'+--+-- * 'notUnreadNotificationsCount'+notifications+ :: Notifications+notifications =+ Notifications+ { _notEtag = Nothing+ , _notNextPageToken = Nothing+ , _notKind = "admin#directory#notifications"+ , _notItems = Nothing+ , _notUnreadNotificationsCount = Nothing+ }++-- | ETag of the resource.+notEtag :: Lens' Notifications (Maybe Text)+notEtag = lens _notEtag (\ s a -> s{_notEtag = a})++-- | Token for fetching the next page of notifications.+notNextPageToken :: Lens' Notifications (Maybe Text)+notNextPageToken+ = lens _notNextPageToken+ (\ s a -> s{_notNextPageToken = a})++-- | The type of the resource.+notKind :: Lens' Notifications Text+notKind = lens _notKind (\ s a -> s{_notKind = a})++-- | List of notifications in this page.+notItems :: Lens' Notifications [Notification]+notItems+ = lens _notItems (\ s a -> s{_notItems = a}) .+ _Default+ . _Coerce++-- | Number of unread notification for the domain.+notUnreadNotificationsCount :: Lens' Notifications (Maybe Int32)+notUnreadNotificationsCount+ = lens _notUnreadNotificationsCount+ (\ s a -> s{_notUnreadNotificationsCount = a})+ . mapping _Coerce++instance FromJSON Notifications where+ parseJSON+ = withObject "Notifications"+ (\ o ->+ Notifications <$>+ (o .:? "etag") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "admin#directory#notifications")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "unreadNotificationsCount"))++instance ToJSON Notifications where+ toJSON Notifications{..}+ = object+ (catMaybes+ [("etag" .=) <$> _notEtag,+ ("nextPageToken" .=) <$> _notNextPageToken,+ Just ("kind" .= _notKind),+ ("items" .=) <$> _notItems,+ ("unreadNotificationsCount" .=) <$>+ _notUnreadNotificationsCount])++-- | Indexing spec for a numeric field. By default, only exact match queries+-- will be supported for numeric fields. Setting the numericIndexingSpec+-- allows range queries to be supported.+--+-- /See:/ 'schemaFieldSpecNumericIndexingSpec' smart constructor.+data SchemaFieldSpecNumericIndexingSpec = SchemaFieldSpecNumericIndexingSpec+ { _sfsnisMaxValue :: !(Maybe (Textual Double))+ , _sfsnisMinValue :: !(Maybe (Textual Double))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SchemaFieldSpecNumericIndexingSpec' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sfsnisMaxValue'+--+-- * 'sfsnisMinValue'+schemaFieldSpecNumericIndexingSpec+ :: SchemaFieldSpecNumericIndexingSpec+schemaFieldSpecNumericIndexingSpec =+ SchemaFieldSpecNumericIndexingSpec+ { _sfsnisMaxValue = Nothing+ , _sfsnisMinValue = Nothing+ }++-- | Maximum value of this field. This is meant to be indicative rather than+-- enforced. Values outside this range will still be indexed, but search+-- may not be as performant.+sfsnisMaxValue :: Lens' SchemaFieldSpecNumericIndexingSpec (Maybe Double)+sfsnisMaxValue+ = lens _sfsnisMaxValue+ (\ s a -> s{_sfsnisMaxValue = a})+ . mapping _Coerce++-- | Minimum value of this field. This is meant to be indicative rather than+-- enforced. Values outside this range will still be indexed, but search+-- may not be as performant.+sfsnisMinValue :: Lens' SchemaFieldSpecNumericIndexingSpec (Maybe Double)+sfsnisMinValue+ = lens _sfsnisMinValue+ (\ s a -> s{_sfsnisMinValue = a})+ . mapping _Coerce++instance FromJSON SchemaFieldSpecNumericIndexingSpec+ where+ parseJSON+ = withObject "SchemaFieldSpecNumericIndexingSpec"+ (\ o ->+ SchemaFieldSpecNumericIndexingSpec <$>+ (o .:? "maxValue") <*> (o .:? "minValue"))++instance ToJSON SchemaFieldSpecNumericIndexingSpec+ where+ toJSON SchemaFieldSpecNumericIndexingSpec{..}+ = object+ (catMaybes+ [("maxValue" .=) <$> _sfsnisMaxValue,+ ("minValue" .=) <$> _sfsnisMinValue])++-- | JSON request template for firing commands on Mobile Device in Directory+-- Devices API.+--+-- /See:/ 'mobileDeviceAction' smart constructor.+newtype MobileDeviceAction = MobileDeviceAction+ { _mdaAction :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MobileDeviceAction' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdaAction'+mobileDeviceAction+ :: MobileDeviceAction+mobileDeviceAction =+ MobileDeviceAction+ { _mdaAction = Nothing+ }++-- | Action to be taken on the Mobile Device+mdaAction :: Lens' MobileDeviceAction (Maybe Text)+mdaAction+ = lens _mdaAction (\ s a -> s{_mdaAction = a})++instance FromJSON MobileDeviceAction where+ parseJSON+ = withObject "MobileDeviceAction"+ (\ o -> MobileDeviceAction <$> (o .:? "action"))++instance ToJSON MobileDeviceAction where+ toJSON MobileDeviceAction{..}+ = object (catMaybes [("action" .=) <$> _mdaAction])++-- | JSON template for FieldSpec resource for Schemas in Directory API.+--+-- /See:/ 'schemaFieldSpec' smart constructor.+data SchemaFieldSpec = SchemaFieldSpec+ { _sfsEtag :: !(Maybe Text)+ , _sfsKind :: !Text+ , _sfsNumericIndexingSpec :: !(Maybe SchemaFieldSpecNumericIndexingSpec)+ , _sfsReadAccessType :: !Text+ , _sfsFieldId :: !(Maybe Text)+ , _sfsIndexed :: !Bool+ , _sfsFieldType :: !(Maybe Text)+ , _sfsFieldName :: !(Maybe Text)+ , _sfsMultiValued :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SchemaFieldSpec' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sfsEtag'+--+-- * 'sfsKind'+--+-- * 'sfsNumericIndexingSpec'+--+-- * 'sfsReadAccessType'+--+-- * 'sfsFieldId'+--+-- * 'sfsIndexed'+--+-- * 'sfsFieldType'+--+-- * 'sfsFieldName'+--+-- * 'sfsMultiValued'+schemaFieldSpec+ :: SchemaFieldSpec+schemaFieldSpec =+ SchemaFieldSpec+ { _sfsEtag = Nothing+ , _sfsKind = "admin#directory#schema#fieldspec"+ , _sfsNumericIndexingSpec = Nothing+ , _sfsReadAccessType = "ALL_DOMAIN_USERS"+ , _sfsFieldId = Nothing+ , _sfsIndexed = True+ , _sfsFieldType = Nothing+ , _sfsFieldName = Nothing+ , _sfsMultiValued = Nothing+ }++-- | ETag of the resource.+sfsEtag :: Lens' SchemaFieldSpec (Maybe Text)+sfsEtag = lens _sfsEtag (\ s a -> s{_sfsEtag = a})++-- | Kind of resource this is.+sfsKind :: Lens' SchemaFieldSpec Text+sfsKind = lens _sfsKind (\ s a -> s{_sfsKind = a})++-- | Indexing spec for a numeric field. By default, only exact match queries+-- will be supported for numeric fields. Setting the numericIndexingSpec+-- allows range queries to be supported.+sfsNumericIndexingSpec :: Lens' SchemaFieldSpec (Maybe SchemaFieldSpecNumericIndexingSpec)+sfsNumericIndexingSpec+ = lens _sfsNumericIndexingSpec+ (\ s a -> s{_sfsNumericIndexingSpec = a})++-- | Read ACLs on the field specifying who can view values of this field.+-- Valid values are \"ALL_DOMAIN_USERS\" and \"ADMINS_AND_SELF\".+sfsReadAccessType :: Lens' SchemaFieldSpec Text+sfsReadAccessType+ = lens _sfsReadAccessType+ (\ s a -> s{_sfsReadAccessType = a})++-- | Unique identifier of Field (Read-only)+sfsFieldId :: Lens' SchemaFieldSpec (Maybe Text)+sfsFieldId+ = lens _sfsFieldId (\ s a -> s{_sfsFieldId = a})++-- | Boolean specifying whether the field is indexed or not.+sfsIndexed :: Lens' SchemaFieldSpec Bool+sfsIndexed+ = lens _sfsIndexed (\ s a -> s{_sfsIndexed = a})++-- | Type of the field.+sfsFieldType :: Lens' SchemaFieldSpec (Maybe Text)+sfsFieldType+ = lens _sfsFieldType (\ s a -> s{_sfsFieldType = a})++-- | Name of the field.+sfsFieldName :: Lens' SchemaFieldSpec (Maybe Text)+sfsFieldName+ = lens _sfsFieldName (\ s a -> s{_sfsFieldName = a})++-- | Boolean specifying whether this is a multi-valued field or not.+sfsMultiValued :: Lens' SchemaFieldSpec (Maybe Bool)+sfsMultiValued+ = lens _sfsMultiValued+ (\ s a -> s{_sfsMultiValued = a})++instance FromJSON SchemaFieldSpec where+ parseJSON+ = withObject "SchemaFieldSpec"+ (\ o ->+ SchemaFieldSpec <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#schema#fieldspec")+ <*> (o .:? "numericIndexingSpec")+ <*> (o .:? "readAccessType" .!= "ALL_DOMAIN_USERS")+ <*> (o .:? "fieldId")+ <*> (o .:? "indexed" .!= True)+ <*> (o .:? "fieldType")+ <*> (o .:? "fieldName")+ <*> (o .:? "multiValued"))++instance ToJSON SchemaFieldSpec where+ toJSON SchemaFieldSpec{..}+ = object+ (catMaybes+ [("etag" .=) <$> _sfsEtag, Just ("kind" .= _sfsKind),+ ("numericIndexingSpec" .=) <$>+ _sfsNumericIndexingSpec,+ Just ("readAccessType" .= _sfsReadAccessType),+ ("fieldId" .=) <$> _sfsFieldId,+ Just ("indexed" .= _sfsIndexed),+ ("fieldType" .=) <$> _sfsFieldType,+ ("fieldName" .=) <$> _sfsFieldName,+ ("multiValued" .=) <$> _sfsMultiValued])++-- | JSON response template for List Chrome OS Devices operation in Directory+-- API.+--+-- /See:/ 'chromeOSDevices' smart constructor.+data ChromeOSDevices = ChromeOSDevices+ { _cosdEtag :: !(Maybe Text)+ , _cosdNextPageToken :: !(Maybe Text)+ , _cosdKind :: !Text+ , _cosdChromeosDevices :: !(Maybe [ChromeOSDevice])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChromeOSDevices' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cosdEtag'+--+-- * 'cosdNextPageToken'+--+-- * 'cosdKind'+--+-- * 'cosdChromeosDevices'+chromeOSDevices+ :: ChromeOSDevices+chromeOSDevices =+ ChromeOSDevices+ { _cosdEtag = Nothing+ , _cosdNextPageToken = Nothing+ , _cosdKind = "admin#directory#chromeosdevices"+ , _cosdChromeosDevices = Nothing+ }++-- | ETag of the resource.+cosdEtag :: Lens' ChromeOSDevices (Maybe Text)+cosdEtag = lens _cosdEtag (\ s a -> s{_cosdEtag = a})++-- | Token used to access next page of this result.+cosdNextPageToken :: Lens' ChromeOSDevices (Maybe Text)+cosdNextPageToken+ = lens _cosdNextPageToken+ (\ s a -> s{_cosdNextPageToken = a})++-- | Kind of resource this is.+cosdKind :: Lens' ChromeOSDevices Text+cosdKind = lens _cosdKind (\ s a -> s{_cosdKind = a})++-- | List of Chrome OS Device objects.+cosdChromeosDevices :: Lens' ChromeOSDevices [ChromeOSDevice]+cosdChromeosDevices+ = lens _cosdChromeosDevices+ (\ s a -> s{_cosdChromeosDevices = a})+ . _Default+ . _Coerce++instance FromJSON ChromeOSDevices where+ parseJSON+ = withObject "ChromeOSDevices"+ (\ o ->+ ChromeOSDevices <$>+ (o .:? "etag") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "admin#directory#chromeosdevices")+ <*> (o .:? "chromeosdevices" .!= mempty))++instance ToJSON ChromeOSDevices where+ toJSON ChromeOSDevices{..}+ = object+ (catMaybes+ [("etag" .=) <$> _cosdEtag,+ ("nextPageToken" .=) <$> _cosdNextPageToken,+ Just ("kind" .= _cosdKind),+ ("chromeosdevices" .=) <$> _cosdChromeosDevices])++-- | JSON template for an externalId entry.+--+-- /See:/ 'userExternalId' smart constructor.+data UserExternalId = UserExternalId+ { _ueiValue :: !(Maybe Text)+ , _ueiType :: !(Maybe Text)+ , _ueiCustomType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserExternalId' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ueiValue'+--+-- * 'ueiType'+--+-- * 'ueiCustomType'+userExternalId+ :: UserExternalId+userExternalId =+ UserExternalId+ { _ueiValue = Nothing+ , _ueiType = Nothing+ , _ueiCustomType = Nothing+ }++-- | The value of the id.+ueiValue :: Lens' UserExternalId (Maybe Text)+ueiValue = lens _ueiValue (\ s a -> s{_ueiValue = a})++-- | The type of the Id.+ueiType :: Lens' UserExternalId (Maybe Text)+ueiType = lens _ueiType (\ s a -> s{_ueiType = a})++-- | Custom type.+ueiCustomType :: Lens' UserExternalId (Maybe Text)+ueiCustomType+ = lens _ueiCustomType+ (\ s a -> s{_ueiCustomType = a})++instance FromJSON UserExternalId where+ parseJSON+ = withObject "UserExternalId"+ (\ o ->+ UserExternalId <$>+ (o .:? "value") <*> (o .:? "type") <*>+ (o .:? "customType"))++instance ToJSON UserExternalId where+ toJSON UserExternalId{..}+ = object+ (catMaybes+ [("value" .=) <$> _ueiValue,+ ("type" .=) <$> _ueiType,+ ("customType" .=) <$> _ueiCustomType])++--+-- /See:/ 'asps' smart constructor.+data Asps = Asps+ { _aspEtag :: !(Maybe Text)+ , _aspKind :: !Text+ , _aspItems :: !(Maybe [Asp])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Asps' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aspEtag'+--+-- * 'aspKind'+--+-- * 'aspItems'+asps+ :: Asps+asps =+ Asps+ { _aspEtag = Nothing+ , _aspKind = "admin#directory#aspList"+ , _aspItems = Nothing+ }++-- | ETag of the resource.+aspEtag :: Lens' Asps (Maybe Text)+aspEtag = lens _aspEtag (\ s a -> s{_aspEtag = a})++-- | The type of the API resource. This is always admin#directory#aspList.+aspKind :: Lens' Asps Text+aspKind = lens _aspKind (\ s a -> s{_aspKind = a})++-- | A list of ASP resources.+aspItems :: Lens' Asps [Asp]+aspItems+ = lens _aspItems (\ s a -> s{_aspItems = a}) .+ _Default+ . _Coerce++instance FromJSON Asps where+ parseJSON+ = withObject "Asps"+ (\ o ->+ Asps <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#aspList")+ <*> (o .:? "items" .!= mempty))++instance ToJSON Asps where+ toJSON Asps{..}+ = object+ (catMaybes+ [("etag" .=) <$> _aspEtag, Just ("kind" .= _aspKind),+ ("items" .=) <$> _aspItems])++--+-- /See:/ 'roleRolePrivilegesItem' smart constructor.+data RoleRolePrivilegesItem = RoleRolePrivilegesItem+ { _rrpiServiceId :: !(Maybe Text)+ , _rrpiPrivilegeName :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RoleRolePrivilegesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rrpiServiceId'+--+-- * 'rrpiPrivilegeName'+roleRolePrivilegesItem+ :: RoleRolePrivilegesItem+roleRolePrivilegesItem =+ RoleRolePrivilegesItem+ { _rrpiServiceId = Nothing+ , _rrpiPrivilegeName = Nothing+ }++-- | The obfuscated ID of the service this privilege is for.+rrpiServiceId :: Lens' RoleRolePrivilegesItem (Maybe Text)+rrpiServiceId+ = lens _rrpiServiceId+ (\ s a -> s{_rrpiServiceId = a})++-- | The name of the privilege.+rrpiPrivilegeName :: Lens' RoleRolePrivilegesItem (Maybe Text)+rrpiPrivilegeName+ = lens _rrpiPrivilegeName+ (\ s a -> s{_rrpiPrivilegeName = a})++instance FromJSON RoleRolePrivilegesItem where+ parseJSON+ = withObject "RoleRolePrivilegesItem"+ (\ o ->+ RoleRolePrivilegesItem <$>+ (o .:? "serviceId") <*> (o .:? "privilegeName"))++instance ToJSON RoleRolePrivilegesItem where+ toJSON RoleRolePrivilegesItem{..}+ = object+ (catMaybes+ [("serviceId" .=) <$> _rrpiServiceId,+ ("privilegeName" .=) <$> _rrpiPrivilegeName])++-- | JSON response template to list Domains in Directory API.+--+-- /See:/ 'domains2' smart constructor.+data Domains2 = Domains2+ { _ddEtag :: !(Maybe Text)+ , _ddKind :: !Text+ , _ddDomains :: !(Maybe [Domains])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Domains2' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ddEtag'+--+-- * 'ddKind'+--+-- * 'ddDomains'+domains2+ :: Domains2+domains2 =+ Domains2+ { _ddEtag = Nothing+ , _ddKind = "admin#directory#domains"+ , _ddDomains = Nothing+ }++-- | ETag of the resource.+ddEtag :: Lens' Domains2 (Maybe Text)+ddEtag = lens _ddEtag (\ s a -> s{_ddEtag = a})++-- | Kind of resource this is.+ddKind :: Lens' Domains2 Text+ddKind = lens _ddKind (\ s a -> s{_ddKind = a})++-- | List of domain objects.+ddDomains :: Lens' Domains2 [Domains]+ddDomains+ = lens _ddDomains (\ s a -> s{_ddDomains = a}) .+ _Default+ . _Coerce++instance FromJSON Domains2 where+ parseJSON+ = withObject "Domains2"+ (\ o ->+ Domains2 <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "admin#directory#domains")+ <*> (o .:? "domains" .!= mempty))++instance ToJSON Domains2 where+ toJSON Domains2{..}+ = object+ (catMaybes+ [("etag" .=) <$> _ddEtag, Just ("kind" .= _ddKind),+ ("domains" .=) <$> _ddDomains])
+ gen/Network/Google/Directory/Types/Sum.hs view
@@ -0,0 +1,862 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Directory.Types.Sum+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.Google.Directory.Types.Sum where++import Network.Google.Prelude++-- | Event on which subscription is intended (if subscribing)+data UsersListEvent+ = Add+ -- ^ @add@+ -- User Created Event+ | Delete'+ -- ^ @delete@+ -- User Deleted Event+ | MakeAdmin+ -- ^ @makeAdmin@+ -- User Admin Status Change Event+ | Undelete+ -- ^ @undelete@+ -- User Undeleted Event+ | Update+ -- ^ @update@+ -- User Updated Event+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersListEvent++instance FromText UsersListEvent where+ fromText = \case+ "add" -> Just Add+ "delete" -> Just Delete'+ "makeAdmin" -> Just MakeAdmin+ "undelete" -> Just Undelete+ "update" -> Just Update+ _ -> Nothing++instance ToText UsersListEvent where+ toText = \case+ Add -> "add"+ Delete' -> "delete"+ MakeAdmin -> "makeAdmin"+ Undelete -> "undelete"+ Update -> "update"++instance FromJSON UsersListEvent where+ parseJSON = parseJSONText "UsersListEvent"++instance ToJSON UsersListEvent where+ toJSON = toJSONText++-- | Event on which subscription is intended (if subscribing)+data UsersAliasesListEvent+ = UALEAdd+ -- ^ @add@+ -- Alias Created Event+ | UALEDelete'+ -- ^ @delete@+ -- Alias Deleted Event+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersAliasesListEvent++instance FromText UsersAliasesListEvent where+ fromText = \case+ "add" -> Just UALEAdd+ "delete" -> Just UALEDelete'+ _ -> Nothing++instance ToText UsersAliasesListEvent where+ toText = \case+ UALEAdd -> "add"+ UALEDelete' -> "delete"++instance FromJSON UsersAliasesListEvent where+ parseJSON = parseJSONText "UsersAliasesListEvent"++instance ToJSON UsersAliasesListEvent where+ toJSON = toJSONText++-- | Event on which subscription is intended (if subscribing)+data UsersAliasesWatchEvent+ = UAWEAdd+ -- ^ @add@+ -- Alias Created Event+ | UAWEDelete'+ -- ^ @delete@+ -- Alias Deleted Event+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersAliasesWatchEvent++instance FromText UsersAliasesWatchEvent where+ fromText = \case+ "add" -> Just UAWEAdd+ "delete" -> Just UAWEDelete'+ _ -> Nothing++instance ToText UsersAliasesWatchEvent where+ toText = \case+ UAWEAdd -> "add"+ UAWEDelete' -> "delete"++instance FromJSON UsersAliasesWatchEvent where+ parseJSON = parseJSONText "UsersAliasesWatchEvent"++instance ToJSON UsersAliasesWatchEvent where+ toJSON = toJSONText++-- | Event on which subscription is intended (if subscribing)+data UsersWatchEvent+ = UWEAdd+ -- ^ @add@+ -- User Created Event+ | UWEDelete'+ -- ^ @delete@+ -- User Deleted Event+ | UWEMakeAdmin+ -- ^ @makeAdmin@+ -- User Admin Status Change Event+ | UWEUndelete+ -- ^ @undelete@+ -- User Undeleted Event+ | UWEUpdate+ -- ^ @update@+ -- User Updated Event+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersWatchEvent++instance FromText UsersWatchEvent where+ fromText = \case+ "add" -> Just UWEAdd+ "delete" -> Just UWEDelete'+ "makeAdmin" -> Just UWEMakeAdmin+ "undelete" -> Just UWEUndelete+ "update" -> Just UWEUpdate+ _ -> Nothing++instance ToText UsersWatchEvent where+ toText = \case+ UWEAdd -> "add"+ UWEDelete' -> "delete"+ UWEMakeAdmin -> "makeAdmin"+ UWEUndelete -> "undelete"+ UWEUpdate -> "update"++instance FromJSON UsersWatchEvent where+ parseJSON = parseJSONText "UsersWatchEvent"++instance ToJSON UsersWatchEvent where+ toJSON = toJSONText++-- | Restrict information returned to a set of selected fields.+data ChromeosDevicesPatchProjection+ = Basic+ -- ^ @BASIC@+ -- Includes only the basic metadata fields (e.g., deviceId, serialNumber,+ -- status, and user)+ | Full+ -- ^ @FULL@+ -- Includes all metadata fields+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable ChromeosDevicesPatchProjection++instance FromText ChromeosDevicesPatchProjection where+ fromText = \case+ "BASIC" -> Just Basic+ "FULL" -> Just Full+ _ -> Nothing++instance ToText ChromeosDevicesPatchProjection where+ toText = \case+ Basic -> "BASIC"+ Full -> "FULL"++instance FromJSON ChromeosDevicesPatchProjection where+ parseJSON = parseJSONText "ChromeosDevicesPatchProjection"++instance ToJSON ChromeosDevicesPatchProjection where+ toJSON = toJSONText++-- | Restrict information returned to a set of selected fields.+data ChromeosDevicesGetProjection+ = CDGPBasic+ -- ^ @BASIC@+ -- Includes only the basic metadata fields (e.g., deviceId, serialNumber,+ -- status, and user)+ | CDGPFull+ -- ^ @FULL@+ -- Includes all metadata fields+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable ChromeosDevicesGetProjection++instance FromText ChromeosDevicesGetProjection where+ fromText = \case+ "BASIC" -> Just CDGPBasic+ "FULL" -> Just CDGPFull+ _ -> Nothing++instance ToText ChromeosDevicesGetProjection where+ toText = \case+ CDGPBasic -> "BASIC"+ CDGPFull -> "FULL"++instance FromJSON ChromeosDevicesGetProjection where+ parseJSON = parseJSONText "ChromeosDevicesGetProjection"++instance ToJSON ChromeosDevicesGetProjection where+ toJSON = toJSONText++-- | Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.+data UsersListViewType+ = AdminView+ -- ^ @admin_view@+ -- Fetches the ADMIN_VIEW of the user.+ | DomainPublic+ -- ^ @domain_public@+ -- Fetches the DOMAIN_PUBLIC view of the user.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersListViewType++instance FromText UsersListViewType where+ fromText = \case+ "admin_view" -> Just AdminView+ "domain_public" -> Just DomainPublic+ _ -> Nothing++instance ToText UsersListViewType where+ toText = \case+ AdminView -> "admin_view"+ DomainPublic -> "domain_public"++instance FromJSON UsersListViewType where+ parseJSON = parseJSONText "UsersListViewType"++instance ToJSON UsersListViewType where+ toJSON = toJSONText++-- | Whether to return all sub-organizations or just immediate children+data OrgUnitsListType+ = All+ -- ^ @all@+ -- All sub-organization units.+ | Children+ -- ^ @children@+ -- Immediate children only (default).+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable OrgUnitsListType++instance FromText OrgUnitsListType where+ fromText = \case+ "all" -> Just All+ "children" -> Just Children+ _ -> Nothing++instance ToText OrgUnitsListType where+ toText = \case+ All -> "all"+ Children -> "children"++instance FromJSON OrgUnitsListType where+ parseJSON = parseJSONText "OrgUnitsListType"++instance ToJSON OrgUnitsListType where+ toJSON = toJSONText++-- | Whether to return results in ascending or descending order. Only of use+-- when orderBy is also used+data MobileDevicesListSortOrder+ = Ascending+ -- ^ @ASCENDING@+ -- Ascending order.+ | Descending+ -- ^ @DESCENDING@+ -- Descending order.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable MobileDevicesListSortOrder++instance FromText MobileDevicesListSortOrder where+ fromText = \case+ "ASCENDING" -> Just Ascending+ "DESCENDING" -> Just Descending+ _ -> Nothing++instance ToText MobileDevicesListSortOrder where+ toText = \case+ Ascending -> "ASCENDING"+ Descending -> "DESCENDING"++instance FromJSON MobileDevicesListSortOrder where+ parseJSON = parseJSONText "MobileDevicesListSortOrder"++instance ToJSON MobileDevicesListSortOrder where+ toJSON = toJSONText++-- | Column to use for sorting results+data UsersListOrderBy+ = Email+ -- ^ @email@+ -- Primary email of the user.+ | FamilyName+ -- ^ @familyName@+ -- User\'s family name.+ | GivenName+ -- ^ @givenName@+ -- User\'s given name.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersListOrderBy++instance FromText UsersListOrderBy where+ fromText = \case+ "email" -> Just Email+ "familyName" -> Just FamilyName+ "givenName" -> Just GivenName+ _ -> Nothing++instance ToText UsersListOrderBy where+ toText = \case+ Email -> "email"+ FamilyName -> "familyName"+ GivenName -> "givenName"++instance FromJSON UsersListOrderBy where+ parseJSON = parseJSONText "UsersListOrderBy"++instance ToJSON UsersListOrderBy where+ toJSON = toJSONText++-- | Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.+data UsersWatchViewType+ = UWVTAdminView+ -- ^ @admin_view@+ -- Fetches the ADMIN_VIEW of the user.+ | UWVTDomainPublic+ -- ^ @domain_public@+ -- Fetches the DOMAIN_PUBLIC view of the user.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersWatchViewType++instance FromText UsersWatchViewType where+ fromText = \case+ "admin_view" -> Just UWVTAdminView+ "domain_public" -> Just UWVTDomainPublic+ _ -> Nothing++instance ToText UsersWatchViewType where+ toText = \case+ UWVTAdminView -> "admin_view"+ UWVTDomainPublic -> "domain_public"++instance FromJSON UsersWatchViewType where+ parseJSON = parseJSONText "UsersWatchViewType"++instance ToJSON UsersWatchViewType where+ toJSON = toJSONText++-- | What subset of fields to fetch for this user.+data UsersGetProjection+ = UGPBasic+ -- ^ @basic@+ -- Do not include any custom fields for the user.+ | UGPCustom+ -- ^ @custom@+ -- Include custom fields from schemas mentioned in customFieldMask.+ | UGPFull+ -- ^ @full@+ -- Include all fields associated with this user.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersGetProjection++instance FromText UsersGetProjection where+ fromText = \case+ "basic" -> Just UGPBasic+ "custom" -> Just UGPCustom+ "full" -> Just UGPFull+ _ -> Nothing++instance ToText UsersGetProjection where+ toText = \case+ UGPBasic -> "basic"+ UGPCustom -> "custom"+ UGPFull -> "full"++instance FromJSON UsersGetProjection where+ parseJSON = parseJSONText "UsersGetProjection"++instance ToJSON UsersGetProjection where+ toJSON = toJSONText++-- | Restrict information returned to a set of selected fields.+data MobileDevicesListProjection+ = MDLPBasic+ -- ^ @BASIC@+ -- Includes only the basic metadata fields (e.g., deviceId, model, status,+ -- type, and status)+ | MDLPFull+ -- ^ @FULL@+ -- Includes all metadata fields+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable MobileDevicesListProjection++instance FromText MobileDevicesListProjection where+ fromText = \case+ "BASIC" -> Just MDLPBasic+ "FULL" -> Just MDLPFull+ _ -> Nothing++instance ToText MobileDevicesListProjection where+ toText = \case+ MDLPBasic -> "BASIC"+ MDLPFull -> "FULL"++instance FromJSON MobileDevicesListProjection where+ parseJSON = parseJSONText "MobileDevicesListProjection"++instance ToJSON MobileDevicesListProjection where+ toJSON = toJSONText++-- | Column to use for sorting results+data MobileDevicesListOrderBy+ = MDLOBDeviceId+ -- ^ @deviceId@+ -- Mobile Device serial number.+ | MDLOBEmail+ -- ^ @email@+ -- Owner user email.+ | MDLOBLastSync+ -- ^ @lastSync@+ -- Last policy settings sync date time of the device.+ | MDLOBModel+ -- ^ @model@+ -- Mobile Device model.+ | MDLOBName+ -- ^ @name@+ -- Owner user name.+ | MDLOBOS+ -- ^ @os@+ -- Mobile operating system.+ | MDLOBStatus+ -- ^ @status@+ -- Status of the device.+ | MDLOBType+ -- ^ @type@+ -- Type of the device.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable MobileDevicesListOrderBy++instance FromText MobileDevicesListOrderBy where+ fromText = \case+ "deviceId" -> Just MDLOBDeviceId+ "email" -> Just MDLOBEmail+ "lastSync" -> Just MDLOBLastSync+ "model" -> Just MDLOBModel+ "name" -> Just MDLOBName+ "os" -> Just MDLOBOS+ "status" -> Just MDLOBStatus+ "type" -> Just MDLOBType+ _ -> Nothing++instance ToText MobileDevicesListOrderBy where+ toText = \case+ MDLOBDeviceId -> "deviceId"+ MDLOBEmail -> "email"+ MDLOBLastSync -> "lastSync"+ MDLOBModel -> "model"+ MDLOBName -> "name"+ MDLOBOS -> "os"+ MDLOBStatus -> "status"+ MDLOBType -> "type"++instance FromJSON MobileDevicesListOrderBy where+ parseJSON = parseJSONText "MobileDevicesListOrderBy"++instance ToJSON MobileDevicesListOrderBy where+ toJSON = toJSONText++-- | Whether to return results in ascending or descending order.+data UsersListSortOrder+ = ULSOAscending+ -- ^ @ASCENDING@+ -- Ascending order.+ | ULSODescending+ -- ^ @DESCENDING@+ -- Descending order.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersListSortOrder++instance FromText UsersListSortOrder where+ fromText = \case+ "ASCENDING" -> Just ULSOAscending+ "DESCENDING" -> Just ULSODescending+ _ -> Nothing++instance ToText UsersListSortOrder where+ toText = \case+ ULSOAscending -> "ASCENDING"+ ULSODescending -> "DESCENDING"++instance FromJSON UsersListSortOrder where+ parseJSON = parseJSONText "UsersListSortOrder"++instance ToJSON UsersListSortOrder where+ toJSON = toJSONText++-- | Whether to return results in ascending or descending order. Only of use+-- when orderBy is also used+data ChromeosDevicesListSortOrder+ = CDLSOAscending+ -- ^ @ASCENDING@+ -- Ascending order.+ | CDLSODescending+ -- ^ @DESCENDING@+ -- Descending order.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable ChromeosDevicesListSortOrder++instance FromText ChromeosDevicesListSortOrder where+ fromText = \case+ "ASCENDING" -> Just CDLSOAscending+ "DESCENDING" -> Just CDLSODescending+ _ -> Nothing++instance ToText ChromeosDevicesListSortOrder where+ toText = \case+ CDLSOAscending -> "ASCENDING"+ CDLSODescending -> "DESCENDING"++instance FromJSON ChromeosDevicesListSortOrder where+ parseJSON = parseJSONText "ChromeosDevicesListSortOrder"++instance ToJSON ChromeosDevicesListSortOrder where+ toJSON = toJSONText++-- | Whether to return results in ascending or descending order.+data UsersWatchSortOrder+ = UWSOAscending+ -- ^ @ASCENDING@+ -- Ascending order.+ | UWSODescending+ -- ^ @DESCENDING@+ -- Descending order.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersWatchSortOrder++instance FromText UsersWatchSortOrder where+ fromText = \case+ "ASCENDING" -> Just UWSOAscending+ "DESCENDING" -> Just UWSODescending+ _ -> Nothing++instance ToText UsersWatchSortOrder where+ toText = \case+ UWSOAscending -> "ASCENDING"+ UWSODescending -> "DESCENDING"++instance FromJSON UsersWatchSortOrder where+ parseJSON = parseJSONText "UsersWatchSortOrder"++instance ToJSON UsersWatchSortOrder where+ toJSON = toJSONText++-- | What subset of fields to fetch for this user.+data UsersListProjection+ = ULPBasic+ -- ^ @basic@+ -- Do not include any custom fields for the user.+ | ULPCustom+ -- ^ @custom@+ -- Include custom fields from schemas mentioned in customFieldMask.+ | ULPFull+ -- ^ @full@+ -- Include all fields associated with this user.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersListProjection++instance FromText UsersListProjection where+ fromText = \case+ "basic" -> Just ULPBasic+ "custom" -> Just ULPCustom+ "full" -> Just ULPFull+ _ -> Nothing++instance ToText UsersListProjection where+ toText = \case+ ULPBasic -> "basic"+ ULPCustom -> "custom"+ ULPFull -> "full"++instance FromJSON UsersListProjection where+ parseJSON = parseJSONText "UsersListProjection"++instance ToJSON UsersListProjection where+ toJSON = toJSONText++-- | Restrict information returned to a set of selected fields.+data ChromeosDevicesUpdateProjection+ = CDUPBasic+ -- ^ @BASIC@+ -- Includes only the basic metadata fields (e.g., deviceId, serialNumber,+ -- status, and user)+ | CDUPFull+ -- ^ @FULL@+ -- Includes all metadata fields+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable ChromeosDevicesUpdateProjection++instance FromText ChromeosDevicesUpdateProjection where+ fromText = \case+ "BASIC" -> Just CDUPBasic+ "FULL" -> Just CDUPFull+ _ -> Nothing++instance ToText ChromeosDevicesUpdateProjection where+ toText = \case+ CDUPBasic -> "BASIC"+ CDUPFull -> "FULL"++instance FromJSON ChromeosDevicesUpdateProjection where+ parseJSON = parseJSONText "ChromeosDevicesUpdateProjection"++instance ToJSON ChromeosDevicesUpdateProjection where+ toJSON = toJSONText++-- | Restrict information returned to a set of selected fields.+data MobileDevicesGetProjection+ = MDGPBasic+ -- ^ @BASIC@+ -- Includes only the basic metadata fields (e.g., deviceId, model, status,+ -- type, and status)+ | MDGPFull+ -- ^ @FULL@+ -- Includes all metadata fields+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable MobileDevicesGetProjection++instance FromText MobileDevicesGetProjection where+ fromText = \case+ "BASIC" -> Just MDGPBasic+ "FULL" -> Just MDGPFull+ _ -> Nothing++instance ToText MobileDevicesGetProjection where+ toText = \case+ MDGPBasic -> "BASIC"+ MDGPFull -> "FULL"++instance FromJSON MobileDevicesGetProjection where+ parseJSON = parseJSONText "MobileDevicesGetProjection"++instance ToJSON MobileDevicesGetProjection where+ toJSON = toJSONText++-- | Column to use for sorting results+data ChromeosDevicesListOrderBy+ = AnnotatedLocation+ -- ^ @annotatedLocation@+ -- Chromebook location as annotated by the administrator.+ | AnnotatedUser+ -- ^ @annotatedUser@+ -- Chromebook user as annotated by administrator.+ | LastSync+ -- ^ @lastSync@+ -- Chromebook last sync.+ | Notes+ -- ^ @notes@+ -- Chromebook notes as annotated by the administrator.+ | SerialNumber+ -- ^ @serialNumber@+ -- Chromebook Serial Number.+ | Status+ -- ^ @status@+ -- Chromebook status.+ | SupportEndDate+ -- ^ @supportEndDate@+ -- Chromebook support end date.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable ChromeosDevicesListOrderBy++instance FromText ChromeosDevicesListOrderBy where+ fromText = \case+ "annotatedLocation" -> Just AnnotatedLocation+ "annotatedUser" -> Just AnnotatedUser+ "lastSync" -> Just LastSync+ "notes" -> Just Notes+ "serialNumber" -> Just SerialNumber+ "status" -> Just Status+ "supportEndDate" -> Just SupportEndDate+ _ -> Nothing++instance ToText ChromeosDevicesListOrderBy where+ toText = \case+ AnnotatedLocation -> "annotatedLocation"+ AnnotatedUser -> "annotatedUser"+ LastSync -> "lastSync"+ Notes -> "notes"+ SerialNumber -> "serialNumber"+ Status -> "status"+ SupportEndDate -> "supportEndDate"++instance FromJSON ChromeosDevicesListOrderBy where+ parseJSON = parseJSONText "ChromeosDevicesListOrderBy"++instance ToJSON ChromeosDevicesListOrderBy where+ toJSON = toJSONText++-- | What subset of fields to fetch for this user.+data UsersWatchProjection+ = UWPBasic+ -- ^ @basic@+ -- Do not include any custom fields for the user.+ | UWPCustom+ -- ^ @custom@+ -- Include custom fields from schemas mentioned in customFieldMask.+ | UWPFull+ -- ^ @full@+ -- Include all fields associated with this user.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersWatchProjection++instance FromText UsersWatchProjection where+ fromText = \case+ "basic" -> Just UWPBasic+ "custom" -> Just UWPCustom+ "full" -> Just UWPFull+ _ -> Nothing++instance ToText UsersWatchProjection where+ toText = \case+ UWPBasic -> "basic"+ UWPCustom -> "custom"+ UWPFull -> "full"++instance FromJSON UsersWatchProjection where+ parseJSON = parseJSONText "UsersWatchProjection"++instance ToJSON UsersWatchProjection where+ toJSON = toJSONText++-- | Column to use for sorting results+data UsersWatchOrderBy+ = UWOBEmail+ -- ^ @email@+ -- Primary email of the user.+ | UWOBFamilyName+ -- ^ @familyName@+ -- User\'s family name.+ | UWOBGivenName+ -- ^ @givenName@+ -- User\'s given name.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersWatchOrderBy++instance FromText UsersWatchOrderBy where+ fromText = \case+ "email" -> Just UWOBEmail+ "familyName" -> Just UWOBFamilyName+ "givenName" -> Just UWOBGivenName+ _ -> Nothing++instance ToText UsersWatchOrderBy where+ toText = \case+ UWOBEmail -> "email"+ UWOBFamilyName -> "familyName"+ UWOBGivenName -> "givenName"++instance FromJSON UsersWatchOrderBy where+ parseJSON = parseJSONText "UsersWatchOrderBy"++instance ToJSON UsersWatchOrderBy where+ toJSON = toJSONText++-- | Restrict information returned to a set of selected fields.+data ChromeosDevicesListProjection+ = CDLPBasic+ -- ^ @BASIC@+ -- Includes only the basic metadata fields (e.g., deviceId, serialNumber,+ -- status, and user)+ | CDLPFull+ -- ^ @FULL@+ -- Includes all metadata fields+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable ChromeosDevicesListProjection++instance FromText ChromeosDevicesListProjection where+ fromText = \case+ "BASIC" -> Just CDLPBasic+ "FULL" -> Just CDLPFull+ _ -> Nothing++instance ToText ChromeosDevicesListProjection where+ toText = \case+ CDLPBasic -> "BASIC"+ CDLPFull -> "FULL"++instance FromJSON ChromeosDevicesListProjection where+ parseJSON = parseJSONText "ChromeosDevicesListProjection"++instance ToJSON ChromeosDevicesListProjection where+ toJSON = toJSONText++-- | Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.+data UsersGetViewType+ = UGVTAdminView+ -- ^ @admin_view@+ -- Fetches the ADMIN_VIEW of the user.+ | UGVTDomainPublic+ -- ^ @domain_public@+ -- Fetches the DOMAIN_PUBLIC view of the user.+ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable UsersGetViewType++instance FromText UsersGetViewType where+ fromText = \case+ "admin_view" -> Just UGVTAdminView+ "domain_public" -> Just UGVTDomainPublic+ _ -> Nothing++instance ToText UsersGetViewType where+ toText = \case+ UGVTAdminView -> "admin_view"+ UGVTDomainPublic -> "domain_public"++instance FromJSON UsersGetViewType where+ parseJSON = parseJSONText "UsersGetViewType"++instance ToJSON UsersGetViewType where+ toJSON = toJSONText
+ gen/Network/Google/Resource/Admin/Channels/Stop.hs view
@@ -0,0 +1,86 @@+{-# 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.Admin.Channels.Stop+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Stop watching resources through this channel+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @admin.channels.stop@.+module Network.Google.Resource.Admin.Channels.Stop+ (+ -- * REST Resource+ ChannelsStopResource++ -- * Creating a Request+ , channelsStop+ , ChannelsStop++ -- * Request Lenses+ , csPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @admin.channels.stop@ method which the+-- 'ChannelsStop' request conforms to.+type ChannelsStopResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "admin" :>+ "directory_v1" :>+ "channels" :>+ "stop" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Channel :> Post '[JSON] ()++-- | Stop watching resources through this channel+--+-- /See:/ 'channelsStop' smart constructor.+newtype ChannelsStop = ChannelsStop+ { _csPayload :: Channel+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChannelsStop' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csPayload'+channelsStop+ :: Channel -- ^ 'csPayload'+ -> ChannelsStop+channelsStop pCsPayload_ =+ ChannelsStop+ { _csPayload = pCsPayload_+ }++-- | Multipart request metadata.+csPayload :: Lens' ChannelsStop Channel+csPayload+ = lens _csPayload (\ s a -> s{_csPayload = a})++instance GoogleRequest ChannelsStop where+ type Rs ChannelsStop = ()+ requestClient ChannelsStop{..}+ = go (Just AltJSON) _csPayload directoryService+ where go+ = buildClient (Proxy :: Proxy ChannelsStopResource)+ mempty
+ gen/Network/Google/Resource/Directory/Asps/Delete.hs view
@@ -0,0 +1,99 @@+{-# 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.Directory.Asps.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete an ASP issued by a user.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.asps.delete@.+module Network.Google.Resource.Directory.Asps.Delete+ (+ -- * REST Resource+ AspsDeleteResource++ -- * Creating a Request+ , aspsDelete+ , AspsDelete++ -- * Request Lenses+ , adCodeId+ , adUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.asps.delete@ method which the+-- 'AspsDelete' request conforms to.+type AspsDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "asps" :>+ Capture "codeId" (Textual Int32) :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Delete an ASP issued by a user.+--+-- /See:/ 'aspsDelete' smart constructor.+data AspsDelete = AspsDelete+ { _adCodeId :: !(Textual Int32)+ , _adUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AspsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'adCodeId'+--+-- * 'adUserKey'+aspsDelete+ :: Int32 -- ^ 'adCodeId'+ -> Text -- ^ 'adUserKey'+ -> AspsDelete+aspsDelete pAdCodeId_ pAdUserKey_ =+ AspsDelete+ { _adCodeId = _Coerce # pAdCodeId_+ , _adUserKey = pAdUserKey_+ }++-- | The unique ID of the ASP to be deleted.+adCodeId :: Lens' AspsDelete Int32+adCodeId+ = lens _adCodeId (\ s a -> s{_adCodeId = a}) .+ _Coerce++-- | Identifies the user in the API request. The value can be the user\'s+-- primary email address, alias email address, or unique user ID.+adUserKey :: Lens' AspsDelete Text+adUserKey+ = lens _adUserKey (\ s a -> s{_adUserKey = a})++instance GoogleRequest AspsDelete where+ type Rs AspsDelete = ()+ requestClient AspsDelete{..}+ = go _adUserKey _adCodeId (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy AspsDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Asps/Get.hs view
@@ -0,0 +1,98 @@+{-# 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.Directory.Asps.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get information about an ASP issued by a user.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.asps.get@.+module Network.Google.Resource.Directory.Asps.Get+ (+ -- * REST Resource+ AspsGetResource++ -- * Creating a Request+ , aspsGet+ , AspsGet++ -- * Request Lenses+ , agCodeId+ , agUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.asps.get@ method which the+-- 'AspsGet' request conforms to.+type AspsGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "asps" :>+ Capture "codeId" (Textual Int32) :>+ QueryParam "alt" AltJSON :> Get '[JSON] Asp++-- | Get information about an ASP issued by a user.+--+-- /See:/ 'aspsGet' smart constructor.+data AspsGet = AspsGet+ { _agCodeId :: !(Textual Int32)+ , _agUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AspsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'agCodeId'+--+-- * 'agUserKey'+aspsGet+ :: Int32 -- ^ 'agCodeId'+ -> Text -- ^ 'agUserKey'+ -> AspsGet+aspsGet pAgCodeId_ pAgUserKey_ =+ AspsGet+ { _agCodeId = _Coerce # pAgCodeId_+ , _agUserKey = pAgUserKey_+ }++-- | The unique ID of the ASP.+agCodeId :: Lens' AspsGet Int32+agCodeId+ = lens _agCodeId (\ s a -> s{_agCodeId = a}) .+ _Coerce++-- | Identifies the user in the API request. The value can be the user\'s+-- primary email address, alias email address, or unique user ID.+agUserKey :: Lens' AspsGet Text+agUserKey+ = lens _agUserKey (\ s a -> s{_agUserKey = a})++instance GoogleRequest AspsGet where+ type Rs AspsGet = Asp+ requestClient AspsGet{..}+ = go _agUserKey _agCodeId (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy AspsGetResource) mempty
+ gen/Network/Google/Resource/Directory/Asps/List.hs view
@@ -0,0 +1,85 @@+{-# 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.Directory.Asps.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List the ASPs issued by a user.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.asps.list@.+module Network.Google.Resource.Directory.Asps.List+ (+ -- * REST Resource+ AspsListResource++ -- * Creating a Request+ , aspsList+ , AspsList++ -- * Request Lenses+ , alUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.asps.list@ method which the+-- 'AspsList' request conforms to.+type AspsListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "asps" :>+ QueryParam "alt" AltJSON :> Get '[JSON] Asps++-- | List the ASPs issued by a user.+--+-- /See:/ 'aspsList' smart constructor.+newtype AspsList = AspsList+ { _alUserKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AspsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'alUserKey'+aspsList+ :: Text -- ^ 'alUserKey'+ -> AspsList+aspsList pAlUserKey_ =+ AspsList+ { _alUserKey = pAlUserKey_+ }++-- | Identifies the user in the API request. The value can be the user\'s+-- primary email address, alias email address, or unique user ID.+alUserKey :: Lens' AspsList Text+alUserKey+ = lens _alUserKey (\ s a -> s{_alUserKey = a})++instance GoogleRequest AspsList where+ type Rs AspsList = Asps+ requestClient AspsList{..}+ = go _alUserKey (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy AspsListResource)+ mempty
+ gen/Network/Google/Resource/Directory/ChromeosDevices/Get.hs view
@@ -0,0 +1,115 @@+{-# 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.Directory.ChromeosDevices.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve Chrome OS Device+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.chromeosdevices.get@.+module Network.Google.Resource.Directory.ChromeosDevices.Get+ (+ -- * REST Resource+ ChromeosDevicesGetResource++ -- * Creating a Request+ , chromeosDevicesGet+ , ChromeosDevicesGet++ -- * Request Lenses+ , cdgCustomerId+ , cdgDeviceId+ , cdgProjection+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.chromeosdevices.get@ method which the+-- 'ChromeosDevicesGet' request conforms to.+type ChromeosDevicesGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "devices" :>+ "chromeos" :>+ Capture "deviceId" Text :>+ QueryParam "projection" ChromeosDevicesGetProjection+ :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ChromeOSDevice++-- | Retrieve Chrome OS Device+--+-- /See:/ 'chromeosDevicesGet' smart constructor.+data ChromeosDevicesGet = ChromeosDevicesGet+ { _cdgCustomerId :: !Text+ , _cdgDeviceId :: !Text+ , _cdgProjection :: !(Maybe ChromeosDevicesGetProjection)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChromeosDevicesGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdgCustomerId'+--+-- * 'cdgDeviceId'+--+-- * 'cdgProjection'+chromeosDevicesGet+ :: Text -- ^ 'cdgCustomerId'+ -> Text -- ^ 'cdgDeviceId'+ -> ChromeosDevicesGet+chromeosDevicesGet pCdgCustomerId_ pCdgDeviceId_ =+ ChromeosDevicesGet+ { _cdgCustomerId = pCdgCustomerId_+ , _cdgDeviceId = pCdgDeviceId_+ , _cdgProjection = Nothing+ }++-- | Immutable id of the Google Apps account+cdgCustomerId :: Lens' ChromeosDevicesGet Text+cdgCustomerId+ = lens _cdgCustomerId+ (\ s a -> s{_cdgCustomerId = a})++-- | Immutable id of Chrome OS Device+cdgDeviceId :: Lens' ChromeosDevicesGet Text+cdgDeviceId+ = lens _cdgDeviceId (\ s a -> s{_cdgDeviceId = a})++-- | Restrict information returned to a set of selected fields.+cdgProjection :: Lens' ChromeosDevicesGet (Maybe ChromeosDevicesGetProjection)+cdgProjection+ = lens _cdgProjection+ (\ s a -> s{_cdgProjection = a})++instance GoogleRequest ChromeosDevicesGet where+ type Rs ChromeosDevicesGet = ChromeOSDevice+ requestClient ChromeosDevicesGet{..}+ = go _cdgCustomerId _cdgDeviceId _cdgProjection+ (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy ChromeosDevicesGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/ChromeosDevices/List.hs view
@@ -0,0 +1,166 @@+{-# 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.Directory.ChromeosDevices.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve all Chrome OS Devices of a customer (paginated)+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.chromeosdevices.list@.+module Network.Google.Resource.Directory.ChromeosDevices.List+ (+ -- * REST Resource+ ChromeosDevicesListResource++ -- * Creating a Request+ , chromeosDevicesList+ , ChromeosDevicesList++ -- * Request Lenses+ , cdlOrderBy+ , cdlCustomerId+ , cdlSortOrder+ , cdlQuery+ , cdlProjection+ , cdlPageToken+ , cdlMaxResults+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.chromeosdevices.list@ method which the+-- 'ChromeosDevicesList' request conforms to.+type ChromeosDevicesListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "devices" :>+ "chromeos" :>+ QueryParam "orderBy" ChromeosDevicesListOrderBy :>+ QueryParam "sortOrder" ChromeosDevicesListSortOrder+ :>+ QueryParam "query" Text :>+ QueryParam "projection" ChromeosDevicesListProjection+ :>+ QueryParam "pageToken" Text :>+ QueryParam "maxResults" (Textual Int32) :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ChromeOSDevices++-- | Retrieve all Chrome OS Devices of a customer (paginated)+--+-- /See:/ 'chromeosDevicesList' smart constructor.+data ChromeosDevicesList = ChromeosDevicesList+ { _cdlOrderBy :: !(Maybe ChromeosDevicesListOrderBy)+ , _cdlCustomerId :: !Text+ , _cdlSortOrder :: !(Maybe ChromeosDevicesListSortOrder)+ , _cdlQuery :: !(Maybe Text)+ , _cdlProjection :: !(Maybe ChromeosDevicesListProjection)+ , _cdlPageToken :: !(Maybe Text)+ , _cdlMaxResults :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChromeosDevicesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdlOrderBy'+--+-- * 'cdlCustomerId'+--+-- * 'cdlSortOrder'+--+-- * 'cdlQuery'+--+-- * 'cdlProjection'+--+-- * 'cdlPageToken'+--+-- * 'cdlMaxResults'+chromeosDevicesList+ :: Text -- ^ 'cdlCustomerId'+ -> ChromeosDevicesList+chromeosDevicesList pCdlCustomerId_ =+ ChromeosDevicesList+ { _cdlOrderBy = Nothing+ , _cdlCustomerId = pCdlCustomerId_+ , _cdlSortOrder = Nothing+ , _cdlQuery = Nothing+ , _cdlProjection = Nothing+ , _cdlPageToken = Nothing+ , _cdlMaxResults = Nothing+ }++-- | Column to use for sorting results+cdlOrderBy :: Lens' ChromeosDevicesList (Maybe ChromeosDevicesListOrderBy)+cdlOrderBy+ = lens _cdlOrderBy (\ s a -> s{_cdlOrderBy = a})++-- | Immutable id of the Google Apps account+cdlCustomerId :: Lens' ChromeosDevicesList Text+cdlCustomerId+ = lens _cdlCustomerId+ (\ s a -> s{_cdlCustomerId = a})++-- | Whether to return results in ascending or descending order. Only of use+-- when orderBy is also used+cdlSortOrder :: Lens' ChromeosDevicesList (Maybe ChromeosDevicesListSortOrder)+cdlSortOrder+ = lens _cdlSortOrder (\ s a -> s{_cdlSortOrder = a})++-- | Search string in the format given at+-- http:\/\/support.google.com\/chromeos\/a\/bin\/answer.py?hl=en&answer=1698333+cdlQuery :: Lens' ChromeosDevicesList (Maybe Text)+cdlQuery = lens _cdlQuery (\ s a -> s{_cdlQuery = a})++-- | Restrict information returned to a set of selected fields.+cdlProjection :: Lens' ChromeosDevicesList (Maybe ChromeosDevicesListProjection)+cdlProjection+ = lens _cdlProjection+ (\ s a -> s{_cdlProjection = a})++-- | Token to specify next page in the list+cdlPageToken :: Lens' ChromeosDevicesList (Maybe Text)+cdlPageToken+ = lens _cdlPageToken (\ s a -> s{_cdlPageToken = a})++-- | Maximum number of results to return. Default is 100+cdlMaxResults :: Lens' ChromeosDevicesList (Maybe Int32)+cdlMaxResults+ = lens _cdlMaxResults+ (\ s a -> s{_cdlMaxResults = a})+ . mapping _Coerce++instance GoogleRequest ChromeosDevicesList where+ type Rs ChromeosDevicesList = ChromeOSDevices+ requestClient ChromeosDevicesList{..}+ = go _cdlCustomerId _cdlOrderBy _cdlSortOrder+ _cdlQuery+ _cdlProjection+ _cdlPageToken+ _cdlMaxResults+ (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy ChromeosDevicesListResource)+ mempty
+ gen/Network/Google/Resource/Directory/ChromeosDevices/Patch.hs view
@@ -0,0 +1,129 @@+{-# 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.Directory.ChromeosDevices.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update Chrome OS Device. This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.chromeosdevices.patch@.+module Network.Google.Resource.Directory.ChromeosDevices.Patch+ (+ -- * REST Resource+ ChromeosDevicesPatchResource++ -- * Creating a Request+ , chromeosDevicesPatch+ , ChromeosDevicesPatch++ -- * Request Lenses+ , cdpPayload+ , cdpCustomerId+ , cdpDeviceId+ , cdpProjection+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.chromeosdevices.patch@ method which the+-- 'ChromeosDevicesPatch' request conforms to.+type ChromeosDevicesPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "devices" :>+ "chromeos" :>+ Capture "deviceId" Text :>+ QueryParam "projection"+ ChromeosDevicesPatchProjection+ :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] ChromeOSDevice :>+ Patch '[JSON] ChromeOSDevice++-- | Update Chrome OS Device. This method supports patch semantics.+--+-- /See:/ 'chromeosDevicesPatch' smart constructor.+data ChromeosDevicesPatch = ChromeosDevicesPatch+ { _cdpPayload :: !ChromeOSDevice+ , _cdpCustomerId :: !Text+ , _cdpDeviceId :: !Text+ , _cdpProjection :: !(Maybe ChromeosDevicesPatchProjection)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChromeosDevicesPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdpPayload'+--+-- * 'cdpCustomerId'+--+-- * 'cdpDeviceId'+--+-- * 'cdpProjection'+chromeosDevicesPatch+ :: ChromeOSDevice -- ^ 'cdpPayload'+ -> Text -- ^ 'cdpCustomerId'+ -> Text -- ^ 'cdpDeviceId'+ -> ChromeosDevicesPatch+chromeosDevicesPatch pCdpPayload_ pCdpCustomerId_ pCdpDeviceId_ =+ ChromeosDevicesPatch+ { _cdpPayload = pCdpPayload_+ , _cdpCustomerId = pCdpCustomerId_+ , _cdpDeviceId = pCdpDeviceId_+ , _cdpProjection = Nothing+ }++-- | Multipart request metadata.+cdpPayload :: Lens' ChromeosDevicesPatch ChromeOSDevice+cdpPayload+ = lens _cdpPayload (\ s a -> s{_cdpPayload = a})++-- | Immutable id of the Google Apps account+cdpCustomerId :: Lens' ChromeosDevicesPatch Text+cdpCustomerId+ = lens _cdpCustomerId+ (\ s a -> s{_cdpCustomerId = a})++-- | Immutable id of Chrome OS Device+cdpDeviceId :: Lens' ChromeosDevicesPatch Text+cdpDeviceId+ = lens _cdpDeviceId (\ s a -> s{_cdpDeviceId = a})++-- | Restrict information returned to a set of selected fields.+cdpProjection :: Lens' ChromeosDevicesPatch (Maybe ChromeosDevicesPatchProjection)+cdpProjection+ = lens _cdpProjection+ (\ s a -> s{_cdpProjection = a})++instance GoogleRequest ChromeosDevicesPatch where+ type Rs ChromeosDevicesPatch = ChromeOSDevice+ requestClient ChromeosDevicesPatch{..}+ = go _cdpCustomerId _cdpDeviceId _cdpProjection+ (Just AltJSON)+ _cdpPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy ChromeosDevicesPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/ChromeosDevices/Update.hs view
@@ -0,0 +1,129 @@+{-# 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.Directory.ChromeosDevices.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update Chrome OS Device+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.chromeosdevices.update@.+module Network.Google.Resource.Directory.ChromeosDevices.Update+ (+ -- * REST Resource+ ChromeosDevicesUpdateResource++ -- * Creating a Request+ , chromeosDevicesUpdate+ , ChromeosDevicesUpdate++ -- * Request Lenses+ , cduPayload+ , cduCustomerId+ , cduDeviceId+ , cduProjection+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.chromeosdevices.update@ method which the+-- 'ChromeosDevicesUpdate' request conforms to.+type ChromeosDevicesUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "devices" :>+ "chromeos" :>+ Capture "deviceId" Text :>+ QueryParam "projection"+ ChromeosDevicesUpdateProjection+ :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] ChromeOSDevice :>+ Put '[JSON] ChromeOSDevice++-- | Update Chrome OS Device+--+-- /See:/ 'chromeosDevicesUpdate' smart constructor.+data ChromeosDevicesUpdate = ChromeosDevicesUpdate+ { _cduPayload :: !ChromeOSDevice+ , _cduCustomerId :: !Text+ , _cduDeviceId :: !Text+ , _cduProjection :: !(Maybe ChromeosDevicesUpdateProjection)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ChromeosDevicesUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cduPayload'+--+-- * 'cduCustomerId'+--+-- * 'cduDeviceId'+--+-- * 'cduProjection'+chromeosDevicesUpdate+ :: ChromeOSDevice -- ^ 'cduPayload'+ -> Text -- ^ 'cduCustomerId'+ -> Text -- ^ 'cduDeviceId'+ -> ChromeosDevicesUpdate+chromeosDevicesUpdate pCduPayload_ pCduCustomerId_ pCduDeviceId_ =+ ChromeosDevicesUpdate+ { _cduPayload = pCduPayload_+ , _cduCustomerId = pCduCustomerId_+ , _cduDeviceId = pCduDeviceId_+ , _cduProjection = Nothing+ }++-- | Multipart request metadata.+cduPayload :: Lens' ChromeosDevicesUpdate ChromeOSDevice+cduPayload+ = lens _cduPayload (\ s a -> s{_cduPayload = a})++-- | Immutable id of the Google Apps account+cduCustomerId :: Lens' ChromeosDevicesUpdate Text+cduCustomerId+ = lens _cduCustomerId+ (\ s a -> s{_cduCustomerId = a})++-- | Immutable id of Chrome OS Device+cduDeviceId :: Lens' ChromeosDevicesUpdate Text+cduDeviceId+ = lens _cduDeviceId (\ s a -> s{_cduDeviceId = a})++-- | Restrict information returned to a set of selected fields.+cduProjection :: Lens' ChromeosDevicesUpdate (Maybe ChromeosDevicesUpdateProjection)+cduProjection+ = lens _cduProjection+ (\ s a -> s{_cduProjection = a})++instance GoogleRequest ChromeosDevicesUpdate where+ type Rs ChromeosDevicesUpdate = ChromeOSDevice+ requestClient ChromeosDevicesUpdate{..}+ = go _cduCustomerId _cduDeviceId _cduProjection+ (Just AltJSON)+ _cduPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy ChromeosDevicesUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/Customers/Get.hs view
@@ -0,0 +1,84 @@+{-# 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.Directory.Customers.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrives a customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.customers.get@.+module Network.Google.Resource.Directory.Customers.Get+ (+ -- * REST Resource+ CustomersGetResource++ -- * Creating a Request+ , customersGet+ , CustomersGet++ -- * Request Lenses+ , cgCustomerKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.customers.get@ method which the+-- 'CustomersGet' request conforms to.+type CustomersGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customers" :>+ Capture "customerKey" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Customer++-- | Retrives a customer.+--+-- /See:/ 'customersGet' smart constructor.+newtype CustomersGet = CustomersGet+ { _cgCustomerKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomersGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cgCustomerKey'+customersGet+ :: Text -- ^ 'cgCustomerKey'+ -> CustomersGet+customersGet pCgCustomerKey_ =+ CustomersGet+ { _cgCustomerKey = pCgCustomerKey_+ }++-- | Id of the customer to be retrieved+cgCustomerKey :: Lens' CustomersGet Text+cgCustomerKey+ = lens _cgCustomerKey+ (\ s a -> s{_cgCustomerKey = a})++instance GoogleRequest CustomersGet where+ type Rs CustomersGet = Customer+ requestClient CustomersGet{..}+ = go _cgCustomerKey (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy CustomersGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Customers/Patch.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Customers.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a customer. This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.customers.patch@.+module Network.Google.Resource.Directory.Customers.Patch+ (+ -- * REST Resource+ CustomersPatchResource++ -- * Creating a Request+ , customersPatch+ , CustomersPatch++ -- * Request Lenses+ , cpCustomerKey+ , cpPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.customers.patch@ method which the+-- 'CustomersPatch' request conforms to.+type CustomersPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customers" :>+ Capture "customerKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Customer :> Patch '[JSON] Customer++-- | Updates a customer. This method supports patch semantics.+--+-- /See:/ 'customersPatch' smart constructor.+data CustomersPatch = CustomersPatch+ { _cpCustomerKey :: !Text+ , _cpPayload :: !Customer+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomersPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cpCustomerKey'+--+-- * 'cpPayload'+customersPatch+ :: Text -- ^ 'cpCustomerKey'+ -> Customer -- ^ 'cpPayload'+ -> CustomersPatch+customersPatch pCpCustomerKey_ pCpPayload_ =+ CustomersPatch+ { _cpCustomerKey = pCpCustomerKey_+ , _cpPayload = pCpPayload_+ }++-- | Id of the customer to be updated+cpCustomerKey :: Lens' CustomersPatch Text+cpCustomerKey+ = lens _cpCustomerKey+ (\ s a -> s{_cpCustomerKey = a})++-- | Multipart request metadata.+cpPayload :: Lens' CustomersPatch Customer+cpPayload+ = lens _cpPayload (\ s a -> s{_cpPayload = a})++instance GoogleRequest CustomersPatch where+ type Rs CustomersPatch = Customer+ requestClient CustomersPatch{..}+ = go _cpCustomerKey (Just AltJSON) _cpPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy CustomersPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/Customers/Update.hs view
@@ -0,0 +1,98 @@+{-# 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.Directory.Customers.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.customers.update@.+module Network.Google.Resource.Directory.Customers.Update+ (+ -- * REST Resource+ CustomersUpdateResource++ -- * Creating a Request+ , customersUpdate+ , CustomersUpdate++ -- * Request Lenses+ , cuCustomerKey+ , cuPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.customers.update@ method which the+-- 'CustomersUpdate' request conforms to.+type CustomersUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customers" :>+ Capture "customerKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Customer :> Put '[JSON] Customer++-- | Updates a customer.+--+-- /See:/ 'customersUpdate' smart constructor.+data CustomersUpdate = CustomersUpdate+ { _cuCustomerKey :: !Text+ , _cuPayload :: !Customer+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomersUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cuCustomerKey'+--+-- * 'cuPayload'+customersUpdate+ :: Text -- ^ 'cuCustomerKey'+ -> Customer -- ^ 'cuPayload'+ -> CustomersUpdate+customersUpdate pCuCustomerKey_ pCuPayload_ =+ CustomersUpdate+ { _cuCustomerKey = pCuCustomerKey_+ , _cuPayload = pCuPayload_+ }++-- | Id of the customer to be updated+cuCustomerKey :: Lens' CustomersUpdate Text+cuCustomerKey+ = lens _cuCustomerKey+ (\ s a -> s{_cuCustomerKey = a})++-- | Multipart request metadata.+cuPayload :: Lens' CustomersUpdate Customer+cuPayload+ = lens _cuPayload (\ s a -> s{_cuPayload = a})++instance GoogleRequest CustomersUpdate where+ type Rs CustomersUpdate = Customer+ requestClient CustomersUpdate{..}+ = go _cuCustomerKey (Just AltJSON) _cuPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy CustomersUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/DomainAliases/Delete.hs view
@@ -0,0 +1,99 @@+{-# 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.Directory.DomainAliases.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a Domain Alias of the customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.domainAliases.delete@.+module Network.Google.Resource.Directory.DomainAliases.Delete+ (+ -- * REST Resource+ DomainAliasesDeleteResource++ -- * Creating a Request+ , domainAliasesDelete+ , DomainAliasesDelete++ -- * Request Lenses+ , dadDomainAliasName+ , dadCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.domainAliases.delete@ method which the+-- 'DomainAliasesDelete' request conforms to.+type DomainAliasesDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "domainaliases" :>+ Capture "domainAliasName" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Deletes a Domain Alias of the customer.+--+-- /See:/ 'domainAliasesDelete' smart constructor.+data DomainAliasesDelete = DomainAliasesDelete+ { _dadDomainAliasName :: !Text+ , _dadCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainAliasesDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dadDomainAliasName'+--+-- * 'dadCustomer'+domainAliasesDelete+ :: Text -- ^ 'dadDomainAliasName'+ -> Text -- ^ 'dadCustomer'+ -> DomainAliasesDelete+domainAliasesDelete pDadDomainAliasName_ pDadCustomer_ =+ DomainAliasesDelete+ { _dadDomainAliasName = pDadDomainAliasName_+ , _dadCustomer = pDadCustomer_+ }++-- | Name of domain alias to be retrieved.+dadDomainAliasName :: Lens' DomainAliasesDelete Text+dadDomainAliasName+ = lens _dadDomainAliasName+ (\ s a -> s{_dadDomainAliasName = a})++-- | Immutable id of the Google Apps account.+dadCustomer :: Lens' DomainAliasesDelete Text+dadCustomer+ = lens _dadCustomer (\ s a -> s{_dadCustomer = a})++instance GoogleRequest DomainAliasesDelete where+ type Rs DomainAliasesDelete = ()+ requestClient DomainAliasesDelete{..}+ = go _dadCustomer _dadDomainAliasName (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy DomainAliasesDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/DomainAliases/Get.hs view
@@ -0,0 +1,99 @@+{-# 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.Directory.DomainAliases.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a domain alias of the customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.domainAliases.get@.+module Network.Google.Resource.Directory.DomainAliases.Get+ (+ -- * REST Resource+ DomainAliasesGetResource++ -- * Creating a Request+ , domainAliasesGet+ , DomainAliasesGet++ -- * Request Lenses+ , dagDomainAliasName+ , dagCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.domainAliases.get@ method which the+-- 'DomainAliasesGet' request conforms to.+type DomainAliasesGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "domainaliases" :>+ Capture "domainAliasName" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] DomainAlias++-- | Retrieves a domain alias of the customer.+--+-- /See:/ 'domainAliasesGet' smart constructor.+data DomainAliasesGet = DomainAliasesGet+ { _dagDomainAliasName :: !Text+ , _dagCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainAliasesGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dagDomainAliasName'+--+-- * 'dagCustomer'+domainAliasesGet+ :: Text -- ^ 'dagDomainAliasName'+ -> Text -- ^ 'dagCustomer'+ -> DomainAliasesGet+domainAliasesGet pDagDomainAliasName_ pDagCustomer_ =+ DomainAliasesGet+ { _dagDomainAliasName = pDagDomainAliasName_+ , _dagCustomer = pDagCustomer_+ }++-- | Name of domain alias to be retrieved.+dagDomainAliasName :: Lens' DomainAliasesGet Text+dagDomainAliasName+ = lens _dagDomainAliasName+ (\ s a -> s{_dagDomainAliasName = a})++-- | Immutable id of the Google Apps account.+dagCustomer :: Lens' DomainAliasesGet Text+dagCustomer+ = lens _dagCustomer (\ s a -> s{_dagCustomer = a})++instance GoogleRequest DomainAliasesGet where+ type Rs DomainAliasesGet = DomainAlias+ requestClient DomainAliasesGet{..}+ = go _dagCustomer _dagDomainAliasName (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy DomainAliasesGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/DomainAliases/Insert.hs view
@@ -0,0 +1,99 @@+{-# 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.Directory.DomainAliases.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Inserts a Domain alias of the customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.domainAliases.insert@.+module Network.Google.Resource.Directory.DomainAliases.Insert+ (+ -- * REST Resource+ DomainAliasesInsertResource++ -- * Creating a Request+ , domainAliasesInsert+ , DomainAliasesInsert++ -- * Request Lenses+ , daiPayload+ , daiCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.domainAliases.insert@ method which the+-- 'DomainAliasesInsert' request conforms to.+type DomainAliasesInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "domainaliases" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] DomainAlias :>+ Post '[JSON] DomainAlias++-- | Inserts a Domain alias of the customer.+--+-- /See:/ 'domainAliasesInsert' smart constructor.+data DomainAliasesInsert = DomainAliasesInsert+ { _daiPayload :: !DomainAlias+ , _daiCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainAliasesInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'daiPayload'+--+-- * 'daiCustomer'+domainAliasesInsert+ :: DomainAlias -- ^ 'daiPayload'+ -> Text -- ^ 'daiCustomer'+ -> DomainAliasesInsert+domainAliasesInsert pDaiPayload_ pDaiCustomer_ =+ DomainAliasesInsert+ { _daiPayload = pDaiPayload_+ , _daiCustomer = pDaiCustomer_+ }++-- | Multipart request metadata.+daiPayload :: Lens' DomainAliasesInsert DomainAlias+daiPayload+ = lens _daiPayload (\ s a -> s{_daiPayload = a})++-- | Immutable id of the Google Apps account.+daiCustomer :: Lens' DomainAliasesInsert Text+daiCustomer+ = lens _daiCustomer (\ s a -> s{_daiCustomer = a})++instance GoogleRequest DomainAliasesInsert where+ type Rs DomainAliasesInsert = DomainAlias+ requestClient DomainAliasesInsert{..}+ = go _daiCustomer (Just AltJSON) _daiPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy DomainAliasesInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/DomainAliases/List.hs view
@@ -0,0 +1,98 @@+{-# 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.Directory.DomainAliases.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the domain aliases of the customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.domainAliases.list@.+module Network.Google.Resource.Directory.DomainAliases.List+ (+ -- * REST Resource+ DomainAliasesListResource++ -- * Creating a Request+ , domainAliasesList+ , DomainAliasesList++ -- * Request Lenses+ , dalCustomer+ , dalParentDomainName+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.domainAliases.list@ method which the+-- 'DomainAliasesList' request conforms to.+type DomainAliasesListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "domainaliases" :>+ QueryParam "parentDomainName" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] DomainAliases++-- | Lists the domain aliases of the customer.+--+-- /See:/ 'domainAliasesList' smart constructor.+data DomainAliasesList = DomainAliasesList+ { _dalCustomer :: !Text+ , _dalParentDomainName :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainAliasesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dalCustomer'+--+-- * 'dalParentDomainName'+domainAliasesList+ :: Text -- ^ 'dalCustomer'+ -> DomainAliasesList+domainAliasesList pDalCustomer_ =+ DomainAliasesList+ { _dalCustomer = pDalCustomer_+ , _dalParentDomainName = Nothing+ }++-- | Immutable id of the Google Apps account.+dalCustomer :: Lens' DomainAliasesList Text+dalCustomer+ = lens _dalCustomer (\ s a -> s{_dalCustomer = a})++-- | Name of the parent domain for which domain aliases are to be fetched.+dalParentDomainName :: Lens' DomainAliasesList (Maybe Text)+dalParentDomainName+ = lens _dalParentDomainName+ (\ s a -> s{_dalParentDomainName = a})++instance GoogleRequest DomainAliasesList where+ type Rs DomainAliasesList = DomainAliases+ requestClient DomainAliasesList{..}+ = go _dalCustomer _dalParentDomainName (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy DomainAliasesListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Domains/Delete.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Domains.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a domain of the customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.domains.delete@.+module Network.Google.Resource.Directory.Domains.Delete+ (+ -- * REST Resource+ DomainsDeleteResource++ -- * Creating a Request+ , domainsDelete+ , DomainsDelete++ -- * Request Lenses+ , ddCustomer+ , ddDomainName+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.domains.delete@ method which the+-- 'DomainsDelete' request conforms to.+type DomainsDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "domains" :>+ Capture "domainName" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Deletes a domain of the customer.+--+-- /See:/ 'domainsDelete' smart constructor.+data DomainsDelete = DomainsDelete+ { _ddCustomer :: !Text+ , _ddDomainName :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ddCustomer'+--+-- * 'ddDomainName'+domainsDelete+ :: Text -- ^ 'ddCustomer'+ -> Text -- ^ 'ddDomainName'+ -> DomainsDelete+domainsDelete pDdCustomer_ pDdDomainName_ =+ DomainsDelete+ { _ddCustomer = pDdCustomer_+ , _ddDomainName = pDdDomainName_+ }++-- | Immutable id of the Google Apps account.+ddCustomer :: Lens' DomainsDelete Text+ddCustomer+ = lens _ddCustomer (\ s a -> s{_ddCustomer = a})++-- | Name of domain to be deleted+ddDomainName :: Lens' DomainsDelete Text+ddDomainName+ = lens _ddDomainName (\ s a -> s{_ddDomainName = a})++instance GoogleRequest DomainsDelete where+ type Rs DomainsDelete = ()+ requestClient DomainsDelete{..}+ = go _ddCustomer _ddDomainName (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy DomainsDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Domains/Get.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Domains.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrives a domain of the customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.domains.get@.+module Network.Google.Resource.Directory.Domains.Get+ (+ -- * REST Resource+ DomainsGetResource++ -- * Creating a Request+ , domainsGet+ , DomainsGet++ -- * Request Lenses+ , dgCustomer+ , dgDomainName+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.domains.get@ method which the+-- 'DomainsGet' request conforms to.+type DomainsGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "domains" :>+ Capture "domainName" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Domains++-- | Retrives a domain of the customer.+--+-- /See:/ 'domainsGet' smart constructor.+data DomainsGet = DomainsGet+ { _dgCustomer :: !Text+ , _dgDomainName :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dgCustomer'+--+-- * 'dgDomainName'+domainsGet+ :: Text -- ^ 'dgCustomer'+ -> Text -- ^ 'dgDomainName'+ -> DomainsGet+domainsGet pDgCustomer_ pDgDomainName_ =+ DomainsGet+ { _dgCustomer = pDgCustomer_+ , _dgDomainName = pDgDomainName_+ }++-- | Immutable id of the Google Apps account.+dgCustomer :: Lens' DomainsGet Text+dgCustomer+ = lens _dgCustomer (\ s a -> s{_dgCustomer = a})++-- | Name of domain to be retrieved+dgDomainName :: Lens' DomainsGet Text+dgDomainName+ = lens _dgDomainName (\ s a -> s{_dgDomainName = a})++instance GoogleRequest DomainsGet where+ type Rs DomainsGet = Domains+ requestClient DomainsGet{..}+ = go _dgCustomer _dgDomainName (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy DomainsGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Domains/Insert.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Domains.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Inserts a domain of the customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.domains.insert@.+module Network.Google.Resource.Directory.Domains.Insert+ (+ -- * REST Resource+ DomainsInsertResource++ -- * Creating a Request+ , domainsInsert+ , DomainsInsert++ -- * Request Lenses+ , diPayload+ , diCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.domains.insert@ method which the+-- 'DomainsInsert' request conforms to.+type DomainsInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "domains" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Domains :> Post '[JSON] Domains++-- | Inserts a domain of the customer.+--+-- /See:/ 'domainsInsert' smart constructor.+data DomainsInsert = DomainsInsert+ { _diPayload :: !Domains+ , _diCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainsInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'diPayload'+--+-- * 'diCustomer'+domainsInsert+ :: Domains -- ^ 'diPayload'+ -> Text -- ^ 'diCustomer'+ -> DomainsInsert+domainsInsert pDiPayload_ pDiCustomer_ =+ DomainsInsert+ { _diPayload = pDiPayload_+ , _diCustomer = pDiCustomer_+ }++-- | Multipart request metadata.+diPayload :: Lens' DomainsInsert Domains+diPayload+ = lens _diPayload (\ s a -> s{_diPayload = a})++-- | Immutable id of the Google Apps account.+diCustomer :: Lens' DomainsInsert Text+diCustomer+ = lens _diCustomer (\ s a -> s{_diCustomer = a})++instance GoogleRequest DomainsInsert where+ type Rs DomainsInsert = Domains+ requestClient DomainsInsert{..}+ = go _diCustomer (Just AltJSON) _diPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy DomainsInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/Domains/List.hs view
@@ -0,0 +1,84 @@+{-# 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.Directory.Domains.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the domains of the customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.domains.list@.+module Network.Google.Resource.Directory.Domains.List+ (+ -- * REST Resource+ DomainsListResource++ -- * Creating a Request+ , domainsList+ , DomainsList++ -- * Request Lenses+ , dlCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.domains.list@ method which the+-- 'DomainsList' request conforms to.+type DomainsListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "domains" :>+ QueryParam "alt" AltJSON :> Get '[JSON] Domains2++-- | Lists the domains of the customer.+--+-- /See:/ 'domainsList' smart constructor.+newtype DomainsList = DomainsList+ { _dlCustomer :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DomainsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dlCustomer'+domainsList+ :: Text -- ^ 'dlCustomer'+ -> DomainsList+domainsList pDlCustomer_ =+ DomainsList+ { _dlCustomer = pDlCustomer_+ }++-- | Immutable id of the Google Apps account.+dlCustomer :: Lens' DomainsList Text+dlCustomer+ = lens _dlCustomer (\ s a -> s{_dlCustomer = a})++instance GoogleRequest DomainsList where+ type Rs DomainsList = Domains2+ requestClient DomainsList{..}+ = go _dlCustomer (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy DomainsListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Groups/Aliases/Delete.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Groups.Aliases.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Remove a alias for the group+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.groups.aliases.delete@.+module Network.Google.Resource.Directory.Groups.Aliases.Delete+ (+ -- * REST Resource+ GroupsAliasesDeleteResource++ -- * Creating a Request+ , groupsAliasesDelete+ , GroupsAliasesDelete++ -- * Request Lenses+ , gadGroupKey+ , gadAlias+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.groups.aliases.delete@ method which the+-- 'GroupsAliasesDelete' request conforms to.+type GroupsAliasesDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ "aliases" :>+ Capture "alias" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Remove a alias for the group+--+-- /See:/ 'groupsAliasesDelete' smart constructor.+data GroupsAliasesDelete = GroupsAliasesDelete+ { _gadGroupKey :: !Text+ , _gadAlias :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GroupsAliasesDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gadGroupKey'+--+-- * 'gadAlias'+groupsAliasesDelete+ :: Text -- ^ 'gadGroupKey'+ -> Text -- ^ 'gadAlias'+ -> GroupsAliasesDelete+groupsAliasesDelete pGadGroupKey_ pGadAlias_ =+ GroupsAliasesDelete+ { _gadGroupKey = pGadGroupKey_+ , _gadAlias = pGadAlias_+ }++-- | Email or immutable Id of the group+gadGroupKey :: Lens' GroupsAliasesDelete Text+gadGroupKey+ = lens _gadGroupKey (\ s a -> s{_gadGroupKey = a})++-- | The alias to be removed+gadAlias :: Lens' GroupsAliasesDelete Text+gadAlias = lens _gadAlias (\ s a -> s{_gadAlias = a})++instance GoogleRequest GroupsAliasesDelete where+ type Rs GroupsAliasesDelete = ()+ requestClient GroupsAliasesDelete{..}+ = go _gadGroupKey _gadAlias (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy GroupsAliasesDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Groups/Aliases/Insert.hs view
@@ -0,0 +1,98 @@+{-# 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.Directory.Groups.Aliases.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Add a alias for the group+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.groups.aliases.insert@.+module Network.Google.Resource.Directory.Groups.Aliases.Insert+ (+ -- * REST Resource+ GroupsAliasesInsertResource++ -- * Creating a Request+ , groupsAliasesInsert+ , GroupsAliasesInsert++ -- * Request Lenses+ , gaiGroupKey+ , gaiPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.groups.aliases.insert@ method which the+-- 'GroupsAliasesInsert' request conforms to.+type GroupsAliasesInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ "aliases" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Alias :> Post '[JSON] Alias++-- | Add a alias for the group+--+-- /See:/ 'groupsAliasesInsert' smart constructor.+data GroupsAliasesInsert = GroupsAliasesInsert+ { _gaiGroupKey :: !Text+ , _gaiPayload :: !Alias+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GroupsAliasesInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gaiGroupKey'+--+-- * 'gaiPayload'+groupsAliasesInsert+ :: Text -- ^ 'gaiGroupKey'+ -> Alias -- ^ 'gaiPayload'+ -> GroupsAliasesInsert+groupsAliasesInsert pGaiGroupKey_ pGaiPayload_ =+ GroupsAliasesInsert+ { _gaiGroupKey = pGaiGroupKey_+ , _gaiPayload = pGaiPayload_+ }++-- | Email or immutable Id of the group+gaiGroupKey :: Lens' GroupsAliasesInsert Text+gaiGroupKey+ = lens _gaiGroupKey (\ s a -> s{_gaiGroupKey = a})++-- | Multipart request metadata.+gaiPayload :: Lens' GroupsAliasesInsert Alias+gaiPayload+ = lens _gaiPayload (\ s a -> s{_gaiPayload = a})++instance GoogleRequest GroupsAliasesInsert where+ type Rs GroupsAliasesInsert = Alias+ requestClient GroupsAliasesInsert{..}+ = go _gaiGroupKey (Just AltJSON) _gaiPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy GroupsAliasesInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/Groups/Aliases/List.hs view
@@ -0,0 +1,85 @@+{-# 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.Directory.Groups.Aliases.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all aliases for a group+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.groups.aliases.list@.+module Network.Google.Resource.Directory.Groups.Aliases.List+ (+ -- * REST Resource+ GroupsAliasesListResource++ -- * Creating a Request+ , groupsAliasesList+ , GroupsAliasesList++ -- * Request Lenses+ , galGroupKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.groups.aliases.list@ method which the+-- 'GroupsAliasesList' request conforms to.+type GroupsAliasesListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ "aliases" :>+ QueryParam "alt" AltJSON :> Get '[JSON] Aliases++-- | List all aliases for a group+--+-- /See:/ 'groupsAliasesList' smart constructor.+newtype GroupsAliasesList = GroupsAliasesList+ { _galGroupKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GroupsAliasesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'galGroupKey'+groupsAliasesList+ :: Text -- ^ 'galGroupKey'+ -> GroupsAliasesList+groupsAliasesList pGalGroupKey_ =+ GroupsAliasesList+ { _galGroupKey = pGalGroupKey_+ }++-- | Email or immutable Id of the group+galGroupKey :: Lens' GroupsAliasesList Text+galGroupKey+ = lens _galGroupKey (\ s a -> s{_galGroupKey = a})++instance GoogleRequest GroupsAliasesList where+ type Rs GroupsAliasesList = Aliases+ requestClient GroupsAliasesList{..}+ = go _galGroupKey (Just AltJSON) directoryService+ where go+ = buildClient+ (Proxy :: Proxy GroupsAliasesListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Groups/Delete.hs view
@@ -0,0 +1,83 @@+{-# 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.Directory.Groups.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete Group+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.groups.delete@.+module Network.Google.Resource.Directory.Groups.Delete+ (+ -- * REST Resource+ GroupsDeleteResource++ -- * Creating a Request+ , groupsDelete+ , GroupsDelete++ -- * Request Lenses+ , gdGroupKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.groups.delete@ method which the+-- 'GroupsDelete' request conforms to.+type GroupsDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Delete Group+--+-- /See:/ 'groupsDelete' smart constructor.+newtype GroupsDelete = GroupsDelete+ { _gdGroupKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GroupsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdGroupKey'+groupsDelete+ :: Text -- ^ 'gdGroupKey'+ -> GroupsDelete+groupsDelete pGdGroupKey_ =+ GroupsDelete+ { _gdGroupKey = pGdGroupKey_+ }++-- | Email or immutable Id of the group+gdGroupKey :: Lens' GroupsDelete Text+gdGroupKey+ = lens _gdGroupKey (\ s a -> s{_gdGroupKey = a})++instance GoogleRequest GroupsDelete where+ type Rs GroupsDelete = ()+ requestClient GroupsDelete{..}+ = go _gdGroupKey (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy GroupsDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Groups/Get.hs view
@@ -0,0 +1,83 @@+{-# 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.Directory.Groups.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve Group+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.groups.get@.+module Network.Google.Resource.Directory.Groups.Get+ (+ -- * REST Resource+ GroupsGetResource++ -- * Creating a Request+ , groupsGet+ , GroupsGet++ -- * Request Lenses+ , ggGroupKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.groups.get@ method which the+-- 'GroupsGet' request conforms to.+type GroupsGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Group++-- | Retrieve Group+--+-- /See:/ 'groupsGet' smart constructor.+newtype GroupsGet = GroupsGet+ { _ggGroupKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GroupsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ggGroupKey'+groupsGet+ :: Text -- ^ 'ggGroupKey'+ -> GroupsGet+groupsGet pGgGroupKey_ =+ GroupsGet+ { _ggGroupKey = pGgGroupKey_+ }++-- | Email or immutable Id of the group+ggGroupKey :: Lens' GroupsGet Text+ggGroupKey+ = lens _ggGroupKey (\ s a -> s{_ggGroupKey = a})++instance GoogleRequest GroupsGet where+ type Rs GroupsGet = Group+ requestClient GroupsGet{..}+ = go _ggGroupKey (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy GroupsGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Groups/Insert.hs view
@@ -0,0 +1,83 @@+{-# 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.Directory.Groups.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create Group+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.groups.insert@.+module Network.Google.Resource.Directory.Groups.Insert+ (+ -- * REST Resource+ GroupsInsertResource++ -- * Creating a Request+ , groupsInsert+ , GroupsInsert++ -- * Request Lenses+ , giPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.groups.insert@ method which the+-- 'GroupsInsert' request conforms to.+type GroupsInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Group :> Post '[JSON] Group++-- | Create Group+--+-- /See:/ 'groupsInsert' smart constructor.+newtype GroupsInsert = GroupsInsert+ { _giPayload :: Group+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GroupsInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'giPayload'+groupsInsert+ :: Group -- ^ 'giPayload'+ -> GroupsInsert+groupsInsert pGiPayload_ =+ GroupsInsert+ { _giPayload = pGiPayload_+ }++-- | Multipart request metadata.+giPayload :: Lens' GroupsInsert Group+giPayload+ = lens _giPayload (\ s a -> s{_giPayload = a})++instance GoogleRequest GroupsInsert where+ type Rs GroupsInsert = Group+ requestClient GroupsInsert{..}+ = go (Just AltJSON) _giPayload directoryService+ where go+ = buildClient (Proxy :: Proxy GroupsInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/Groups/List.hs view
@@ -0,0 +1,133 @@+{-# 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.Directory.Groups.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve all groups in a domain (paginated)+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.groups.list@.+module Network.Google.Resource.Directory.Groups.List+ (+ -- * REST Resource+ GroupsListResource++ -- * Creating a Request+ , groupsList+ , GroupsList++ -- * Request Lenses+ , glDomain+ , glCustomer+ , glPageToken+ , glUserKey+ , glMaxResults+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.groups.list@ method which the+-- 'GroupsList' request conforms to.+type GroupsListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ QueryParam "domain" Text :>+ QueryParam "customer" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "userKey" Text :>+ QueryParam "maxResults" (Textual Int32) :>+ QueryParam "alt" AltJSON :> Get '[JSON] Groups++-- | Retrieve all groups in a domain (paginated)+--+-- /See:/ 'groupsList' smart constructor.+data GroupsList = GroupsList+ { _glDomain :: !(Maybe Text)+ , _glCustomer :: !(Maybe Text)+ , _glPageToken :: !(Maybe Text)+ , _glUserKey :: !(Maybe Text)+ , _glMaxResults :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GroupsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'glDomain'+--+-- * 'glCustomer'+--+-- * 'glPageToken'+--+-- * 'glUserKey'+--+-- * 'glMaxResults'+groupsList+ :: GroupsList+groupsList =+ GroupsList+ { _glDomain = Nothing+ , _glCustomer = Nothing+ , _glPageToken = Nothing+ , _glUserKey = Nothing+ , _glMaxResults = Nothing+ }++-- | Name of the domain. Fill this field to get groups from only this domain.+-- To return all groups in a multi-domain fill customer field instead.+glDomain :: Lens' GroupsList (Maybe Text)+glDomain = lens _glDomain (\ s a -> s{_glDomain = a})++-- | Immutable id of the Google Apps account. In case of multi-domain, to+-- fetch all groups for a customer, fill this field instead of domain.+glCustomer :: Lens' GroupsList (Maybe Text)+glCustomer+ = lens _glCustomer (\ s a -> s{_glCustomer = a})++-- | Token to specify next page in the list+glPageToken :: Lens' GroupsList (Maybe Text)+glPageToken+ = lens _glPageToken (\ s a -> s{_glPageToken = a})++-- | Email or immutable Id of the user if only those groups are to be listed,+-- the given user is a member of. If Id, it should match with id of user+-- object+glUserKey :: Lens' GroupsList (Maybe Text)+glUserKey+ = lens _glUserKey (\ s a -> s{_glUserKey = a})++-- | Maximum number of results to return. Default is 200+glMaxResults :: Lens' GroupsList (Maybe Int32)+glMaxResults+ = lens _glMaxResults (\ s a -> s{_glMaxResults = a})+ . mapping _Coerce++instance GoogleRequest GroupsList where+ type Rs GroupsList = Groups+ requestClient GroupsList{..}+ = go _glDomain _glCustomer _glPageToken _glUserKey+ _glMaxResults+ (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy GroupsListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Groups/Patch.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Groups.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update Group. This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.groups.patch@.+module Network.Google.Resource.Directory.Groups.Patch+ (+ -- * REST Resource+ GroupsPatchResource++ -- * Creating a Request+ , groupsPatch+ , GroupsPatch++ -- * Request Lenses+ , gpGroupKey+ , gpPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.groups.patch@ method which the+-- 'GroupsPatch' request conforms to.+type GroupsPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Group :> Patch '[JSON] Group++-- | Update Group. This method supports patch semantics.+--+-- /See:/ 'groupsPatch' smart constructor.+data GroupsPatch = GroupsPatch+ { _gpGroupKey :: !Text+ , _gpPayload :: !Group+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GroupsPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gpGroupKey'+--+-- * 'gpPayload'+groupsPatch+ :: Text -- ^ 'gpGroupKey'+ -> Group -- ^ 'gpPayload'+ -> GroupsPatch+groupsPatch pGpGroupKey_ pGpPayload_ =+ GroupsPatch+ { _gpGroupKey = pGpGroupKey_+ , _gpPayload = pGpPayload_+ }++-- | Email or immutable Id of the group. If Id, it should match with id of+-- group object+gpGroupKey :: Lens' GroupsPatch Text+gpGroupKey+ = lens _gpGroupKey (\ s a -> s{_gpGroupKey = a})++-- | Multipart request metadata.+gpPayload :: Lens' GroupsPatch Group+gpPayload+ = lens _gpPayload (\ s a -> s{_gpPayload = a})++instance GoogleRequest GroupsPatch where+ type Rs GroupsPatch = Group+ requestClient GroupsPatch{..}+ = go _gpGroupKey (Just AltJSON) _gpPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy GroupsPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/Groups/Update.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Groups.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update Group+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.groups.update@.+module Network.Google.Resource.Directory.Groups.Update+ (+ -- * REST Resource+ GroupsUpdateResource++ -- * Creating a Request+ , groupsUpdate+ , GroupsUpdate++ -- * Request Lenses+ , guGroupKey+ , guPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.groups.update@ method which the+-- 'GroupsUpdate' request conforms to.+type GroupsUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Group :> Put '[JSON] Group++-- | Update Group+--+-- /See:/ 'groupsUpdate' smart constructor.+data GroupsUpdate = GroupsUpdate+ { _guGroupKey :: !Text+ , _guPayload :: !Group+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GroupsUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'guGroupKey'+--+-- * 'guPayload'+groupsUpdate+ :: Text -- ^ 'guGroupKey'+ -> Group -- ^ 'guPayload'+ -> GroupsUpdate+groupsUpdate pGuGroupKey_ pGuPayload_ =+ GroupsUpdate+ { _guGroupKey = pGuGroupKey_+ , _guPayload = pGuPayload_+ }++-- | Email or immutable Id of the group. If Id, it should match with id of+-- group object+guGroupKey :: Lens' GroupsUpdate Text+guGroupKey+ = lens _guGroupKey (\ s a -> s{_guGroupKey = a})++-- | Multipart request metadata.+guPayload :: Lens' GroupsUpdate Group+guPayload+ = lens _guPayload (\ s a -> s{_guPayload = a})++instance GoogleRequest GroupsUpdate where+ type Rs GroupsUpdate = Group+ requestClient GroupsUpdate{..}+ = go _guGroupKey (Just AltJSON) _guPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy GroupsUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/Members/Delete.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Members.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Remove membership.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.members.delete@.+module Network.Google.Resource.Directory.Members.Delete+ (+ -- * REST Resource+ MembersDeleteResource++ -- * Creating a Request+ , membersDelete+ , MembersDelete++ -- * Request Lenses+ , mdMemberKey+ , mdGroupKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.members.delete@ method which the+-- 'MembersDelete' request conforms to.+type MembersDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ "members" :>+ Capture "memberKey" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Remove membership.+--+-- /See:/ 'membersDelete' smart constructor.+data MembersDelete = MembersDelete+ { _mdMemberKey :: !Text+ , _mdGroupKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MembersDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdMemberKey'+--+-- * 'mdGroupKey'+membersDelete+ :: Text -- ^ 'mdMemberKey'+ -> Text -- ^ 'mdGroupKey'+ -> MembersDelete+membersDelete pMdMemberKey_ pMdGroupKey_ =+ MembersDelete+ { _mdMemberKey = pMdMemberKey_+ , _mdGroupKey = pMdGroupKey_+ }++-- | Email or immutable Id of the member+mdMemberKey :: Lens' MembersDelete Text+mdMemberKey+ = lens _mdMemberKey (\ s a -> s{_mdMemberKey = a})++-- | Email or immutable Id of the group+mdGroupKey :: Lens' MembersDelete Text+mdGroupKey+ = lens _mdGroupKey (\ s a -> s{_mdGroupKey = a})++instance GoogleRequest MembersDelete where+ type Rs MembersDelete = ()+ requestClient MembersDelete{..}+ = go _mdGroupKey _mdMemberKey (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy MembersDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Members/Get.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Members.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve Group Member+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.members.get@.+module Network.Google.Resource.Directory.Members.Get+ (+ -- * REST Resource+ MembersGetResource++ -- * Creating a Request+ , membersGet+ , MembersGet++ -- * Request Lenses+ , mgMemberKey+ , mgGroupKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.members.get@ method which the+-- 'MembersGet' request conforms to.+type MembersGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ "members" :>+ Capture "memberKey" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Member++-- | Retrieve Group Member+--+-- /See:/ 'membersGet' smart constructor.+data MembersGet = MembersGet+ { _mgMemberKey :: !Text+ , _mgGroupKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MembersGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mgMemberKey'+--+-- * 'mgGroupKey'+membersGet+ :: Text -- ^ 'mgMemberKey'+ -> Text -- ^ 'mgGroupKey'+ -> MembersGet+membersGet pMgMemberKey_ pMgGroupKey_ =+ MembersGet+ { _mgMemberKey = pMgMemberKey_+ , _mgGroupKey = pMgGroupKey_+ }++-- | Email or immutable Id of the member+mgMemberKey :: Lens' MembersGet Text+mgMemberKey+ = lens _mgMemberKey (\ s a -> s{_mgMemberKey = a})++-- | Email or immutable Id of the group+mgGroupKey :: Lens' MembersGet Text+mgGroupKey+ = lens _mgGroupKey (\ s a -> s{_mgGroupKey = a})++instance GoogleRequest MembersGet where+ type Rs MembersGet = Member+ requestClient MembersGet{..}+ = go _mgGroupKey _mgMemberKey (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy MembersGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Members/Insert.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Members.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Add user to the specified group.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.members.insert@.+module Network.Google.Resource.Directory.Members.Insert+ (+ -- * REST Resource+ MembersInsertResource++ -- * Creating a Request+ , membersInsert+ , MembersInsert++ -- * Request Lenses+ , miGroupKey+ , miPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.members.insert@ method which the+-- 'MembersInsert' request conforms to.+type MembersInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ "members" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Member :> Post '[JSON] Member++-- | Add user to the specified group.+--+-- /See:/ 'membersInsert' smart constructor.+data MembersInsert = MembersInsert+ { _miGroupKey :: !Text+ , _miPayload :: !Member+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MembersInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'miGroupKey'+--+-- * 'miPayload'+membersInsert+ :: Text -- ^ 'miGroupKey'+ -> Member -- ^ 'miPayload'+ -> MembersInsert+membersInsert pMiGroupKey_ pMiPayload_ =+ MembersInsert+ { _miGroupKey = pMiGroupKey_+ , _miPayload = pMiPayload_+ }++-- | Email or immutable Id of the group+miGroupKey :: Lens' MembersInsert Text+miGroupKey+ = lens _miGroupKey (\ s a -> s{_miGroupKey = a})++-- | Multipart request metadata.+miPayload :: Lens' MembersInsert Member+miPayload+ = lens _miPayload (\ s a -> s{_miPayload = a})++instance GoogleRequest MembersInsert where+ type Rs MembersInsert = Member+ requestClient MembersInsert{..}+ = go _miGroupKey (Just AltJSON) _miPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy MembersInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/Members/List.hs view
@@ -0,0 +1,119 @@+{-# 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.Directory.Members.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve all members in a group (paginated)+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.members.list@.+module Network.Google.Resource.Directory.Members.List+ (+ -- * REST Resource+ MembersListResource++ -- * Creating a Request+ , membersList+ , MembersList++ -- * Request Lenses+ , mlRoles+ , mlGroupKey+ , mlPageToken+ , mlMaxResults+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.members.list@ method which the+-- 'MembersList' request conforms to.+type MembersListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ "members" :>+ QueryParam "roles" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "maxResults" (Textual Int32) :>+ QueryParam "alt" AltJSON :> Get '[JSON] Members++-- | Retrieve all members in a group (paginated)+--+-- /See:/ 'membersList' smart constructor.+data MembersList = MembersList+ { _mlRoles :: !(Maybe Text)+ , _mlGroupKey :: !Text+ , _mlPageToken :: !(Maybe Text)+ , _mlMaxResults :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MembersList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mlRoles'+--+-- * 'mlGroupKey'+--+-- * 'mlPageToken'+--+-- * 'mlMaxResults'+membersList+ :: Text -- ^ 'mlGroupKey'+ -> MembersList+membersList pMlGroupKey_ =+ MembersList+ { _mlRoles = Nothing+ , _mlGroupKey = pMlGroupKey_+ , _mlPageToken = Nothing+ , _mlMaxResults = Nothing+ }++-- | Comma separated role values to filter list results on.+mlRoles :: Lens' MembersList (Maybe Text)+mlRoles = lens _mlRoles (\ s a -> s{_mlRoles = a})++-- | Email or immutable Id of the group+mlGroupKey :: Lens' MembersList Text+mlGroupKey+ = lens _mlGroupKey (\ s a -> s{_mlGroupKey = a})++-- | Token to specify next page in the list+mlPageToken :: Lens' MembersList (Maybe Text)+mlPageToken+ = lens _mlPageToken (\ s a -> s{_mlPageToken = a})++-- | Maximum number of results to return. Default is 200+mlMaxResults :: Lens' MembersList (Maybe Int32)+mlMaxResults+ = lens _mlMaxResults (\ s a -> s{_mlMaxResults = a})+ . mapping _Coerce++instance GoogleRequest MembersList where+ type Rs MembersList = Members+ requestClient MembersList{..}+ = go _mlGroupKey _mlRoles _mlPageToken _mlMaxResults+ (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy MembersListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Members/Patch.hs view
@@ -0,0 +1,114 @@+{-# 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.Directory.Members.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update membership of a user in the specified group. This method supports+-- patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.members.patch@.+module Network.Google.Resource.Directory.Members.Patch+ (+ -- * REST Resource+ MembersPatchResource++ -- * Creating a Request+ , membersPatch+ , MembersPatch++ -- * Request Lenses+ , mpMemberKey+ , mpGroupKey+ , mpPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.members.patch@ method which the+-- 'MembersPatch' request conforms to.+type MembersPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ "members" :>+ Capture "memberKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Member :> Patch '[JSON] Member++-- | Update membership of a user in the specified group. This method supports+-- patch semantics.+--+-- /See:/ 'membersPatch' smart constructor.+data MembersPatch = MembersPatch+ { _mpMemberKey :: !Text+ , _mpGroupKey :: !Text+ , _mpPayload :: !Member+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MembersPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mpMemberKey'+--+-- * 'mpGroupKey'+--+-- * 'mpPayload'+membersPatch+ :: Text -- ^ 'mpMemberKey'+ -> Text -- ^ 'mpGroupKey'+ -> Member -- ^ 'mpPayload'+ -> MembersPatch+membersPatch pMpMemberKey_ pMpGroupKey_ pMpPayload_ =+ MembersPatch+ { _mpMemberKey = pMpMemberKey_+ , _mpGroupKey = pMpGroupKey_+ , _mpPayload = pMpPayload_+ }++-- | Email or immutable Id of the user. If Id, it should match with id of+-- member object+mpMemberKey :: Lens' MembersPatch Text+mpMemberKey+ = lens _mpMemberKey (\ s a -> s{_mpMemberKey = a})++-- | Email or immutable Id of the group. If Id, it should match with id of+-- group object+mpGroupKey :: Lens' MembersPatch Text+mpGroupKey+ = lens _mpGroupKey (\ s a -> s{_mpGroupKey = a})++-- | Multipart request metadata.+mpPayload :: Lens' MembersPatch Member+mpPayload+ = lens _mpPayload (\ s a -> s{_mpPayload = a})++instance GoogleRequest MembersPatch where+ type Rs MembersPatch = Member+ requestClient MembersPatch{..}+ = go _mpGroupKey _mpMemberKey (Just AltJSON)+ _mpPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy MembersPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/Members/Update.hs view
@@ -0,0 +1,112 @@+{-# 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.Directory.Members.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update membership of a user in the specified group.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.members.update@.+module Network.Google.Resource.Directory.Members.Update+ (+ -- * REST Resource+ MembersUpdateResource++ -- * Creating a Request+ , membersUpdate+ , MembersUpdate++ -- * Request Lenses+ , muMemberKey+ , muGroupKey+ , muPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.members.update@ method which the+-- 'MembersUpdate' request conforms to.+type MembersUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "groups" :>+ Capture "groupKey" Text :>+ "members" :>+ Capture "memberKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Member :> Put '[JSON] Member++-- | Update membership of a user in the specified group.+--+-- /See:/ 'membersUpdate' smart constructor.+data MembersUpdate = MembersUpdate+ { _muMemberKey :: !Text+ , _muGroupKey :: !Text+ , _muPayload :: !Member+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MembersUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'muMemberKey'+--+-- * 'muGroupKey'+--+-- * 'muPayload'+membersUpdate+ :: Text -- ^ 'muMemberKey'+ -> Text -- ^ 'muGroupKey'+ -> Member -- ^ 'muPayload'+ -> MembersUpdate+membersUpdate pMuMemberKey_ pMuGroupKey_ pMuPayload_ =+ MembersUpdate+ { _muMemberKey = pMuMemberKey_+ , _muGroupKey = pMuGroupKey_+ , _muPayload = pMuPayload_+ }++-- | Email or immutable Id of the user. If Id, it should match with id of+-- member object+muMemberKey :: Lens' MembersUpdate Text+muMemberKey+ = lens _muMemberKey (\ s a -> s{_muMemberKey = a})++-- | Email or immutable Id of the group. If Id, it should match with id of+-- group object+muGroupKey :: Lens' MembersUpdate Text+muGroupKey+ = lens _muGroupKey (\ s a -> s{_muGroupKey = a})++-- | Multipart request metadata.+muPayload :: Lens' MembersUpdate Member+muPayload+ = lens _muPayload (\ s a -> s{_muPayload = a})++instance GoogleRequest MembersUpdate where+ type Rs MembersUpdate = Member+ requestClient MembersUpdate{..}+ = go _muGroupKey _muMemberKey (Just AltJSON)+ _muPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy MembersUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/MobileDevices/Action.hs view
@@ -0,0 +1,115 @@+{-# 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.Directory.MobileDevices.Action+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Take action on Mobile Device+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.mobiledevices.action@.+module Network.Google.Resource.Directory.MobileDevices.Action+ (+ -- * REST Resource+ MobileDevicesActionResource++ -- * Creating a Request+ , mobileDevicesAction+ , MobileDevicesAction++ -- * Request Lenses+ , mdaResourceId+ , mdaPayload+ , mdaCustomerId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.mobiledevices.action@ method which the+-- 'MobileDevicesAction' request conforms to.+type MobileDevicesActionResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "devices" :>+ "mobile" :>+ Capture "resourceId" Text :>+ "action" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] MobileDeviceAction :> Post '[JSON] ()++-- | Take action on Mobile Device+--+-- /See:/ 'mobileDevicesAction' smart constructor.+data MobileDevicesAction = MobileDevicesAction+ { _mdaResourceId :: !Text+ , _mdaPayload :: !MobileDeviceAction+ , _mdaCustomerId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MobileDevicesAction' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdaResourceId'+--+-- * 'mdaPayload'+--+-- * 'mdaCustomerId'+mobileDevicesAction+ :: Text -- ^ 'mdaResourceId'+ -> MobileDeviceAction -- ^ 'mdaPayload'+ -> Text -- ^ 'mdaCustomerId'+ -> MobileDevicesAction+mobileDevicesAction pMdaResourceId_ pMdaPayload_ pMdaCustomerId_ =+ MobileDevicesAction+ { _mdaResourceId = pMdaResourceId_+ , _mdaPayload = pMdaPayload_+ , _mdaCustomerId = pMdaCustomerId_+ }++-- | Immutable id of Mobile Device+mdaResourceId :: Lens' MobileDevicesAction Text+mdaResourceId+ = lens _mdaResourceId+ (\ s a -> s{_mdaResourceId = a})++-- | Multipart request metadata.+mdaPayload :: Lens' MobileDevicesAction MobileDeviceAction+mdaPayload+ = lens _mdaPayload (\ s a -> s{_mdaPayload = a})++-- | Immutable id of the Google Apps account+mdaCustomerId :: Lens' MobileDevicesAction Text+mdaCustomerId+ = lens _mdaCustomerId+ (\ s a -> s{_mdaCustomerId = a})++instance GoogleRequest MobileDevicesAction where+ type Rs MobileDevicesAction = ()+ requestClient MobileDevicesAction{..}+ = go _mdaCustomerId _mdaResourceId (Just AltJSON)+ _mdaPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy MobileDevicesActionResource)+ mempty
+ gen/Network/Google/Resource/Directory/MobileDevices/Delete.hs view
@@ -0,0 +1,101 @@+{-# 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.Directory.MobileDevices.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete Mobile Device+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.mobiledevices.delete@.+module Network.Google.Resource.Directory.MobileDevices.Delete+ (+ -- * REST Resource+ MobileDevicesDeleteResource++ -- * Creating a Request+ , mobileDevicesDelete+ , MobileDevicesDelete++ -- * Request Lenses+ , mddResourceId+ , mddCustomerId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.mobiledevices.delete@ method which the+-- 'MobileDevicesDelete' request conforms to.+type MobileDevicesDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "devices" :>+ "mobile" :>+ Capture "resourceId" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Delete Mobile Device+--+-- /See:/ 'mobileDevicesDelete' smart constructor.+data MobileDevicesDelete = MobileDevicesDelete+ { _mddResourceId :: !Text+ , _mddCustomerId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MobileDevicesDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mddResourceId'+--+-- * 'mddCustomerId'+mobileDevicesDelete+ :: Text -- ^ 'mddResourceId'+ -> Text -- ^ 'mddCustomerId'+ -> MobileDevicesDelete+mobileDevicesDelete pMddResourceId_ pMddCustomerId_ =+ MobileDevicesDelete+ { _mddResourceId = pMddResourceId_+ , _mddCustomerId = pMddCustomerId_+ }++-- | Immutable id of Mobile Device+mddResourceId :: Lens' MobileDevicesDelete Text+mddResourceId+ = lens _mddResourceId+ (\ s a -> s{_mddResourceId = a})++-- | Immutable id of the Google Apps account+mddCustomerId :: Lens' MobileDevicesDelete Text+mddCustomerId+ = lens _mddCustomerId+ (\ s a -> s{_mddCustomerId = a})++instance GoogleRequest MobileDevicesDelete where+ type Rs MobileDevicesDelete = ()+ requestClient MobileDevicesDelete{..}+ = go _mddCustomerId _mddResourceId (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy MobileDevicesDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/MobileDevices/Get.hs view
@@ -0,0 +1,114 @@+{-# 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.Directory.MobileDevices.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve Mobile Device+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.mobiledevices.get@.+module Network.Google.Resource.Directory.MobileDevices.Get+ (+ -- * REST Resource+ MobileDevicesGetResource++ -- * Creating a Request+ , mobileDevicesGet+ , MobileDevicesGet++ -- * Request Lenses+ , mdgResourceId+ , mdgCustomerId+ , mdgProjection+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.mobiledevices.get@ method which the+-- 'MobileDevicesGet' request conforms to.+type MobileDevicesGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "devices" :>+ "mobile" :>+ Capture "resourceId" Text :>+ QueryParam "projection" MobileDevicesGetProjection :>+ QueryParam "alt" AltJSON :> Get '[JSON] MobileDevice++-- | Retrieve Mobile Device+--+-- /See:/ 'mobileDevicesGet' smart constructor.+data MobileDevicesGet = MobileDevicesGet+ { _mdgResourceId :: !Text+ , _mdgCustomerId :: !Text+ , _mdgProjection :: !(Maybe MobileDevicesGetProjection)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MobileDevicesGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdgResourceId'+--+-- * 'mdgCustomerId'+--+-- * 'mdgProjection'+mobileDevicesGet+ :: Text -- ^ 'mdgResourceId'+ -> Text -- ^ 'mdgCustomerId'+ -> MobileDevicesGet+mobileDevicesGet pMdgResourceId_ pMdgCustomerId_ =+ MobileDevicesGet+ { _mdgResourceId = pMdgResourceId_+ , _mdgCustomerId = pMdgCustomerId_+ , _mdgProjection = Nothing+ }++-- | Immutable id of Mobile Device+mdgResourceId :: Lens' MobileDevicesGet Text+mdgResourceId+ = lens _mdgResourceId+ (\ s a -> s{_mdgResourceId = a})++-- | Immutable id of the Google Apps account+mdgCustomerId :: Lens' MobileDevicesGet Text+mdgCustomerId+ = lens _mdgCustomerId+ (\ s a -> s{_mdgCustomerId = a})++-- | Restrict information returned to a set of selected fields.+mdgProjection :: Lens' MobileDevicesGet (Maybe MobileDevicesGetProjection)+mdgProjection+ = lens _mdgProjection+ (\ s a -> s{_mdgProjection = a})++instance GoogleRequest MobileDevicesGet where+ type Rs MobileDevicesGet = MobileDevice+ requestClient MobileDevicesGet{..}+ = go _mdgCustomerId _mdgResourceId _mdgProjection+ (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy MobileDevicesGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/MobileDevices/List.hs view
@@ -0,0 +1,165 @@+{-# 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.Directory.MobileDevices.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve all Mobile Devices of a customer (paginated)+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.mobiledevices.list@.+module Network.Google.Resource.Directory.MobileDevices.List+ (+ -- * REST Resource+ MobileDevicesListResource++ -- * Creating a Request+ , mobileDevicesList+ , MobileDevicesList++ -- * Request Lenses+ , mdlOrderBy+ , mdlCustomerId+ , mdlSortOrder+ , mdlQuery+ , mdlProjection+ , mdlPageToken+ , mdlMaxResults+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.mobiledevices.list@ method which the+-- 'MobileDevicesList' request conforms to.+type MobileDevicesListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "devices" :>+ "mobile" :>+ QueryParam "orderBy" MobileDevicesListOrderBy :>+ QueryParam "sortOrder" MobileDevicesListSortOrder :>+ QueryParam "query" Text :>+ QueryParam "projection" MobileDevicesListProjection+ :>+ QueryParam "pageToken" Text :>+ QueryParam "maxResults" (Textual Int32) :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] MobileDevices++-- | Retrieve all Mobile Devices of a customer (paginated)+--+-- /See:/ 'mobileDevicesList' smart constructor.+data MobileDevicesList = MobileDevicesList+ { _mdlOrderBy :: !(Maybe MobileDevicesListOrderBy)+ , _mdlCustomerId :: !Text+ , _mdlSortOrder :: !(Maybe MobileDevicesListSortOrder)+ , _mdlQuery :: !(Maybe Text)+ , _mdlProjection :: !(Maybe MobileDevicesListProjection)+ , _mdlPageToken :: !(Maybe Text)+ , _mdlMaxResults :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MobileDevicesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdlOrderBy'+--+-- * 'mdlCustomerId'+--+-- * 'mdlSortOrder'+--+-- * 'mdlQuery'+--+-- * 'mdlProjection'+--+-- * 'mdlPageToken'+--+-- * 'mdlMaxResults'+mobileDevicesList+ :: Text -- ^ 'mdlCustomerId'+ -> MobileDevicesList+mobileDevicesList pMdlCustomerId_ =+ MobileDevicesList+ { _mdlOrderBy = Nothing+ , _mdlCustomerId = pMdlCustomerId_+ , _mdlSortOrder = Nothing+ , _mdlQuery = Nothing+ , _mdlProjection = Nothing+ , _mdlPageToken = Nothing+ , _mdlMaxResults = Nothing+ }++-- | Column to use for sorting results+mdlOrderBy :: Lens' MobileDevicesList (Maybe MobileDevicesListOrderBy)+mdlOrderBy+ = lens _mdlOrderBy (\ s a -> s{_mdlOrderBy = a})++-- | Immutable id of the Google Apps account+mdlCustomerId :: Lens' MobileDevicesList Text+mdlCustomerId+ = lens _mdlCustomerId+ (\ s a -> s{_mdlCustomerId = a})++-- | Whether to return results in ascending or descending order. Only of use+-- when orderBy is also used+mdlSortOrder :: Lens' MobileDevicesList (Maybe MobileDevicesListSortOrder)+mdlSortOrder+ = lens _mdlSortOrder (\ s a -> s{_mdlSortOrder = a})++-- | Search string in the format given at+-- http:\/\/support.google.com\/a\/bin\/answer.py?hl=en&answer=1408863#search+mdlQuery :: Lens' MobileDevicesList (Maybe Text)+mdlQuery = lens _mdlQuery (\ s a -> s{_mdlQuery = a})++-- | Restrict information returned to a set of selected fields.+mdlProjection :: Lens' MobileDevicesList (Maybe MobileDevicesListProjection)+mdlProjection+ = lens _mdlProjection+ (\ s a -> s{_mdlProjection = a})++-- | Token to specify next page in the list+mdlPageToken :: Lens' MobileDevicesList (Maybe Text)+mdlPageToken+ = lens _mdlPageToken (\ s a -> s{_mdlPageToken = a})++-- | Maximum number of results to return. Default is 100+mdlMaxResults :: Lens' MobileDevicesList (Maybe Int32)+mdlMaxResults+ = lens _mdlMaxResults+ (\ s a -> s{_mdlMaxResults = a})+ . mapping _Coerce++instance GoogleRequest MobileDevicesList where+ type Rs MobileDevicesList = MobileDevices+ requestClient MobileDevicesList{..}+ = go _mdlCustomerId _mdlOrderBy _mdlSortOrder+ _mdlQuery+ _mdlProjection+ _mdlPageToken+ _mdlMaxResults+ (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy MobileDevicesListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Notifications/Delete.hs view
@@ -0,0 +1,100 @@+{-# 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.Directory.Notifications.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a notification+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.notifications.delete@.+module Network.Google.Resource.Directory.Notifications.Delete+ (+ -- * REST Resource+ NotificationsDeleteResource++ -- * Creating a Request+ , notificationsDelete+ , NotificationsDelete++ -- * Request Lenses+ , ndCustomer+ , ndNotificationId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.notifications.delete@ method which the+-- 'NotificationsDelete' request conforms to.+type NotificationsDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "notifications" :>+ Capture "notificationId" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Deletes a notification+--+-- /See:/ 'notificationsDelete' smart constructor.+data NotificationsDelete = NotificationsDelete+ { _ndCustomer :: !Text+ , _ndNotificationId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'NotificationsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ndCustomer'+--+-- * 'ndNotificationId'+notificationsDelete+ :: Text -- ^ 'ndCustomer'+ -> Text -- ^ 'ndNotificationId'+ -> NotificationsDelete+notificationsDelete pNdCustomer_ pNdNotificationId_ =+ NotificationsDelete+ { _ndCustomer = pNdCustomer_+ , _ndNotificationId = pNdNotificationId_+ }++-- | The unique ID for the customer\'s Google account. The customerId is also+-- returned as part of the Users resource.+ndCustomer :: Lens' NotificationsDelete Text+ndCustomer+ = lens _ndCustomer (\ s a -> s{_ndCustomer = a})++-- | The unique ID of the notification.+ndNotificationId :: Lens' NotificationsDelete Text+ndNotificationId+ = lens _ndNotificationId+ (\ s a -> s{_ndNotificationId = a})++instance GoogleRequest NotificationsDelete where+ type Rs NotificationsDelete = ()+ requestClient NotificationsDelete{..}+ = go _ndCustomer _ndNotificationId (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy NotificationsDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Notifications/Get.hs view
@@ -0,0 +1,100 @@+{-# 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.Directory.Notifications.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a notification.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.notifications.get@.+module Network.Google.Resource.Directory.Notifications.Get+ (+ -- * REST Resource+ NotificationsGetResource++ -- * Creating a Request+ , notificationsGet+ , NotificationsGet++ -- * Request Lenses+ , ngCustomer+ , ngNotificationId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.notifications.get@ method which the+-- 'NotificationsGet' request conforms to.+type NotificationsGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "notifications" :>+ Capture "notificationId" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Notification++-- | Retrieves a notification.+--+-- /See:/ 'notificationsGet' smart constructor.+data NotificationsGet = NotificationsGet+ { _ngCustomer :: !Text+ , _ngNotificationId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'NotificationsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ngCustomer'+--+-- * 'ngNotificationId'+notificationsGet+ :: Text -- ^ 'ngCustomer'+ -> Text -- ^ 'ngNotificationId'+ -> NotificationsGet+notificationsGet pNgCustomer_ pNgNotificationId_ =+ NotificationsGet+ { _ngCustomer = pNgCustomer_+ , _ngNotificationId = pNgNotificationId_+ }++-- | The unique ID for the customer\'s Google account. The customerId is also+-- returned as part of the Users resource.+ngCustomer :: Lens' NotificationsGet Text+ngCustomer+ = lens _ngCustomer (\ s a -> s{_ngCustomer = a})++-- | The unique ID of the notification.+ngNotificationId :: Lens' NotificationsGet Text+ngNotificationId+ = lens _ngNotificationId+ (\ s a -> s{_ngNotificationId = a})++instance GoogleRequest NotificationsGet where+ type Rs NotificationsGet = Notification+ requestClient NotificationsGet{..}+ = go _ngCustomer _ngNotificationId (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy NotificationsGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Notifications/List.hs view
@@ -0,0 +1,123 @@+{-# 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.Directory.Notifications.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a list of notifications.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.notifications.list@.+module Network.Google.Resource.Directory.Notifications.List+ (+ -- * REST Resource+ NotificationsListResource++ -- * Creating a Request+ , notificationsList+ , NotificationsList++ -- * Request Lenses+ , nlCustomer+ , nlLanguage+ , nlPageToken+ , nlMaxResults+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.notifications.list@ method which the+-- 'NotificationsList' request conforms to.+type NotificationsListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "notifications" :>+ QueryParam "language" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "maxResults" (Textual Word32) :>+ QueryParam "alt" AltJSON :> Get '[JSON] Notifications++-- | Retrieves a list of notifications.+--+-- /See:/ 'notificationsList' smart constructor.+data NotificationsList = NotificationsList+ { _nlCustomer :: !Text+ , _nlLanguage :: !(Maybe Text)+ , _nlPageToken :: !(Maybe Text)+ , _nlMaxResults :: !(Maybe (Textual Word32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'NotificationsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'nlCustomer'+--+-- * 'nlLanguage'+--+-- * 'nlPageToken'+--+-- * 'nlMaxResults'+notificationsList+ :: Text -- ^ 'nlCustomer'+ -> NotificationsList+notificationsList pNlCustomer_ =+ NotificationsList+ { _nlCustomer = pNlCustomer_+ , _nlLanguage = Nothing+ , _nlPageToken = Nothing+ , _nlMaxResults = Nothing+ }++-- | The unique ID for the customer\'s Google account.+nlCustomer :: Lens' NotificationsList Text+nlCustomer+ = lens _nlCustomer (\ s a -> s{_nlCustomer = a})++-- | The ISO 639-1 code of the language notifications are returned in. The+-- default is English (en).+nlLanguage :: Lens' NotificationsList (Maybe Text)+nlLanguage+ = lens _nlLanguage (\ s a -> s{_nlLanguage = a})++-- | The token to specify the page of results to retrieve.+nlPageToken :: Lens' NotificationsList (Maybe Text)+nlPageToken+ = lens _nlPageToken (\ s a -> s{_nlPageToken = a})++-- | Maximum number of notifications to return per page. The default is 100.+nlMaxResults :: Lens' NotificationsList (Maybe Word32)+nlMaxResults+ = lens _nlMaxResults (\ s a -> s{_nlMaxResults = a})+ . mapping _Coerce++instance GoogleRequest NotificationsList where+ type Rs NotificationsList = Notifications+ requestClient NotificationsList{..}+ = go _nlCustomer _nlLanguage _nlPageToken+ _nlMaxResults+ (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy NotificationsListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Notifications/Patch.hs view
@@ -0,0 +1,113 @@+{-# 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.Directory.Notifications.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a notification. This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.notifications.patch@.+module Network.Google.Resource.Directory.Notifications.Patch+ (+ -- * REST Resource+ NotificationsPatchResource++ -- * Creating a Request+ , notificationsPatch+ , NotificationsPatch++ -- * Request Lenses+ , npPayload+ , npCustomer+ , npNotificationId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.notifications.patch@ method which the+-- 'NotificationsPatch' request conforms to.+type NotificationsPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "notifications" :>+ Capture "notificationId" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Notification :>+ Patch '[JSON] Notification++-- | Updates a notification. This method supports patch semantics.+--+-- /See:/ 'notificationsPatch' smart constructor.+data NotificationsPatch = NotificationsPatch+ { _npPayload :: !Notification+ , _npCustomer :: !Text+ , _npNotificationId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'NotificationsPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'npPayload'+--+-- * 'npCustomer'+--+-- * 'npNotificationId'+notificationsPatch+ :: Notification -- ^ 'npPayload'+ -> Text -- ^ 'npCustomer'+ -> Text -- ^ 'npNotificationId'+ -> NotificationsPatch+notificationsPatch pNpPayload_ pNpCustomer_ pNpNotificationId_ =+ NotificationsPatch+ { _npPayload = pNpPayload_+ , _npCustomer = pNpCustomer_+ , _npNotificationId = pNpNotificationId_+ }++-- | Multipart request metadata.+npPayload :: Lens' NotificationsPatch Notification+npPayload+ = lens _npPayload (\ s a -> s{_npPayload = a})++-- | The unique ID for the customer\'s Google account.+npCustomer :: Lens' NotificationsPatch Text+npCustomer+ = lens _npCustomer (\ s a -> s{_npCustomer = a})++-- | The unique ID of the notification.+npNotificationId :: Lens' NotificationsPatch Text+npNotificationId+ = lens _npNotificationId+ (\ s a -> s{_npNotificationId = a})++instance GoogleRequest NotificationsPatch where+ type Rs NotificationsPatch = Notification+ requestClient NotificationsPatch{..}+ = go _npCustomer _npNotificationId (Just AltJSON)+ _npPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy NotificationsPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/Notifications/Update.hs view
@@ -0,0 +1,113 @@+{-# 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.Directory.Notifications.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a notification.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.notifications.update@.+module Network.Google.Resource.Directory.Notifications.Update+ (+ -- * REST Resource+ NotificationsUpdateResource++ -- * Creating a Request+ , notificationsUpdate+ , NotificationsUpdate++ -- * Request Lenses+ , nuPayload+ , nuCustomer+ , nuNotificationId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.notifications.update@ method which the+-- 'NotificationsUpdate' request conforms to.+type NotificationsUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "notifications" :>+ Capture "notificationId" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Notification :>+ Put '[JSON] Notification++-- | Updates a notification.+--+-- /See:/ 'notificationsUpdate' smart constructor.+data NotificationsUpdate = NotificationsUpdate+ { _nuPayload :: !Notification+ , _nuCustomer :: !Text+ , _nuNotificationId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'NotificationsUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'nuPayload'+--+-- * 'nuCustomer'+--+-- * 'nuNotificationId'+notificationsUpdate+ :: Notification -- ^ 'nuPayload'+ -> Text -- ^ 'nuCustomer'+ -> Text -- ^ 'nuNotificationId'+ -> NotificationsUpdate+notificationsUpdate pNuPayload_ pNuCustomer_ pNuNotificationId_ =+ NotificationsUpdate+ { _nuPayload = pNuPayload_+ , _nuCustomer = pNuCustomer_+ , _nuNotificationId = pNuNotificationId_+ }++-- | Multipart request metadata.+nuPayload :: Lens' NotificationsUpdate Notification+nuPayload+ = lens _nuPayload (\ s a -> s{_nuPayload = a})++-- | The unique ID for the customer\'s Google account.+nuCustomer :: Lens' NotificationsUpdate Text+nuCustomer+ = lens _nuCustomer (\ s a -> s{_nuCustomer = a})++-- | The unique ID of the notification.+nuNotificationId :: Lens' NotificationsUpdate Text+nuNotificationId+ = lens _nuNotificationId+ (\ s a -> s{_nuNotificationId = a})++instance GoogleRequest NotificationsUpdate where+ type Rs NotificationsUpdate = Notification+ requestClient NotificationsUpdate{..}+ = go _nuCustomer _nuNotificationId (Just AltJSON)+ _nuPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy NotificationsUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/OrgUnits/Delete.hs view
@@ -0,0 +1,100 @@+{-# 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.Directory.OrgUnits.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Remove Organization Unit+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.orgunits.delete@.+module Network.Google.Resource.Directory.OrgUnits.Delete+ (+ -- * REST Resource+ OrgUnitsDeleteResource++ -- * Creating a Request+ , orgUnitsDelete+ , OrgUnitsDelete++ -- * Request Lenses+ , oudOrgUnitPath+ , oudCustomerId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.orgunits.delete@ method which the+-- 'OrgUnitsDelete' request conforms to.+type OrgUnitsDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "orgunits" :>+ Captures "orgUnitPath" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Remove Organization Unit+--+-- /See:/ 'orgUnitsDelete' smart constructor.+data OrgUnitsDelete = OrgUnitsDelete+ { _oudOrgUnitPath :: ![Text]+ , _oudCustomerId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OrgUnitsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oudOrgUnitPath'+--+-- * 'oudCustomerId'+orgUnitsDelete+ :: [Text] -- ^ 'oudOrgUnitPath'+ -> Text -- ^ 'oudCustomerId'+ -> OrgUnitsDelete+orgUnitsDelete pOudOrgUnitPath_ pOudCustomerId_ =+ OrgUnitsDelete+ { _oudOrgUnitPath = _Coerce # pOudOrgUnitPath_+ , _oudCustomerId = pOudCustomerId_+ }++-- | Full path of the organization unit or its Id+oudOrgUnitPath :: Lens' OrgUnitsDelete [Text]+oudOrgUnitPath+ = lens _oudOrgUnitPath+ (\ s a -> s{_oudOrgUnitPath = a})+ . _Coerce++-- | Immutable id of the Google Apps account+oudCustomerId :: Lens' OrgUnitsDelete Text+oudCustomerId+ = lens _oudCustomerId+ (\ s a -> s{_oudCustomerId = a})++instance GoogleRequest OrgUnitsDelete where+ type Rs OrgUnitsDelete = ()+ requestClient OrgUnitsDelete{..}+ = go _oudCustomerId _oudOrgUnitPath (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy OrgUnitsDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/OrgUnits/Get.hs view
@@ -0,0 +1,100 @@+{-# 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.Directory.OrgUnits.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve Organization Unit+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.orgunits.get@.+module Network.Google.Resource.Directory.OrgUnits.Get+ (+ -- * REST Resource+ OrgUnitsGetResource++ -- * Creating a Request+ , orgUnitsGet+ , OrgUnitsGet++ -- * Request Lenses+ , ougOrgUnitPath+ , ougCustomerId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.orgunits.get@ method which the+-- 'OrgUnitsGet' request conforms to.+type OrgUnitsGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "orgunits" :>+ Captures "orgUnitPath" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] OrgUnit++-- | Retrieve Organization Unit+--+-- /See:/ 'orgUnitsGet' smart constructor.+data OrgUnitsGet = OrgUnitsGet+ { _ougOrgUnitPath :: ![Text]+ , _ougCustomerId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OrgUnitsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ougOrgUnitPath'+--+-- * 'ougCustomerId'+orgUnitsGet+ :: [Text] -- ^ 'ougOrgUnitPath'+ -> Text -- ^ 'ougCustomerId'+ -> OrgUnitsGet+orgUnitsGet pOugOrgUnitPath_ pOugCustomerId_ =+ OrgUnitsGet+ { _ougOrgUnitPath = _Coerce # pOugOrgUnitPath_+ , _ougCustomerId = pOugCustomerId_+ }++-- | Full path of the organization unit or its Id+ougOrgUnitPath :: Lens' OrgUnitsGet [Text]+ougOrgUnitPath+ = lens _ougOrgUnitPath+ (\ s a -> s{_ougOrgUnitPath = a})+ . _Coerce++-- | Immutable id of the Google Apps account+ougCustomerId :: Lens' OrgUnitsGet Text+ougCustomerId+ = lens _ougCustomerId+ (\ s a -> s{_ougCustomerId = a})++instance GoogleRequest OrgUnitsGet where+ type Rs OrgUnitsGet = OrgUnit+ requestClient OrgUnitsGet{..}+ = go _ougCustomerId _ougOrgUnitPath (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy OrgUnitsGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/OrgUnits/Insert.hs view
@@ -0,0 +1,98 @@+{-# 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.Directory.OrgUnits.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Add Organization Unit+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.orgunits.insert@.+module Network.Google.Resource.Directory.OrgUnits.Insert+ (+ -- * REST Resource+ OrgUnitsInsertResource++ -- * Creating a Request+ , orgUnitsInsert+ , OrgUnitsInsert++ -- * Request Lenses+ , ouiPayload+ , ouiCustomerId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.orgunits.insert@ method which the+-- 'OrgUnitsInsert' request conforms to.+type OrgUnitsInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "orgunits" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] OrgUnit :> Post '[JSON] OrgUnit++-- | Add Organization Unit+--+-- /See:/ 'orgUnitsInsert' smart constructor.+data OrgUnitsInsert = OrgUnitsInsert+ { _ouiPayload :: !OrgUnit+ , _ouiCustomerId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OrgUnitsInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ouiPayload'+--+-- * 'ouiCustomerId'+orgUnitsInsert+ :: OrgUnit -- ^ 'ouiPayload'+ -> Text -- ^ 'ouiCustomerId'+ -> OrgUnitsInsert+orgUnitsInsert pOuiPayload_ pOuiCustomerId_ =+ OrgUnitsInsert+ { _ouiPayload = pOuiPayload_+ , _ouiCustomerId = pOuiCustomerId_+ }++-- | Multipart request metadata.+ouiPayload :: Lens' OrgUnitsInsert OrgUnit+ouiPayload+ = lens _ouiPayload (\ s a -> s{_ouiPayload = a})++-- | Immutable id of the Google Apps account+ouiCustomerId :: Lens' OrgUnitsInsert Text+ouiCustomerId+ = lens _ouiCustomerId+ (\ s a -> s{_ouiCustomerId = a})++instance GoogleRequest OrgUnitsInsert where+ type Rs OrgUnitsInsert = OrgUnit+ requestClient OrgUnitsInsert{..}+ = go _ouiCustomerId (Just AltJSON) _ouiPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy OrgUnitsInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/OrgUnits/List.hs view
@@ -0,0 +1,109 @@+{-# 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.Directory.OrgUnits.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve all Organization Units+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.orgunits.list@.+module Network.Google.Resource.Directory.OrgUnits.List+ (+ -- * REST Resource+ OrgUnitsListResource++ -- * Creating a Request+ , orgUnitsList+ , OrgUnitsList++ -- * Request Lenses+ , oulOrgUnitPath+ , oulCustomerId+ , oulType+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.orgunits.list@ method which the+-- 'OrgUnitsList' request conforms to.+type OrgUnitsListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "orgunits" :>+ QueryParam "orgUnitPath" Text :>+ QueryParam "type" OrgUnitsListType :>+ QueryParam "alt" AltJSON :> Get '[JSON] OrgUnits++-- | Retrieve all Organization Units+--+-- /See:/ 'orgUnitsList' smart constructor.+data OrgUnitsList = OrgUnitsList+ { _oulOrgUnitPath :: !Text+ , _oulCustomerId :: !Text+ , _oulType :: !(Maybe OrgUnitsListType)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OrgUnitsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oulOrgUnitPath'+--+-- * 'oulCustomerId'+--+-- * 'oulType'+orgUnitsList+ :: Text -- ^ 'oulCustomerId'+ -> OrgUnitsList+orgUnitsList pOulCustomerId_ =+ OrgUnitsList+ { _oulOrgUnitPath = ""+ , _oulCustomerId = pOulCustomerId_+ , _oulType = Nothing+ }++-- | the URL-encoded organization unit\'s path or its Id+oulOrgUnitPath :: Lens' OrgUnitsList Text+oulOrgUnitPath+ = lens _oulOrgUnitPath+ (\ s a -> s{_oulOrgUnitPath = a})++-- | Immutable id of the Google Apps account+oulCustomerId :: Lens' OrgUnitsList Text+oulCustomerId+ = lens _oulCustomerId+ (\ s a -> s{_oulCustomerId = a})++-- | Whether to return all sub-organizations or just immediate children+oulType :: Lens' OrgUnitsList (Maybe OrgUnitsListType)+oulType = lens _oulType (\ s a -> s{_oulType = a})++instance GoogleRequest OrgUnitsList where+ type Rs OrgUnitsList = OrgUnits+ requestClient OrgUnitsList{..}+ = go _oulCustomerId (Just _oulOrgUnitPath) _oulType+ (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy OrgUnitsListResource)+ mempty
+ gen/Network/Google/Resource/Directory/OrgUnits/Patch.hs view
@@ -0,0 +1,113 @@+{-# 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.Directory.OrgUnits.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update Organization Unit. This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.orgunits.patch@.+module Network.Google.Resource.Directory.OrgUnits.Patch+ (+ -- * REST Resource+ OrgUnitsPatchResource++ -- * Creating a Request+ , orgUnitsPatch+ , OrgUnitsPatch++ -- * Request Lenses+ , oupPayload+ , oupOrgUnitPath+ , oupCustomerId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.orgunits.patch@ method which the+-- 'OrgUnitsPatch' request conforms to.+type OrgUnitsPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "orgunits" :>+ Captures "orgUnitPath" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] OrgUnit :> Patch '[JSON] OrgUnit++-- | Update Organization Unit. This method supports patch semantics.+--+-- /See:/ 'orgUnitsPatch' smart constructor.+data OrgUnitsPatch = OrgUnitsPatch+ { _oupPayload :: !OrgUnit+ , _oupOrgUnitPath :: ![Text]+ , _oupCustomerId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OrgUnitsPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oupPayload'+--+-- * 'oupOrgUnitPath'+--+-- * 'oupCustomerId'+orgUnitsPatch+ :: OrgUnit -- ^ 'oupPayload'+ -> [Text] -- ^ 'oupOrgUnitPath'+ -> Text -- ^ 'oupCustomerId'+ -> OrgUnitsPatch+orgUnitsPatch pOupPayload_ pOupOrgUnitPath_ pOupCustomerId_ =+ OrgUnitsPatch+ { _oupPayload = pOupPayload_+ , _oupOrgUnitPath = _Coerce # pOupOrgUnitPath_+ , _oupCustomerId = pOupCustomerId_+ }++-- | Multipart request metadata.+oupPayload :: Lens' OrgUnitsPatch OrgUnit+oupPayload+ = lens _oupPayload (\ s a -> s{_oupPayload = a})++-- | Full path of the organization unit or its Id+oupOrgUnitPath :: Lens' OrgUnitsPatch [Text]+oupOrgUnitPath+ = lens _oupOrgUnitPath+ (\ s a -> s{_oupOrgUnitPath = a})+ . _Coerce++-- | Immutable id of the Google Apps account+oupCustomerId :: Lens' OrgUnitsPatch Text+oupCustomerId+ = lens _oupCustomerId+ (\ s a -> s{_oupCustomerId = a})++instance GoogleRequest OrgUnitsPatch where+ type Rs OrgUnitsPatch = OrgUnit+ requestClient OrgUnitsPatch{..}+ = go _oupCustomerId _oupOrgUnitPath (Just AltJSON)+ _oupPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy OrgUnitsPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/OrgUnits/Update.hs view
@@ -0,0 +1,113 @@+{-# 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.Directory.OrgUnits.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update Organization Unit+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.orgunits.update@.+module Network.Google.Resource.Directory.OrgUnits.Update+ (+ -- * REST Resource+ OrgUnitsUpdateResource++ -- * Creating a Request+ , orgUnitsUpdate+ , OrgUnitsUpdate++ -- * Request Lenses+ , ouuPayload+ , ouuOrgUnitPath+ , ouuCustomerId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.orgunits.update@ method which the+-- 'OrgUnitsUpdate' request conforms to.+type OrgUnitsUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "orgunits" :>+ Captures "orgUnitPath" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] OrgUnit :> Put '[JSON] OrgUnit++-- | Update Organization Unit+--+-- /See:/ 'orgUnitsUpdate' smart constructor.+data OrgUnitsUpdate = OrgUnitsUpdate+ { _ouuPayload :: !OrgUnit+ , _ouuOrgUnitPath :: ![Text]+ , _ouuCustomerId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OrgUnitsUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ouuPayload'+--+-- * 'ouuOrgUnitPath'+--+-- * 'ouuCustomerId'+orgUnitsUpdate+ :: OrgUnit -- ^ 'ouuPayload'+ -> [Text] -- ^ 'ouuOrgUnitPath'+ -> Text -- ^ 'ouuCustomerId'+ -> OrgUnitsUpdate+orgUnitsUpdate pOuuPayload_ pOuuOrgUnitPath_ pOuuCustomerId_ =+ OrgUnitsUpdate+ { _ouuPayload = pOuuPayload_+ , _ouuOrgUnitPath = _Coerce # pOuuOrgUnitPath_+ , _ouuCustomerId = pOuuCustomerId_+ }++-- | Multipart request metadata.+ouuPayload :: Lens' OrgUnitsUpdate OrgUnit+ouuPayload+ = lens _ouuPayload (\ s a -> s{_ouuPayload = a})++-- | Full path of the organization unit or its Id+ouuOrgUnitPath :: Lens' OrgUnitsUpdate [Text]+ouuOrgUnitPath+ = lens _ouuOrgUnitPath+ (\ s a -> s{_ouuOrgUnitPath = a})+ . _Coerce++-- | Immutable id of the Google Apps account+ouuCustomerId :: Lens' OrgUnitsUpdate Text+ouuCustomerId+ = lens _ouuCustomerId+ (\ s a -> s{_ouuCustomerId = a})++instance GoogleRequest OrgUnitsUpdate where+ type Rs OrgUnitsUpdate = OrgUnit+ requestClient OrgUnitsUpdate{..}+ = go _ouuCustomerId _ouuOrgUnitPath (Just AltJSON)+ _ouuPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy OrgUnitsUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/Privileges/List.hs view
@@ -0,0 +1,86 @@+{-# 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.Directory.Privileges.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a paginated list of all privileges for a customer.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.privileges.list@.+module Network.Google.Resource.Directory.Privileges.List+ (+ -- * REST Resource+ PrivilegesListResource++ -- * Creating a Request+ , privilegesList+ , PrivilegesList++ -- * Request Lenses+ , plCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.privileges.list@ method which the+-- 'PrivilegesList' request conforms to.+type PrivilegesListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roles" :>+ "ALL" :>+ "privileges" :>+ QueryParam "alt" AltJSON :> Get '[JSON] Privileges++-- | Retrieves a paginated list of all privileges for a customer.+--+-- /See:/ 'privilegesList' smart constructor.+newtype PrivilegesList = PrivilegesList+ { _plCustomer :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'PrivilegesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'plCustomer'+privilegesList+ :: Text -- ^ 'plCustomer'+ -> PrivilegesList+privilegesList pPlCustomer_ =+ PrivilegesList+ { _plCustomer = pPlCustomer_+ }++-- | Immutable ID of the Google Apps account.+plCustomer :: Lens' PrivilegesList Text+plCustomer+ = lens _plCustomer (\ s a -> s{_plCustomer = a})++instance GoogleRequest PrivilegesList where+ type Rs PrivilegesList = Privileges+ requestClient PrivilegesList{..}+ = go _plCustomer (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy PrivilegesListResource)+ mempty
+ gen/Network/Google/Resource/Directory/RoleAssignments/Delete.hs view
@@ -0,0 +1,99 @@+{-# 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.Directory.RoleAssignments.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a role assignment.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roleAssignments.delete@.+module Network.Google.Resource.Directory.RoleAssignments.Delete+ (+ -- * REST Resource+ RoleAssignmentsDeleteResource++ -- * Creating a Request+ , roleAssignmentsDelete+ , RoleAssignmentsDelete++ -- * Request Lenses+ , radCustomer+ , radRoleAssignmentId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roleAssignments.delete@ method which the+-- 'RoleAssignmentsDelete' request conforms to.+type RoleAssignmentsDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roleassignments" :>+ Capture "roleAssignmentId" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Deletes a role assignment.+--+-- /See:/ 'roleAssignmentsDelete' smart constructor.+data RoleAssignmentsDelete = RoleAssignmentsDelete+ { _radCustomer :: !Text+ , _radRoleAssignmentId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RoleAssignmentsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'radCustomer'+--+-- * 'radRoleAssignmentId'+roleAssignmentsDelete+ :: Text -- ^ 'radCustomer'+ -> Text -- ^ 'radRoleAssignmentId'+ -> RoleAssignmentsDelete+roleAssignmentsDelete pRadCustomer_ pRadRoleAssignmentId_ =+ RoleAssignmentsDelete+ { _radCustomer = pRadCustomer_+ , _radRoleAssignmentId = pRadRoleAssignmentId_+ }++-- | Immutable ID of the Google Apps account.+radCustomer :: Lens' RoleAssignmentsDelete Text+radCustomer+ = lens _radCustomer (\ s a -> s{_radCustomer = a})++-- | Immutable ID of the role assignment.+radRoleAssignmentId :: Lens' RoleAssignmentsDelete Text+radRoleAssignmentId+ = lens _radRoleAssignmentId+ (\ s a -> s{_radRoleAssignmentId = a})++instance GoogleRequest RoleAssignmentsDelete where+ type Rs RoleAssignmentsDelete = ()+ requestClient RoleAssignmentsDelete{..}+ = go _radCustomer _radRoleAssignmentId (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy RoleAssignmentsDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/RoleAssignments/Get.hs view
@@ -0,0 +1,100 @@+{-# 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.Directory.RoleAssignments.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve a role assignment.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roleAssignments.get@.+module Network.Google.Resource.Directory.RoleAssignments.Get+ (+ -- * REST Resource+ RoleAssignmentsGetResource++ -- * Creating a Request+ , roleAssignmentsGet+ , RoleAssignmentsGet++ -- * Request Lenses+ , ragCustomer+ , ragRoleAssignmentId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roleAssignments.get@ method which the+-- 'RoleAssignmentsGet' request conforms to.+type RoleAssignmentsGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roleassignments" :>+ Capture "roleAssignmentId" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] RoleAssignment++-- | Retrieve a role assignment.+--+-- /See:/ 'roleAssignmentsGet' smart constructor.+data RoleAssignmentsGet = RoleAssignmentsGet+ { _ragCustomer :: !Text+ , _ragRoleAssignmentId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RoleAssignmentsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ragCustomer'+--+-- * 'ragRoleAssignmentId'+roleAssignmentsGet+ :: Text -- ^ 'ragCustomer'+ -> Text -- ^ 'ragRoleAssignmentId'+ -> RoleAssignmentsGet+roleAssignmentsGet pRagCustomer_ pRagRoleAssignmentId_ =+ RoleAssignmentsGet+ { _ragCustomer = pRagCustomer_+ , _ragRoleAssignmentId = pRagRoleAssignmentId_+ }++-- | Immutable ID of the Google Apps account.+ragCustomer :: Lens' RoleAssignmentsGet Text+ragCustomer+ = lens _ragCustomer (\ s a -> s{_ragCustomer = a})++-- | Immutable ID of the role assignment.+ragRoleAssignmentId :: Lens' RoleAssignmentsGet Text+ragRoleAssignmentId+ = lens _ragRoleAssignmentId+ (\ s a -> s{_ragRoleAssignmentId = a})++instance GoogleRequest RoleAssignmentsGet where+ type Rs RoleAssignmentsGet = RoleAssignment+ requestClient RoleAssignmentsGet{..}+ = go _ragCustomer _ragRoleAssignmentId (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy RoleAssignmentsGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/RoleAssignments/Insert.hs view
@@ -0,0 +1,99 @@+{-# 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.Directory.RoleAssignments.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a role assignment.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roleAssignments.insert@.+module Network.Google.Resource.Directory.RoleAssignments.Insert+ (+ -- * REST Resource+ RoleAssignmentsInsertResource++ -- * Creating a Request+ , roleAssignmentsInsert+ , RoleAssignmentsInsert++ -- * Request Lenses+ , raiPayload+ , raiCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roleAssignments.insert@ method which the+-- 'RoleAssignmentsInsert' request conforms to.+type RoleAssignmentsInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roleassignments" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] RoleAssignment :>+ Post '[JSON] RoleAssignment++-- | Creates a role assignment.+--+-- /See:/ 'roleAssignmentsInsert' smart constructor.+data RoleAssignmentsInsert = RoleAssignmentsInsert+ { _raiPayload :: !RoleAssignment+ , _raiCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RoleAssignmentsInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'raiPayload'+--+-- * 'raiCustomer'+roleAssignmentsInsert+ :: RoleAssignment -- ^ 'raiPayload'+ -> Text -- ^ 'raiCustomer'+ -> RoleAssignmentsInsert+roleAssignmentsInsert pRaiPayload_ pRaiCustomer_ =+ RoleAssignmentsInsert+ { _raiPayload = pRaiPayload_+ , _raiCustomer = pRaiCustomer_+ }++-- | Multipart request metadata.+raiPayload :: Lens' RoleAssignmentsInsert RoleAssignment+raiPayload+ = lens _raiPayload (\ s a -> s{_raiPayload = a})++-- | Immutable ID of the Google Apps account.+raiCustomer :: Lens' RoleAssignmentsInsert Text+raiCustomer+ = lens _raiCustomer (\ s a -> s{_raiCustomer = a})++instance GoogleRequest RoleAssignmentsInsert where+ type Rs RoleAssignmentsInsert = RoleAssignment+ requestClient RoleAssignmentsInsert{..}+ = go _raiCustomer (Just AltJSON) _raiPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy RoleAssignmentsInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/RoleAssignments/List.hs view
@@ -0,0 +1,139 @@+{-# 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.Directory.RoleAssignments.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a paginated list of all roleAssignments.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roleAssignments.list@.+module Network.Google.Resource.Directory.RoleAssignments.List+ (+ -- * REST Resource+ RoleAssignmentsListResource++ -- * Creating a Request+ , roleAssignmentsList+ , RoleAssignmentsList++ -- * Request Lenses+ , ralRoleId+ , ralCustomer+ , ralPageToken+ , ralUserKey+ , ralMaxResults+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roleAssignments.list@ method which the+-- 'RoleAssignmentsList' request conforms to.+type RoleAssignmentsListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roleassignments" :>+ QueryParam "roleId" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "userKey" Text :>+ QueryParam "maxResults" (Textual Int32) :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] RoleAssignments++-- | Retrieves a paginated list of all roleAssignments.+--+-- /See:/ 'roleAssignmentsList' smart constructor.+data RoleAssignmentsList = RoleAssignmentsList+ { _ralRoleId :: !(Maybe Text)+ , _ralCustomer :: !Text+ , _ralPageToken :: !(Maybe Text)+ , _ralUserKey :: !(Maybe Text)+ , _ralMaxResults :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RoleAssignmentsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ralRoleId'+--+-- * 'ralCustomer'+--+-- * 'ralPageToken'+--+-- * 'ralUserKey'+--+-- * 'ralMaxResults'+roleAssignmentsList+ :: Text -- ^ 'ralCustomer'+ -> RoleAssignmentsList+roleAssignmentsList pRalCustomer_ =+ RoleAssignmentsList+ { _ralRoleId = Nothing+ , _ralCustomer = pRalCustomer_+ , _ralPageToken = Nothing+ , _ralUserKey = Nothing+ , _ralMaxResults = Nothing+ }++-- | Immutable ID of a role. If included in the request, returns only role+-- assignments containing this role ID.+ralRoleId :: Lens' RoleAssignmentsList (Maybe Text)+ralRoleId+ = lens _ralRoleId (\ s a -> s{_ralRoleId = a})++-- | Immutable ID of the Google Apps account.+ralCustomer :: Lens' RoleAssignmentsList Text+ralCustomer+ = lens _ralCustomer (\ s a -> s{_ralCustomer = a})++-- | Token to specify the next page in the list.+ralPageToken :: Lens' RoleAssignmentsList (Maybe Text)+ralPageToken+ = lens _ralPageToken (\ s a -> s{_ralPageToken = a})++-- | The user\'s primary email address, alias email address, or unique user+-- ID. If included in the request, returns role assignments only for this+-- user.+ralUserKey :: Lens' RoleAssignmentsList (Maybe Text)+ralUserKey+ = lens _ralUserKey (\ s a -> s{_ralUserKey = a})++-- | Maximum number of results to return.+ralMaxResults :: Lens' RoleAssignmentsList (Maybe Int32)+ralMaxResults+ = lens _ralMaxResults+ (\ s a -> s{_ralMaxResults = a})+ . mapping _Coerce++instance GoogleRequest RoleAssignmentsList where+ type Rs RoleAssignmentsList = RoleAssignments+ requestClient RoleAssignmentsList{..}+ = go _ralCustomer _ralRoleId _ralPageToken+ _ralUserKey+ _ralMaxResults+ (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy RoleAssignmentsListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Roles/Delete.hs view
@@ -0,0 +1,96 @@+{-# 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.Directory.Roles.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a role.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roles.delete@.+module Network.Google.Resource.Directory.Roles.Delete+ (+ -- * REST Resource+ RolesDeleteResource++ -- * Creating a Request+ , rolesDelete+ , RolesDelete++ -- * Request Lenses+ , rdRoleId+ , rdCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roles.delete@ method which the+-- 'RolesDelete' request conforms to.+type RolesDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roles" :>+ Capture "roleId" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Deletes a role.+--+-- /See:/ 'rolesDelete' smart constructor.+data RolesDelete = RolesDelete+ { _rdRoleId :: !Text+ , _rdCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RolesDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rdRoleId'+--+-- * 'rdCustomer'+rolesDelete+ :: Text -- ^ 'rdRoleId'+ -> Text -- ^ 'rdCustomer'+ -> RolesDelete+rolesDelete pRdRoleId_ pRdCustomer_ =+ RolesDelete+ { _rdRoleId = pRdRoleId_+ , _rdCustomer = pRdCustomer_+ }++-- | Immutable ID of the role.+rdRoleId :: Lens' RolesDelete Text+rdRoleId = lens _rdRoleId (\ s a -> s{_rdRoleId = a})++-- | Immutable ID of the Google Apps account.+rdCustomer :: Lens' RolesDelete Text+rdCustomer+ = lens _rdCustomer (\ s a -> s{_rdCustomer = a})++instance GoogleRequest RolesDelete where+ type Rs RolesDelete = ()+ requestClient RolesDelete{..}+ = go _rdCustomer _rdRoleId (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy RolesDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Roles/Get.hs view
@@ -0,0 +1,96 @@+{-# 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.Directory.Roles.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a role.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roles.get@.+module Network.Google.Resource.Directory.Roles.Get+ (+ -- * REST Resource+ RolesGetResource++ -- * Creating a Request+ , rolesGet+ , RolesGet++ -- * Request Lenses+ , rgRoleId+ , rgCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roles.get@ method which the+-- 'RolesGet' request conforms to.+type RolesGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roles" :>+ Capture "roleId" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Role++-- | Retrieves a role.+--+-- /See:/ 'rolesGet' smart constructor.+data RolesGet = RolesGet+ { _rgRoleId :: !Text+ , _rgCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RolesGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rgRoleId'+--+-- * 'rgCustomer'+rolesGet+ :: Text -- ^ 'rgRoleId'+ -> Text -- ^ 'rgCustomer'+ -> RolesGet+rolesGet pRgRoleId_ pRgCustomer_ =+ RolesGet+ { _rgRoleId = pRgRoleId_+ , _rgCustomer = pRgCustomer_+ }++-- | Immutable ID of the role.+rgRoleId :: Lens' RolesGet Text+rgRoleId = lens _rgRoleId (\ s a -> s{_rgRoleId = a})++-- | Immutable ID of the Google Apps account.+rgCustomer :: Lens' RolesGet Text+rgCustomer+ = lens _rgCustomer (\ s a -> s{_rgCustomer = a})++instance GoogleRequest RolesGet where+ type Rs RolesGet = Role+ requestClient RolesGet{..}+ = go _rgCustomer _rgRoleId (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy RolesGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Roles/Insert.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Roles.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a role.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roles.insert@.+module Network.Google.Resource.Directory.Roles.Insert+ (+ -- * REST Resource+ RolesInsertResource++ -- * Creating a Request+ , rolesInsert+ , RolesInsert++ -- * Request Lenses+ , riPayload+ , riCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roles.insert@ method which the+-- 'RolesInsert' request conforms to.+type RolesInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roles" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Role :> Post '[JSON] Role++-- | Creates a role.+--+-- /See:/ 'rolesInsert' smart constructor.+data RolesInsert = RolesInsert+ { _riPayload :: !Role+ , _riCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RolesInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'riPayload'+--+-- * 'riCustomer'+rolesInsert+ :: Role -- ^ 'riPayload'+ -> Text -- ^ 'riCustomer'+ -> RolesInsert+rolesInsert pRiPayload_ pRiCustomer_ =+ RolesInsert+ { _riPayload = pRiPayload_+ , _riCustomer = pRiCustomer_+ }++-- | Multipart request metadata.+riPayload :: Lens' RolesInsert Role+riPayload+ = lens _riPayload (\ s a -> s{_riPayload = a})++-- | Immutable ID of the Google Apps account.+riCustomer :: Lens' RolesInsert Text+riCustomer+ = lens _riCustomer (\ s a -> s{_riCustomer = a})++instance GoogleRequest RolesInsert where+ type Rs RolesInsert = Role+ requestClient RolesInsert{..}+ = go _riCustomer (Just AltJSON) _riPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy RolesInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/Roles/List.hs view
@@ -0,0 +1,109 @@+{-# 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.Directory.Roles.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a paginated list of all the roles in a domain.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roles.list@.+module Network.Google.Resource.Directory.Roles.List+ (+ -- * REST Resource+ RolesListResource++ -- * Creating a Request+ , rolesList+ , RolesList++ -- * Request Lenses+ , rlCustomer+ , rlPageToken+ , rlMaxResults+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roles.list@ method which the+-- 'RolesList' request conforms to.+type RolesListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roles" :>+ QueryParam "pageToken" Text :>+ QueryParam "maxResults" (Textual Int32) :>+ QueryParam "alt" AltJSON :> Get '[JSON] Roles++-- | Retrieves a paginated list of all the roles in a domain.+--+-- /See:/ 'rolesList' smart constructor.+data RolesList = RolesList+ { _rlCustomer :: !Text+ , _rlPageToken :: !(Maybe Text)+ , _rlMaxResults :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RolesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rlCustomer'+--+-- * 'rlPageToken'+--+-- * 'rlMaxResults'+rolesList+ :: Text -- ^ 'rlCustomer'+ -> RolesList+rolesList pRlCustomer_ =+ RolesList+ { _rlCustomer = pRlCustomer_+ , _rlPageToken = Nothing+ , _rlMaxResults = Nothing+ }++-- | Immutable id of the Google Apps account.+rlCustomer :: Lens' RolesList Text+rlCustomer+ = lens _rlCustomer (\ s a -> s{_rlCustomer = a})++-- | Token to specify the next page in the list.+rlPageToken :: Lens' RolesList (Maybe Text)+rlPageToken+ = lens _rlPageToken (\ s a -> s{_rlPageToken = a})++-- | Maximum number of results to return.+rlMaxResults :: Lens' RolesList (Maybe Int32)+rlMaxResults+ = lens _rlMaxResults (\ s a -> s{_rlMaxResults = a})+ . mapping _Coerce++instance GoogleRequest RolesList where+ type Rs RolesList = Roles+ requestClient RolesList{..}+ = go _rlCustomer _rlPageToken _rlMaxResults+ (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy RolesListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Roles/Patch.hs view
@@ -0,0 +1,108 @@+{-# 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.Directory.Roles.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a role. This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roles.patch@.+module Network.Google.Resource.Directory.Roles.Patch+ (+ -- * REST Resource+ RolesPatchResource++ -- * Creating a Request+ , rolesPatch+ , RolesPatch++ -- * Request Lenses+ , rpPayload+ , rpRoleId+ , rpCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roles.patch@ method which the+-- 'RolesPatch' request conforms to.+type RolesPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roles" :>+ Capture "roleId" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Role :> Patch '[JSON] Role++-- | Updates a role. This method supports patch semantics.+--+-- /See:/ 'rolesPatch' smart constructor.+data RolesPatch = RolesPatch+ { _rpPayload :: !Role+ , _rpRoleId :: !Text+ , _rpCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RolesPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rpPayload'+--+-- * 'rpRoleId'+--+-- * 'rpCustomer'+rolesPatch+ :: Role -- ^ 'rpPayload'+ -> Text -- ^ 'rpRoleId'+ -> Text -- ^ 'rpCustomer'+ -> RolesPatch+rolesPatch pRpPayload_ pRpRoleId_ pRpCustomer_ =+ RolesPatch+ { _rpPayload = pRpPayload_+ , _rpRoleId = pRpRoleId_+ , _rpCustomer = pRpCustomer_+ }++-- | Multipart request metadata.+rpPayload :: Lens' RolesPatch Role+rpPayload+ = lens _rpPayload (\ s a -> s{_rpPayload = a})++-- | Immutable ID of the role.+rpRoleId :: Lens' RolesPatch Text+rpRoleId = lens _rpRoleId (\ s a -> s{_rpRoleId = a})++-- | Immutable ID of the Google Apps account.+rpCustomer :: Lens' RolesPatch Text+rpCustomer+ = lens _rpCustomer (\ s a -> s{_rpCustomer = a})++instance GoogleRequest RolesPatch where+ type Rs RolesPatch = Role+ requestClient RolesPatch{..}+ = go _rpCustomer _rpRoleId (Just AltJSON) _rpPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy RolesPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/Roles/Update.hs view
@@ -0,0 +1,108 @@+{-# 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.Directory.Roles.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a role.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.roles.update@.+module Network.Google.Resource.Directory.Roles.Update+ (+ -- * REST Resource+ RolesUpdateResource++ -- * Creating a Request+ , rolesUpdate+ , RolesUpdate++ -- * Request Lenses+ , ruPayload+ , ruRoleId+ , ruCustomer+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.roles.update@ method which the+-- 'RolesUpdate' request conforms to.+type RolesUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customer" Text :>+ "roles" :>+ Capture "roleId" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Role :> Put '[JSON] Role++-- | Updates a role.+--+-- /See:/ 'rolesUpdate' smart constructor.+data RolesUpdate = RolesUpdate+ { _ruPayload :: !Role+ , _ruRoleId :: !Text+ , _ruCustomer :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RolesUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ruPayload'+--+-- * 'ruRoleId'+--+-- * 'ruCustomer'+rolesUpdate+ :: Role -- ^ 'ruPayload'+ -> Text -- ^ 'ruRoleId'+ -> Text -- ^ 'ruCustomer'+ -> RolesUpdate+rolesUpdate pRuPayload_ pRuRoleId_ pRuCustomer_ =+ RolesUpdate+ { _ruPayload = pRuPayload_+ , _ruRoleId = pRuRoleId_+ , _ruCustomer = pRuCustomer_+ }++-- | Multipart request metadata.+ruPayload :: Lens' RolesUpdate Role+ruPayload+ = lens _ruPayload (\ s a -> s{_ruPayload = a})++-- | Immutable ID of the role.+ruRoleId :: Lens' RolesUpdate Text+ruRoleId = lens _ruRoleId (\ s a -> s{_ruRoleId = a})++-- | Immutable ID of the Google Apps account.+ruCustomer :: Lens' RolesUpdate Text+ruCustomer+ = lens _ruCustomer (\ s a -> s{_ruCustomer = a})++instance GoogleRequest RolesUpdate where+ type Rs RolesUpdate = Role+ requestClient RolesUpdate{..}+ = go _ruCustomer _ruRoleId (Just AltJSON) _ruPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy RolesUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/Schemas/Delete.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Schemas.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete schema+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.schemas.delete@.+module Network.Google.Resource.Directory.Schemas.Delete+ (+ -- * REST Resource+ SchemasDeleteResource++ -- * Creating a Request+ , schemasDelete+ , SchemasDelete++ -- * Request Lenses+ , sdCustomerId+ , sdSchemaKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.schemas.delete@ method which the+-- 'SchemasDelete' request conforms to.+type SchemasDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "schemas" :>+ Capture "schemaKey" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Delete schema+--+-- /See:/ 'schemasDelete' smart constructor.+data SchemasDelete = SchemasDelete+ { _sdCustomerId :: !Text+ , _sdSchemaKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SchemasDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sdCustomerId'+--+-- * 'sdSchemaKey'+schemasDelete+ :: Text -- ^ 'sdCustomerId'+ -> Text -- ^ 'sdSchemaKey'+ -> SchemasDelete+schemasDelete pSdCustomerId_ pSdSchemaKey_ =+ SchemasDelete+ { _sdCustomerId = pSdCustomerId_+ , _sdSchemaKey = pSdSchemaKey_+ }++-- | Immutable id of the Google Apps account+sdCustomerId :: Lens' SchemasDelete Text+sdCustomerId+ = lens _sdCustomerId (\ s a -> s{_sdCustomerId = a})++-- | Name or immutable Id of the schema+sdSchemaKey :: Lens' SchemasDelete Text+sdSchemaKey+ = lens _sdSchemaKey (\ s a -> s{_sdSchemaKey = a})++instance GoogleRequest SchemasDelete where+ type Rs SchemasDelete = ()+ requestClient SchemasDelete{..}+ = go _sdCustomerId _sdSchemaKey (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy SchemasDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Schemas/Get.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Schemas.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve schema+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.schemas.get@.+module Network.Google.Resource.Directory.Schemas.Get+ (+ -- * REST Resource+ SchemasGetResource++ -- * Creating a Request+ , schemasGet+ , SchemasGet++ -- * Request Lenses+ , sgCustomerId+ , sgSchemaKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.schemas.get@ method which the+-- 'SchemasGet' request conforms to.+type SchemasGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "schemas" :>+ Capture "schemaKey" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Schema++-- | Retrieve schema+--+-- /See:/ 'schemasGet' smart constructor.+data SchemasGet = SchemasGet+ { _sgCustomerId :: !Text+ , _sgSchemaKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SchemasGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sgCustomerId'+--+-- * 'sgSchemaKey'+schemasGet+ :: Text -- ^ 'sgCustomerId'+ -> Text -- ^ 'sgSchemaKey'+ -> SchemasGet+schemasGet pSgCustomerId_ pSgSchemaKey_ =+ SchemasGet+ { _sgCustomerId = pSgCustomerId_+ , _sgSchemaKey = pSgSchemaKey_+ }++-- | Immutable id of the Google Apps account+sgCustomerId :: Lens' SchemasGet Text+sgCustomerId+ = lens _sgCustomerId (\ s a -> s{_sgCustomerId = a})++-- | Name or immutable Id of the schema+sgSchemaKey :: Lens' SchemasGet Text+sgSchemaKey+ = lens _sgSchemaKey (\ s a -> s{_sgSchemaKey = a})++instance GoogleRequest SchemasGet where+ type Rs SchemasGet = Schema+ requestClient SchemasGet{..}+ = go _sgCustomerId _sgSchemaKey (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy SchemasGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Schemas/Insert.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Schemas.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create schema.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.schemas.insert@.+module Network.Google.Resource.Directory.Schemas.Insert+ (+ -- * REST Resource+ SchemasInsertResource++ -- * Creating a Request+ , schemasInsert+ , SchemasInsert++ -- * Request Lenses+ , siPayload+ , siCustomerId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.schemas.insert@ method which the+-- 'SchemasInsert' request conforms to.+type SchemasInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "schemas" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Schema :> Post '[JSON] Schema++-- | Create schema.+--+-- /See:/ 'schemasInsert' smart constructor.+data SchemasInsert = SchemasInsert+ { _siPayload :: !Schema+ , _siCustomerId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SchemasInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'siPayload'+--+-- * 'siCustomerId'+schemasInsert+ :: Schema -- ^ 'siPayload'+ -> Text -- ^ 'siCustomerId'+ -> SchemasInsert+schemasInsert pSiPayload_ pSiCustomerId_ =+ SchemasInsert+ { _siPayload = pSiPayload_+ , _siCustomerId = pSiCustomerId_+ }++-- | Multipart request metadata.+siPayload :: Lens' SchemasInsert Schema+siPayload+ = lens _siPayload (\ s a -> s{_siPayload = a})++-- | Immutable id of the Google Apps account+siCustomerId :: Lens' SchemasInsert Text+siCustomerId+ = lens _siCustomerId (\ s a -> s{_siCustomerId = a})++instance GoogleRequest SchemasInsert where+ type Rs SchemasInsert = Schema+ requestClient SchemasInsert{..}+ = go _siCustomerId (Just AltJSON) _siPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy SchemasInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/Schemas/List.hs view
@@ -0,0 +1,84 @@+{-# 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.Directory.Schemas.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve all schemas for a customer+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.schemas.list@.+module Network.Google.Resource.Directory.Schemas.List+ (+ -- * REST Resource+ SchemasListResource++ -- * Creating a Request+ , schemasList+ , SchemasList++ -- * Request Lenses+ , slCustomerId+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.schemas.list@ method which the+-- 'SchemasList' request conforms to.+type SchemasListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "schemas" :>+ QueryParam "alt" AltJSON :> Get '[JSON] Schemas++-- | Retrieve all schemas for a customer+--+-- /See:/ 'schemasList' smart constructor.+newtype SchemasList = SchemasList+ { _slCustomerId :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SchemasList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'slCustomerId'+schemasList+ :: Text -- ^ 'slCustomerId'+ -> SchemasList+schemasList pSlCustomerId_ =+ SchemasList+ { _slCustomerId = pSlCustomerId_+ }++-- | Immutable id of the Google Apps account+slCustomerId :: Lens' SchemasList Text+slCustomerId+ = lens _slCustomerId (\ s a -> s{_slCustomerId = a})++instance GoogleRequest SchemasList where+ type Rs SchemasList = Schemas+ requestClient SchemasList{..}+ = go _slCustomerId (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy SchemasListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Schemas/Patch.hs view
@@ -0,0 +1,110 @@+{-# 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.Directory.Schemas.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update schema. This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.schemas.patch@.+module Network.Google.Resource.Directory.Schemas.Patch+ (+ -- * REST Resource+ SchemasPatchResource++ -- * Creating a Request+ , schemasPatch+ , SchemasPatch++ -- * Request Lenses+ , spPayload+ , spCustomerId+ , spSchemaKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.schemas.patch@ method which the+-- 'SchemasPatch' request conforms to.+type SchemasPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "schemas" :>+ Capture "schemaKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Schema :> Patch '[JSON] Schema++-- | Update schema. This method supports patch semantics.+--+-- /See:/ 'schemasPatch' smart constructor.+data SchemasPatch = SchemasPatch+ { _spPayload :: !Schema+ , _spCustomerId :: !Text+ , _spSchemaKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SchemasPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'spPayload'+--+-- * 'spCustomerId'+--+-- * 'spSchemaKey'+schemasPatch+ :: Schema -- ^ 'spPayload'+ -> Text -- ^ 'spCustomerId'+ -> Text -- ^ 'spSchemaKey'+ -> SchemasPatch+schemasPatch pSpPayload_ pSpCustomerId_ pSpSchemaKey_ =+ SchemasPatch+ { _spPayload = pSpPayload_+ , _spCustomerId = pSpCustomerId_+ , _spSchemaKey = pSpSchemaKey_+ }++-- | Multipart request metadata.+spPayload :: Lens' SchemasPatch Schema+spPayload+ = lens _spPayload (\ s a -> s{_spPayload = a})++-- | Immutable id of the Google Apps account+spCustomerId :: Lens' SchemasPatch Text+spCustomerId+ = lens _spCustomerId (\ s a -> s{_spCustomerId = a})++-- | Name or immutable Id of the schema.+spSchemaKey :: Lens' SchemasPatch Text+spSchemaKey+ = lens _spSchemaKey (\ s a -> s{_spSchemaKey = a})++instance GoogleRequest SchemasPatch where+ type Rs SchemasPatch = Schema+ requestClient SchemasPatch{..}+ = go _spCustomerId _spSchemaKey (Just AltJSON)+ _spPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy SchemasPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/Schemas/Update.hs view
@@ -0,0 +1,110 @@+{-# 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.Directory.Schemas.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update schema+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.schemas.update@.+module Network.Google.Resource.Directory.Schemas.Update+ (+ -- * REST Resource+ SchemasUpdateResource++ -- * Creating a Request+ , schemasUpdate+ , SchemasUpdate++ -- * Request Lenses+ , suPayload+ , suCustomerId+ , suSchemaKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.schemas.update@ method which the+-- 'SchemasUpdate' request conforms to.+type SchemasUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "customer" :>+ Capture "customerId" Text :>+ "schemas" :>+ Capture "schemaKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Schema :> Put '[JSON] Schema++-- | Update schema+--+-- /See:/ 'schemasUpdate' smart constructor.+data SchemasUpdate = SchemasUpdate+ { _suPayload :: !Schema+ , _suCustomerId :: !Text+ , _suSchemaKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SchemasUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'suPayload'+--+-- * 'suCustomerId'+--+-- * 'suSchemaKey'+schemasUpdate+ :: Schema -- ^ 'suPayload'+ -> Text -- ^ 'suCustomerId'+ -> Text -- ^ 'suSchemaKey'+ -> SchemasUpdate+schemasUpdate pSuPayload_ pSuCustomerId_ pSuSchemaKey_ =+ SchemasUpdate+ { _suPayload = pSuPayload_+ , _suCustomerId = pSuCustomerId_+ , _suSchemaKey = pSuSchemaKey_+ }++-- | Multipart request metadata.+suPayload :: Lens' SchemasUpdate Schema+suPayload+ = lens _suPayload (\ s a -> s{_suPayload = a})++-- | Immutable id of the Google Apps account+suCustomerId :: Lens' SchemasUpdate Text+suCustomerId+ = lens _suCustomerId (\ s a -> s{_suCustomerId = a})++-- | Name or immutable Id of the schema.+suSchemaKey :: Lens' SchemasUpdate Text+suSchemaKey+ = lens _suSchemaKey (\ s a -> s{_suSchemaKey = a})++instance GoogleRequest SchemasUpdate where+ type Rs SchemasUpdate = Schema+ requestClient SchemasUpdate{..}+ = go _suCustomerId _suSchemaKey (Just AltJSON)+ _suPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy SchemasUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/Tokens/Delete.hs view
@@ -0,0 +1,98 @@+{-# 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.Directory.Tokens.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete all access tokens issued by a user for an application.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.tokens.delete@.+module Network.Google.Resource.Directory.Tokens.Delete+ (+ -- * REST Resource+ TokensDeleteResource++ -- * Creating a Request+ , tokensDelete+ , TokensDelete++ -- * Request Lenses+ , tdClientId+ , tdUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.tokens.delete@ method which the+-- 'TokensDelete' request conforms to.+type TokensDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "tokens" :>+ Capture "clientId" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Delete all access tokens issued by a user for an application.+--+-- /See:/ 'tokensDelete' smart constructor.+data TokensDelete = TokensDelete+ { _tdClientId :: !Text+ , _tdUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TokensDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tdClientId'+--+-- * 'tdUserKey'+tokensDelete+ :: Text -- ^ 'tdClientId'+ -> Text -- ^ 'tdUserKey'+ -> TokensDelete+tokensDelete pTdClientId_ pTdUserKey_ =+ TokensDelete+ { _tdClientId = pTdClientId_+ , _tdUserKey = pTdUserKey_+ }++-- | The Client ID of the application the token is issued to.+tdClientId :: Lens' TokensDelete Text+tdClientId+ = lens _tdClientId (\ s a -> s{_tdClientId = a})++-- | Identifies the user in the API request. The value can be the user\'s+-- primary email address, alias email address, or unique user ID.+tdUserKey :: Lens' TokensDelete Text+tdUserKey+ = lens _tdUserKey (\ s a -> s{_tdUserKey = a})++instance GoogleRequest TokensDelete where+ type Rs TokensDelete = ()+ requestClient TokensDelete{..}+ = go _tdUserKey _tdClientId (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy TokensDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Tokens/Get.hs view
@@ -0,0 +1,98 @@+{-# 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.Directory.Tokens.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get information about an access token issued by a user.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.tokens.get@.+module Network.Google.Resource.Directory.Tokens.Get+ (+ -- * REST Resource+ TokensGetResource++ -- * Creating a Request+ , tokensGet+ , TokensGet++ -- * Request Lenses+ , tgClientId+ , tgUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.tokens.get@ method which the+-- 'TokensGet' request conforms to.+type TokensGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "tokens" :>+ Capture "clientId" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Token++-- | Get information about an access token issued by a user.+--+-- /See:/ 'tokensGet' smart constructor.+data TokensGet = TokensGet+ { _tgClientId :: !Text+ , _tgUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TokensGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tgClientId'+--+-- * 'tgUserKey'+tokensGet+ :: Text -- ^ 'tgClientId'+ -> Text -- ^ 'tgUserKey'+ -> TokensGet+tokensGet pTgClientId_ pTgUserKey_ =+ TokensGet+ { _tgClientId = pTgClientId_+ , _tgUserKey = pTgUserKey_+ }++-- | The Client ID of the application the token is issued to.+tgClientId :: Lens' TokensGet Text+tgClientId+ = lens _tgClientId (\ s a -> s{_tgClientId = a})++-- | Identifies the user in the API request. The value can be the user\'s+-- primary email address, alias email address, or unique user ID.+tgUserKey :: Lens' TokensGet Text+tgUserKey+ = lens _tgUserKey (\ s a -> s{_tgUserKey = a})++instance GoogleRequest TokensGet where+ type Rs TokensGet = Token+ requestClient TokensGet{..}+ = go _tgUserKey _tgClientId (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy TokensGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Tokens/List.hs view
@@ -0,0 +1,87 @@+{-# 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.Directory.Tokens.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the set of tokens specified user has issued to 3rd party+-- applications.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.tokens.list@.+module Network.Google.Resource.Directory.Tokens.List+ (+ -- * REST Resource+ TokensListResource++ -- * Creating a Request+ , tokensList+ , TokensList++ -- * Request Lenses+ , tlUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.tokens.list@ method which the+-- 'TokensList' request conforms to.+type TokensListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "tokens" :>+ QueryParam "alt" AltJSON :> Get '[JSON] Tokens++-- | Returns the set of tokens specified user has issued to 3rd party+-- applications.+--+-- /See:/ 'tokensList' smart constructor.+newtype TokensList = TokensList+ { _tlUserKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TokensList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tlUserKey'+tokensList+ :: Text -- ^ 'tlUserKey'+ -> TokensList+tokensList pTlUserKey_ =+ TokensList+ { _tlUserKey = pTlUserKey_+ }++-- | Identifies the user in the API request. The value can be the user\'s+-- primary email address, alias email address, or unique user ID.+tlUserKey :: Lens' TokensList Text+tlUserKey+ = lens _tlUserKey (\ s a -> s{_tlUserKey = a})++instance GoogleRequest TokensList where+ type Rs TokensList = Tokens+ requestClient TokensList{..}+ = go _tlUserKey (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy TokensListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Aliases/Delete.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Users.Aliases.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Remove a alias for the user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.aliases.delete@.+module Network.Google.Resource.Directory.Users.Aliases.Delete+ (+ -- * REST Resource+ UsersAliasesDeleteResource++ -- * Creating a Request+ , usersAliasesDelete+ , UsersAliasesDelete++ -- * Request Lenses+ , uadAlias+ , uadUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.aliases.delete@ method which the+-- 'UsersAliasesDelete' request conforms to.+type UsersAliasesDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "aliases" :>+ Capture "alias" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Remove a alias for the user+--+-- /See:/ 'usersAliasesDelete' smart constructor.+data UsersAliasesDelete = UsersAliasesDelete+ { _uadAlias :: !Text+ , _uadUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersAliasesDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uadAlias'+--+-- * 'uadUserKey'+usersAliasesDelete+ :: Text -- ^ 'uadAlias'+ -> Text -- ^ 'uadUserKey'+ -> UsersAliasesDelete+usersAliasesDelete pUadAlias_ pUadUserKey_ =+ UsersAliasesDelete+ { _uadAlias = pUadAlias_+ , _uadUserKey = pUadUserKey_+ }++-- | The alias to be removed+uadAlias :: Lens' UsersAliasesDelete Text+uadAlias = lens _uadAlias (\ s a -> s{_uadAlias = a})++-- | Email or immutable Id of the user+uadUserKey :: Lens' UsersAliasesDelete Text+uadUserKey+ = lens _uadUserKey (\ s a -> s{_uadUserKey = a})++instance GoogleRequest UsersAliasesDelete where+ type Rs UsersAliasesDelete = ()+ requestClient UsersAliasesDelete{..}+ = go _uadUserKey _uadAlias (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy UsersAliasesDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Aliases/Insert.hs view
@@ -0,0 +1,98 @@+{-# 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.Directory.Users.Aliases.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Add a alias for the user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.aliases.insert@.+module Network.Google.Resource.Directory.Users.Aliases.Insert+ (+ -- * REST Resource+ UsersAliasesInsertResource++ -- * Creating a Request+ , usersAliasesInsert+ , UsersAliasesInsert++ -- * Request Lenses+ , uaiPayload+ , uaiUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.aliases.insert@ method which the+-- 'UsersAliasesInsert' request conforms to.+type UsersAliasesInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "aliases" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Alias :> Post '[JSON] Alias++-- | Add a alias for the user+--+-- /See:/ 'usersAliasesInsert' smart constructor.+data UsersAliasesInsert = UsersAliasesInsert+ { _uaiPayload :: !Alias+ , _uaiUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersAliasesInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uaiPayload'+--+-- * 'uaiUserKey'+usersAliasesInsert+ :: Alias -- ^ 'uaiPayload'+ -> Text -- ^ 'uaiUserKey'+ -> UsersAliasesInsert+usersAliasesInsert pUaiPayload_ pUaiUserKey_ =+ UsersAliasesInsert+ { _uaiPayload = pUaiPayload_+ , _uaiUserKey = pUaiUserKey_+ }++-- | Multipart request metadata.+uaiPayload :: Lens' UsersAliasesInsert Alias+uaiPayload+ = lens _uaiPayload (\ s a -> s{_uaiPayload = a})++-- | Email or immutable Id of the user+uaiUserKey :: Lens' UsersAliasesInsert Text+uaiUserKey+ = lens _uaiUserKey (\ s a -> s{_uaiUserKey = a})++instance GoogleRequest UsersAliasesInsert where+ type Rs UsersAliasesInsert = Alias+ requestClient UsersAliasesInsert{..}+ = go _uaiUserKey (Just AltJSON) _uaiPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy UsersAliasesInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Aliases/List.hs view
@@ -0,0 +1,96 @@+{-# 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.Directory.Users.Aliases.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all aliases for a user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.aliases.list@.+module Network.Google.Resource.Directory.Users.Aliases.List+ (+ -- * REST Resource+ UsersAliasesListResource++ -- * Creating a Request+ , usersAliasesList+ , UsersAliasesList++ -- * Request Lenses+ , ualEvent+ , ualUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.aliases.list@ method which the+-- 'UsersAliasesList' request conforms to.+type UsersAliasesListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "aliases" :>+ QueryParam "event" UsersAliasesListEvent :>+ QueryParam "alt" AltJSON :> Get '[JSON] Aliases++-- | List all aliases for a user+--+-- /See:/ 'usersAliasesList' smart constructor.+data UsersAliasesList = UsersAliasesList+ { _ualEvent :: !(Maybe UsersAliasesListEvent)+ , _ualUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersAliasesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ualEvent'+--+-- * 'ualUserKey'+usersAliasesList+ :: Text -- ^ 'ualUserKey'+ -> UsersAliasesList+usersAliasesList pUalUserKey_ =+ UsersAliasesList+ { _ualEvent = Nothing+ , _ualUserKey = pUalUserKey_+ }++-- | Event on which subscription is intended (if subscribing)+ualEvent :: Lens' UsersAliasesList (Maybe UsersAliasesListEvent)+ualEvent = lens _ualEvent (\ s a -> s{_ualEvent = a})++-- | Email or immutable Id of the user+ualUserKey :: Lens' UsersAliasesList Text+ualUserKey+ = lens _ualUserKey (\ s a -> s{_ualUserKey = a})++instance GoogleRequest UsersAliasesList where+ type Rs UsersAliasesList = Aliases+ requestClient UsersAliasesList{..}+ = go _ualUserKey _ualEvent (Just AltJSON)+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy UsersAliasesListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Aliases/Watch.hs view
@@ -0,0 +1,109 @@+{-# 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.Directory.Users.Aliases.Watch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Watch for changes in user aliases list+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.aliases.watch@.+module Network.Google.Resource.Directory.Users.Aliases.Watch+ (+ -- * REST Resource+ UsersAliasesWatchResource++ -- * Creating a Request+ , usersAliasesWatch+ , UsersAliasesWatch++ -- * Request Lenses+ , uawEvent+ , uawPayload+ , uawUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.aliases.watch@ method which the+-- 'UsersAliasesWatch' request conforms to.+type UsersAliasesWatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "aliases" :>+ "watch" :>+ QueryParam "event" UsersAliasesWatchEvent :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Channel :> Post '[JSON] Channel++-- | Watch for changes in user aliases list+--+-- /See:/ 'usersAliasesWatch' smart constructor.+data UsersAliasesWatch = UsersAliasesWatch+ { _uawEvent :: !(Maybe UsersAliasesWatchEvent)+ , _uawPayload :: !Channel+ , _uawUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersAliasesWatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uawEvent'+--+-- * 'uawPayload'+--+-- * 'uawUserKey'+usersAliasesWatch+ :: Channel -- ^ 'uawPayload'+ -> Text -- ^ 'uawUserKey'+ -> UsersAliasesWatch+usersAliasesWatch pUawPayload_ pUawUserKey_ =+ UsersAliasesWatch+ { _uawEvent = Nothing+ , _uawPayload = pUawPayload_+ , _uawUserKey = pUawUserKey_+ }++-- | Event on which subscription is intended (if subscribing)+uawEvent :: Lens' UsersAliasesWatch (Maybe UsersAliasesWatchEvent)+uawEvent = lens _uawEvent (\ s a -> s{_uawEvent = a})++-- | Multipart request metadata.+uawPayload :: Lens' UsersAliasesWatch Channel+uawPayload+ = lens _uawPayload (\ s a -> s{_uawPayload = a})++-- | Email or immutable Id of the user+uawUserKey :: Lens' UsersAliasesWatch Text+uawUserKey+ = lens _uawUserKey (\ s a -> s{_uawUserKey = a})++instance GoogleRequest UsersAliasesWatch where+ type Rs UsersAliasesWatch = Channel+ requestClient UsersAliasesWatch{..}+ = go _uawUserKey _uawEvent (Just AltJSON) _uawPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy UsersAliasesWatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Delete.hs view
@@ -0,0 +1,83 @@+{-# 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.Directory.Users.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.delete@.+module Network.Google.Resource.Directory.Users.Delete+ (+ -- * REST Resource+ UsersDeleteResource++ -- * Creating a Request+ , usersDelete+ , UsersDelete++ -- * Request Lenses+ , udUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.delete@ method which the+-- 'UsersDelete' request conforms to.+type UsersDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Delete user+--+-- /See:/ 'usersDelete' smart constructor.+newtype UsersDelete = UsersDelete+ { _udUserKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'udUserKey'+usersDelete+ :: Text -- ^ 'udUserKey'+ -> UsersDelete+usersDelete pUdUserKey_ =+ UsersDelete+ { _udUserKey = pUdUserKey_+ }++-- | Email or immutable Id of the user+udUserKey :: Lens' UsersDelete Text+udUserKey+ = lens _udUserKey (\ s a -> s{_udUserKey = a})++instance GoogleRequest UsersDelete where+ type Rs UsersDelete = ()+ requestClient UsersDelete{..}+ = go _udUserKey (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy UsersDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Get.hs view
@@ -0,0 +1,121 @@+{-# 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.Directory.Users.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- retrieve user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.get@.+module Network.Google.Resource.Directory.Users.Get+ (+ -- * REST Resource+ UsersGetResource++ -- * Creating a Request+ , usersGet+ , UsersGet++ -- * Request Lenses+ , ugViewType+ , ugCustomFieldMask+ , ugProjection+ , ugUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.get@ method which the+-- 'UsersGet' request conforms to.+type UsersGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ QueryParam "viewType" UsersGetViewType :>+ QueryParam "customFieldMask" Text :>+ QueryParam "projection" UsersGetProjection :>+ QueryParam "alt" AltJSON :> Get '[JSON] User++-- | retrieve user+--+-- /See:/ 'usersGet' smart constructor.+data UsersGet = UsersGet+ { _ugViewType :: !UsersGetViewType+ , _ugCustomFieldMask :: !(Maybe Text)+ , _ugProjection :: !UsersGetProjection+ , _ugUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ugViewType'+--+-- * 'ugCustomFieldMask'+--+-- * 'ugProjection'+--+-- * 'ugUserKey'+usersGet+ :: Text -- ^ 'ugUserKey'+ -> UsersGet+usersGet pUgUserKey_ =+ UsersGet+ { _ugViewType = UGVTAdminView+ , _ugCustomFieldMask = Nothing+ , _ugProjection = UGPBasic+ , _ugUserKey = pUgUserKey_+ }++-- | Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.+ugViewType :: Lens' UsersGet UsersGetViewType+ugViewType+ = lens _ugViewType (\ s a -> s{_ugViewType = a})++-- | Comma-separated list of schema names. All fields from these schemas are+-- fetched. This should only be set when projection=custom.+ugCustomFieldMask :: Lens' UsersGet (Maybe Text)+ugCustomFieldMask+ = lens _ugCustomFieldMask+ (\ s a -> s{_ugCustomFieldMask = a})++-- | What subset of fields to fetch for this user.+ugProjection :: Lens' UsersGet UsersGetProjection+ugProjection+ = lens _ugProjection (\ s a -> s{_ugProjection = a})++-- | Email or immutable Id of the user+ugUserKey :: Lens' UsersGet Text+ugUserKey+ = lens _ugUserKey (\ s a -> s{_ugUserKey = a})++instance GoogleRequest UsersGet where+ type Rs UsersGet = User+ requestClient UsersGet{..}+ = go _ugUserKey (Just _ugViewType) _ugCustomFieldMask+ (Just _ugProjection)+ (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy UsersGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Insert.hs view
@@ -0,0 +1,83 @@+{-# 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.Directory.Users.Insert+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- create user.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.insert@.+module Network.Google.Resource.Directory.Users.Insert+ (+ -- * REST Resource+ UsersInsertResource++ -- * Creating a Request+ , usersInsert+ , UsersInsert++ -- * Request Lenses+ , uiPayload+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.insert@ method which the+-- 'UsersInsert' request conforms to.+type UsersInsertResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] User :> Post '[JSON] User++-- | create user.+--+-- /See:/ 'usersInsert' smart constructor.+newtype UsersInsert = UsersInsert+ { _uiPayload :: User+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uiPayload'+usersInsert+ :: User -- ^ 'uiPayload'+ -> UsersInsert+usersInsert pUiPayload_ =+ UsersInsert+ { _uiPayload = pUiPayload_+ }++-- | Multipart request metadata.+uiPayload :: Lens' UsersInsert User+uiPayload+ = lens _uiPayload (\ s a -> s{_uiPayload = a})++instance GoogleRequest UsersInsert where+ type Rs UsersInsert = User+ requestClient UsersInsert{..}+ = go (Just AltJSON) _uiPayload directoryService+ where go+ = buildClient (Proxy :: Proxy UsersInsertResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/List.hs view
@@ -0,0 +1,220 @@+{-# 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.Directory.Users.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve either deleted users or all users in a domain (paginated)+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.list@.+module Network.Google.Resource.Directory.Users.List+ (+ -- * REST Resource+ UsersListResource++ -- * Creating a Request+ , usersList+ , UsersList++ -- * Request Lenses+ , ulEvent+ , ulOrderBy+ , ulViewType+ , ulCustomFieldMask+ , ulDomain+ , ulShowDeleted+ , ulSortOrder+ , ulCustomer+ , ulQuery+ , ulProjection+ , ulPageToken+ , ulMaxResults+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.list@ method which the+-- 'UsersList' request conforms to.+type UsersListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ QueryParam "event" UsersListEvent :>+ QueryParam "orderBy" UsersListOrderBy :>+ QueryParam "viewType" UsersListViewType :>+ QueryParam "customFieldMask" Text :>+ QueryParam "domain" Text :>+ QueryParam "showDeleted" Text :>+ QueryParam "sortOrder" UsersListSortOrder :>+ QueryParam "customer" Text :>+ QueryParam "query" Text :>+ QueryParam "projection" UsersListProjection :>+ QueryParam "pageToken" Text :>+ QueryParam "maxResults" (Textual Int32) :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] Users++-- | Retrieve either deleted users or all users in a domain (paginated)+--+-- /See:/ 'usersList' smart constructor.+data UsersList = UsersList+ { _ulEvent :: !(Maybe UsersListEvent)+ , _ulOrderBy :: !(Maybe UsersListOrderBy)+ , _ulViewType :: !UsersListViewType+ , _ulCustomFieldMask :: !(Maybe Text)+ , _ulDomain :: !(Maybe Text)+ , _ulShowDeleted :: !(Maybe Text)+ , _ulSortOrder :: !(Maybe UsersListSortOrder)+ , _ulCustomer :: !(Maybe Text)+ , _ulQuery :: !(Maybe Text)+ , _ulProjection :: !UsersListProjection+ , _ulPageToken :: !(Maybe Text)+ , _ulMaxResults :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ulEvent'+--+-- * 'ulOrderBy'+--+-- * 'ulViewType'+--+-- * 'ulCustomFieldMask'+--+-- * 'ulDomain'+--+-- * 'ulShowDeleted'+--+-- * 'ulSortOrder'+--+-- * 'ulCustomer'+--+-- * 'ulQuery'+--+-- * 'ulProjection'+--+-- * 'ulPageToken'+--+-- * 'ulMaxResults'+usersList+ :: UsersList+usersList =+ UsersList+ { _ulEvent = Nothing+ , _ulOrderBy = Nothing+ , _ulViewType = AdminView+ , _ulCustomFieldMask = Nothing+ , _ulDomain = Nothing+ , _ulShowDeleted = Nothing+ , _ulSortOrder = Nothing+ , _ulCustomer = Nothing+ , _ulQuery = Nothing+ , _ulProjection = ULPBasic+ , _ulPageToken = Nothing+ , _ulMaxResults = Nothing+ }++-- | Event on which subscription is intended (if subscribing)+ulEvent :: Lens' UsersList (Maybe UsersListEvent)+ulEvent = lens _ulEvent (\ s a -> s{_ulEvent = a})++-- | Column to use for sorting results+ulOrderBy :: Lens' UsersList (Maybe UsersListOrderBy)+ulOrderBy+ = lens _ulOrderBy (\ s a -> s{_ulOrderBy = a})++-- | Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.+ulViewType :: Lens' UsersList UsersListViewType+ulViewType+ = lens _ulViewType (\ s a -> s{_ulViewType = a})++-- | Comma-separated list of schema names. All fields from these schemas are+-- fetched. This should only be set when projection=custom.+ulCustomFieldMask :: Lens' UsersList (Maybe Text)+ulCustomFieldMask+ = lens _ulCustomFieldMask+ (\ s a -> s{_ulCustomFieldMask = a})++-- | Name of the domain. Fill this field to get users from only this domain.+-- To return all users in a multi-domain fill customer field instead.+ulDomain :: Lens' UsersList (Maybe Text)+ulDomain = lens _ulDomain (\ s a -> s{_ulDomain = a})++-- | If set to true retrieves the list of deleted users. Default is false+ulShowDeleted :: Lens' UsersList (Maybe Text)+ulShowDeleted+ = lens _ulShowDeleted+ (\ s a -> s{_ulShowDeleted = a})++-- | Whether to return results in ascending or descending order.+ulSortOrder :: Lens' UsersList (Maybe UsersListSortOrder)+ulSortOrder+ = lens _ulSortOrder (\ s a -> s{_ulSortOrder = a})++-- | Immutable id of the Google Apps account. In case of multi-domain, to+-- fetch all users for a customer, fill this field instead of domain.+ulCustomer :: Lens' UsersList (Maybe Text)+ulCustomer+ = lens _ulCustomer (\ s a -> s{_ulCustomer = a})++-- | Query string search. Should be of the form \"\". Complete documentation+-- is at+-- https:\/\/developers.google.com\/admin-sdk\/directory\/v1\/guides\/search-users+ulQuery :: Lens' UsersList (Maybe Text)+ulQuery = lens _ulQuery (\ s a -> s{_ulQuery = a})++-- | What subset of fields to fetch for this user.+ulProjection :: Lens' UsersList UsersListProjection+ulProjection+ = lens _ulProjection (\ s a -> s{_ulProjection = a})++-- | Token to specify next page in the list+ulPageToken :: Lens' UsersList (Maybe Text)+ulPageToken+ = lens _ulPageToken (\ s a -> s{_ulPageToken = a})++-- | Maximum number of results to return. Default is 100. Max allowed is 500+ulMaxResults :: Lens' UsersList (Maybe Int32)+ulMaxResults+ = lens _ulMaxResults (\ s a -> s{_ulMaxResults = a})+ . mapping _Coerce++instance GoogleRequest UsersList where+ type Rs UsersList = Users+ requestClient UsersList{..}+ = go _ulEvent _ulOrderBy (Just _ulViewType)+ _ulCustomFieldMask+ _ulDomain+ _ulShowDeleted+ _ulSortOrder+ _ulCustomer+ _ulQuery+ (Just _ulProjection)+ _ulPageToken+ _ulMaxResults+ (Just AltJSON)+ directoryService+ where go+ = buildClient (Proxy :: Proxy UsersListResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/MakeAdmin.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Users.MakeAdmin+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- change admin status of a user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.makeAdmin@.+module Network.Google.Resource.Directory.Users.MakeAdmin+ (+ -- * REST Resource+ UsersMakeAdminResource++ -- * Creating a Request+ , usersMakeAdmin+ , UsersMakeAdmin++ -- * Request Lenses+ , umaPayload+ , umaUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.makeAdmin@ method which the+-- 'UsersMakeAdmin' request conforms to.+type UsersMakeAdminResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "makeAdmin" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] UserMakeAdmin :> Post '[JSON] ()++-- | change admin status of a user+--+-- /See:/ 'usersMakeAdmin' smart constructor.+data UsersMakeAdmin = UsersMakeAdmin+ { _umaPayload :: !UserMakeAdmin+ , _umaUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersMakeAdmin' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'umaPayload'+--+-- * 'umaUserKey'+usersMakeAdmin+ :: UserMakeAdmin -- ^ 'umaPayload'+ -> Text -- ^ 'umaUserKey'+ -> UsersMakeAdmin+usersMakeAdmin pUmaPayload_ pUmaUserKey_ =+ UsersMakeAdmin+ { _umaPayload = pUmaPayload_+ , _umaUserKey = pUmaUserKey_+ }++-- | Multipart request metadata.+umaPayload :: Lens' UsersMakeAdmin UserMakeAdmin+umaPayload+ = lens _umaPayload (\ s a -> s{_umaPayload = a})++-- | Email or immutable Id of the user as admin+umaUserKey :: Lens' UsersMakeAdmin Text+umaUserKey+ = lens _umaUserKey (\ s a -> s{_umaUserKey = a})++instance GoogleRequest UsersMakeAdmin where+ type Rs UsersMakeAdmin = ()+ requestClient UsersMakeAdmin{..}+ = go _umaUserKey (Just AltJSON) _umaPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy UsersMakeAdminResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Patch.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Users.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- update user. This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.patch@.+module Network.Google.Resource.Directory.Users.Patch+ (+ -- * REST Resource+ UsersPatchResource++ -- * Creating a Request+ , usersPatch+ , UsersPatch++ -- * Request Lenses+ , upPayload+ , upUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.patch@ method which the+-- 'UsersPatch' request conforms to.+type UsersPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] User :> Patch '[JSON] User++-- | update user. This method supports patch semantics.+--+-- /See:/ 'usersPatch' smart constructor.+data UsersPatch = UsersPatch+ { _upPayload :: !User+ , _upUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'upPayload'+--+-- * 'upUserKey'+usersPatch+ :: User -- ^ 'upPayload'+ -> Text -- ^ 'upUserKey'+ -> UsersPatch+usersPatch pUpPayload_ pUpUserKey_ =+ UsersPatch+ { _upPayload = pUpPayload_+ , _upUserKey = pUpUserKey_+ }++-- | Multipart request metadata.+upPayload :: Lens' UsersPatch User+upPayload+ = lens _upPayload (\ s a -> s{_upPayload = a})++-- | Email or immutable Id of the user. If Id, it should match with id of+-- user object+upUserKey :: Lens' UsersPatch Text+upUserKey+ = lens _upUserKey (\ s a -> s{_upUserKey = a})++instance GoogleRequest UsersPatch where+ type Rs UsersPatch = User+ requestClient UsersPatch{..}+ = go _upUserKey (Just AltJSON) _upPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy UsersPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Photos/Delete.hs view
@@ -0,0 +1,86 @@+{-# 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.Directory.Users.Photos.Delete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Remove photos for the user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.photos.delete@.+module Network.Google.Resource.Directory.Users.Photos.Delete+ (+ -- * REST Resource+ UsersPhotosDeleteResource++ -- * Creating a Request+ , usersPhotosDelete+ , UsersPhotosDelete++ -- * Request Lenses+ , updUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.photos.delete@ method which the+-- 'UsersPhotosDelete' request conforms to.+type UsersPhotosDeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "photos" :>+ "thumbnail" :>+ QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Remove photos for the user+--+-- /See:/ 'usersPhotosDelete' smart constructor.+newtype UsersPhotosDelete = UsersPhotosDelete+ { _updUserKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersPhotosDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'updUserKey'+usersPhotosDelete+ :: Text -- ^ 'updUserKey'+ -> UsersPhotosDelete+usersPhotosDelete pUpdUserKey_ =+ UsersPhotosDelete+ { _updUserKey = pUpdUserKey_+ }++-- | Email or immutable Id of the user+updUserKey :: Lens' UsersPhotosDelete Text+updUserKey+ = lens _updUserKey (\ s a -> s{_updUserKey = a})++instance GoogleRequest UsersPhotosDelete where+ type Rs UsersPhotosDelete = ()+ requestClient UsersPhotosDelete{..}+ = go _updUserKey (Just AltJSON) directoryService+ where go+ = buildClient+ (Proxy :: Proxy UsersPhotosDeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Photos/Get.hs view
@@ -0,0 +1,85 @@+{-# 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.Directory.Users.Photos.Get+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve photo of a user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.photos.get@.+module Network.Google.Resource.Directory.Users.Photos.Get+ (+ -- * REST Resource+ UsersPhotosGetResource++ -- * Creating a Request+ , usersPhotosGet+ , UsersPhotosGet++ -- * Request Lenses+ , upgUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.photos.get@ method which the+-- 'UsersPhotosGet' request conforms to.+type UsersPhotosGetResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "photos" :>+ "thumbnail" :>+ QueryParam "alt" AltJSON :> Get '[JSON] UserPhoto++-- | Retrieve photo of a user+--+-- /See:/ 'usersPhotosGet' smart constructor.+newtype UsersPhotosGet = UsersPhotosGet+ { _upgUserKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersPhotosGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'upgUserKey'+usersPhotosGet+ :: Text -- ^ 'upgUserKey'+ -> UsersPhotosGet+usersPhotosGet pUpgUserKey_ =+ UsersPhotosGet+ { _upgUserKey = pUpgUserKey_+ }++-- | Email or immutable Id of the user+upgUserKey :: Lens' UsersPhotosGet Text+upgUserKey+ = lens _upgUserKey (\ s a -> s{_upgUserKey = a})++instance GoogleRequest UsersPhotosGet where+ type Rs UsersPhotosGet = UserPhoto+ requestClient UsersPhotosGet{..}+ = go _upgUserKey (Just AltJSON) directoryService+ where go+ = buildClient (Proxy :: Proxy UsersPhotosGetResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Photos/Patch.hs view
@@ -0,0 +1,99 @@+{-# 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.Directory.Users.Photos.Patch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Add a photo for the user. This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.photos.patch@.+module Network.Google.Resource.Directory.Users.Photos.Patch+ (+ -- * REST Resource+ UsersPhotosPatchResource++ -- * Creating a Request+ , usersPhotosPatch+ , UsersPhotosPatch++ -- * Request Lenses+ , uppPayload+ , uppUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.photos.patch@ method which the+-- 'UsersPhotosPatch' request conforms to.+type UsersPhotosPatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "photos" :>+ "thumbnail" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] UserPhoto :> Patch '[JSON] UserPhoto++-- | Add a photo for the user. This method supports patch semantics.+--+-- /See:/ 'usersPhotosPatch' smart constructor.+data UsersPhotosPatch = UsersPhotosPatch+ { _uppPayload :: !UserPhoto+ , _uppUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersPhotosPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uppPayload'+--+-- * 'uppUserKey'+usersPhotosPatch+ :: UserPhoto -- ^ 'uppPayload'+ -> Text -- ^ 'uppUserKey'+ -> UsersPhotosPatch+usersPhotosPatch pUppPayload_ pUppUserKey_ =+ UsersPhotosPatch+ { _uppPayload = pUppPayload_+ , _uppUserKey = pUppUserKey_+ }++-- | Multipart request metadata.+uppPayload :: Lens' UsersPhotosPatch UserPhoto+uppPayload+ = lens _uppPayload (\ s a -> s{_uppPayload = a})++-- | Email or immutable Id of the user+uppUserKey :: Lens' UsersPhotosPatch Text+uppUserKey+ = lens _uppUserKey (\ s a -> s{_uppUserKey = a})++instance GoogleRequest UsersPhotosPatch where+ type Rs UsersPhotosPatch = UserPhoto+ requestClient UsersPhotosPatch{..}+ = go _uppUserKey (Just AltJSON) _uppPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy UsersPhotosPatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Photos/Update.hs view
@@ -0,0 +1,99 @@+{-# 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.Directory.Users.Photos.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Add a photo for the user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.photos.update@.+module Network.Google.Resource.Directory.Users.Photos.Update+ (+ -- * REST Resource+ UsersPhotosUpdateResource++ -- * Creating a Request+ , usersPhotosUpdate+ , UsersPhotosUpdate++ -- * Request Lenses+ , upuPayload+ , upuUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.photos.update@ method which the+-- 'UsersPhotosUpdate' request conforms to.+type UsersPhotosUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "photos" :>+ "thumbnail" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] UserPhoto :> Put '[JSON] UserPhoto++-- | Add a photo for the user+--+-- /See:/ 'usersPhotosUpdate' smart constructor.+data UsersPhotosUpdate = UsersPhotosUpdate+ { _upuPayload :: !UserPhoto+ , _upuUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersPhotosUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'upuPayload'+--+-- * 'upuUserKey'+usersPhotosUpdate+ :: UserPhoto -- ^ 'upuPayload'+ -> Text -- ^ 'upuUserKey'+ -> UsersPhotosUpdate+usersPhotosUpdate pUpuPayload_ pUpuUserKey_ =+ UsersPhotosUpdate+ { _upuPayload = pUpuPayload_+ , _upuUserKey = pUpuUserKey_+ }++-- | Multipart request metadata.+upuPayload :: Lens' UsersPhotosUpdate UserPhoto+upuPayload+ = lens _upuPayload (\ s a -> s{_upuPayload = a})++-- | Email or immutable Id of the user+upuUserKey :: Lens' UsersPhotosUpdate Text+upuUserKey+ = lens _upuUserKey (\ s a -> s{_upuUserKey = a})++instance GoogleRequest UsersPhotosUpdate where+ type Rs UsersPhotosUpdate = UserPhoto+ requestClient UsersPhotosUpdate{..}+ = go _upuUserKey (Just AltJSON) _upuPayload+ directoryService+ where go+ = buildClient+ (Proxy :: Proxy UsersPhotosUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Undelete.hs view
@@ -0,0 +1,97 @@+{-# 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.Directory.Users.Undelete+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Undelete a deleted user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.undelete@.+module Network.Google.Resource.Directory.Users.Undelete+ (+ -- * REST Resource+ UsersUndeleteResource++ -- * Creating a Request+ , usersUndelete+ , UsersUndelete++ -- * Request Lenses+ , uuPayload+ , uuUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.undelete@ method which the+-- 'UsersUndelete' request conforms to.+type UsersUndeleteResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "undelete" :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] UserUndelete :> Post '[JSON] ()++-- | Undelete a deleted user+--+-- /See:/ 'usersUndelete' smart constructor.+data UsersUndelete = UsersUndelete+ { _uuPayload :: !UserUndelete+ , _uuUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersUndelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uuPayload'+--+-- * 'uuUserKey'+usersUndelete+ :: UserUndelete -- ^ 'uuPayload'+ -> Text -- ^ 'uuUserKey'+ -> UsersUndelete+usersUndelete pUuPayload_ pUuUserKey_ =+ UsersUndelete+ { _uuPayload = pUuPayload_+ , _uuUserKey = pUuUserKey_+ }++-- | Multipart request metadata.+uuPayload :: Lens' UsersUndelete UserUndelete+uuPayload+ = lens _uuPayload (\ s a -> s{_uuPayload = a})++-- | The immutable id of the user+uuUserKey :: Lens' UsersUndelete Text+uuUserKey+ = lens _uuUserKey (\ s a -> s{_uuUserKey = a})++instance GoogleRequest UsersUndelete where+ type Rs UsersUndelete = ()+ requestClient UsersUndelete{..}+ = go _uuUserKey (Just AltJSON) _uuPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy UsersUndeleteResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Update.hs view
@@ -0,0 +1,95 @@+{-# 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.Directory.Users.Update+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- update user+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.update@.+module Network.Google.Resource.Directory.Users.Update+ (+ -- * REST Resource+ UsersUpdateResource++ -- * Creating a Request+ , usersUpdate+ , UsersUpdate++ -- * Request Lenses+ , uPayload+ , uUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.update@ method which the+-- 'UsersUpdate' request conforms to.+type UsersUpdateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] User :> Put '[JSON] User++-- | update user+--+-- /See:/ 'usersUpdate' smart constructor.+data UsersUpdate = UsersUpdate+ { _uPayload :: !User+ , _uUserKey :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uPayload'+--+-- * 'uUserKey'+usersUpdate+ :: User -- ^ 'uPayload'+ -> Text -- ^ 'uUserKey'+ -> UsersUpdate+usersUpdate pUPayload_ pUUserKey_ =+ UsersUpdate+ { _uPayload = pUPayload_+ , _uUserKey = pUUserKey_+ }++-- | Multipart request metadata.+uPayload :: Lens' UsersUpdate User+uPayload = lens _uPayload (\ s a -> s{_uPayload = a})++-- | Email or immutable Id of the user. If Id, it should match with id of+-- user object+uUserKey :: Lens' UsersUpdate Text+uUserKey = lens _uUserKey (\ s a -> s{_uUserKey = a})++instance GoogleRequest UsersUpdate where+ type Rs UsersUpdate = User+ requestClient UsersUpdate{..}+ = go _uUserKey (Just AltJSON) _uPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy UsersUpdateResource)+ mempty
+ gen/Network/Google/Resource/Directory/Users/Watch.hs view
@@ -0,0 +1,234 @@+{-# 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.Directory.Users.Watch+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Watch for changes in users list+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.users.watch@.+module Network.Google.Resource.Directory.Users.Watch+ (+ -- * REST Resource+ UsersWatchResource++ -- * Creating a Request+ , usersWatch+ , UsersWatch++ -- * Request Lenses+ , uwEvent+ , uwOrderBy+ , uwViewType+ , uwCustomFieldMask+ , uwDomain+ , uwShowDeleted+ , uwPayload+ , uwSortOrder+ , uwCustomer+ , uwQuery+ , uwProjection+ , uwPageToken+ , uwMaxResults+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.users.watch@ method which the+-- 'UsersWatch' request conforms to.+type UsersWatchResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ "watch" :>+ QueryParam "event" UsersWatchEvent :>+ QueryParam "orderBy" UsersWatchOrderBy :>+ QueryParam "viewType" UsersWatchViewType :>+ QueryParam "customFieldMask" Text :>+ QueryParam "domain" Text :>+ QueryParam "showDeleted" Text :>+ QueryParam "sortOrder" UsersWatchSortOrder :>+ QueryParam "customer" Text :>+ QueryParam "query" Text :>+ QueryParam "projection" UsersWatchProjection :>+ QueryParam "pageToken" Text :>+ QueryParam "maxResults" (Textual Int32) :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Channel :>+ Post '[JSON] Channel++-- | Watch for changes in users list+--+-- /See:/ 'usersWatch' smart constructor.+data UsersWatch = UsersWatch+ { _uwEvent :: !(Maybe UsersWatchEvent)+ , _uwOrderBy :: !(Maybe UsersWatchOrderBy)+ , _uwViewType :: !UsersWatchViewType+ , _uwCustomFieldMask :: !(Maybe Text)+ , _uwDomain :: !(Maybe Text)+ , _uwShowDeleted :: !(Maybe Text)+ , _uwPayload :: !Channel+ , _uwSortOrder :: !(Maybe UsersWatchSortOrder)+ , _uwCustomer :: !(Maybe Text)+ , _uwQuery :: !(Maybe Text)+ , _uwProjection :: !UsersWatchProjection+ , _uwPageToken :: !(Maybe Text)+ , _uwMaxResults :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UsersWatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uwEvent'+--+-- * 'uwOrderBy'+--+-- * 'uwViewType'+--+-- * 'uwCustomFieldMask'+--+-- * 'uwDomain'+--+-- * 'uwShowDeleted'+--+-- * 'uwPayload'+--+-- * 'uwSortOrder'+--+-- * 'uwCustomer'+--+-- * 'uwQuery'+--+-- * 'uwProjection'+--+-- * 'uwPageToken'+--+-- * 'uwMaxResults'+usersWatch+ :: Channel -- ^ 'uwPayload'+ -> UsersWatch+usersWatch pUwPayload_ =+ UsersWatch+ { _uwEvent = Nothing+ , _uwOrderBy = Nothing+ , _uwViewType = UWVTAdminView+ , _uwCustomFieldMask = Nothing+ , _uwDomain = Nothing+ , _uwShowDeleted = Nothing+ , _uwPayload = pUwPayload_+ , _uwSortOrder = Nothing+ , _uwCustomer = Nothing+ , _uwQuery = Nothing+ , _uwProjection = UWPBasic+ , _uwPageToken = Nothing+ , _uwMaxResults = Nothing+ }++-- | Event on which subscription is intended (if subscribing)+uwEvent :: Lens' UsersWatch (Maybe UsersWatchEvent)+uwEvent = lens _uwEvent (\ s a -> s{_uwEvent = a})++-- | Column to use for sorting results+uwOrderBy :: Lens' UsersWatch (Maybe UsersWatchOrderBy)+uwOrderBy+ = lens _uwOrderBy (\ s a -> s{_uwOrderBy = a})++-- | Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.+uwViewType :: Lens' UsersWatch UsersWatchViewType+uwViewType+ = lens _uwViewType (\ s a -> s{_uwViewType = a})++-- | Comma-separated list of schema names. All fields from these schemas are+-- fetched. This should only be set when projection=custom.+uwCustomFieldMask :: Lens' UsersWatch (Maybe Text)+uwCustomFieldMask+ = lens _uwCustomFieldMask+ (\ s a -> s{_uwCustomFieldMask = a})++-- | Name of the domain. Fill this field to get users from only this domain.+-- To return all users in a multi-domain fill customer field instead.+uwDomain :: Lens' UsersWatch (Maybe Text)+uwDomain = lens _uwDomain (\ s a -> s{_uwDomain = a})++-- | If set to true retrieves the list of deleted users. Default is false+uwShowDeleted :: Lens' UsersWatch (Maybe Text)+uwShowDeleted+ = lens _uwShowDeleted+ (\ s a -> s{_uwShowDeleted = a})++-- | Multipart request metadata.+uwPayload :: Lens' UsersWatch Channel+uwPayload+ = lens _uwPayload (\ s a -> s{_uwPayload = a})++-- | Whether to return results in ascending or descending order.+uwSortOrder :: Lens' UsersWatch (Maybe UsersWatchSortOrder)+uwSortOrder+ = lens _uwSortOrder (\ s a -> s{_uwSortOrder = a})++-- | Immutable id of the Google Apps account. In case of multi-domain, to+-- fetch all users for a customer, fill this field instead of domain.+uwCustomer :: Lens' UsersWatch (Maybe Text)+uwCustomer+ = lens _uwCustomer (\ s a -> s{_uwCustomer = a})++-- | Query string search. Should be of the form \"\". Complete documentation+-- is at+-- https:\/\/developers.google.com\/admin-sdk\/directory\/v1\/guides\/search-users+uwQuery :: Lens' UsersWatch (Maybe Text)+uwQuery = lens _uwQuery (\ s a -> s{_uwQuery = a})++-- | What subset of fields to fetch for this user.+uwProjection :: Lens' UsersWatch UsersWatchProjection+uwProjection+ = lens _uwProjection (\ s a -> s{_uwProjection = a})++-- | Token to specify next page in the list+uwPageToken :: Lens' UsersWatch (Maybe Text)+uwPageToken+ = lens _uwPageToken (\ s a -> s{_uwPageToken = a})++-- | Maximum number of results to return. Default is 100. Max allowed is 500+uwMaxResults :: Lens' UsersWatch (Maybe Int32)+uwMaxResults+ = lens _uwMaxResults (\ s a -> s{_uwMaxResults = a})+ . mapping _Coerce++instance GoogleRequest UsersWatch where+ type Rs UsersWatch = Channel+ requestClient UsersWatch{..}+ = go _uwEvent _uwOrderBy (Just _uwViewType)+ _uwCustomFieldMask+ _uwDomain+ _uwShowDeleted+ _uwSortOrder+ _uwCustomer+ _uwQuery+ (Just _uwProjection)+ _uwPageToken+ _uwMaxResults+ (Just AltJSON)+ _uwPayload+ directoryService+ where go+ = buildClient (Proxy :: Proxy UsersWatchResource)+ mempty
+ gen/Network/Google/Resource/Directory/VerificationCodes/Generate.hs view
@@ -0,0 +1,87 @@+{-# 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.Directory.VerificationCodes.Generate+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Generate new backup verification codes for the user.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.verificationCodes.generate@.+module Network.Google.Resource.Directory.VerificationCodes.Generate+ (+ -- * REST Resource+ VerificationCodesGenerateResource++ -- * Creating a Request+ , verificationCodesGenerate+ , VerificationCodesGenerate++ -- * Request Lenses+ , vcgUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.verificationCodes.generate@ method which the+-- 'VerificationCodesGenerate' request conforms to.+type VerificationCodesGenerateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "verificationCodes" :>+ "generate" :>+ QueryParam "alt" AltJSON :> Post '[JSON] ()++-- | Generate new backup verification codes for the user.+--+-- /See:/ 'verificationCodesGenerate' smart constructor.+newtype VerificationCodesGenerate = VerificationCodesGenerate+ { _vcgUserKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VerificationCodesGenerate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vcgUserKey'+verificationCodesGenerate+ :: Text -- ^ 'vcgUserKey'+ -> VerificationCodesGenerate+verificationCodesGenerate pVcgUserKey_ =+ VerificationCodesGenerate+ { _vcgUserKey = pVcgUserKey_+ }++-- | Email or immutable Id of the user+vcgUserKey :: Lens' VerificationCodesGenerate Text+vcgUserKey+ = lens _vcgUserKey (\ s a -> s{_vcgUserKey = a})++instance GoogleRequest VerificationCodesGenerate+ where+ type Rs VerificationCodesGenerate = ()+ requestClient VerificationCodesGenerate{..}+ = go _vcgUserKey (Just AltJSON) directoryService+ where go+ = buildClient+ (Proxy :: Proxy VerificationCodesGenerateResource)+ mempty
+ gen/Network/Google/Resource/Directory/VerificationCodes/Invalidate.hs view
@@ -0,0 +1,87 @@+{-# 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.Directory.VerificationCodes.Invalidate+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Invalidate the current backup verification codes for the user.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.verificationCodes.invalidate@.+module Network.Google.Resource.Directory.VerificationCodes.Invalidate+ (+ -- * REST Resource+ VerificationCodesInvalidateResource++ -- * Creating a Request+ , verificationCodesInvalidate+ , VerificationCodesInvalidate++ -- * Request Lenses+ , vciUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.verificationCodes.invalidate@ method which the+-- 'VerificationCodesInvalidate' request conforms to.+type VerificationCodesInvalidateResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "verificationCodes" :>+ "invalidate" :>+ QueryParam "alt" AltJSON :> Post '[JSON] ()++-- | Invalidate the current backup verification codes for the user.+--+-- /See:/ 'verificationCodesInvalidate' smart constructor.+newtype VerificationCodesInvalidate = VerificationCodesInvalidate+ { _vciUserKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VerificationCodesInvalidate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vciUserKey'+verificationCodesInvalidate+ :: Text -- ^ 'vciUserKey'+ -> VerificationCodesInvalidate+verificationCodesInvalidate pVciUserKey_ =+ VerificationCodesInvalidate+ { _vciUserKey = pVciUserKey_+ }++-- | Email or immutable Id of the user+vciUserKey :: Lens' VerificationCodesInvalidate Text+vciUserKey+ = lens _vciUserKey (\ s a -> s{_vciUserKey = a})++instance GoogleRequest VerificationCodesInvalidate+ where+ type Rs VerificationCodesInvalidate = ()+ requestClient VerificationCodesInvalidate{..}+ = go _vciUserKey (Just AltJSON) directoryService+ where go+ = buildClient+ (Proxy :: Proxy VerificationCodesInvalidateResource)+ mempty
+ gen/Network/Google/Resource/Directory/VerificationCodes/List.hs view
@@ -0,0 +1,89 @@+{-# 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.Directory.VerificationCodes.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the current set of valid backup verification codes for the+-- specified user.+--+-- /See:/ <https://developers.google.com/admin-sdk/directory/ Admin Directory API Reference> for @directory.verificationCodes.list@.+module Network.Google.Resource.Directory.VerificationCodes.List+ (+ -- * REST Resource+ VerificationCodesListResource++ -- * Creating a Request+ , verificationCodesList+ , VerificationCodesList++ -- * Request Lenses+ , vclUserKey+ ) where++import Network.Google.Directory.Types+import Network.Google.Prelude++-- | A resource alias for @directory.verificationCodes.list@ method which the+-- 'VerificationCodesList' request conforms to.+type VerificationCodesListResource =+ "admin" :>+ "directory" :>+ "v1" :>+ "users" :>+ Capture "userKey" Text :>+ "verificationCodes" :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] VerificationCodes++-- | Returns the current set of valid backup verification codes for the+-- specified user.+--+-- /See:/ 'verificationCodesList' smart constructor.+newtype VerificationCodesList = VerificationCodesList+ { _vclUserKey :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VerificationCodesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vclUserKey'+verificationCodesList+ :: Text -- ^ 'vclUserKey'+ -> VerificationCodesList+verificationCodesList pVclUserKey_ =+ VerificationCodesList+ { _vclUserKey = pVclUserKey_+ }++-- | Identifies the user in the API request. The value can be the user\'s+-- primary email address, alias email address, or unique user ID.+vclUserKey :: Lens' VerificationCodesList Text+vclUserKey+ = lens _vclUserKey (\ s a -> s{_vclUserKey = a})++instance GoogleRequest VerificationCodesList where+ type Rs VerificationCodesList = VerificationCodes+ requestClient VerificationCodesList{..}+ = go _vclUserKey (Just AltJSON) directoryService+ where go+ = buildClient+ (Proxy :: Proxy VerificationCodesListResource)+ mempty
+ gogol-admin-directory.cabal view
@@ -0,0 +1,136 @@+name: gogol-admin-directory+version: 0.0.1+synopsis: Google Admin Directory SDK.+homepage: https://github.com/brendanhay/gogol+bug-reports: https://github.com/brendanhay/gogol/issues+license: OtherLicense+license-file: LICENSE+author: Brendan Hay+maintainer: Brendan Hay <brendan.g.hay@gmail.com>+copyright: Copyright (c) 2015 Brendan Hay+category: Network, Google, Cloud+build-type: Simple+cabal-version: >= 1.10+extra-source-files: README.md++description:+ The Admin SDK Directory API lets you view and manage enterprise+ resources such as users and groups, administrative notifications,+ security features, and more.+ .+ /Warning:/ This is an experimental prototype/preview release which is still+ under exploratory development and not intended for public use, caveat emptor!+ .+ This library is compatible with version @directory_v1@+ of the API.++source-repository head+ type: git+ location: git://github.com/brendanhay/gogol.git++library+ default-language: Haskell2010+ hs-source-dirs: src gen++ ghc-options: -Wall++ exposed-modules:+ Network.Google.Directory+ , Network.Google.Directory.Types+ , Network.Google.Resource.Admin.Channels.Stop+ , Network.Google.Resource.Directory.Asps.Delete+ , Network.Google.Resource.Directory.Asps.Get+ , Network.Google.Resource.Directory.Asps.List+ , Network.Google.Resource.Directory.ChromeosDevices.Get+ , Network.Google.Resource.Directory.ChromeosDevices.List+ , Network.Google.Resource.Directory.ChromeosDevices.Patch+ , Network.Google.Resource.Directory.ChromeosDevices.Update+ , Network.Google.Resource.Directory.Customers.Get+ , Network.Google.Resource.Directory.Customers.Patch+ , Network.Google.Resource.Directory.Customers.Update+ , Network.Google.Resource.Directory.DomainAliases.Delete+ , Network.Google.Resource.Directory.DomainAliases.Get+ , Network.Google.Resource.Directory.DomainAliases.Insert+ , Network.Google.Resource.Directory.DomainAliases.List+ , Network.Google.Resource.Directory.Domains.Delete+ , Network.Google.Resource.Directory.Domains.Get+ , Network.Google.Resource.Directory.Domains.Insert+ , Network.Google.Resource.Directory.Domains.List+ , Network.Google.Resource.Directory.Groups.Aliases.Delete+ , Network.Google.Resource.Directory.Groups.Aliases.Insert+ , Network.Google.Resource.Directory.Groups.Aliases.List+ , Network.Google.Resource.Directory.Groups.Delete+ , Network.Google.Resource.Directory.Groups.Get+ , Network.Google.Resource.Directory.Groups.Insert+ , Network.Google.Resource.Directory.Groups.List+ , Network.Google.Resource.Directory.Groups.Patch+ , Network.Google.Resource.Directory.Groups.Update+ , Network.Google.Resource.Directory.Members.Delete+ , Network.Google.Resource.Directory.Members.Get+ , Network.Google.Resource.Directory.Members.Insert+ , Network.Google.Resource.Directory.Members.List+ , Network.Google.Resource.Directory.Members.Patch+ , Network.Google.Resource.Directory.Members.Update+ , Network.Google.Resource.Directory.MobileDevices.Action+ , Network.Google.Resource.Directory.MobileDevices.Delete+ , Network.Google.Resource.Directory.MobileDevices.Get+ , Network.Google.Resource.Directory.MobileDevices.List+ , Network.Google.Resource.Directory.Notifications.Delete+ , Network.Google.Resource.Directory.Notifications.Get+ , Network.Google.Resource.Directory.Notifications.List+ , Network.Google.Resource.Directory.Notifications.Patch+ , Network.Google.Resource.Directory.Notifications.Update+ , Network.Google.Resource.Directory.OrgUnits.Delete+ , Network.Google.Resource.Directory.OrgUnits.Get+ , Network.Google.Resource.Directory.OrgUnits.Insert+ , Network.Google.Resource.Directory.OrgUnits.List+ , Network.Google.Resource.Directory.OrgUnits.Patch+ , Network.Google.Resource.Directory.OrgUnits.Update+ , Network.Google.Resource.Directory.Privileges.List+ , Network.Google.Resource.Directory.RoleAssignments.Delete+ , Network.Google.Resource.Directory.RoleAssignments.Get+ , Network.Google.Resource.Directory.RoleAssignments.Insert+ , Network.Google.Resource.Directory.RoleAssignments.List+ , Network.Google.Resource.Directory.Roles.Delete+ , Network.Google.Resource.Directory.Roles.Get+ , Network.Google.Resource.Directory.Roles.Insert+ , Network.Google.Resource.Directory.Roles.List+ , Network.Google.Resource.Directory.Roles.Patch+ , Network.Google.Resource.Directory.Roles.Update+ , Network.Google.Resource.Directory.Schemas.Delete+ , Network.Google.Resource.Directory.Schemas.Get+ , Network.Google.Resource.Directory.Schemas.Insert+ , Network.Google.Resource.Directory.Schemas.List+ , Network.Google.Resource.Directory.Schemas.Patch+ , Network.Google.Resource.Directory.Schemas.Update+ , Network.Google.Resource.Directory.Tokens.Delete+ , Network.Google.Resource.Directory.Tokens.Get+ , Network.Google.Resource.Directory.Tokens.List+ , Network.Google.Resource.Directory.Users.Aliases.Delete+ , Network.Google.Resource.Directory.Users.Aliases.Insert+ , Network.Google.Resource.Directory.Users.Aliases.List+ , Network.Google.Resource.Directory.Users.Aliases.Watch+ , Network.Google.Resource.Directory.Users.Delete+ , Network.Google.Resource.Directory.Users.Get+ , Network.Google.Resource.Directory.Users.Insert+ , Network.Google.Resource.Directory.Users.List+ , Network.Google.Resource.Directory.Users.MakeAdmin+ , Network.Google.Resource.Directory.Users.Patch+ , Network.Google.Resource.Directory.Users.Photos.Delete+ , Network.Google.Resource.Directory.Users.Photos.Get+ , Network.Google.Resource.Directory.Users.Photos.Patch+ , Network.Google.Resource.Directory.Users.Photos.Update+ , Network.Google.Resource.Directory.Users.Undelete+ , Network.Google.Resource.Directory.Users.Update+ , Network.Google.Resource.Directory.Users.Watch+ , Network.Google.Resource.Directory.VerificationCodes.Generate+ , Network.Google.Resource.Directory.VerificationCodes.Invalidate+ , Network.Google.Resource.Directory.VerificationCodes.List++ other-modules:+ Network.Google.Directory.Types.Product+ , Network.Google.Directory.Types.Sum++ build-depends:+ gogol-core == 0.0.1.*+ , base >= 4.7 && < 5