gogol-discovery 0.5.0 → 1.0.0
raw patch · 15 files changed
+2129/−2912 lines, 15 filesdep −basedep ~gogol-coresetup-changed
Dependencies removed: base
Dependency ranges changed: gogol-core
Files
- README.md +1/−1
- Setup.hs +2/−1
- gen/Gogol/Discovery.hs +172/−0
- gen/Gogol/Discovery/Apis/GetRest.hs +85/−0
- gen/Gogol/Discovery/Apis/List.hs +84/−0
- gen/Gogol/Discovery/Internal/Product.hs +1539/−0
- gen/Gogol/Discovery/Internal/Sum.hs +31/−0
- gen/Gogol/Discovery/Types.hs +163/−0
- gen/Network/Google/Discovery.hs +0/−281
- gen/Network/Google/Discovery/Types.hs +0/−262
- gen/Network/Google/Discovery/Types/Product.hs +0/−2119
- gen/Network/Google/Discovery/Types/Sum.hs +0/−19
- gen/Network/Google/Resource/Discovery/APIs/GetRest.hs +0/−98
- gen/Network/Google/Resource/Discovery/APIs/List.hs +0/−93
- gogol-discovery.cabal +52/−38
README.md view
@@ -8,7 +8,7 @@ ## Version -`0.5.0`+`1.0.0` ## Description
Setup.hs view
@@ -1,2 +1,3 @@-import Distribution.Simple+import Distribution.Simple+ main = defaultMain
+ gen/Gogol/Discovery.hs view
@@ -0,0 +1,172 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE ImportQualifiedPost #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- |+-- Module : Gogol.Discovery+-- Copyright : (c) 2015-2025 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+gogol@gmail.com>+-- Toni Cebrián <toni@tonicebrian.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides information about other Google APIs, such as what APIs are available, the resource, and method details for each API.+--+-- /See:/ <https://developers.google.com/discovery/ API Discovery Service Reference>+module Gogol.Discovery+ ( -- * Configuration+ discoveryService,++ -- * Resources++ -- ** discovery.apis.getRest+ DiscoveryApisGetRestResource,+ DiscoveryApisGetRest (..),+ newDiscoveryApisGetRest,++ -- ** discovery.apis.list+ DiscoveryApisListResource,+ DiscoveryApisList (..),+ newDiscoveryApisList,++ -- * Types++ -- ** DirectoryList+ DirectoryList (..),+ newDirectoryList,++ -- ** DirectoryList_ItemsItem+ DirectoryList_ItemsItem (..),+ newDirectoryList_ItemsItem,++ -- ** DirectoryList_ItemsItem_Icons+ DirectoryList_ItemsItem_Icons (..),+ newDirectoryList_ItemsItem_Icons,++ -- ** JsonSchema+ JsonSchema (..),+ newJsonSchema,++ -- ** JsonSchema_Annotations+ JsonSchema_Annotations (..),+ newJsonSchema_Annotations,++ -- ** JsonSchema_Properties+ JsonSchema_Properties (..),+ newJsonSchema_Properties,++ -- ** JsonSchema_Variant+ JsonSchema_Variant (..),+ newJsonSchema_Variant,++ -- ** JsonSchema_Variant_MapItem+ JsonSchema_Variant_MapItem (..),+ newJsonSchema_Variant_MapItem,++ -- ** RestDescription+ RestDescription (..),+ newRestDescription,++ -- ** RestDescription_Auth+ RestDescription_Auth (..),+ newRestDescription_Auth,++ -- ** RestDescription_Auth_Oauth2+ RestDescription_Auth_Oauth2 (..),+ newRestDescription_Auth_Oauth2,++ -- ** RestDescription_Auth_Oauth2_Scopes+ RestDescription_Auth_Oauth2_Scopes (..),+ newRestDescription_Auth_Oauth2_Scopes,++ -- ** RestDescription_Auth_Oauth2_ScopesAdditional+ RestDescription_Auth_Oauth2_ScopesAdditional (..),+ newRestDescription_Auth_Oauth2_ScopesAdditional,++ -- ** RestDescription_EndpointsItem+ RestDescription_EndpointsItem (..),+ newRestDescription_EndpointsItem,++ -- ** RestDescription_Icons+ RestDescription_Icons (..),+ newRestDescription_Icons,++ -- ** RestDescription_Methods+ RestDescription_Methods (..),+ newRestDescription_Methods,++ -- ** RestDescription_Parameters+ RestDescription_Parameters (..),+ newRestDescription_Parameters,++ -- ** RestDescription_Resources+ RestDescription_Resources (..),+ newRestDescription_Resources,++ -- ** RestDescription_Schemas+ RestDescription_Schemas (..),+ newRestDescription_Schemas,++ -- ** RestMethod+ RestMethod (..),+ newRestMethod,++ -- ** RestMethod_MediaUpload+ RestMethod_MediaUpload (..),+ newRestMethod_MediaUpload,++ -- ** RestMethod_MediaUpload_Protocols+ RestMethod_MediaUpload_Protocols (..),+ newRestMethod_MediaUpload_Protocols,++ -- ** RestMethod_MediaUpload_Protocols_Resumable+ RestMethod_MediaUpload_Protocols_Resumable (..),+ newRestMethod_MediaUpload_Protocols_Resumable,++ -- ** RestMethod_MediaUpload_Protocols_Simple+ RestMethod_MediaUpload_Protocols_Simple (..),+ newRestMethod_MediaUpload_Protocols_Simple,++ -- ** RestMethod_Parameters+ RestMethod_Parameters (..),+ newRestMethod_Parameters,++ -- ** RestMethod_Request+ RestMethod_Request (..),+ newRestMethod_Request,++ -- ** RestMethod_Response+ RestMethod_Response (..),+ newRestMethod_Response,++ -- ** RestResource+ RestResource (..),+ newRestResource,++ -- ** RestResource_Methods+ RestResource_Methods (..),+ newRestResource_Methods,++ -- ** RestResource_Resources+ RestResource_Resources (..),+ newRestResource_Resources,+ )+where++import Gogol.Discovery.Apis.GetRest+import Gogol.Discovery.Apis.List+import Gogol.Discovery.Types
+ gen/Gogol/Discovery/Apis/GetRest.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE ImportQualifiedPost #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- |+-- Module : Gogol.Discovery.Apis.GetRest+-- Copyright : (c) 2015-2025 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+gogol@gmail.com>+-- Toni Cebrián <toni@tonicebrian.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve the description of a particular version of an api.+--+-- /See:/ <https://developers.google.com/discovery/ API Discovery Service Reference> for @discovery.apis.getRest@.+module Gogol.Discovery.Apis.GetRest+ ( -- * Resource+ DiscoveryApisGetRestResource,++ -- ** Constructing a Request+ DiscoveryApisGetRest (..),+ newDiscoveryApisGetRest,+ )+where++import Gogol.Discovery.Types+import Gogol.Prelude qualified as Core++-- | A resource alias for @discovery.apis.getRest@ method which the+-- 'DiscoveryApisGetRest' request conforms to.+type DiscoveryApisGetRestResource =+ "discovery"+ Core.:> "v1"+ Core.:> "apis"+ Core.:> Core.Capture "api" Core.Text+ Core.:> Core.Capture "version" Core.Text+ Core.:> "rest"+ Core.:> Core.QueryParam "alt" Core.AltJSON+ Core.:> Core.Get '[Core.JSON] RestDescription++-- | Retrieve the description of a particular version of an api.+--+-- /See:/ 'newDiscoveryApisGetRest' smart constructor.+data DiscoveryApisGetRest = DiscoveryApisGetRest+ { -- | The name of the API.+ api :: Core.Text,+ -- | The version of the API.+ version :: Core.Text+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'DiscoveryApisGetRest' with the minimum fields required to make a request.+newDiscoveryApisGetRest ::+ -- | The name of the API. See 'api'.+ Core.Text ->+ -- | The version of the API. See 'version'.+ Core.Text ->+ DiscoveryApisGetRest+newDiscoveryApisGetRest api version =+ DiscoveryApisGetRest {api = api, version = version}++instance Core.GoogleRequest DiscoveryApisGetRest where+ type Rs DiscoveryApisGetRest = RestDescription+ type Scopes DiscoveryApisGetRest = '[]+ requestClient DiscoveryApisGetRest {..} =+ go api version (Core.Just Core.AltJSON) discoveryService+ where+ go =+ Core.buildClient+ (Core.Proxy :: Core.Proxy DiscoveryApisGetRestResource)+ Core.mempty
+ gen/Gogol/Discovery/Apis/List.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE ImportQualifiedPost #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- |+-- Module : Gogol.Discovery.Apis.List+-- Copyright : (c) 2015-2025 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+gogol@gmail.com>+-- Toni Cebrián <toni@tonicebrian.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieve the list of APIs supported at this endpoint.+--+-- /See:/ <https://developers.google.com/discovery/ API Discovery Service Reference> for @discovery.apis.list@.+module Gogol.Discovery.Apis.List+ ( -- * Resource+ DiscoveryApisListResource,++ -- ** Constructing a Request+ DiscoveryApisList (..),+ newDiscoveryApisList,+ )+where++import Gogol.Discovery.Types+import Gogol.Prelude qualified as Core++-- | A resource alias for @discovery.apis.list@ method which the+-- 'DiscoveryApisList' request conforms to.+type DiscoveryApisListResource =+ "discovery"+ Core.:> "v1"+ Core.:> "apis"+ Core.:> Core.QueryParam "name" Core.Text+ Core.:> Core.QueryParam "preferred" Core.Bool+ Core.:> Core.QueryParam "alt" Core.AltJSON+ Core.:> Core.Get '[Core.JSON] DirectoryList++-- | Retrieve the list of APIs supported at this endpoint.+--+-- /See:/ 'newDiscoveryApisList' smart constructor.+data DiscoveryApisList = DiscoveryApisList+ { -- | Only include APIs with the given name.+ name :: (Core.Maybe Core.Text),+ -- | Return only the preferred version of an API.+ preferred :: Core.Bool+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'DiscoveryApisList' with the minimum fields required to make a request.+newDiscoveryApisList ::+ DiscoveryApisList+newDiscoveryApisList =+ DiscoveryApisList {name = Core.Nothing, preferred = Core.False}++instance Core.GoogleRequest DiscoveryApisList where+ type Rs DiscoveryApisList = DirectoryList+ type Scopes DiscoveryApisList = '[]+ requestClient DiscoveryApisList {..} =+ go+ name+ (Core.Just preferred)+ (Core.Just Core.AltJSON)+ discoveryService+ where+ go =+ Core.buildClient+ (Core.Proxy :: Core.Proxy DiscoveryApisListResource)+ Core.mempty
+ gen/Gogol/Discovery/Internal/Product.hs view
@@ -0,0 +1,1539 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE ImportQualifiedPost #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- |+-- Module : Gogol.Discovery.Internal.Product+-- Copyright : (c) 2015-2025 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+gogol@gmail.com>+-- Toni Cebrián <toni@tonicebrian.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Gogol.Discovery.Internal.Product+ ( -- * DirectoryList+ DirectoryList (..),+ newDirectoryList,++ -- * DirectoryList_ItemsItem+ DirectoryList_ItemsItem (..),+ newDirectoryList_ItemsItem,++ -- * DirectoryList_ItemsItem_Icons+ DirectoryList_ItemsItem_Icons (..),+ newDirectoryList_ItemsItem_Icons,++ -- * JsonSchema+ JsonSchema (..),+ newJsonSchema,++ -- * JsonSchema_Annotations+ JsonSchema_Annotations (..),+ newJsonSchema_Annotations,++ -- * JsonSchema_Properties+ JsonSchema_Properties (..),+ newJsonSchema_Properties,++ -- * JsonSchema_Variant+ JsonSchema_Variant (..),+ newJsonSchema_Variant,++ -- * JsonSchema_Variant_MapItem+ JsonSchema_Variant_MapItem (..),+ newJsonSchema_Variant_MapItem,++ -- * RestDescription+ RestDescription (..),+ newRestDescription,++ -- * RestDescription_Auth+ RestDescription_Auth (..),+ newRestDescription_Auth,++ -- * RestDescription_Auth_Oauth2+ RestDescription_Auth_Oauth2 (..),+ newRestDescription_Auth_Oauth2,++ -- * RestDescription_Auth_Oauth2_Scopes+ RestDescription_Auth_Oauth2_Scopes (..),+ newRestDescription_Auth_Oauth2_Scopes,++ -- * RestDescription_Auth_Oauth2_ScopesAdditional+ RestDescription_Auth_Oauth2_ScopesAdditional (..),+ newRestDescription_Auth_Oauth2_ScopesAdditional,++ -- * RestDescription_EndpointsItem+ RestDescription_EndpointsItem (..),+ newRestDescription_EndpointsItem,++ -- * RestDescription_Icons+ RestDescription_Icons (..),+ newRestDescription_Icons,++ -- * RestDescription_Methods+ RestDescription_Methods (..),+ newRestDescription_Methods,++ -- * RestDescription_Parameters+ RestDescription_Parameters (..),+ newRestDescription_Parameters,++ -- * RestDescription_Resources+ RestDescription_Resources (..),+ newRestDescription_Resources,++ -- * RestDescription_Schemas+ RestDescription_Schemas (..),+ newRestDescription_Schemas,++ -- * RestMethod+ RestMethod (..),+ newRestMethod,++ -- * RestMethod_MediaUpload+ RestMethod_MediaUpload (..),+ newRestMethod_MediaUpload,++ -- * RestMethod_MediaUpload_Protocols+ RestMethod_MediaUpload_Protocols (..),+ newRestMethod_MediaUpload_Protocols,++ -- * RestMethod_MediaUpload_Protocols_Resumable+ RestMethod_MediaUpload_Protocols_Resumable (..),+ newRestMethod_MediaUpload_Protocols_Resumable,++ -- * RestMethod_MediaUpload_Protocols_Simple+ RestMethod_MediaUpload_Protocols_Simple (..),+ newRestMethod_MediaUpload_Protocols_Simple,++ -- * RestMethod_Parameters+ RestMethod_Parameters (..),+ newRestMethod_Parameters,++ -- * RestMethod_Request+ RestMethod_Request (..),+ newRestMethod_Request,++ -- * RestMethod_Response+ RestMethod_Response (..),+ newRestMethod_Response,++ -- * RestResource+ RestResource (..),+ newRestResource,++ -- * RestResource_Methods+ RestResource_Methods (..),+ newRestResource_Methods,++ -- * RestResource_Resources+ RestResource_Resources (..),+ newRestResource_Resources,+ )+where++import Gogol.Discovery.Internal.Sum+import Gogol.Prelude qualified as Core++--+-- /See:/ 'newDirectoryList' smart constructor.+data DirectoryList = DirectoryList+ { -- | Indicate the version of the Discovery API used to generate this doc.+ discoveryVersion :: Core.Text,+ -- | The individual directory entries. One entry per api\/version pair.+ items :: (Core.Maybe [DirectoryList_ItemsItem]),+ -- | The kind for this response.+ kind :: Core.Text+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'DirectoryList' with the minimum fields required to make a request.+newDirectoryList ::+ DirectoryList+newDirectoryList =+ DirectoryList+ { discoveryVersion = "v1",+ items = Core.Nothing,+ kind = "discovery#directoryList"+ }++instance Core.FromJSON DirectoryList where+ parseJSON =+ Core.withObject+ "DirectoryList"+ ( \o ->+ DirectoryList+ Core.<$> (o Core..:? "discoveryVersion" Core..!= "v1")+ Core.<*> (o Core..:? "items")+ Core.<*> (o Core..:? "kind" Core..!= "discovery#directoryList")+ )++instance Core.ToJSON DirectoryList where+ toJSON DirectoryList {..} =+ Core.object+ ( Core.catMaybes+ [ Core.Just ("discoveryVersion" Core..= discoveryVersion),+ ("items" Core..=) Core.<$> items,+ Core.Just ("kind" Core..= kind)+ ]+ )++--+-- /See:/ 'newDirectoryList_ItemsItem' smart constructor.+data DirectoryList_ItemsItem = DirectoryList_ItemsItem+ { -- | The description of this API.+ description :: (Core.Maybe Core.Text),+ -- | A link to the discovery document.+ discoveryLink :: (Core.Maybe Core.Text),+ -- | The URL for the discovery REST document.+ discoveryRestUrl :: (Core.Maybe Core.Text),+ -- | A link to human readable documentation for the API.+ documentationLink :: (Core.Maybe Core.Text),+ -- | Links to 16x16 and 32x32 icons representing the API.+ icons :: (Core.Maybe DirectoryList_ItemsItem_Icons),+ -- | The id of this API.+ id :: (Core.Maybe Core.Text),+ -- | The kind for this response.+ kind :: Core.Text,+ -- | Labels for the status of this API, such as labs or deprecated.+ labels :: (Core.Maybe [Core.Text]),+ -- | The name of the API.+ name :: (Core.Maybe Core.Text),+ -- | True if this version is the preferred version to use.+ preferred :: (Core.Maybe Core.Bool),+ -- | The title of this API.+ title :: (Core.Maybe Core.Text),+ -- | The version of the API.+ version :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'DirectoryList_ItemsItem' with the minimum fields required to make a request.+newDirectoryList_ItemsItem ::+ DirectoryList_ItemsItem+newDirectoryList_ItemsItem =+ DirectoryList_ItemsItem+ { description = Core.Nothing,+ discoveryLink = Core.Nothing,+ discoveryRestUrl = Core.Nothing,+ documentationLink = Core.Nothing,+ icons = Core.Nothing,+ id = Core.Nothing,+ kind = "discovery#directoryItem",+ labels = Core.Nothing,+ name = Core.Nothing,+ preferred = Core.Nothing,+ title = Core.Nothing,+ version = Core.Nothing+ }++instance Core.FromJSON DirectoryList_ItemsItem where+ parseJSON =+ Core.withObject+ "DirectoryList_ItemsItem"+ ( \o ->+ DirectoryList_ItemsItem+ Core.<$> (o Core..:? "description")+ Core.<*> (o Core..:? "discoveryLink")+ Core.<*> (o Core..:? "discoveryRestUrl")+ Core.<*> (o Core..:? "documentationLink")+ Core.<*> (o Core..:? "icons")+ Core.<*> (o Core..:? "id")+ Core.<*> (o Core..:? "kind" Core..!= "discovery#directoryItem")+ Core.<*> (o Core..:? "labels")+ Core.<*> (o Core..:? "name")+ Core.<*> (o Core..:? "preferred")+ Core.<*> (o Core..:? "title")+ Core.<*> (o Core..:? "version")+ )++instance Core.ToJSON DirectoryList_ItemsItem where+ toJSON DirectoryList_ItemsItem {..} =+ Core.object+ ( Core.catMaybes+ [ ("description" Core..=) Core.<$> description,+ ("discoveryLink" Core..=) Core.<$> discoveryLink,+ ("discoveryRestUrl" Core..=) Core.<$> discoveryRestUrl,+ ("documentationLink" Core..=) Core.<$> documentationLink,+ ("icons" Core..=) Core.<$> icons,+ ("id" Core..=) Core.<$> id,+ Core.Just ("kind" Core..= kind),+ ("labels" Core..=) Core.<$> labels,+ ("name" Core..=) Core.<$> name,+ ("preferred" Core..=) Core.<$> preferred,+ ("title" Core..=) Core.<$> title,+ ("version" Core..=) Core.<$> version+ ]+ )++-- | Links to 16x16 and 32x32 icons representing the API.+--+-- /See:/ 'newDirectoryList_ItemsItem_Icons' smart constructor.+data DirectoryList_ItemsItem_Icons = DirectoryList_ItemsItem_Icons+ { -- | The URL of the 16x16 icon.+ x16 :: (Core.Maybe Core.Text),+ -- | The URL of the 32x32 icon.+ x32 :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'DirectoryList_ItemsItem_Icons' with the minimum fields required to make a request.+newDirectoryList_ItemsItem_Icons ::+ DirectoryList_ItemsItem_Icons+newDirectoryList_ItemsItem_Icons =+ DirectoryList_ItemsItem_Icons+ { x16 = Core.Nothing,+ x32 = Core.Nothing+ }++instance Core.FromJSON DirectoryList_ItemsItem_Icons where+ parseJSON =+ Core.withObject+ "DirectoryList_ItemsItem_Icons"+ ( \o ->+ DirectoryList_ItemsItem_Icons+ Core.<$> (o Core..:? "x16")+ Core.<*> (o Core..:? "x32")+ )++instance Core.ToJSON DirectoryList_ItemsItem_Icons where+ toJSON DirectoryList_ItemsItem_Icons {..} =+ Core.object+ ( Core.catMaybes+ [("x16" Core..=) Core.<$> x16, ("x32" Core..=) Core.<$> x32]+ )++--+-- /See:/ 'newJsonSchema' smart constructor.+data JsonSchema = JsonSchema+ { -- | A reference to another schema. The value of this property is the \"id\" of another schema.+ ref :: (Core.Maybe Core.Text),+ -- | If this is a schema for an object, this property is the schema for any additional properties with dynamic keys on this object.+ additionalProperties :: (Core.Maybe JsonSchema),+ -- | Additional information about this property.+ annotations :: (Core.Maybe JsonSchema_Annotations),+ -- | The default value of this property (if one exists).+ default' :: (Core.Maybe Core.Text),+ -- | Whether the parameter is deprecated.+ deprecated :: (Core.Maybe Core.Bool),+ -- | A description of this object.+ description :: (Core.Maybe Core.Text),+ -- | Values this parameter may take (if it is an enum).+ enum :: (Core.Maybe [Core.Text]),+ -- | The deprecation status for the enums. Each position maps to the corresponding value in the \"enum\" array.+ enumDeprecated :: (Core.Maybe [Core.Bool]),+ -- | The descriptions for the enums. Each position maps to the corresponding value in the \"enum\" array.+ enumDescriptions :: (Core.Maybe [Core.Text]),+ -- | An additional regular expression or key that helps constrain the value. For more details see: http:\/\/tools.ietf.org\/html\/draft-zyp-json-schema-03#section-5.23+ format :: (Core.Maybe Core.Text),+ -- | Unique identifier for this schema.+ id :: (Core.Maybe Core.Text),+ -- | If this is a schema for an array, this property is the schema for each element in the array.+ items :: (Core.Maybe JsonSchema),+ -- | Whether this parameter goes in the query or the path for REST requests.+ location :: (Core.Maybe Core.Text),+ -- | The maximum value of this parameter.+ maximum :: (Core.Maybe Core.Text),+ -- | The minimum value of this parameter.+ minimum :: (Core.Maybe Core.Text),+ -- | The regular expression this parameter must conform to. Uses Java 6 regex format: http:\/\/docs.oracle.com\/javase\/6\/docs\/api\/java\/util\/regex\/Pattern.html+ pattern' :: (Core.Maybe Core.Text),+ -- | If this is a schema for an object, list the schema for each property of this object.+ properties :: (Core.Maybe JsonSchema_Properties),+ -- | The value is read-only, generated by the service. The value cannot be modified by the client. If the value is included in a POST, PUT, or PATCH request, it is ignored by the service.+ readOnly :: (Core.Maybe Core.Bool),+ -- | Whether this parameter may appear multiple times.+ repeated :: (Core.Maybe Core.Bool),+ -- | Whether the parameter is required.+ required :: (Core.Maybe Core.Bool),+ -- | The value type for this schema. A list of values can be found here: http:\/\/tools.ietf.org\/html\/draft-zyp-json-schema-03#section-5.1+ type' :: (Core.Maybe Core.Text),+ -- | In a variant data type, the value of one property is used to determine how to interpret the entire entity. Its value must exist in a map of descriminant values to schema names.+ variant :: (Core.Maybe JsonSchema_Variant)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'JsonSchema' with the minimum fields required to make a request.+newJsonSchema ::+ JsonSchema+newJsonSchema =+ JsonSchema+ { ref = Core.Nothing,+ additionalProperties = Core.Nothing,+ annotations = Core.Nothing,+ default' = Core.Nothing,+ deprecated = Core.Nothing,+ description = Core.Nothing,+ enum = Core.Nothing,+ enumDeprecated = Core.Nothing,+ enumDescriptions = Core.Nothing,+ format = Core.Nothing,+ id = Core.Nothing,+ items = Core.Nothing,+ location = Core.Nothing,+ maximum = Core.Nothing,+ minimum = Core.Nothing,+ pattern' = Core.Nothing,+ properties = Core.Nothing,+ readOnly = Core.Nothing,+ repeated = Core.Nothing,+ required = Core.Nothing,+ type' = Core.Nothing,+ variant = Core.Nothing+ }++instance Core.FromJSON JsonSchema where+ parseJSON =+ Core.withObject+ "JsonSchema"+ ( \o ->+ JsonSchema+ Core.<$> (o Core..:? "$ref")+ Core.<*> (o Core..:? "additionalProperties")+ Core.<*> (o Core..:? "annotations")+ Core.<*> (o Core..:? "default")+ Core.<*> (o Core..:? "deprecated")+ Core.<*> (o Core..:? "description")+ Core.<*> (o Core..:? "enum")+ Core.<*> (o Core..:? "enumDeprecated")+ Core.<*> (o Core..:? "enumDescriptions")+ Core.<*> (o Core..:? "format")+ Core.<*> (o Core..:? "id")+ Core.<*> (o Core..:? "items")+ Core.<*> (o Core..:? "location")+ Core.<*> (o Core..:? "maximum")+ Core.<*> (o Core..:? "minimum")+ Core.<*> (o Core..:? "pattern")+ Core.<*> (o Core..:? "properties")+ Core.<*> (o Core..:? "readOnly")+ Core.<*> (o Core..:? "repeated")+ Core.<*> (o Core..:? "required")+ Core.<*> (o Core..:? "type")+ Core.<*> (o Core..:? "variant")+ )++instance Core.ToJSON JsonSchema where+ toJSON JsonSchema {..} =+ Core.object+ ( Core.catMaybes+ [ ("$ref" Core..=) Core.<$> ref,+ ("additionalProperties" Core..=) Core.<$> additionalProperties,+ ("annotations" Core..=) Core.<$> annotations,+ ("default" Core..=) Core.<$> default',+ ("deprecated" Core..=) Core.<$> deprecated,+ ("description" Core..=) Core.<$> description,+ ("enum" Core..=) Core.<$> enum,+ ("enumDeprecated" Core..=) Core.<$> enumDeprecated,+ ("enumDescriptions" Core..=) Core.<$> enumDescriptions,+ ("format" Core..=) Core.<$> format,+ ("id" Core..=) Core.<$> id,+ ("items" Core..=) Core.<$> items,+ ("location" Core..=) Core.<$> location,+ ("maximum" Core..=) Core.<$> maximum,+ ("minimum" Core..=) Core.<$> minimum,+ ("pattern" Core..=) Core.<$> pattern',+ ("properties" Core..=) Core.<$> properties,+ ("readOnly" Core..=) Core.<$> readOnly,+ ("repeated" Core..=) Core.<$> repeated,+ ("required" Core..=) Core.<$> required,+ ("type" Core..=) Core.<$> type',+ ("variant" Core..=) Core.<$> variant+ ]+ )++-- | Additional information about this property.+--+-- /See:/ 'newJsonSchema_Annotations' smart constructor.+newtype JsonSchema_Annotations = JsonSchema_Annotations+ { -- | A list of methods for which this property is required on requests.+ required :: (Core.Maybe [Core.Text])+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'JsonSchema_Annotations' with the minimum fields required to make a request.+newJsonSchema_Annotations ::+ JsonSchema_Annotations+newJsonSchema_Annotations =+ JsonSchema_Annotations {required = Core.Nothing}++instance Core.FromJSON JsonSchema_Annotations where+ parseJSON =+ Core.withObject+ "JsonSchema_Annotations"+ (\o -> JsonSchema_Annotations Core.<$> (o Core..:? "required"))++instance Core.ToJSON JsonSchema_Annotations where+ toJSON JsonSchema_Annotations {..} =+ Core.object+ (Core.catMaybes [("required" Core..=) Core.<$> required])++-- | If this is a schema for an object, list the schema for each property of this object.+--+-- /See:/ 'newJsonSchema_Properties' smart constructor.+newtype JsonSchema_Properties = JsonSchema_Properties+ { -- | A single property of this object. The value is itself a JSON Schema object describing this property.+ additional :: (Core.HashMap Core.Text JsonSchema)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'JsonSchema_Properties' with the minimum fields required to make a request.+newJsonSchema_Properties ::+ -- | A single property of this object. The value is itself a JSON Schema object describing this property. See 'additional'.+ Core.HashMap Core.Text JsonSchema ->+ JsonSchema_Properties+newJsonSchema_Properties additional =+ JsonSchema_Properties {additional = additional}++instance Core.FromJSON JsonSchema_Properties where+ parseJSON =+ Core.withObject+ "JsonSchema_Properties"+ (\o -> JsonSchema_Properties Core.<$> (Core.parseJSONObject o))++instance Core.ToJSON JsonSchema_Properties where+ toJSON JsonSchema_Properties {..} = Core.toJSON additional++-- | In a variant data type, the value of one property is used to determine how to interpret the entire entity. Its value must exist in a map of descriminant values to schema names.+--+-- /See:/ 'newJsonSchema_Variant' smart constructor.+data JsonSchema_Variant = JsonSchema_Variant+ { -- | The name of the type discriminant property.+ discriminant :: (Core.Maybe Core.Text),+ -- | The map of discriminant value to schema to use for parsing..+ map :: (Core.Maybe [JsonSchema_Variant_MapItem])+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'JsonSchema_Variant' with the minimum fields required to make a request.+newJsonSchema_Variant ::+ JsonSchema_Variant+newJsonSchema_Variant =+ JsonSchema_Variant+ { discriminant = Core.Nothing,+ map = Core.Nothing+ }++instance Core.FromJSON JsonSchema_Variant where+ parseJSON =+ Core.withObject+ "JsonSchema_Variant"+ ( \o ->+ JsonSchema_Variant+ Core.<$> (o Core..:? "discriminant")+ Core.<*> (o Core..:? "map")+ )++instance Core.ToJSON JsonSchema_Variant where+ toJSON JsonSchema_Variant {..} =+ Core.object+ ( Core.catMaybes+ [ ("discriminant" Core..=) Core.<$> discriminant,+ ("map" Core..=) Core.<$> map+ ]+ )++--+-- /See:/ 'newJsonSchema_Variant_MapItem' smart constructor.+data JsonSchema_Variant_MapItem = JsonSchema_Variant_MapItem+ { ref :: (Core.Maybe Core.Text),+ typeValue :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'JsonSchema_Variant_MapItem' with the minimum fields required to make a request.+newJsonSchema_Variant_MapItem ::+ JsonSchema_Variant_MapItem+newJsonSchema_Variant_MapItem =+ JsonSchema_Variant_MapItem+ { ref = Core.Nothing,+ typeValue = Core.Nothing+ }++instance Core.FromJSON JsonSchema_Variant_MapItem where+ parseJSON =+ Core.withObject+ "JsonSchema_Variant_MapItem"+ ( \o ->+ JsonSchema_Variant_MapItem+ Core.<$> (o Core..:? "$ref")+ Core.<*> (o Core..:? "type_value")+ )++instance Core.ToJSON JsonSchema_Variant_MapItem where+ toJSON JsonSchema_Variant_MapItem {..} =+ Core.object+ ( Core.catMaybes+ [ ("$ref" Core..=) Core.<$> ref,+ ("type_value" Core..=) Core.<$> typeValue+ ]+ )++--+-- /See:/ 'newRestDescription' smart constructor.+data RestDescription = RestDescription+ { -- | Authentication information.+ auth :: (Core.Maybe RestDescription_Auth),+ -- | [DEPRECATED] The base path for REST requests.+ basePath :: (Core.Maybe Core.Text),+ -- | [DEPRECATED] The base URL for REST requests.+ baseUrl :: (Core.Maybe Core.Text),+ -- | The path for REST batch requests.+ batchPath :: (Core.Maybe Core.Text),+ -- | Indicates how the API name should be capitalized and split into various parts. Useful for generating pretty class names.+ canonicalName :: (Core.Maybe Core.Text),+ -- | The description of this API.+ description :: (Core.Maybe Core.Text),+ -- | Indicate the version of the Discovery API used to generate this doc.+ discoveryVersion :: Core.Text,+ -- | A link to human readable documentation for the API.+ documentationLink :: (Core.Maybe Core.Text),+ -- | A list of location-based endpoint objects for this API. Each object contains the endpoint URL, location, description and deprecation status.+ endpoints :: (Core.Maybe [RestDescription_EndpointsItem]),+ -- | The ETag for this response.+ etag :: (Core.Maybe Core.Text),+ -- | Enable exponential backoff for suitable methods in the generated clients.+ exponentialBackoffDefault :: (Core.Maybe Core.Bool),+ -- | A list of supported features for this API.+ features :: (Core.Maybe [Core.Text]),+ -- | Links to 16x16 and 32x32 icons representing the API.+ icons :: (Core.Maybe RestDescription_Icons),+ -- | The ID of this API.+ id :: (Core.Maybe Core.Text),+ -- | The kind for this response.+ kind :: Core.Text,+ -- | Labels for the status of this API, such as labs or deprecated.+ labels :: (Core.Maybe [Core.Text]),+ -- | API-level methods for this API.+ methods :: (Core.Maybe RestDescription_Methods),+ -- | The name of this API.+ name :: (Core.Maybe Core.Text),+ -- | The domain of the owner of this API. Together with the ownerName and a packagePath values, this can be used to generate a library for this API which would have a unique fully qualified name.+ ownerDomain :: (Core.Maybe Core.Text),+ -- | The name of the owner of this API. See ownerDomain.+ ownerName :: (Core.Maybe Core.Text),+ -- | The package of the owner of this API. See ownerDomain.+ packagePath :: (Core.Maybe Core.Text),+ -- | Common parameters that apply across all apis.+ parameters :: (Core.Maybe RestDescription_Parameters),+ -- | The protocol described by this document.+ protocol :: Core.Text,+ -- | The resources in this API.+ resources :: (Core.Maybe RestDescription_Resources),+ -- | The version of this API.+ revision :: (Core.Maybe Core.Text),+ -- | The root URL under which all API services live.+ rootUrl :: (Core.Maybe Core.Text),+ -- | The schemas for this API.+ schemas :: (Core.Maybe RestDescription_Schemas),+ -- | The base path for all REST requests.+ servicePath :: (Core.Maybe Core.Text),+ -- | The title of this API.+ title :: (Core.Maybe Core.Text),+ -- | The version of this API.+ version :: (Core.Maybe Core.Text),+ versionModule :: (Core.Maybe Core.Bool)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription' with the minimum fields required to make a request.+newRestDescription ::+ RestDescription+newRestDescription =+ RestDescription+ { auth = Core.Nothing,+ basePath = Core.Nothing,+ baseUrl = Core.Nothing,+ batchPath = Core.Nothing,+ canonicalName = Core.Nothing,+ description = Core.Nothing,+ discoveryVersion = "v1",+ documentationLink = Core.Nothing,+ endpoints = Core.Nothing,+ etag = Core.Nothing,+ exponentialBackoffDefault = Core.Nothing,+ features = Core.Nothing,+ icons = Core.Nothing,+ id = Core.Nothing,+ kind = "discovery#restDescription",+ labels = Core.Nothing,+ methods = Core.Nothing,+ name = Core.Nothing,+ ownerDomain = Core.Nothing,+ ownerName = Core.Nothing,+ packagePath = Core.Nothing,+ parameters = Core.Nothing,+ protocol = "rest",+ resources = Core.Nothing,+ revision = Core.Nothing,+ rootUrl = Core.Nothing,+ schemas = Core.Nothing,+ servicePath = Core.Nothing,+ title = Core.Nothing,+ version = Core.Nothing,+ versionModule = Core.Nothing+ }++instance Core.FromJSON RestDescription where+ parseJSON =+ Core.withObject+ "RestDescription"+ ( \o ->+ RestDescription+ Core.<$> (o Core..:? "auth")+ Core.<*> (o Core..:? "basePath")+ Core.<*> (o Core..:? "baseUrl")+ Core.<*> (o Core..:? "batchPath")+ Core.<*> (o Core..:? "canonicalName")+ Core.<*> (o Core..:? "description")+ Core.<*> (o Core..:? "discoveryVersion" Core..!= "v1")+ Core.<*> (o Core..:? "documentationLink")+ Core.<*> (o Core..:? "endpoints")+ Core.<*> (o Core..:? "etag")+ Core.<*> (o Core..:? "exponentialBackoffDefault")+ Core.<*> (o Core..:? "features")+ Core.<*> (o Core..:? "icons")+ Core.<*> (o Core..:? "id")+ Core.<*> (o Core..:? "kind" Core..!= "discovery#restDescription")+ Core.<*> (o Core..:? "labels")+ Core.<*> (o Core..:? "methods")+ Core.<*> (o Core..:? "name")+ Core.<*> (o Core..:? "ownerDomain")+ Core.<*> (o Core..:? "ownerName")+ Core.<*> (o Core..:? "packagePath")+ Core.<*> (o Core..:? "parameters")+ Core.<*> (o Core..:? "protocol" Core..!= "rest")+ Core.<*> (o Core..:? "resources")+ Core.<*> (o Core..:? "revision")+ Core.<*> (o Core..:? "rootUrl")+ Core.<*> (o Core..:? "schemas")+ Core.<*> (o Core..:? "servicePath")+ Core.<*> (o Core..:? "title")+ Core.<*> (o Core..:? "version")+ Core.<*> (o Core..:? "version_module")+ )++instance Core.ToJSON RestDescription where+ toJSON RestDescription {..} =+ Core.object+ ( Core.catMaybes+ [ ("auth" Core..=) Core.<$> auth,+ ("basePath" Core..=) Core.<$> basePath,+ ("baseUrl" Core..=) Core.<$> baseUrl,+ ("batchPath" Core..=) Core.<$> batchPath,+ ("canonicalName" Core..=) Core.<$> canonicalName,+ ("description" Core..=) Core.<$> description,+ Core.Just ("discoveryVersion" Core..= discoveryVersion),+ ("documentationLink" Core..=) Core.<$> documentationLink,+ ("endpoints" Core..=) Core.<$> endpoints,+ ("etag" Core..=) Core.<$> etag,+ ("exponentialBackoffDefault" Core..=)+ Core.<$> exponentialBackoffDefault,+ ("features" Core..=) Core.<$> features,+ ("icons" Core..=) Core.<$> icons,+ ("id" Core..=) Core.<$> id,+ Core.Just ("kind" Core..= kind),+ ("labels" Core..=) Core.<$> labels,+ ("methods" Core..=) Core.<$> methods,+ ("name" Core..=) Core.<$> name,+ ("ownerDomain" Core..=) Core.<$> ownerDomain,+ ("ownerName" Core..=) Core.<$> ownerName,+ ("packagePath" Core..=) Core.<$> packagePath,+ ("parameters" Core..=) Core.<$> parameters,+ Core.Just ("protocol" Core..= protocol),+ ("resources" Core..=) Core.<$> resources,+ ("revision" Core..=) Core.<$> revision,+ ("rootUrl" Core..=) Core.<$> rootUrl,+ ("schemas" Core..=) Core.<$> schemas,+ ("servicePath" Core..=) Core.<$> servicePath,+ ("title" Core..=) Core.<$> title,+ ("version" Core..=) Core.<$> version,+ ("version_module" Core..=) Core.<$> versionModule+ ]+ )++-- | Authentication information.+--+-- /See:/ 'newRestDescription_Auth' smart constructor.+newtype RestDescription_Auth = RestDescription_Auth+ { -- | OAuth 2.0 authentication information.+ oauth2 :: (Core.Maybe RestDescription_Auth_Oauth2)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_Auth' with the minimum fields required to make a request.+newRestDescription_Auth ::+ RestDescription_Auth+newRestDescription_Auth =+ RestDescription_Auth {oauth2 = Core.Nothing}++instance Core.FromJSON RestDescription_Auth where+ parseJSON =+ Core.withObject+ "RestDescription_Auth"+ (\o -> RestDescription_Auth Core.<$> (o Core..:? "oauth2"))++instance Core.ToJSON RestDescription_Auth where+ toJSON RestDescription_Auth {..} =+ Core.object (Core.catMaybes [("oauth2" Core..=) Core.<$> oauth2])++-- | OAuth 2.0 authentication information.+--+-- /See:/ 'newRestDescription_Auth_Oauth2' smart constructor.+newtype RestDescription_Auth_Oauth2 = RestDescription_Auth_Oauth2+ { -- | Available OAuth 2.0 scopes.+ scopes :: (Core.Maybe RestDescription_Auth_Oauth2_Scopes)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_Auth_Oauth2' with the minimum fields required to make a request.+newRestDescription_Auth_Oauth2 ::+ RestDescription_Auth_Oauth2+newRestDescription_Auth_Oauth2 =+ RestDescription_Auth_Oauth2 {scopes = Core.Nothing}++instance Core.FromJSON RestDescription_Auth_Oauth2 where+ parseJSON =+ Core.withObject+ "RestDescription_Auth_Oauth2"+ (\o -> RestDescription_Auth_Oauth2 Core.<$> (o Core..:? "scopes"))++instance Core.ToJSON RestDescription_Auth_Oauth2 where+ toJSON RestDescription_Auth_Oauth2 {..} =+ Core.object (Core.catMaybes [("scopes" Core..=) Core.<$> scopes])++-- | Available OAuth 2.0 scopes.+--+-- /See:/ 'newRestDescription_Auth_Oauth2_Scopes' smart constructor.+newtype RestDescription_Auth_Oauth2_Scopes = RestDescription_Auth_Oauth2_Scopes+ { -- | The scope value.+ additional ::+ ( Core.HashMap+ Core.Text+ RestDescription_Auth_Oauth2_ScopesAdditional+ )+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_Auth_Oauth2_Scopes' with the minimum fields required to make a request.+newRestDescription_Auth_Oauth2_Scopes ::+ -- | The scope value. See 'additional'.+ Core.HashMap+ Core.Text+ RestDescription_Auth_Oauth2_ScopesAdditional ->+ RestDescription_Auth_Oauth2_Scopes+newRestDescription_Auth_Oauth2_Scopes additional =+ RestDescription_Auth_Oauth2_Scopes {additional = additional}++instance Core.FromJSON RestDescription_Auth_Oauth2_Scopes where+ parseJSON =+ Core.withObject+ "RestDescription_Auth_Oauth2_Scopes"+ ( \o ->+ RestDescription_Auth_Oauth2_Scopes+ Core.<$> (Core.parseJSONObject o)+ )++instance Core.ToJSON RestDescription_Auth_Oauth2_Scopes where+ toJSON RestDescription_Auth_Oauth2_Scopes {..} =+ Core.toJSON additional++-- | The scope value.+--+-- /See:/ 'newRestDescription_Auth_Oauth2_ScopesAdditional' smart constructor.+newtype RestDescription_Auth_Oauth2_ScopesAdditional = RestDescription_Auth_Oauth2_ScopesAdditional+ { -- | Description of scope.+ description :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_Auth_Oauth2_ScopesAdditional' with the minimum fields required to make a request.+newRestDescription_Auth_Oauth2_ScopesAdditional ::+ RestDescription_Auth_Oauth2_ScopesAdditional+newRestDescription_Auth_Oauth2_ScopesAdditional =+ RestDescription_Auth_Oauth2_ScopesAdditional+ { description =+ Core.Nothing+ }++instance Core.FromJSON RestDescription_Auth_Oauth2_ScopesAdditional where+ parseJSON =+ Core.withObject+ "RestDescription_Auth_Oauth2_ScopesAdditional"+ ( \o ->+ RestDescription_Auth_Oauth2_ScopesAdditional+ Core.<$> (o Core..:? "description")+ )++instance Core.ToJSON RestDescription_Auth_Oauth2_ScopesAdditional where+ toJSON RestDescription_Auth_Oauth2_ScopesAdditional {..} =+ Core.object+ (Core.catMaybes [("description" Core..=) Core.<$> description])++-- | A single endpoint object+--+-- /See:/ 'newRestDescription_EndpointsItem' smart constructor.+data RestDescription_EndpointsItem = RestDescription_EndpointsItem+ { -- | Whether this endpoint is deprecated+ deprecated :: (Core.Maybe Core.Bool),+ -- | A string describing the host designated by the URL+ description :: (Core.Maybe Core.Text),+ -- | The URL of the endpoint target host+ endpointUrl :: (Core.Maybe Core.Text),+ -- | The location of the endpoint+ location :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_EndpointsItem' with the minimum fields required to make a request.+newRestDescription_EndpointsItem ::+ RestDescription_EndpointsItem+newRestDescription_EndpointsItem =+ RestDescription_EndpointsItem+ { deprecated = Core.Nothing,+ description = Core.Nothing,+ endpointUrl = Core.Nothing,+ location = Core.Nothing+ }++instance Core.FromJSON RestDescription_EndpointsItem where+ parseJSON =+ Core.withObject+ "RestDescription_EndpointsItem"+ ( \o ->+ RestDescription_EndpointsItem+ Core.<$> (o Core..:? "deprecated")+ Core.<*> (o Core..:? "description")+ Core.<*> (o Core..:? "endpointUrl")+ Core.<*> (o Core..:? "location")+ )++instance Core.ToJSON RestDescription_EndpointsItem where+ toJSON RestDescription_EndpointsItem {..} =+ Core.object+ ( Core.catMaybes+ [ ("deprecated" Core..=) Core.<$> deprecated,+ ("description" Core..=) Core.<$> description,+ ("endpointUrl" Core..=) Core.<$> endpointUrl,+ ("location" Core..=) Core.<$> location+ ]+ )++-- | Links to 16x16 and 32x32 icons representing the API.+--+-- /See:/ 'newRestDescription_Icons' smart constructor.+data RestDescription_Icons = RestDescription_Icons+ { -- | The URL of the 16x16 icon.+ x16 :: (Core.Maybe Core.Text),+ -- | The URL of the 32x32 icon.+ x32 :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_Icons' with the minimum fields required to make a request.+newRestDescription_Icons ::+ RestDescription_Icons+newRestDescription_Icons =+ RestDescription_Icons {x16 = Core.Nothing, x32 = Core.Nothing}++instance Core.FromJSON RestDescription_Icons where+ parseJSON =+ Core.withObject+ "RestDescription_Icons"+ ( \o ->+ RestDescription_Icons+ Core.<$> (o Core..:? "x16")+ Core.<*> (o Core..:? "x32")+ )++instance Core.ToJSON RestDescription_Icons where+ toJSON RestDescription_Icons {..} =+ Core.object+ ( Core.catMaybes+ [("x16" Core..=) Core.<$> x16, ("x32" Core..=) Core.<$> x32]+ )++-- | API-level methods for this API.+--+-- /See:/ 'newRestDescription_Methods' smart constructor.+newtype RestDescription_Methods = RestDescription_Methods+ { -- | An individual method description.+ additional :: (Core.HashMap Core.Text RestMethod)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_Methods' with the minimum fields required to make a request.+newRestDescription_Methods ::+ -- | An individual method description. See 'additional'.+ Core.HashMap Core.Text RestMethod ->+ RestDescription_Methods+newRestDescription_Methods additional =+ RestDescription_Methods {additional = additional}++instance Core.FromJSON RestDescription_Methods where+ parseJSON =+ Core.withObject+ "RestDescription_Methods"+ (\o -> RestDescription_Methods Core.<$> (Core.parseJSONObject o))++instance Core.ToJSON RestDescription_Methods where+ toJSON RestDescription_Methods {..} = Core.toJSON additional++-- | Common parameters that apply across all apis.+--+-- /See:/ 'newRestDescription_Parameters' smart constructor.+newtype RestDescription_Parameters = RestDescription_Parameters+ { -- | Description of a single parameter.+ additional :: (Core.HashMap Core.Text JsonSchema)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_Parameters' with the minimum fields required to make a request.+newRestDescription_Parameters ::+ -- | Description of a single parameter. See 'additional'.+ Core.HashMap Core.Text JsonSchema ->+ RestDescription_Parameters+newRestDescription_Parameters additional =+ RestDescription_Parameters {additional = additional}++instance Core.FromJSON RestDescription_Parameters where+ parseJSON =+ Core.withObject+ "RestDescription_Parameters"+ ( \o ->+ RestDescription_Parameters Core.<$> (Core.parseJSONObject o)+ )++instance Core.ToJSON RestDescription_Parameters where+ toJSON RestDescription_Parameters {..} = Core.toJSON additional++-- | The resources in this API.+--+-- /See:/ 'newRestDescription_Resources' smart constructor.+newtype RestDescription_Resources = RestDescription_Resources+ { -- | An individual resource description. Contains methods and sub-resources related to this resource.+ additional :: (Core.HashMap Core.Text RestResource)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_Resources' with the minimum fields required to make a request.+newRestDescription_Resources ::+ -- | An individual resource description. Contains methods and sub-resources related to this resource. See 'additional'.+ Core.HashMap Core.Text RestResource ->+ RestDescription_Resources+newRestDescription_Resources additional =+ RestDescription_Resources {additional = additional}++instance Core.FromJSON RestDescription_Resources where+ parseJSON =+ Core.withObject+ "RestDescription_Resources"+ ( \o ->+ RestDescription_Resources Core.<$> (Core.parseJSONObject o)+ )++instance Core.ToJSON RestDescription_Resources where+ toJSON RestDescription_Resources {..} = Core.toJSON additional++-- | The schemas for this API.+--+-- /See:/ 'newRestDescription_Schemas' smart constructor.+newtype RestDescription_Schemas = RestDescription_Schemas+ { -- | An individual schema description.+ additional :: (Core.HashMap Core.Text JsonSchema)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestDescription_Schemas' with the minimum fields required to make a request.+newRestDescription_Schemas ::+ -- | An individual schema description. See 'additional'.+ Core.HashMap Core.Text JsonSchema ->+ RestDescription_Schemas+newRestDescription_Schemas additional =+ RestDescription_Schemas {additional = additional}++instance Core.FromJSON RestDescription_Schemas where+ parseJSON =+ Core.withObject+ "RestDescription_Schemas"+ (\o -> RestDescription_Schemas Core.<$> (Core.parseJSONObject o))++instance Core.ToJSON RestDescription_Schemas where+ toJSON RestDescription_Schemas {..} = Core.toJSON additional++--+-- /See:/ 'newRestMethod' smart constructor.+data RestMethod = RestMethod+ { -- | The API Version of this method, as passed in via the @X-Goog-Api-Version@ header or @$apiVersion@ query parameter.+ apiVersion :: (Core.Maybe Core.Text),+ -- | Whether this method is deprecated.+ deprecated :: (Core.Maybe Core.Bool),+ -- | Description of this method.+ description :: (Core.Maybe Core.Text),+ -- | Whether this method requires an ETag to be specified. The ETag is sent as an HTTP If-Match or If-None-Match header.+ etagRequired :: (Core.Maybe Core.Bool),+ -- | The URI path of this REST method in (RFC 6570) format without level 2 features ({+var}). Supplementary to the path property.+ flatPath :: (Core.Maybe Core.Text),+ -- | HTTP method used by this method.+ httpMethod :: (Core.Maybe Core.Text),+ -- | A unique ID for this method. This property can be used to match methods between different versions of Discovery.+ id :: (Core.Maybe Core.Text),+ -- | Media upload parameters.+ mediaUpload :: (Core.Maybe RestMethod_MediaUpload),+ -- | Ordered list of required parameters, serves as a hint to clients on how to structure their method signatures. The array is ordered such that the \"most-significant\" parameter appears first.+ parameterOrder :: (Core.Maybe [Core.Text]),+ -- | Details for all parameters in this method.+ parameters :: (Core.Maybe RestMethod_Parameters),+ -- | The URI path of this REST method. Should be used in conjunction with the basePath property at the api-level.+ path :: (Core.Maybe Core.Text),+ -- | The schema for the request.+ request' :: (Core.Maybe RestMethod_Request),+ -- | The schema for the response.+ response :: (Core.Maybe RestMethod_Response),+ -- | OAuth 2.0 scopes applicable to this method.+ scopes :: (Core.Maybe [Core.Text]),+ -- | Whether this method supports media downloads.+ supportsMediaDownload :: (Core.Maybe Core.Bool),+ -- | Whether this method supports media uploads.+ supportsMediaUpload :: (Core.Maybe Core.Bool),+ -- | Whether this method supports subscriptions.+ supportsSubscription :: (Core.Maybe Core.Bool),+ -- | Indicates that downloads from this method should use the download service URL (i.e. \"\/download\"). Only applies if the method supports media download.+ useMediaDownloadService :: (Core.Maybe Core.Bool)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestMethod' with the minimum fields required to make a request.+newRestMethod ::+ RestMethod+newRestMethod =+ RestMethod+ { apiVersion = Core.Nothing,+ deprecated = Core.Nothing,+ description = Core.Nothing,+ etagRequired = Core.Nothing,+ flatPath = Core.Nothing,+ httpMethod = Core.Nothing,+ id = Core.Nothing,+ mediaUpload = Core.Nothing,+ parameterOrder = Core.Nothing,+ parameters = Core.Nothing,+ path = Core.Nothing,+ request' = Core.Nothing,+ response = Core.Nothing,+ scopes = Core.Nothing,+ supportsMediaDownload = Core.Nothing,+ supportsMediaUpload = Core.Nothing,+ supportsSubscription = Core.Nothing,+ useMediaDownloadService = Core.Nothing+ }++instance Core.FromJSON RestMethod where+ parseJSON =+ Core.withObject+ "RestMethod"+ ( \o ->+ RestMethod+ Core.<$> (o Core..:? "apiVersion")+ Core.<*> (o Core..:? "deprecated")+ Core.<*> (o Core..:? "description")+ Core.<*> (o Core..:? "etagRequired")+ Core.<*> (o Core..:? "flatPath")+ Core.<*> (o Core..:? "httpMethod")+ Core.<*> (o Core..:? "id")+ Core.<*> (o Core..:? "mediaUpload")+ Core.<*> (o Core..:? "parameterOrder")+ Core.<*> (o Core..:? "parameters")+ Core.<*> (o Core..:? "path")+ Core.<*> (o Core..:? "request")+ Core.<*> (o Core..:? "response")+ Core.<*> (o Core..:? "scopes")+ Core.<*> (o Core..:? "supportsMediaDownload")+ Core.<*> (o Core..:? "supportsMediaUpload")+ Core.<*> (o Core..:? "supportsSubscription")+ Core.<*> (o Core..:? "useMediaDownloadService")+ )++instance Core.ToJSON RestMethod where+ toJSON RestMethod {..} =+ Core.object+ ( Core.catMaybes+ [ ("apiVersion" Core..=) Core.<$> apiVersion,+ ("deprecated" Core..=) Core.<$> deprecated,+ ("description" Core..=) Core.<$> description,+ ("etagRequired" Core..=) Core.<$> etagRequired,+ ("flatPath" Core..=) Core.<$> flatPath,+ ("httpMethod" Core..=) Core.<$> httpMethod,+ ("id" Core..=) Core.<$> id,+ ("mediaUpload" Core..=) Core.<$> mediaUpload,+ ("parameterOrder" Core..=) Core.<$> parameterOrder,+ ("parameters" Core..=) Core.<$> parameters,+ ("path" Core..=) Core.<$> path,+ ("request" Core..=) Core.<$> request',+ ("response" Core..=) Core.<$> response,+ ("scopes" Core..=) Core.<$> scopes,+ ("supportsMediaDownload" Core..=) Core.<$> supportsMediaDownload,+ ("supportsMediaUpload" Core..=) Core.<$> supportsMediaUpload,+ ("supportsSubscription" Core..=) Core.<$> supportsSubscription,+ ("useMediaDownloadService" Core..=)+ Core.<$> useMediaDownloadService+ ]+ )++-- | Media upload parameters.+--+-- /See:/ 'newRestMethod_MediaUpload' smart constructor.+data RestMethod_MediaUpload = RestMethod_MediaUpload+ { -- | MIME Media Ranges for acceptable media uploads to this method.+ accept :: (Core.Maybe [Core.Text]),+ -- | Maximum size of a media upload, such as \"1MB\", \"2GB\" or \"3TB\".+ maxSize :: (Core.Maybe Core.Text),+ -- | Supported upload protocols.+ protocols :: (Core.Maybe RestMethod_MediaUpload_Protocols)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestMethod_MediaUpload' with the minimum fields required to make a request.+newRestMethod_MediaUpload ::+ RestMethod_MediaUpload+newRestMethod_MediaUpload =+ RestMethod_MediaUpload+ { accept = Core.Nothing,+ maxSize = Core.Nothing,+ protocols = Core.Nothing+ }++instance Core.FromJSON RestMethod_MediaUpload where+ parseJSON =+ Core.withObject+ "RestMethod_MediaUpload"+ ( \o ->+ RestMethod_MediaUpload+ Core.<$> (o Core..:? "accept")+ Core.<*> (o Core..:? "maxSize")+ Core.<*> (o Core..:? "protocols")+ )++instance Core.ToJSON RestMethod_MediaUpload where+ toJSON RestMethod_MediaUpload {..} =+ Core.object+ ( Core.catMaybes+ [ ("accept" Core..=) Core.<$> accept,+ ("maxSize" Core..=) Core.<$> maxSize,+ ("protocols" Core..=) Core.<$> protocols+ ]+ )++-- | Supported upload protocols.+--+-- /See:/ 'newRestMethod_MediaUpload_Protocols' smart constructor.+data RestMethod_MediaUpload_Protocols = RestMethod_MediaUpload_Protocols+ { -- | Supports the Resumable Media Upload protocol.+ resumable :: (Core.Maybe RestMethod_MediaUpload_Protocols_Resumable),+ -- | Supports uploading as a single HTTP request.+ simple :: (Core.Maybe RestMethod_MediaUpload_Protocols_Simple)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestMethod_MediaUpload_Protocols' with the minimum fields required to make a request.+newRestMethod_MediaUpload_Protocols ::+ RestMethod_MediaUpload_Protocols+newRestMethod_MediaUpload_Protocols =+ RestMethod_MediaUpload_Protocols+ { resumable = Core.Nothing,+ simple = Core.Nothing+ }++instance Core.FromJSON RestMethod_MediaUpload_Protocols where+ parseJSON =+ Core.withObject+ "RestMethod_MediaUpload_Protocols"+ ( \o ->+ RestMethod_MediaUpload_Protocols+ Core.<$> (o Core..:? "resumable")+ Core.<*> (o Core..:? "simple")+ )++instance Core.ToJSON RestMethod_MediaUpload_Protocols where+ toJSON RestMethod_MediaUpload_Protocols {..} =+ Core.object+ ( Core.catMaybes+ [ ("resumable" Core..=) Core.<$> resumable,+ ("simple" Core..=) Core.<$> simple+ ]+ )++-- | Supports the Resumable Media Upload protocol.+--+-- /See:/ 'newRestMethod_MediaUpload_Protocols_Resumable' smart constructor.+data RestMethod_MediaUpload_Protocols_Resumable = RestMethod_MediaUpload_Protocols_Resumable+ { -- | True if this endpoint supports uploading multipart media.+ multipart :: Core.Bool,+ -- | The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level.+ path :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestMethod_MediaUpload_Protocols_Resumable' with the minimum fields required to make a request.+newRestMethod_MediaUpload_Protocols_Resumable ::+ RestMethod_MediaUpload_Protocols_Resumable+newRestMethod_MediaUpload_Protocols_Resumable =+ RestMethod_MediaUpload_Protocols_Resumable+ { multipart = Core.True,+ path = Core.Nothing+ }++instance Core.FromJSON RestMethod_MediaUpload_Protocols_Resumable where+ parseJSON =+ Core.withObject+ "RestMethod_MediaUpload_Protocols_Resumable"+ ( \o ->+ RestMethod_MediaUpload_Protocols_Resumable+ Core.<$> (o Core..:? "multipart" Core..!= Core.True)+ Core.<*> (o Core..:? "path")+ )++instance Core.ToJSON RestMethod_MediaUpload_Protocols_Resumable where+ toJSON RestMethod_MediaUpload_Protocols_Resumable {..} =+ Core.object+ ( Core.catMaybes+ [ Core.Just ("multipart" Core..= multipart),+ ("path" Core..=) Core.<$> path+ ]+ )++-- | Supports uploading as a single HTTP request.+--+-- /See:/ 'newRestMethod_MediaUpload_Protocols_Simple' smart constructor.+data RestMethod_MediaUpload_Protocols_Simple = RestMethod_MediaUpload_Protocols_Simple+ { -- | True if this endpoint supports upload multipart media.+ multipart :: Core.Bool,+ -- | The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level.+ path :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestMethod_MediaUpload_Protocols_Simple' with the minimum fields required to make a request.+newRestMethod_MediaUpload_Protocols_Simple ::+ RestMethod_MediaUpload_Protocols_Simple+newRestMethod_MediaUpload_Protocols_Simple =+ RestMethod_MediaUpload_Protocols_Simple+ { multipart = Core.True,+ path = Core.Nothing+ }++instance Core.FromJSON RestMethod_MediaUpload_Protocols_Simple where+ parseJSON =+ Core.withObject+ "RestMethod_MediaUpload_Protocols_Simple"+ ( \o ->+ RestMethod_MediaUpload_Protocols_Simple+ Core.<$> (o Core..:? "multipart" Core..!= Core.True)+ Core.<*> (o Core..:? "path")+ )++instance Core.ToJSON RestMethod_MediaUpload_Protocols_Simple where+ toJSON RestMethod_MediaUpload_Protocols_Simple {..} =+ Core.object+ ( Core.catMaybes+ [ Core.Just ("multipart" Core..= multipart),+ ("path" Core..=) Core.<$> path+ ]+ )++-- | Details for all parameters in this method.+--+-- /See:/ 'newRestMethod_Parameters' smart constructor.+newtype RestMethod_Parameters = RestMethod_Parameters+ { -- | Details for a single parameter in this method.+ additional :: (Core.HashMap Core.Text JsonSchema)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestMethod_Parameters' with the minimum fields required to make a request.+newRestMethod_Parameters ::+ -- | Details for a single parameter in this method. See 'additional'.+ Core.HashMap Core.Text JsonSchema ->+ RestMethod_Parameters+newRestMethod_Parameters additional =+ RestMethod_Parameters {additional = additional}++instance Core.FromJSON RestMethod_Parameters where+ parseJSON =+ Core.withObject+ "RestMethod_Parameters"+ (\o -> RestMethod_Parameters Core.<$> (Core.parseJSONObject o))++instance Core.ToJSON RestMethod_Parameters where+ toJSON RestMethod_Parameters {..} = Core.toJSON additional++-- | The schema for the request.+--+-- /See:/ 'newRestMethod_Request' smart constructor.+data RestMethod_Request = RestMethod_Request+ { -- | Schema ID for the request schema.+ ref :: (Core.Maybe Core.Text),+ -- | parameter name.+ parameterName :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestMethod_Request' with the minimum fields required to make a request.+newRestMethod_Request ::+ RestMethod_Request+newRestMethod_Request =+ RestMethod_Request+ { ref = Core.Nothing,+ parameterName = Core.Nothing+ }++instance Core.FromJSON RestMethod_Request where+ parseJSON =+ Core.withObject+ "RestMethod_Request"+ ( \o ->+ RestMethod_Request+ Core.<$> (o Core..:? "$ref")+ Core.<*> (o Core..:? "parameterName")+ )++instance Core.ToJSON RestMethod_Request where+ toJSON RestMethod_Request {..} =+ Core.object+ ( Core.catMaybes+ [ ("$ref" Core..=) Core.<$> ref,+ ("parameterName" Core..=) Core.<$> parameterName+ ]+ )++-- | The schema for the response.+--+-- /See:/ 'newRestMethod_Response' smart constructor.+newtype RestMethod_Response = RestMethod_Response+ { -- | Schema ID for the response schema.+ ref :: (Core.Maybe Core.Text)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestMethod_Response' with the minimum fields required to make a request.+newRestMethod_Response ::+ RestMethod_Response+newRestMethod_Response = RestMethod_Response {ref = Core.Nothing}++instance Core.FromJSON RestMethod_Response where+ parseJSON =+ Core.withObject+ "RestMethod_Response"+ (\o -> RestMethod_Response Core.<$> (o Core..:? "$ref"))++instance Core.ToJSON RestMethod_Response where+ toJSON RestMethod_Response {..} =+ Core.object (Core.catMaybes [("$ref" Core..=) Core.<$> ref])++--+-- /See:/ 'newRestResource' smart constructor.+data RestResource = RestResource+ { -- | Whether this resource is deprecated.+ deprecated :: (Core.Maybe Core.Bool),+ -- | Methods on this resource.+ methods :: (Core.Maybe RestResource_Methods),+ -- | Sub-resources on this resource.+ resources :: (Core.Maybe RestResource_Resources)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestResource' with the minimum fields required to make a request.+newRestResource ::+ RestResource+newRestResource =+ RestResource+ { deprecated = Core.Nothing,+ methods = Core.Nothing,+ resources = Core.Nothing+ }++instance Core.FromJSON RestResource where+ parseJSON =+ Core.withObject+ "RestResource"+ ( \o ->+ RestResource+ Core.<$> (o Core..:? "deprecated")+ Core.<*> (o Core..:? "methods")+ Core.<*> (o Core..:? "resources")+ )++instance Core.ToJSON RestResource where+ toJSON RestResource {..} =+ Core.object+ ( Core.catMaybes+ [ ("deprecated" Core..=) Core.<$> deprecated,+ ("methods" Core..=) Core.<$> methods,+ ("resources" Core..=) Core.<$> resources+ ]+ )++-- | Methods on this resource.+--+-- /See:/ 'newRestResource_Methods' smart constructor.+newtype RestResource_Methods = RestResource_Methods+ { -- | Description for any methods on this resource.+ additional :: (Core.HashMap Core.Text RestMethod)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestResource_Methods' with the minimum fields required to make a request.+newRestResource_Methods ::+ -- | Description for any methods on this resource. See 'additional'.+ Core.HashMap Core.Text RestMethod ->+ RestResource_Methods+newRestResource_Methods additional =+ RestResource_Methods {additional = additional}++instance Core.FromJSON RestResource_Methods where+ parseJSON =+ Core.withObject+ "RestResource_Methods"+ (\o -> RestResource_Methods Core.<$> (Core.parseJSONObject o))++instance Core.ToJSON RestResource_Methods where+ toJSON RestResource_Methods {..} = Core.toJSON additional++-- | Sub-resources on this resource.+--+-- /See:/ 'newRestResource_Resources' smart constructor.+newtype RestResource_Resources = RestResource_Resources+ { -- | Description for any sub-resources on this resource.+ additional :: (Core.HashMap Core.Text RestResource)+ }+ deriving (Core.Eq, Core.Show, Core.Generic)++-- | Creates a value of 'RestResource_Resources' with the minimum fields required to make a request.+newRestResource_Resources ::+ -- | Description for any sub-resources on this resource. See 'additional'.+ Core.HashMap Core.Text RestResource ->+ RestResource_Resources+newRestResource_Resources additional =+ RestResource_Resources {additional = additional}++instance Core.FromJSON RestResource_Resources where+ parseJSON =+ Core.withObject+ "RestResource_Resources"+ (\o -> RestResource_Resources Core.<$> (Core.parseJSONObject o))++instance Core.ToJSON RestResource_Resources where+ toJSON RestResource_Resources {..} = Core.toJSON additional
+ gen/Gogol/Discovery/Internal/Sum.hs view
@@ -0,0 +1,31 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE ImportQualifiedPost #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- |+-- Module : Gogol.Discovery.Internal.Sum+-- Copyright : (c) 2015-2025 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+gogol@gmail.com>+-- Toni Cebrián <toni@tonicebrian.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Gogol.Discovery.Internal.Sum+ (+ )+where++import Gogol.Prelude qualified as Core
+ gen/Gogol/Discovery/Types.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE ImportQualifiedPost #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- |+-- Module : Gogol.Discovery.Types+-- Copyright : (c) 2015-2025 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+gogol@gmail.com>+-- Toni Cebrián <toni@tonicebrian.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Gogol.Discovery.Types+ ( -- * Configuration+ discoveryService,++ -- * Types++ -- ** DirectoryList+ DirectoryList (..),+ newDirectoryList,++ -- ** DirectoryList_ItemsItem+ DirectoryList_ItemsItem (..),+ newDirectoryList_ItemsItem,++ -- ** DirectoryList_ItemsItem_Icons+ DirectoryList_ItemsItem_Icons (..),+ newDirectoryList_ItemsItem_Icons,++ -- ** JsonSchema+ JsonSchema (..),+ newJsonSchema,++ -- ** JsonSchema_Annotations+ JsonSchema_Annotations (..),+ newJsonSchema_Annotations,++ -- ** JsonSchema_Properties+ JsonSchema_Properties (..),+ newJsonSchema_Properties,++ -- ** JsonSchema_Variant+ JsonSchema_Variant (..),+ newJsonSchema_Variant,++ -- ** JsonSchema_Variant_MapItem+ JsonSchema_Variant_MapItem (..),+ newJsonSchema_Variant_MapItem,++ -- ** RestDescription+ RestDescription (..),+ newRestDescription,++ -- ** RestDescription_Auth+ RestDescription_Auth (..),+ newRestDescription_Auth,++ -- ** RestDescription_Auth_Oauth2+ RestDescription_Auth_Oauth2 (..),+ newRestDescription_Auth_Oauth2,++ -- ** RestDescription_Auth_Oauth2_Scopes+ RestDescription_Auth_Oauth2_Scopes (..),+ newRestDescription_Auth_Oauth2_Scopes,++ -- ** RestDescription_Auth_Oauth2_ScopesAdditional+ RestDescription_Auth_Oauth2_ScopesAdditional (..),+ newRestDescription_Auth_Oauth2_ScopesAdditional,++ -- ** RestDescription_EndpointsItem+ RestDescription_EndpointsItem (..),+ newRestDescription_EndpointsItem,++ -- ** RestDescription_Icons+ RestDescription_Icons (..),+ newRestDescription_Icons,++ -- ** RestDescription_Methods+ RestDescription_Methods (..),+ newRestDescription_Methods,++ -- ** RestDescription_Parameters+ RestDescription_Parameters (..),+ newRestDescription_Parameters,++ -- ** RestDescription_Resources+ RestDescription_Resources (..),+ newRestDescription_Resources,++ -- ** RestDescription_Schemas+ RestDescription_Schemas (..),+ newRestDescription_Schemas,++ -- ** RestMethod+ RestMethod (..),+ newRestMethod,++ -- ** RestMethod_MediaUpload+ RestMethod_MediaUpload (..),+ newRestMethod_MediaUpload,++ -- ** RestMethod_MediaUpload_Protocols+ RestMethod_MediaUpload_Protocols (..),+ newRestMethod_MediaUpload_Protocols,++ -- ** RestMethod_MediaUpload_Protocols_Resumable+ RestMethod_MediaUpload_Protocols_Resumable (..),+ newRestMethod_MediaUpload_Protocols_Resumable,++ -- ** RestMethod_MediaUpload_Protocols_Simple+ RestMethod_MediaUpload_Protocols_Simple (..),+ newRestMethod_MediaUpload_Protocols_Simple,++ -- ** RestMethod_Parameters+ RestMethod_Parameters (..),+ newRestMethod_Parameters,++ -- ** RestMethod_Request+ RestMethod_Request (..),+ newRestMethod_Request,++ -- ** RestMethod_Response+ RestMethod_Response (..),+ newRestMethod_Response,++ -- ** RestResource+ RestResource (..),+ newRestResource,++ -- ** RestResource_Methods+ RestResource_Methods (..),+ newRestResource_Methods,++ -- ** RestResource_Resources+ RestResource_Resources (..),+ newRestResource_Resources,+ )+where++import Gogol.Discovery.Internal.Product+import Gogol.Discovery.Internal.Sum+import Gogol.Prelude qualified as Core++-- | Default request referring to version @v1@ of the API Discovery Service. This contains the host and root path used as a starting point for constructing service requests.+discoveryService :: Core.ServiceConfig+discoveryService =+ Core.defaultService+ (Core.ServiceId "discovery:v1")+ "www.googleapis.com"
− gen/Network/Google/Discovery.hs
@@ -1,281 +0,0 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE TypeOperators #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}---- |--- Module : Network.Google.Discovery--- Copyright : (c) 2015-2016 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)------ Provides information about other Google APIs, such as what APIs are--- available, the resource, and method details for each API.------ /See:/ <https://developers.google.com/discovery/ API Discovery Service Reference>-module Network.Google.Discovery- (- -- * Service Configuration- discoveryService-- -- * API Declaration- , DiscoveryAPI-- -- * Resources-- -- ** discovery.apis.getRest- , module Network.Google.Resource.Discovery.APIs.GetRest-- -- ** discovery.apis.list- , module Network.Google.Resource.Discovery.APIs.List-- -- * Types-- -- ** RestMethodResponse- , RestMethodResponse- , restMethodResponse- , rmrRef-- -- ** RestDescriptionParameters- , RestDescriptionParameters- , restDescriptionParameters- , rdpAddtional-- -- ** RestMethod- , RestMethod- , restMethod- , rmSupportsMediaDownload- , rmParameterOrder- , rmMediaUpload- , rmHTTPMethod- , rmPath- , rmResponse- , rmSupportsMediaUpload- , rmScopes- , rmSupportsSubscription- , rmParameters- , rmId- , rmEtagRequired- , rmUseMediaDownloadService- , rmDescription- , rmRequest-- -- ** RestResource- , RestResource- , restResource- , rrResources- , rrMethods-- -- ** RestDescriptionAuthOAuth2Scopes- , RestDescriptionAuthOAuth2Scopes- , restDescriptionAuthOAuth2Scopes- , rdaoasAddtional-- -- ** RestDescriptionMethods- , RestDescriptionMethods- , restDescriptionMethods- , rdmAddtional-- -- ** DirectoryListItemsItem- , DirectoryListItemsItem- , directoryListItemsItem- , dliiDiscoveryLink- , dliiPreferred- , dliiKind- , dliiIcons- , dliiName- , dliiVersion- , dliiDocumentationLink- , dliiId- , dliiLabels- , dliiTitle- , dliiDescription- , dliiDiscoveryRestURL-- -- ** DirectoryListItemsItemIcons- , DirectoryListItemsItemIcons- , directoryListItemsItemIcons- , dliiiX16- , dliiiX32-- -- ** RestResourceResources- , RestResourceResources- , restResourceResources- , rrrAddtional-- -- ** RestDescriptionAuthOAuth2- , RestDescriptionAuthOAuth2- , restDescriptionAuthOAuth2- , rdaoaScopes-- -- ** RestDescriptionAuthOAuth2ScopesAdditional- , RestDescriptionAuthOAuth2ScopesAdditional- , restDescriptionAuthOAuth2ScopesAdditional- , rdaoasaDescription-- -- ** RestMethodMediaUploadProtocolsSimple- , RestMethodMediaUploadProtocolsSimple- , restMethodMediaUploadProtocolsSimple- , rmmupsPath- , rmmupsMultiPart-- -- ** RestDescriptionIcons- , RestDescriptionIcons- , restDescriptionIcons- , rdiX16- , rdiX32-- -- ** JSONSchemaVariant- , JSONSchemaVariant- , jsonSchemaVariant- , jsvDiscriminant- , jsvMap-- -- ** RestResourceMethods- , RestResourceMethods- , restResourceMethods- , rrmAddtional-- -- ** RestDescriptionAuth- , RestDescriptionAuth- , restDescriptionAuth- , rdaOAuth2-- -- ** RestDescription- , RestDescription- , restDescription- , rdEtag- , rdSchemas- , rdServicePath- , rdBasePath- , rdKind- , rdExponentialBackoffDefault- , rdAuth- , rdIcons- , rdBaseURL- , rdProtocol- , rdOwnerName- , rdResources- , rdOwnerDomain- , rdBatchPath- , rdMethods- , rdName- , rdPackagePath- , rdFeatures- , rdVersionModule- , rdVersion- , rdParameters- , rdDocumentationLink- , rdRootURL- , rdId- , rdCanonicalName- , rdLabels- , rdDiscoveryVersion- , rdTitle- , rdRevision- , rdDescription-- -- ** JSONSchema- , JSONSchema- , jsonSchema- , jsAnnotations- , jsVariant- , jsLocation- , jsRef- , jsPattern- , jsMaximum- , jsDefault- , jsFormat- , jsItems- , jsMinimum- , jsRequired- , jsId- , jsAdditionalProperties- , jsType- , jsEnum- , jsRepeated- , jsReadOnly- , jsEnumDescriptions- , jsDescription- , jsProperties-- -- ** RestDescriptionSchemas- , RestDescriptionSchemas- , restDescriptionSchemas- , rdsAddtional-- -- ** JSONSchemaVariantMapItem- , JSONSchemaVariantMapItem- , jsonSchemaVariantMapItem- , jsvmiRef- , jsvmiTypeValue-- -- ** RestDescriptionResources- , RestDescriptionResources- , restDescriptionResources- , rdrAddtional-- -- ** RestMethodMediaUploadProtocols- , RestMethodMediaUploadProtocols- , restMethodMediaUploadProtocols- , rmmupSimple- , rmmupResumable-- -- ** JSONSchemaAnnotations- , JSONSchemaAnnotations- , jsonSchemaAnnotations- , jsaRequired-- -- ** RestMethodParameters- , RestMethodParameters- , restMethodParameters- , rmpAddtional-- -- ** RestMethodMediaUpload- , RestMethodMediaUpload- , restMethodMediaUpload- , rmmuProtocols- , rmmuAccept- , rmmuMaxSize-- -- ** JSONSchemaProperties- , JSONSchemaProperties- , jsonSchemaProperties- , jspAddtional-- -- ** RestMethodMediaUploadProtocolsResumable- , RestMethodMediaUploadProtocolsResumable- , restMethodMediaUploadProtocolsResumable- , rmmuprPath- , rmmuprMultiPart-- -- ** DirectoryList- , DirectoryList- , directoryList- , dlKind- , dlItems- , dlDiscoveryVersion-- -- ** RestMethodRequest- , RestMethodRequest- , restMethodRequest- , rRef- , rParameterName- ) where--import Network.Google.Discovery.Types-import Network.Google.Prelude-import Network.Google.Resource.Discovery.APIs.GetRest-import Network.Google.Resource.Discovery.APIs.List--{- $resources-TODO--}---- | Represents the entirety of the methods and resources available for the API Discovery Service service.-type DiscoveryAPI =- APIsListResource :<|> APIsGetRestResource
− gen/Network/Google/Discovery/Types.hs
@@ -1,262 +0,0 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- |--- Module : Network.Google.Discovery.Types--- Copyright : (c) 2015-2016 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.Discovery.Types- (- -- * Service Configuration- discoveryService-- -- * RestMethodResponse- , RestMethodResponse- , restMethodResponse- , rmrRef-- -- * RestDescriptionParameters- , RestDescriptionParameters- , restDescriptionParameters- , rdpAddtional-- -- * RestMethod- , RestMethod- , restMethod- , rmSupportsMediaDownload- , rmParameterOrder- , rmMediaUpload- , rmHTTPMethod- , rmPath- , rmResponse- , rmSupportsMediaUpload- , rmScopes- , rmSupportsSubscription- , rmParameters- , rmId- , rmEtagRequired- , rmUseMediaDownloadService- , rmDescription- , rmRequest-- -- * RestResource- , RestResource- , restResource- , rrResources- , rrMethods-- -- * RestDescriptionAuthOAuth2Scopes- , RestDescriptionAuthOAuth2Scopes- , restDescriptionAuthOAuth2Scopes- , rdaoasAddtional-- -- * RestDescriptionMethods- , RestDescriptionMethods- , restDescriptionMethods- , rdmAddtional-- -- * DirectoryListItemsItem- , DirectoryListItemsItem- , directoryListItemsItem- , dliiDiscoveryLink- , dliiPreferred- , dliiKind- , dliiIcons- , dliiName- , dliiVersion- , dliiDocumentationLink- , dliiId- , dliiLabels- , dliiTitle- , dliiDescription- , dliiDiscoveryRestURL-- -- * DirectoryListItemsItemIcons- , DirectoryListItemsItemIcons- , directoryListItemsItemIcons- , dliiiX16- , dliiiX32-- -- * RestResourceResources- , RestResourceResources- , restResourceResources- , rrrAddtional-- -- * RestDescriptionAuthOAuth2- , RestDescriptionAuthOAuth2- , restDescriptionAuthOAuth2- , rdaoaScopes-- -- * RestDescriptionAuthOAuth2ScopesAdditional- , RestDescriptionAuthOAuth2ScopesAdditional- , restDescriptionAuthOAuth2ScopesAdditional- , rdaoasaDescription-- -- * RestMethodMediaUploadProtocolsSimple- , RestMethodMediaUploadProtocolsSimple- , restMethodMediaUploadProtocolsSimple- , rmmupsPath- , rmmupsMultiPart-- -- * RestDescriptionIcons- , RestDescriptionIcons- , restDescriptionIcons- , rdiX16- , rdiX32-- -- * JSONSchemaVariant- , JSONSchemaVariant- , jsonSchemaVariant- , jsvDiscriminant- , jsvMap-- -- * RestResourceMethods- , RestResourceMethods- , restResourceMethods- , rrmAddtional-- -- * RestDescriptionAuth- , RestDescriptionAuth- , restDescriptionAuth- , rdaOAuth2-- -- * RestDescription- , RestDescription- , restDescription- , rdEtag- , rdSchemas- , rdServicePath- , rdBasePath- , rdKind- , rdExponentialBackoffDefault- , rdAuth- , rdIcons- , rdBaseURL- , rdProtocol- , rdOwnerName- , rdResources- , rdOwnerDomain- , rdBatchPath- , rdMethods- , rdName- , rdPackagePath- , rdFeatures- , rdVersionModule- , rdVersion- , rdParameters- , rdDocumentationLink- , rdRootURL- , rdId- , rdCanonicalName- , rdLabels- , rdDiscoveryVersion- , rdTitle- , rdRevision- , rdDescription-- -- * JSONSchema- , JSONSchema- , jsonSchema- , jsAnnotations- , jsVariant- , jsLocation- , jsRef- , jsPattern- , jsMaximum- , jsDefault- , jsFormat- , jsItems- , jsMinimum- , jsRequired- , jsId- , jsAdditionalProperties- , jsType- , jsEnum- , jsRepeated- , jsReadOnly- , jsEnumDescriptions- , jsDescription- , jsProperties-- -- * RestDescriptionSchemas- , RestDescriptionSchemas- , restDescriptionSchemas- , rdsAddtional-- -- * JSONSchemaVariantMapItem- , JSONSchemaVariantMapItem- , jsonSchemaVariantMapItem- , jsvmiRef- , jsvmiTypeValue-- -- * RestDescriptionResources- , RestDescriptionResources- , restDescriptionResources- , rdrAddtional-- -- * RestMethodMediaUploadProtocols- , RestMethodMediaUploadProtocols- , restMethodMediaUploadProtocols- , rmmupSimple- , rmmupResumable-- -- * JSONSchemaAnnotations- , JSONSchemaAnnotations- , jsonSchemaAnnotations- , jsaRequired-- -- * RestMethodParameters- , RestMethodParameters- , restMethodParameters- , rmpAddtional-- -- * RestMethodMediaUpload- , RestMethodMediaUpload- , restMethodMediaUpload- , rmmuProtocols- , rmmuAccept- , rmmuMaxSize-- -- * JSONSchemaProperties- , JSONSchemaProperties- , jsonSchemaProperties- , jspAddtional-- -- * RestMethodMediaUploadProtocolsResumable- , RestMethodMediaUploadProtocolsResumable- , restMethodMediaUploadProtocolsResumable- , rmmuprPath- , rmmuprMultiPart-- -- * DirectoryList- , DirectoryList- , directoryList- , dlKind- , dlItems- , dlDiscoveryVersion-- -- * RestMethodRequest- , RestMethodRequest- , restMethodRequest- , rRef- , rParameterName- ) where--import Network.Google.Discovery.Types.Product-import Network.Google.Discovery.Types.Sum-import Network.Google.Prelude---- | Default request referring to version 'v1' of the API Discovery Service. This contains the host and root path used as a starting point for constructing service requests.-discoveryService :: ServiceConfig-discoveryService- = defaultService (ServiceId "discovery:v1")- "www.googleapis.com"
− gen/Network/Google/Discovery/Types/Product.hs
@@ -1,2119 +0,0 @@-{-# 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.Discovery.Types.Product--- Copyright : (c) 2015-2016 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.Discovery.Types.Product where--import Network.Google.Discovery.Types.Sum-import Network.Google.Prelude---- | The schema for the response.------ /See:/ 'restMethodResponse' smart constructor.-newtype RestMethodResponse =- RestMethodResponse'- { _rmrRef :: Maybe Text- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestMethodResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rmrRef'-restMethodResponse- :: RestMethodResponse-restMethodResponse = RestMethodResponse' {_rmrRef = Nothing}----- | Schema ID for the response schema.-rmrRef :: Lens' RestMethodResponse (Maybe Text)-rmrRef = lens _rmrRef (\ s a -> s{_rmrRef = a})--instance FromJSON RestMethodResponse where- parseJSON- = withObject "RestMethodResponse"- (\ o -> RestMethodResponse' <$> (o .:? "$ref"))--instance ToJSON RestMethodResponse where- toJSON RestMethodResponse'{..}- = object (catMaybes [("$ref" .=) <$> _rmrRef])---- | Common parameters that apply across all apis.------ /See:/ 'restDescriptionParameters' smart constructor.-newtype RestDescriptionParameters =- RestDescriptionParameters'- { _rdpAddtional :: HashMap Text JSONSchema- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescriptionParameters' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdpAddtional'-restDescriptionParameters- :: HashMap Text JSONSchema -- ^ 'rdpAddtional'- -> RestDescriptionParameters-restDescriptionParameters pRdpAddtional_ =- RestDescriptionParameters' {_rdpAddtional = _Coerce # pRdpAddtional_}----- | Description of a single parameter.-rdpAddtional :: Lens' RestDescriptionParameters (HashMap Text JSONSchema)-rdpAddtional- = lens _rdpAddtional (\ s a -> s{_rdpAddtional = a})- . _Coerce--instance FromJSON RestDescriptionParameters where- parseJSON- = withObject "RestDescriptionParameters"- (\ o ->- RestDescriptionParameters' <$> (parseJSONObject o))--instance ToJSON RestDescriptionParameters where- toJSON = toJSON . _rdpAddtional------- /See:/ 'restMethod' smart constructor.-data RestMethod =- RestMethod'- { _rmSupportsMediaDownload :: !(Maybe Bool)- , _rmParameterOrder :: !(Maybe [Text])- , _rmMediaUpload :: !(Maybe RestMethodMediaUpload)- , _rmHTTPMethod :: !(Maybe Text)- , _rmPath :: !(Maybe Text)- , _rmResponse :: !(Maybe RestMethodResponse)- , _rmSupportsMediaUpload :: !(Maybe Bool)- , _rmScopes :: !(Maybe [Text])- , _rmSupportsSubscription :: !(Maybe Bool)- , _rmParameters :: !(Maybe RestMethodParameters)- , _rmId :: !(Maybe Text)- , _rmEtagRequired :: !(Maybe Bool)- , _rmUseMediaDownloadService :: !(Maybe Bool)- , _rmDescription :: !(Maybe Text)- , _rmRequest :: !(Maybe RestMethodRequest)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestMethod' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rmSupportsMediaDownload'------ * 'rmParameterOrder'------ * 'rmMediaUpload'------ * 'rmHTTPMethod'------ * 'rmPath'------ * 'rmResponse'------ * 'rmSupportsMediaUpload'------ * 'rmScopes'------ * 'rmSupportsSubscription'------ * 'rmParameters'------ * 'rmId'------ * 'rmEtagRequired'------ * 'rmUseMediaDownloadService'------ * 'rmDescription'------ * 'rmRequest'-restMethod- :: RestMethod-restMethod =- RestMethod'- { _rmSupportsMediaDownload = Nothing- , _rmParameterOrder = Nothing- , _rmMediaUpload = Nothing- , _rmHTTPMethod = Nothing- , _rmPath = Nothing- , _rmResponse = Nothing- , _rmSupportsMediaUpload = Nothing- , _rmScopes = Nothing- , _rmSupportsSubscription = Nothing- , _rmParameters = Nothing- , _rmId = Nothing- , _rmEtagRequired = Nothing- , _rmUseMediaDownloadService = Nothing- , _rmDescription = Nothing- , _rmRequest = Nothing- }----- | Whether this method supports media downloads.-rmSupportsMediaDownload :: Lens' RestMethod (Maybe Bool)-rmSupportsMediaDownload- = lens _rmSupportsMediaDownload- (\ s a -> s{_rmSupportsMediaDownload = a})---- | Ordered list of required parameters, serves as a hint to clients on how--- to structure their method signatures. The array is ordered such that the--- \"most-significant\" parameter appears first.-rmParameterOrder :: Lens' RestMethod [Text]-rmParameterOrder- = lens _rmParameterOrder- (\ s a -> s{_rmParameterOrder = a})- . _Default- . _Coerce---- | Media upload parameters.-rmMediaUpload :: Lens' RestMethod (Maybe RestMethodMediaUpload)-rmMediaUpload- = lens _rmMediaUpload- (\ s a -> s{_rmMediaUpload = a})---- | HTTP method used by this method.-rmHTTPMethod :: Lens' RestMethod (Maybe Text)-rmHTTPMethod- = lens _rmHTTPMethod (\ s a -> s{_rmHTTPMethod = a})---- | The URI path of this REST method. Should be used in conjunction with the--- basePath property at the api-level.-rmPath :: Lens' RestMethod (Maybe Text)-rmPath = lens _rmPath (\ s a -> s{_rmPath = a})---- | The schema for the response.-rmResponse :: Lens' RestMethod (Maybe RestMethodResponse)-rmResponse- = lens _rmResponse (\ s a -> s{_rmResponse = a})---- | Whether this method supports media uploads.-rmSupportsMediaUpload :: Lens' RestMethod (Maybe Bool)-rmSupportsMediaUpload- = lens _rmSupportsMediaUpload- (\ s a -> s{_rmSupportsMediaUpload = a})---- | OAuth 2.0 scopes applicable to this method.-rmScopes :: Lens' RestMethod [Text]-rmScopes- = lens _rmScopes (\ s a -> s{_rmScopes = a}) .- _Default- . _Coerce---- | Whether this method supports subscriptions.-rmSupportsSubscription :: Lens' RestMethod (Maybe Bool)-rmSupportsSubscription- = lens _rmSupportsSubscription- (\ s a -> s{_rmSupportsSubscription = a})---- | Details for all parameters in this method.-rmParameters :: Lens' RestMethod (Maybe RestMethodParameters)-rmParameters- = lens _rmParameters (\ s a -> s{_rmParameters = a})---- | A unique ID for this method. This property can be used to match methods--- between different versions of Discovery.-rmId :: Lens' RestMethod (Maybe Text)-rmId = lens _rmId (\ s a -> s{_rmId = a})---- | Whether this method requires an ETag to be specified. The ETag is sent--- as an HTTP If-Match or If-None-Match header.-rmEtagRequired :: Lens' RestMethod (Maybe Bool)-rmEtagRequired- = lens _rmEtagRequired- (\ s a -> s{_rmEtagRequired = a})---- | Indicates that downloads from this method should use the download--- service URL (i.e. \"\/download\"). Only applies if the method supports--- media download.-rmUseMediaDownloadService :: Lens' RestMethod (Maybe Bool)-rmUseMediaDownloadService- = lens _rmUseMediaDownloadService- (\ s a -> s{_rmUseMediaDownloadService = a})---- | Description of this method.-rmDescription :: Lens' RestMethod (Maybe Text)-rmDescription- = lens _rmDescription- (\ s a -> s{_rmDescription = a})---- | The schema for the request.-rmRequest :: Lens' RestMethod (Maybe RestMethodRequest)-rmRequest- = lens _rmRequest (\ s a -> s{_rmRequest = a})--instance FromJSON RestMethod where- parseJSON- = withObject "RestMethod"- (\ o ->- RestMethod' <$>- (o .:? "supportsMediaDownload") <*>- (o .:? "parameterOrder" .!= mempty)- <*> (o .:? "mediaUpload")- <*> (o .:? "httpMethod")- <*> (o .:? "path")- <*> (o .:? "response")- <*> (o .:? "supportsMediaUpload")- <*> (o .:? "scopes" .!= mempty)- <*> (o .:? "supportsSubscription")- <*> (o .:? "parameters")- <*> (o .:? "id")- <*> (o .:? "etagRequired")- <*> (o .:? "useMediaDownloadService")- <*> (o .:? "description")- <*> (o .:? "request"))--instance ToJSON RestMethod where- toJSON RestMethod'{..}- = object- (catMaybes- [("supportsMediaDownload" .=) <$>- _rmSupportsMediaDownload,- ("parameterOrder" .=) <$> _rmParameterOrder,- ("mediaUpload" .=) <$> _rmMediaUpload,- ("httpMethod" .=) <$> _rmHTTPMethod,- ("path" .=) <$> _rmPath,- ("response" .=) <$> _rmResponse,- ("supportsMediaUpload" .=) <$>- _rmSupportsMediaUpload,- ("scopes" .=) <$> _rmScopes,- ("supportsSubscription" .=) <$>- _rmSupportsSubscription,- ("parameters" .=) <$> _rmParameters,- ("id" .=) <$> _rmId,- ("etagRequired" .=) <$> _rmEtagRequired,- ("useMediaDownloadService" .=) <$>- _rmUseMediaDownloadService,- ("description" .=) <$> _rmDescription,- ("request" .=) <$> _rmRequest])------- /See:/ 'restResource' smart constructor.-data RestResource =- RestResource'- { _rrResources :: !(Maybe RestResourceResources)- , _rrMethods :: !(Maybe RestResourceMethods)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestResource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rrResources'------ * 'rrMethods'-restResource- :: RestResource-restResource = RestResource' {_rrResources = Nothing, _rrMethods = Nothing}----- | Sub-resources on this resource.-rrResources :: Lens' RestResource (Maybe RestResourceResources)-rrResources- = lens _rrResources (\ s a -> s{_rrResources = a})---- | Methods on this resource.-rrMethods :: Lens' RestResource (Maybe RestResourceMethods)-rrMethods- = lens _rrMethods (\ s a -> s{_rrMethods = a})--instance FromJSON RestResource where- parseJSON- = withObject "RestResource"- (\ o ->- RestResource' <$>- (o .:? "resources") <*> (o .:? "methods"))--instance ToJSON RestResource where- toJSON RestResource'{..}- = object- (catMaybes- [("resources" .=) <$> _rrResources,- ("methods" .=) <$> _rrMethods])---- | Available OAuth 2.0 scopes.------ /See:/ 'restDescriptionAuthOAuth2Scopes' smart constructor.-newtype RestDescriptionAuthOAuth2Scopes =- RestDescriptionAuthOAuth2Scopes'- { _rdaoasAddtional :: HashMap Text RestDescriptionAuthOAuth2ScopesAdditional- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescriptionAuthOAuth2Scopes' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdaoasAddtional'-restDescriptionAuthOAuth2Scopes- :: HashMap Text RestDescriptionAuthOAuth2ScopesAdditional -- ^ 'rdaoasAddtional'- -> RestDescriptionAuthOAuth2Scopes-restDescriptionAuthOAuth2Scopes pRdaoasAddtional_ =- RestDescriptionAuthOAuth2Scopes'- {_rdaoasAddtional = _Coerce # pRdaoasAddtional_}----- | The scope value.-rdaoasAddtional :: Lens' RestDescriptionAuthOAuth2Scopes (HashMap Text RestDescriptionAuthOAuth2ScopesAdditional)-rdaoasAddtional- = lens _rdaoasAddtional- (\ s a -> s{_rdaoasAddtional = a})- . _Coerce--instance FromJSON RestDescriptionAuthOAuth2Scopes- where- parseJSON- = withObject "RestDescriptionAuthOAuth2Scopes"- (\ o ->- RestDescriptionAuthOAuth2Scopes' <$>- (parseJSONObject o))--instance ToJSON RestDescriptionAuthOAuth2Scopes where- toJSON = toJSON . _rdaoasAddtional---- | API-level methods for this API.------ /See:/ 'restDescriptionMethods' smart constructor.-newtype RestDescriptionMethods =- RestDescriptionMethods'- { _rdmAddtional :: HashMap Text RestMethod- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescriptionMethods' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdmAddtional'-restDescriptionMethods- :: HashMap Text RestMethod -- ^ 'rdmAddtional'- -> RestDescriptionMethods-restDescriptionMethods pRdmAddtional_ =- RestDescriptionMethods' {_rdmAddtional = _Coerce # pRdmAddtional_}----- | An individual method description.-rdmAddtional :: Lens' RestDescriptionMethods (HashMap Text RestMethod)-rdmAddtional- = lens _rdmAddtional (\ s a -> s{_rdmAddtional = a})- . _Coerce--instance FromJSON RestDescriptionMethods where- parseJSON- = withObject "RestDescriptionMethods"- (\ o ->- RestDescriptionMethods' <$> (parseJSONObject o))--instance ToJSON RestDescriptionMethods where- toJSON = toJSON . _rdmAddtional------- /See:/ 'directoryListItemsItem' smart constructor.-data DirectoryListItemsItem =- DirectoryListItemsItem'- { _dliiDiscoveryLink :: !(Maybe Text)- , _dliiPreferred :: !(Maybe Bool)- , _dliiKind :: !Text- , _dliiIcons :: !(Maybe DirectoryListItemsItemIcons)- , _dliiName :: !(Maybe Text)- , _dliiVersion :: !(Maybe Text)- , _dliiDocumentationLink :: !(Maybe Text)- , _dliiId :: !(Maybe Text)- , _dliiLabels :: !(Maybe [Text])- , _dliiTitle :: !(Maybe Text)- , _dliiDescription :: !(Maybe Text)- , _dliiDiscoveryRestURL :: !(Maybe Text)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'DirectoryListItemsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dliiDiscoveryLink'------ * 'dliiPreferred'------ * 'dliiKind'------ * 'dliiIcons'------ * 'dliiName'------ * 'dliiVersion'------ * 'dliiDocumentationLink'------ * 'dliiId'------ * 'dliiLabels'------ * 'dliiTitle'------ * 'dliiDescription'------ * 'dliiDiscoveryRestURL'-directoryListItemsItem- :: DirectoryListItemsItem-directoryListItemsItem =- DirectoryListItemsItem'- { _dliiDiscoveryLink = Nothing- , _dliiPreferred = Nothing- , _dliiKind = "discovery#directoryItem"- , _dliiIcons = Nothing- , _dliiName = Nothing- , _dliiVersion = Nothing- , _dliiDocumentationLink = Nothing- , _dliiId = Nothing- , _dliiLabels = Nothing- , _dliiTitle = Nothing- , _dliiDescription = Nothing- , _dliiDiscoveryRestURL = Nothing- }----- | A link to the discovery document.-dliiDiscoveryLink :: Lens' DirectoryListItemsItem (Maybe Text)-dliiDiscoveryLink- = lens _dliiDiscoveryLink- (\ s a -> s{_dliiDiscoveryLink = a})---- | True if this version is the preferred version to use.-dliiPreferred :: Lens' DirectoryListItemsItem (Maybe Bool)-dliiPreferred- = lens _dliiPreferred- (\ s a -> s{_dliiPreferred = a})---- | The kind for this response.-dliiKind :: Lens' DirectoryListItemsItem Text-dliiKind = lens _dliiKind (\ s a -> s{_dliiKind = a})---- | Links to 16x16 and 32x32 icons representing the API.-dliiIcons :: Lens' DirectoryListItemsItem (Maybe DirectoryListItemsItemIcons)-dliiIcons- = lens _dliiIcons (\ s a -> s{_dliiIcons = a})---- | The name of the API.-dliiName :: Lens' DirectoryListItemsItem (Maybe Text)-dliiName = lens _dliiName (\ s a -> s{_dliiName = a})---- | The version of the API.-dliiVersion :: Lens' DirectoryListItemsItem (Maybe Text)-dliiVersion- = lens _dliiVersion (\ s a -> s{_dliiVersion = a})---- | A link to human readable documentation for the API.-dliiDocumentationLink :: Lens' DirectoryListItemsItem (Maybe Text)-dliiDocumentationLink- = lens _dliiDocumentationLink- (\ s a -> s{_dliiDocumentationLink = a})---- | The id of this API.-dliiId :: Lens' DirectoryListItemsItem (Maybe Text)-dliiId = lens _dliiId (\ s a -> s{_dliiId = a})---- | Labels for the status of this API, such as labs or deprecated.-dliiLabels :: Lens' DirectoryListItemsItem [Text]-dliiLabels- = lens _dliiLabels (\ s a -> s{_dliiLabels = a}) .- _Default- . _Coerce---- | The title of this API.-dliiTitle :: Lens' DirectoryListItemsItem (Maybe Text)-dliiTitle- = lens _dliiTitle (\ s a -> s{_dliiTitle = a})---- | The description of this API.-dliiDescription :: Lens' DirectoryListItemsItem (Maybe Text)-dliiDescription- = lens _dliiDescription- (\ s a -> s{_dliiDescription = a})---- | The URL for the discovery REST document.-dliiDiscoveryRestURL :: Lens' DirectoryListItemsItem (Maybe Text)-dliiDiscoveryRestURL- = lens _dliiDiscoveryRestURL- (\ s a -> s{_dliiDiscoveryRestURL = a})--instance FromJSON DirectoryListItemsItem where- parseJSON- = withObject "DirectoryListItemsItem"- (\ o ->- DirectoryListItemsItem' <$>- (o .:? "discoveryLink") <*> (o .:? "preferred") <*>- (o .:? "kind" .!= "discovery#directoryItem")- <*> (o .:? "icons")- <*> (o .:? "name")- <*> (o .:? "version")- <*> (o .:? "documentationLink")- <*> (o .:? "id")- <*> (o .:? "labels" .!= mempty)- <*> (o .:? "title")- <*> (o .:? "description")- <*> (o .:? "discoveryRestUrl"))--instance ToJSON DirectoryListItemsItem where- toJSON DirectoryListItemsItem'{..}- = object- (catMaybes- [("discoveryLink" .=) <$> _dliiDiscoveryLink,- ("preferred" .=) <$> _dliiPreferred,- Just ("kind" .= _dliiKind),- ("icons" .=) <$> _dliiIcons,- ("name" .=) <$> _dliiName,- ("version" .=) <$> _dliiVersion,- ("documentationLink" .=) <$> _dliiDocumentationLink,- ("id" .=) <$> _dliiId, ("labels" .=) <$> _dliiLabels,- ("title" .=) <$> _dliiTitle,- ("description" .=) <$> _dliiDescription,- ("discoveryRestUrl" .=) <$> _dliiDiscoveryRestURL])---- | Links to 16x16 and 32x32 icons representing the API.------ /See:/ 'directoryListItemsItemIcons' smart constructor.-data DirectoryListItemsItemIcons =- DirectoryListItemsItemIcons'- { _dliiiX16 :: !(Maybe Text)- , _dliiiX32 :: !(Maybe Text)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'DirectoryListItemsItemIcons' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dliiiX16'------ * 'dliiiX32'-directoryListItemsItemIcons- :: DirectoryListItemsItemIcons-directoryListItemsItemIcons =- DirectoryListItemsItemIcons' {_dliiiX16 = Nothing, _dliiiX32 = Nothing}----- | The URL of the 16x16 icon.-dliiiX16 :: Lens' DirectoryListItemsItemIcons (Maybe Text)-dliiiX16 = lens _dliiiX16 (\ s a -> s{_dliiiX16 = a})---- | The URL of the 32x32 icon.-dliiiX32 :: Lens' DirectoryListItemsItemIcons (Maybe Text)-dliiiX32 = lens _dliiiX32 (\ s a -> s{_dliiiX32 = a})--instance FromJSON DirectoryListItemsItemIcons where- parseJSON- = withObject "DirectoryListItemsItemIcons"- (\ o ->- DirectoryListItemsItemIcons' <$>- (o .:? "x16") <*> (o .:? "x32"))--instance ToJSON DirectoryListItemsItemIcons where- toJSON DirectoryListItemsItemIcons'{..}- = object- (catMaybes- [("x16" .=) <$> _dliiiX16, ("x32" .=) <$> _dliiiX32])---- | Sub-resources on this resource.------ /See:/ 'restResourceResources' smart constructor.-newtype RestResourceResources =- RestResourceResources'- { _rrrAddtional :: HashMap Text RestResource- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestResourceResources' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rrrAddtional'-restResourceResources- :: HashMap Text RestResource -- ^ 'rrrAddtional'- -> RestResourceResources-restResourceResources pRrrAddtional_ =- RestResourceResources' {_rrrAddtional = _Coerce # pRrrAddtional_}----- | Description for any sub-resources on this resource.-rrrAddtional :: Lens' RestResourceResources (HashMap Text RestResource)-rrrAddtional- = lens _rrrAddtional (\ s a -> s{_rrrAddtional = a})- . _Coerce--instance FromJSON RestResourceResources where- parseJSON- = withObject "RestResourceResources"- (\ o ->- RestResourceResources' <$> (parseJSONObject o))--instance ToJSON RestResourceResources where- toJSON = toJSON . _rrrAddtional---- | OAuth 2.0 authentication information.------ /See:/ 'restDescriptionAuthOAuth2' smart constructor.-newtype RestDescriptionAuthOAuth2 =- RestDescriptionAuthOAuth2'- { _rdaoaScopes :: Maybe RestDescriptionAuthOAuth2Scopes- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescriptionAuthOAuth2' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdaoaScopes'-restDescriptionAuthOAuth2- :: RestDescriptionAuthOAuth2-restDescriptionAuthOAuth2 = RestDescriptionAuthOAuth2' {_rdaoaScopes = Nothing}----- | Available OAuth 2.0 scopes.-rdaoaScopes :: Lens' RestDescriptionAuthOAuth2 (Maybe RestDescriptionAuthOAuth2Scopes)-rdaoaScopes- = lens _rdaoaScopes (\ s a -> s{_rdaoaScopes = a})--instance FromJSON RestDescriptionAuthOAuth2 where- parseJSON- = withObject "RestDescriptionAuthOAuth2"- (\ o ->- RestDescriptionAuthOAuth2' <$> (o .:? "scopes"))--instance ToJSON RestDescriptionAuthOAuth2 where- toJSON RestDescriptionAuthOAuth2'{..}- = object (catMaybes [("scopes" .=) <$> _rdaoaScopes])---- | The scope value.------ /See:/ 'restDescriptionAuthOAuth2ScopesAdditional' smart constructor.-newtype RestDescriptionAuthOAuth2ScopesAdditional =- RestDescriptionAuthOAuth2ScopesAdditional'- { _rdaoasaDescription :: Maybe Text- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescriptionAuthOAuth2ScopesAdditional' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdaoasaDescription'-restDescriptionAuthOAuth2ScopesAdditional- :: RestDescriptionAuthOAuth2ScopesAdditional-restDescriptionAuthOAuth2ScopesAdditional =- RestDescriptionAuthOAuth2ScopesAdditional' {_rdaoasaDescription = Nothing}----- | Description of scope.-rdaoasaDescription :: Lens' RestDescriptionAuthOAuth2ScopesAdditional (Maybe Text)-rdaoasaDescription- = lens _rdaoasaDescription- (\ s a -> s{_rdaoasaDescription = a})--instance FromJSON- RestDescriptionAuthOAuth2ScopesAdditional- where- parseJSON- = withObject- "RestDescriptionAuthOAuth2ScopesAdditional"- (\ o ->- RestDescriptionAuthOAuth2ScopesAdditional' <$>- (o .:? "description"))--instance ToJSON- RestDescriptionAuthOAuth2ScopesAdditional- where- toJSON RestDescriptionAuthOAuth2ScopesAdditional'{..}- = object- (catMaybes- [("description" .=) <$> _rdaoasaDescription])---- | Supports uploading as a single HTTP request.------ /See:/ 'restMethodMediaUploadProtocolsSimple' smart constructor.-data RestMethodMediaUploadProtocolsSimple =- RestMethodMediaUploadProtocolsSimple'- { _rmmupsPath :: !(Maybe Text)- , _rmmupsMultiPart :: !Bool- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestMethodMediaUploadProtocolsSimple' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rmmupsPath'------ * 'rmmupsMultiPart'-restMethodMediaUploadProtocolsSimple- :: RestMethodMediaUploadProtocolsSimple-restMethodMediaUploadProtocolsSimple =- RestMethodMediaUploadProtocolsSimple'- {_rmmupsPath = Nothing, _rmmupsMultiPart = True}----- | The URI path to be used for upload. Should be used in conjunction with--- the basePath property at the api-level.-rmmupsPath :: Lens' RestMethodMediaUploadProtocolsSimple (Maybe Text)-rmmupsPath- = lens _rmmupsPath (\ s a -> s{_rmmupsPath = a})---- | True if this endpoint supports upload multipart media.-rmmupsMultiPart :: Lens' RestMethodMediaUploadProtocolsSimple Bool-rmmupsMultiPart- = lens _rmmupsMultiPart- (\ s a -> s{_rmmupsMultiPart = a})--instance FromJSON- RestMethodMediaUploadProtocolsSimple- where- parseJSON- = withObject "RestMethodMediaUploadProtocolsSimple"- (\ o ->- RestMethodMediaUploadProtocolsSimple' <$>- (o .:? "path") <*> (o .:? "multipart" .!= True))--instance ToJSON RestMethodMediaUploadProtocolsSimple- where- toJSON RestMethodMediaUploadProtocolsSimple'{..}- = object- (catMaybes- [("path" .=) <$> _rmmupsPath,- Just ("multipart" .= _rmmupsMultiPart)])---- | Links to 16x16 and 32x32 icons representing the API.------ /See:/ 'restDescriptionIcons' smart constructor.-data RestDescriptionIcons =- RestDescriptionIcons'- { _rdiX16 :: !(Maybe Text)- , _rdiX32 :: !(Maybe Text)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescriptionIcons' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdiX16'------ * 'rdiX32'-restDescriptionIcons- :: RestDescriptionIcons-restDescriptionIcons =- RestDescriptionIcons' {_rdiX16 = Nothing, _rdiX32 = Nothing}----- | The URL of the 16x16 icon.-rdiX16 :: Lens' RestDescriptionIcons (Maybe Text)-rdiX16 = lens _rdiX16 (\ s a -> s{_rdiX16 = a})---- | The URL of the 32x32 icon.-rdiX32 :: Lens' RestDescriptionIcons (Maybe Text)-rdiX32 = lens _rdiX32 (\ s a -> s{_rdiX32 = a})--instance FromJSON RestDescriptionIcons where- parseJSON- = withObject "RestDescriptionIcons"- (\ o ->- RestDescriptionIcons' <$>- (o .:? "x16") <*> (o .:? "x32"))--instance ToJSON RestDescriptionIcons where- toJSON RestDescriptionIcons'{..}- = object- (catMaybes- [("x16" .=) <$> _rdiX16, ("x32" .=) <$> _rdiX32])---- | In a variant data type, the value of one property is used to determine--- how to interpret the entire entity. Its value must exist in a map of--- descriminant values to schema names.------ /See:/ 'jsonSchemaVariant' smart constructor.-data JSONSchemaVariant =- JSONSchemaVariant'- { _jsvDiscriminant :: !(Maybe Text)- , _jsvMap :: !(Maybe [JSONSchemaVariantMapItem])- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'JSONSchemaVariant' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jsvDiscriminant'------ * 'jsvMap'-jsonSchemaVariant- :: JSONSchemaVariant-jsonSchemaVariant =- JSONSchemaVariant' {_jsvDiscriminant = Nothing, _jsvMap = Nothing}----- | The name of the type discriminant property.-jsvDiscriminant :: Lens' JSONSchemaVariant (Maybe Text)-jsvDiscriminant- = lens _jsvDiscriminant- (\ s a -> s{_jsvDiscriminant = a})---- | The map of discriminant value to schema to use for parsing..-jsvMap :: Lens' JSONSchemaVariant [JSONSchemaVariantMapItem]-jsvMap- = lens _jsvMap (\ s a -> s{_jsvMap = a}) . _Default .- _Coerce--instance FromJSON JSONSchemaVariant where- parseJSON- = withObject "JSONSchemaVariant"- (\ o ->- JSONSchemaVariant' <$>- (o .:? "discriminant") <*> (o .:? "map" .!= mempty))--instance ToJSON JSONSchemaVariant where- toJSON JSONSchemaVariant'{..}- = object- (catMaybes- [("discriminant" .=) <$> _jsvDiscriminant,- ("map" .=) <$> _jsvMap])---- | Methods on this resource.------ /See:/ 'restResourceMethods' smart constructor.-newtype RestResourceMethods =- RestResourceMethods'- { _rrmAddtional :: HashMap Text RestMethod- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestResourceMethods' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rrmAddtional'-restResourceMethods- :: HashMap Text RestMethod -- ^ 'rrmAddtional'- -> RestResourceMethods-restResourceMethods pRrmAddtional_ =- RestResourceMethods' {_rrmAddtional = _Coerce # pRrmAddtional_}----- | Description for any methods on this resource.-rrmAddtional :: Lens' RestResourceMethods (HashMap Text RestMethod)-rrmAddtional- = lens _rrmAddtional (\ s a -> s{_rrmAddtional = a})- . _Coerce--instance FromJSON RestResourceMethods where- parseJSON- = withObject "RestResourceMethods"- (\ o -> RestResourceMethods' <$> (parseJSONObject o))--instance ToJSON RestResourceMethods where- toJSON = toJSON . _rrmAddtional---- | Authentication information.------ /See:/ 'restDescriptionAuth' smart constructor.-newtype RestDescriptionAuth =- RestDescriptionAuth'- { _rdaOAuth2 :: Maybe RestDescriptionAuthOAuth2- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescriptionAuth' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdaOAuth2'-restDescriptionAuth- :: RestDescriptionAuth-restDescriptionAuth = RestDescriptionAuth' {_rdaOAuth2 = Nothing}----- | OAuth 2.0 authentication information.-rdaOAuth2 :: Lens' RestDescriptionAuth (Maybe RestDescriptionAuthOAuth2)-rdaOAuth2- = lens _rdaOAuth2 (\ s a -> s{_rdaOAuth2 = a})--instance FromJSON RestDescriptionAuth where- parseJSON- = withObject "RestDescriptionAuth"- (\ o -> RestDescriptionAuth' <$> (o .:? "oauth2"))--instance ToJSON RestDescriptionAuth where- toJSON RestDescriptionAuth'{..}- = object (catMaybes [("oauth2" .=) <$> _rdaOAuth2])------- /See:/ 'restDescription' smart constructor.-data RestDescription =- RestDescription'- { _rdEtag :: !(Maybe Text)- , _rdSchemas :: !(Maybe RestDescriptionSchemas)- , _rdServicePath :: !(Maybe Text)- , _rdBasePath :: !(Maybe Text)- , _rdKind :: !Text- , _rdExponentialBackoffDefault :: !(Maybe Bool)- , _rdAuth :: !(Maybe RestDescriptionAuth)- , _rdIcons :: !(Maybe RestDescriptionIcons)- , _rdBaseURL :: !(Maybe Text)- , _rdProtocol :: !Text- , _rdOwnerName :: !(Maybe Text)- , _rdResources :: !(Maybe RestDescriptionResources)- , _rdOwnerDomain :: !(Maybe Text)- , _rdBatchPath :: !(Maybe Text)- , _rdMethods :: !(Maybe RestDescriptionMethods)- , _rdName :: !(Maybe Text)- , _rdPackagePath :: !(Maybe Text)- , _rdFeatures :: !(Maybe [Text])- , _rdVersionModule :: !(Maybe Bool)- , _rdVersion :: !(Maybe Text)- , _rdParameters :: !(Maybe RestDescriptionParameters)- , _rdDocumentationLink :: !(Maybe Text)- , _rdRootURL :: !(Maybe Text)- , _rdId :: !(Maybe Text)- , _rdCanonicalName :: !(Maybe Text)- , _rdLabels :: !(Maybe [Text])- , _rdDiscoveryVersion :: !Text- , _rdTitle :: !(Maybe Text)- , _rdRevision :: !(Maybe Text)- , _rdDescription :: !(Maybe Text)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescription' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdEtag'------ * 'rdSchemas'------ * 'rdServicePath'------ * 'rdBasePath'------ * 'rdKind'------ * 'rdExponentialBackoffDefault'------ * 'rdAuth'------ * 'rdIcons'------ * 'rdBaseURL'------ * 'rdProtocol'------ * 'rdOwnerName'------ * 'rdResources'------ * 'rdOwnerDomain'------ * 'rdBatchPath'------ * 'rdMethods'------ * 'rdName'------ * 'rdPackagePath'------ * 'rdFeatures'------ * 'rdVersionModule'------ * 'rdVersion'------ * 'rdParameters'------ * 'rdDocumentationLink'------ * 'rdRootURL'------ * 'rdId'------ * 'rdCanonicalName'------ * 'rdLabels'------ * 'rdDiscoveryVersion'------ * 'rdTitle'------ * 'rdRevision'------ * 'rdDescription'-restDescription- :: RestDescription-restDescription =- RestDescription'- { _rdEtag = Nothing- , _rdSchemas = Nothing- , _rdServicePath = Nothing- , _rdBasePath = Nothing- , _rdKind = "discovery#restDescription"- , _rdExponentialBackoffDefault = Nothing- , _rdAuth = Nothing- , _rdIcons = Nothing- , _rdBaseURL = Nothing- , _rdProtocol = "rest"- , _rdOwnerName = Nothing- , _rdResources = Nothing- , _rdOwnerDomain = Nothing- , _rdBatchPath = Nothing- , _rdMethods = Nothing- , _rdName = Nothing- , _rdPackagePath = Nothing- , _rdFeatures = Nothing- , _rdVersionModule = Nothing- , _rdVersion = Nothing- , _rdParameters = Nothing- , _rdDocumentationLink = Nothing- , _rdRootURL = Nothing- , _rdId = Nothing- , _rdCanonicalName = Nothing- , _rdLabels = Nothing- , _rdDiscoveryVersion = "v1"- , _rdTitle = Nothing- , _rdRevision = Nothing- , _rdDescription = Nothing- }----- | The ETag for this response.-rdEtag :: Lens' RestDescription (Maybe Text)-rdEtag = lens _rdEtag (\ s a -> s{_rdEtag = a})---- | The schemas for this API.-rdSchemas :: Lens' RestDescription (Maybe RestDescriptionSchemas)-rdSchemas- = lens _rdSchemas (\ s a -> s{_rdSchemas = a})---- | The base path for all REST requests.-rdServicePath :: Lens' RestDescription (Maybe Text)-rdServicePath- = lens _rdServicePath- (\ s a -> s{_rdServicePath = a})---- | [DEPRECATED] The base path for REST requests.-rdBasePath :: Lens' RestDescription (Maybe Text)-rdBasePath- = lens _rdBasePath (\ s a -> s{_rdBasePath = a})---- | The kind for this response.-rdKind :: Lens' RestDescription Text-rdKind = lens _rdKind (\ s a -> s{_rdKind = a})---- | Enable exponential backoff for suitable methods in the generated--- clients.-rdExponentialBackoffDefault :: Lens' RestDescription (Maybe Bool)-rdExponentialBackoffDefault- = lens _rdExponentialBackoffDefault- (\ s a -> s{_rdExponentialBackoffDefault = a})---- | Authentication information.-rdAuth :: Lens' RestDescription (Maybe RestDescriptionAuth)-rdAuth = lens _rdAuth (\ s a -> s{_rdAuth = a})---- | Links to 16x16 and 32x32 icons representing the API.-rdIcons :: Lens' RestDescription (Maybe RestDescriptionIcons)-rdIcons = lens _rdIcons (\ s a -> s{_rdIcons = a})---- | [DEPRECATED] The base URL for REST requests.-rdBaseURL :: Lens' RestDescription (Maybe Text)-rdBaseURL- = lens _rdBaseURL (\ s a -> s{_rdBaseURL = a})---- | The protocol described by this document.-rdProtocol :: Lens' RestDescription Text-rdProtocol- = lens _rdProtocol (\ s a -> s{_rdProtocol = a})---- | The name of the owner of this API. See ownerDomain.-rdOwnerName :: Lens' RestDescription (Maybe Text)-rdOwnerName- = lens _rdOwnerName (\ s a -> s{_rdOwnerName = a})---- | The resources in this API.-rdResources :: Lens' RestDescription (Maybe RestDescriptionResources)-rdResources- = lens _rdResources (\ s a -> s{_rdResources = a})---- | The domain of the owner of this API. Together with the ownerName and a--- packagePath values, this can be used to generate a library for this API--- which would have a unique fully qualified name.-rdOwnerDomain :: Lens' RestDescription (Maybe Text)-rdOwnerDomain- = lens _rdOwnerDomain- (\ s a -> s{_rdOwnerDomain = a})---- | The path for REST batch requests.-rdBatchPath :: Lens' RestDescription (Maybe Text)-rdBatchPath- = lens _rdBatchPath (\ s a -> s{_rdBatchPath = a})---- | API-level methods for this API.-rdMethods :: Lens' RestDescription (Maybe RestDescriptionMethods)-rdMethods- = lens _rdMethods (\ s a -> s{_rdMethods = a})---- | The name of this API.-rdName :: Lens' RestDescription (Maybe Text)-rdName = lens _rdName (\ s a -> s{_rdName = a})---- | The package of the owner of this API. See ownerDomain.-rdPackagePath :: Lens' RestDescription (Maybe Text)-rdPackagePath- = lens _rdPackagePath- (\ s a -> s{_rdPackagePath = a})---- | A list of supported features for this API.-rdFeatures :: Lens' RestDescription [Text]-rdFeatures- = lens _rdFeatures (\ s a -> s{_rdFeatures = a}) .- _Default- . _Coerce--rdVersionModule :: Lens' RestDescription (Maybe Bool)-rdVersionModule- = lens _rdVersionModule- (\ s a -> s{_rdVersionModule = a})---- | The version of this API.-rdVersion :: Lens' RestDescription (Maybe Text)-rdVersion- = lens _rdVersion (\ s a -> s{_rdVersion = a})---- | Common parameters that apply across all apis.-rdParameters :: Lens' RestDescription (Maybe RestDescriptionParameters)-rdParameters- = lens _rdParameters (\ s a -> s{_rdParameters = a})---- | A link to human readable documentation for the API.-rdDocumentationLink :: Lens' RestDescription (Maybe Text)-rdDocumentationLink- = lens _rdDocumentationLink- (\ s a -> s{_rdDocumentationLink = a})---- | The root URL under which all API services live.-rdRootURL :: Lens' RestDescription (Maybe Text)-rdRootURL- = lens _rdRootURL (\ s a -> s{_rdRootURL = a})---- | The ID of this API.-rdId :: Lens' RestDescription (Maybe Text)-rdId = lens _rdId (\ s a -> s{_rdId = a})---- | Indicates how the API name should be capitalized and split into various--- parts. Useful for generating pretty class names.-rdCanonicalName :: Lens' RestDescription (Maybe Text)-rdCanonicalName- = lens _rdCanonicalName- (\ s a -> s{_rdCanonicalName = a})---- | Labels for the status of this API, such as labs or deprecated.-rdLabels :: Lens' RestDescription [Text]-rdLabels- = lens _rdLabels (\ s a -> s{_rdLabels = a}) .- _Default- . _Coerce---- | Indicate the version of the Discovery API used to generate this doc.-rdDiscoveryVersion :: Lens' RestDescription Text-rdDiscoveryVersion- = lens _rdDiscoveryVersion- (\ s a -> s{_rdDiscoveryVersion = a})---- | The title of this API.-rdTitle :: Lens' RestDescription (Maybe Text)-rdTitle = lens _rdTitle (\ s a -> s{_rdTitle = a})---- | The version of this API.-rdRevision :: Lens' RestDescription (Maybe Text)-rdRevision- = lens _rdRevision (\ s a -> s{_rdRevision = a})---- | The description of this API.-rdDescription :: Lens' RestDescription (Maybe Text)-rdDescription- = lens _rdDescription- (\ s a -> s{_rdDescription = a})--instance FromJSON RestDescription where- parseJSON- = withObject "RestDescription"- (\ o ->- RestDescription' <$>- (o .:? "etag") <*> (o .:? "schemas") <*>- (o .:? "servicePath")- <*> (o .:? "basePath")- <*> (o .:? "kind" .!= "discovery#restDescription")- <*> (o .:? "exponentialBackoffDefault")- <*> (o .:? "auth")- <*> (o .:? "icons")- <*> (o .:? "baseUrl")- <*> (o .:? "protocol" .!= "rest")- <*> (o .:? "ownerName")- <*> (o .:? "resources")- <*> (o .:? "ownerDomain")- <*> (o .:? "batchPath")- <*> (o .:? "methods")- <*> (o .:? "name")- <*> (o .:? "packagePath")- <*> (o .:? "features" .!= mempty)- <*> (o .:? "version_module")- <*> (o .:? "version")- <*> (o .:? "parameters")- <*> (o .:? "documentationLink")- <*> (o .:? "rootUrl")- <*> (o .:? "id")- <*> (o .:? "canonicalName")- <*> (o .:? "labels" .!= mempty)- <*> (o .:? "discoveryVersion" .!= "v1")- <*> (o .:? "title")- <*> (o .:? "revision")- <*> (o .:? "description"))--instance ToJSON RestDescription where- toJSON RestDescription'{..}- = object- (catMaybes- [("etag" .=) <$> _rdEtag,- ("schemas" .=) <$> _rdSchemas,- ("servicePath" .=) <$> _rdServicePath,- ("basePath" .=) <$> _rdBasePath,- Just ("kind" .= _rdKind),- ("exponentialBackoffDefault" .=) <$>- _rdExponentialBackoffDefault,- ("auth" .=) <$> _rdAuth, ("icons" .=) <$> _rdIcons,- ("baseUrl" .=) <$> _rdBaseURL,- Just ("protocol" .= _rdProtocol),- ("ownerName" .=) <$> _rdOwnerName,- ("resources" .=) <$> _rdResources,- ("ownerDomain" .=) <$> _rdOwnerDomain,- ("batchPath" .=) <$> _rdBatchPath,- ("methods" .=) <$> _rdMethods,- ("name" .=) <$> _rdName,- ("packagePath" .=) <$> _rdPackagePath,- ("features" .=) <$> _rdFeatures,- ("version_module" .=) <$> _rdVersionModule,- ("version" .=) <$> _rdVersion,- ("parameters" .=) <$> _rdParameters,- ("documentationLink" .=) <$> _rdDocumentationLink,- ("rootUrl" .=) <$> _rdRootURL, ("id" .=) <$> _rdId,- ("canonicalName" .=) <$> _rdCanonicalName,- ("labels" .=) <$> _rdLabels,- Just ("discoveryVersion" .= _rdDiscoveryVersion),- ("title" .=) <$> _rdTitle,- ("revision" .=) <$> _rdRevision,- ("description" .=) <$> _rdDescription])------- /See:/ 'jsonSchema' smart constructor.-data JSONSchema =- JSONSchema'- { _jsAnnotations :: !(Maybe JSONSchemaAnnotations)- , _jsVariant :: !(Maybe JSONSchemaVariant)- , _jsLocation :: !(Maybe Text)- , _jsRef :: !(Maybe Text)- , _jsPattern :: !(Maybe Text)- , _jsMaximum :: !(Maybe Text)- , _jsDefault :: !(Maybe Text)- , _jsFormat :: !(Maybe Text)- , _jsItems :: !(Maybe JSONSchema)- , _jsMinimum :: !(Maybe Text)- , _jsRequired :: !(Maybe Bool)- , _jsId :: !(Maybe Text)- , _jsAdditionalProperties :: !(Maybe JSONSchema)- , _jsType :: !(Maybe Text)- , _jsEnum :: !(Maybe [Text])- , _jsRepeated :: !(Maybe Bool)- , _jsReadOnly :: !(Maybe Bool)- , _jsEnumDescriptions :: !(Maybe [Text])- , _jsDescription :: !(Maybe Text)- , _jsProperties :: !(Maybe JSONSchemaProperties)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'JSONSchema' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jsAnnotations'------ * 'jsVariant'------ * 'jsLocation'------ * 'jsRef'------ * 'jsPattern'------ * 'jsMaximum'------ * 'jsDefault'------ * 'jsFormat'------ * 'jsItems'------ * 'jsMinimum'------ * 'jsRequired'------ * 'jsId'------ * 'jsAdditionalProperties'------ * 'jsType'------ * 'jsEnum'------ * 'jsRepeated'------ * 'jsReadOnly'------ * 'jsEnumDescriptions'------ * 'jsDescription'------ * 'jsProperties'-jsonSchema- :: JSONSchema-jsonSchema =- JSONSchema'- { _jsAnnotations = Nothing- , _jsVariant = Nothing- , _jsLocation = Nothing- , _jsRef = Nothing- , _jsPattern = Nothing- , _jsMaximum = Nothing- , _jsDefault = Nothing- , _jsFormat = Nothing- , _jsItems = Nothing- , _jsMinimum = Nothing- , _jsRequired = Nothing- , _jsId = Nothing- , _jsAdditionalProperties = Nothing- , _jsType = Nothing- , _jsEnum = Nothing- , _jsRepeated = Nothing- , _jsReadOnly = Nothing- , _jsEnumDescriptions = Nothing- , _jsDescription = Nothing- , _jsProperties = Nothing- }----- | Additional information about this property.-jsAnnotations :: Lens' JSONSchema (Maybe JSONSchemaAnnotations)-jsAnnotations- = lens _jsAnnotations- (\ s a -> s{_jsAnnotations = a})---- | In a variant data type, the value of one property is used to determine--- how to interpret the entire entity. Its value must exist in a map of--- descriminant values to schema names.-jsVariant :: Lens' JSONSchema (Maybe JSONSchemaVariant)-jsVariant- = lens _jsVariant (\ s a -> s{_jsVariant = a})---- | Whether this parameter goes in the query or the path for REST requests.-jsLocation :: Lens' JSONSchema (Maybe Text)-jsLocation- = lens _jsLocation (\ s a -> s{_jsLocation = a})---- | A reference to another schema. The value of this property is the \"id\"--- of another schema.-jsRef :: Lens' JSONSchema (Maybe Text)-jsRef = lens _jsRef (\ s a -> s{_jsRef = a})---- | The regular expression this parameter must conform to. Uses Java 6 regex--- format:--- http:\/\/docs.oracle.com\/javase\/6\/docs\/api\/java\/util\/regex\/Pattern.html-jsPattern :: Lens' JSONSchema (Maybe Text)-jsPattern- = lens _jsPattern (\ s a -> s{_jsPattern = a})---- | The maximum value of this parameter.-jsMaximum :: Lens' JSONSchema (Maybe Text)-jsMaximum- = lens _jsMaximum (\ s a -> s{_jsMaximum = a})---- | The default value of this property (if one exists).-jsDefault :: Lens' JSONSchema (Maybe Text)-jsDefault- = lens _jsDefault (\ s a -> s{_jsDefault = a})---- | An additional regular expression or key that helps constrain the value.--- For more details see:--- http:\/\/tools.ietf.org\/html\/draft-zyp-json-schema-03#section-5.23-jsFormat :: Lens' JSONSchema (Maybe Text)-jsFormat = lens _jsFormat (\ s a -> s{_jsFormat = a})---- | If this is a schema for an array, this property is the schema for each--- element in the array.-jsItems :: Lens' JSONSchema (Maybe JSONSchema)-jsItems = lens _jsItems (\ s a -> s{_jsItems = a})---- | The minimum value of this parameter.-jsMinimum :: Lens' JSONSchema (Maybe Text)-jsMinimum- = lens _jsMinimum (\ s a -> s{_jsMinimum = a})---- | Whether the parameter is required.-jsRequired :: Lens' JSONSchema (Maybe Bool)-jsRequired- = lens _jsRequired (\ s a -> s{_jsRequired = a})---- | Unique identifier for this schema.-jsId :: Lens' JSONSchema (Maybe Text)-jsId = lens _jsId (\ s a -> s{_jsId = a})---- | If this is a schema for an object, this property is the schema for any--- additional properties with dynamic keys on this object.-jsAdditionalProperties :: Lens' JSONSchema (Maybe JSONSchema)-jsAdditionalProperties- = lens _jsAdditionalProperties- (\ s a -> s{_jsAdditionalProperties = a})---- | The value type for this schema. A list of values can be found here:--- http:\/\/tools.ietf.org\/html\/draft-zyp-json-schema-03#section-5.1-jsType :: Lens' JSONSchema (Maybe Text)-jsType = lens _jsType (\ s a -> s{_jsType = a})---- | Values this parameter may take (if it is an enum).-jsEnum :: Lens' JSONSchema [Text]-jsEnum- = lens _jsEnum (\ s a -> s{_jsEnum = a}) . _Default .- _Coerce---- | Whether this parameter may appear multiple times.-jsRepeated :: Lens' JSONSchema (Maybe Bool)-jsRepeated- = lens _jsRepeated (\ s a -> s{_jsRepeated = a})---- | The value is read-only, generated by the service. The value cannot be--- modified by the client. If the value is included in a POST, PUT, or--- PATCH request, it is ignored by the service.-jsReadOnly :: Lens' JSONSchema (Maybe Bool)-jsReadOnly- = lens _jsReadOnly (\ s a -> s{_jsReadOnly = a})---- | The descriptions for the enums. Each position maps to the corresponding--- value in the \"enum\" array.-jsEnumDescriptions :: Lens' JSONSchema [Text]-jsEnumDescriptions- = lens _jsEnumDescriptions- (\ s a -> s{_jsEnumDescriptions = a})- . _Default- . _Coerce---- | A description of this object.-jsDescription :: Lens' JSONSchema (Maybe Text)-jsDescription- = lens _jsDescription- (\ s a -> s{_jsDescription = a})---- | If this is a schema for an object, list the schema for each property of--- this object.-jsProperties :: Lens' JSONSchema (Maybe JSONSchemaProperties)-jsProperties- = lens _jsProperties (\ s a -> s{_jsProperties = a})--instance FromJSON JSONSchema where- parseJSON- = withObject "JSONSchema"- (\ o ->- JSONSchema' <$>- (o .:? "annotations") <*> (o .:? "variant") <*>- (o .:? "location")- <*> (o .:? "$ref")- <*> (o .:? "pattern")- <*> (o .:? "maximum")- <*> (o .:? "default")- <*> (o .:? "format")- <*> (o .:? "items")- <*> (o .:? "minimum")- <*> (o .:? "required")- <*> (o .:? "id")- <*> (o .:? "additionalProperties")- <*> (o .:? "type")- <*> (o .:? "enum" .!= mempty)- <*> (o .:? "repeated")- <*> (o .:? "readOnly")- <*> (o .:? "enumDescriptions" .!= mempty)- <*> (o .:? "description")- <*> (o .:? "properties"))--instance ToJSON JSONSchema where- toJSON JSONSchema'{..}- = object- (catMaybes- [("annotations" .=) <$> _jsAnnotations,- ("variant" .=) <$> _jsVariant,- ("location" .=) <$> _jsLocation,- ("$ref" .=) <$> _jsRef,- ("pattern" .=) <$> _jsPattern,- ("maximum" .=) <$> _jsMaximum,- ("default" .=) <$> _jsDefault,- ("format" .=) <$> _jsFormat,- ("items" .=) <$> _jsItems,- ("minimum" .=) <$> _jsMinimum,- ("required" .=) <$> _jsRequired, ("id" .=) <$> _jsId,- ("additionalProperties" .=) <$>- _jsAdditionalProperties,- ("type" .=) <$> _jsType, ("enum" .=) <$> _jsEnum,- ("repeated" .=) <$> _jsRepeated,- ("readOnly" .=) <$> _jsReadOnly,- ("enumDescriptions" .=) <$> _jsEnumDescriptions,- ("description" .=) <$> _jsDescription,- ("properties" .=) <$> _jsProperties])---- | The schemas for this API.------ /See:/ 'restDescriptionSchemas' smart constructor.-newtype RestDescriptionSchemas =- RestDescriptionSchemas'- { _rdsAddtional :: HashMap Text JSONSchema- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescriptionSchemas' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdsAddtional'-restDescriptionSchemas- :: HashMap Text JSONSchema -- ^ 'rdsAddtional'- -> RestDescriptionSchemas-restDescriptionSchemas pRdsAddtional_ =- RestDescriptionSchemas' {_rdsAddtional = _Coerce # pRdsAddtional_}----- | An individual schema description.-rdsAddtional :: Lens' RestDescriptionSchemas (HashMap Text JSONSchema)-rdsAddtional- = lens _rdsAddtional (\ s a -> s{_rdsAddtional = a})- . _Coerce--instance FromJSON RestDescriptionSchemas where- parseJSON- = withObject "RestDescriptionSchemas"- (\ o ->- RestDescriptionSchemas' <$> (parseJSONObject o))--instance ToJSON RestDescriptionSchemas where- toJSON = toJSON . _rdsAddtional------- /See:/ 'jsonSchemaVariantMapItem' smart constructor.-data JSONSchemaVariantMapItem =- JSONSchemaVariantMapItem'- { _jsvmiRef :: !(Maybe Text)- , _jsvmiTypeValue :: !(Maybe Text)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'JSONSchemaVariantMapItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jsvmiRef'------ * 'jsvmiTypeValue'-jsonSchemaVariantMapItem- :: JSONSchemaVariantMapItem-jsonSchemaVariantMapItem =- JSONSchemaVariantMapItem' {_jsvmiRef = Nothing, _jsvmiTypeValue = Nothing}---jsvmiRef :: Lens' JSONSchemaVariantMapItem (Maybe Text)-jsvmiRef = lens _jsvmiRef (\ s a -> s{_jsvmiRef = a})--jsvmiTypeValue :: Lens' JSONSchemaVariantMapItem (Maybe Text)-jsvmiTypeValue- = lens _jsvmiTypeValue- (\ s a -> s{_jsvmiTypeValue = a})--instance FromJSON JSONSchemaVariantMapItem where- parseJSON- = withObject "JSONSchemaVariantMapItem"- (\ o ->- JSONSchemaVariantMapItem' <$>- (o .:? "$ref") <*> (o .:? "type_value"))--instance ToJSON JSONSchemaVariantMapItem where- toJSON JSONSchemaVariantMapItem'{..}- = object- (catMaybes- [("$ref" .=) <$> _jsvmiRef,- ("type_value" .=) <$> _jsvmiTypeValue])---- | The resources in this API.------ /See:/ 'restDescriptionResources' smart constructor.-newtype RestDescriptionResources =- RestDescriptionResources'- { _rdrAddtional :: HashMap Text RestResource- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestDescriptionResources' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdrAddtional'-restDescriptionResources- :: HashMap Text RestResource -- ^ 'rdrAddtional'- -> RestDescriptionResources-restDescriptionResources pRdrAddtional_ =- RestDescriptionResources' {_rdrAddtional = _Coerce # pRdrAddtional_}----- | An individual resource description. Contains methods and sub-resources--- related to this resource.-rdrAddtional :: Lens' RestDescriptionResources (HashMap Text RestResource)-rdrAddtional- = lens _rdrAddtional (\ s a -> s{_rdrAddtional = a})- . _Coerce--instance FromJSON RestDescriptionResources where- parseJSON- = withObject "RestDescriptionResources"- (\ o ->- RestDescriptionResources' <$> (parseJSONObject o))--instance ToJSON RestDescriptionResources where- toJSON = toJSON . _rdrAddtional---- | Supported upload protocols.------ /See:/ 'restMethodMediaUploadProtocols' smart constructor.-data RestMethodMediaUploadProtocols =- RestMethodMediaUploadProtocols'- { _rmmupSimple :: !(Maybe RestMethodMediaUploadProtocolsSimple)- , _rmmupResumable :: !(Maybe RestMethodMediaUploadProtocolsResumable)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestMethodMediaUploadProtocols' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rmmupSimple'------ * 'rmmupResumable'-restMethodMediaUploadProtocols- :: RestMethodMediaUploadProtocols-restMethodMediaUploadProtocols =- RestMethodMediaUploadProtocols'- {_rmmupSimple = Nothing, _rmmupResumable = Nothing}----- | Supports uploading as a single HTTP request.-rmmupSimple :: Lens' RestMethodMediaUploadProtocols (Maybe RestMethodMediaUploadProtocolsSimple)-rmmupSimple- = lens _rmmupSimple (\ s a -> s{_rmmupSimple = a})---- | Supports the Resumable Media Upload protocol.-rmmupResumable :: Lens' RestMethodMediaUploadProtocols (Maybe RestMethodMediaUploadProtocolsResumable)-rmmupResumable- = lens _rmmupResumable- (\ s a -> s{_rmmupResumable = a})--instance FromJSON RestMethodMediaUploadProtocols- where- parseJSON- = withObject "RestMethodMediaUploadProtocols"- (\ o ->- RestMethodMediaUploadProtocols' <$>- (o .:? "simple") <*> (o .:? "resumable"))--instance ToJSON RestMethodMediaUploadProtocols where- toJSON RestMethodMediaUploadProtocols'{..}- = object- (catMaybes- [("simple" .=) <$> _rmmupSimple,- ("resumable" .=) <$> _rmmupResumable])---- | Additional information about this property.------ /See:/ 'jsonSchemaAnnotations' smart constructor.-newtype JSONSchemaAnnotations =- JSONSchemaAnnotations'- { _jsaRequired :: Maybe [Text]- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'JSONSchemaAnnotations' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jsaRequired'-jsonSchemaAnnotations- :: JSONSchemaAnnotations-jsonSchemaAnnotations = JSONSchemaAnnotations' {_jsaRequired = Nothing}----- | A list of methods for which this property is required on requests.-jsaRequired :: Lens' JSONSchemaAnnotations [Text]-jsaRequired- = lens _jsaRequired (\ s a -> s{_jsaRequired = a}) .- _Default- . _Coerce--instance FromJSON JSONSchemaAnnotations where- parseJSON- = withObject "JSONSchemaAnnotations"- (\ o ->- JSONSchemaAnnotations' <$>- (o .:? "required" .!= mempty))--instance ToJSON JSONSchemaAnnotations where- toJSON JSONSchemaAnnotations'{..}- = object- (catMaybes [("required" .=) <$> _jsaRequired])---- | Details for all parameters in this method.------ /See:/ 'restMethodParameters' smart constructor.-newtype RestMethodParameters =- RestMethodParameters'- { _rmpAddtional :: HashMap Text JSONSchema- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestMethodParameters' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rmpAddtional'-restMethodParameters- :: HashMap Text JSONSchema -- ^ 'rmpAddtional'- -> RestMethodParameters-restMethodParameters pRmpAddtional_ =- RestMethodParameters' {_rmpAddtional = _Coerce # pRmpAddtional_}----- | Details for a single parameter in this method.-rmpAddtional :: Lens' RestMethodParameters (HashMap Text JSONSchema)-rmpAddtional- = lens _rmpAddtional (\ s a -> s{_rmpAddtional = a})- . _Coerce--instance FromJSON RestMethodParameters where- parseJSON- = withObject "RestMethodParameters"- (\ o ->- RestMethodParameters' <$> (parseJSONObject o))--instance ToJSON RestMethodParameters where- toJSON = toJSON . _rmpAddtional---- | Media upload parameters.------ /See:/ 'restMethodMediaUpload' smart constructor.-data RestMethodMediaUpload =- RestMethodMediaUpload'- { _rmmuProtocols :: !(Maybe RestMethodMediaUploadProtocols)- , _rmmuAccept :: !(Maybe [Text])- , _rmmuMaxSize :: !(Maybe Text)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestMethodMediaUpload' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rmmuProtocols'------ * 'rmmuAccept'------ * 'rmmuMaxSize'-restMethodMediaUpload- :: RestMethodMediaUpload-restMethodMediaUpload =- RestMethodMediaUpload'- {_rmmuProtocols = Nothing, _rmmuAccept = Nothing, _rmmuMaxSize = Nothing}----- | Supported upload protocols.-rmmuProtocols :: Lens' RestMethodMediaUpload (Maybe RestMethodMediaUploadProtocols)-rmmuProtocols- = lens _rmmuProtocols- (\ s a -> s{_rmmuProtocols = a})---- | MIME Media Ranges for acceptable media uploads to this method.-rmmuAccept :: Lens' RestMethodMediaUpload [Text]-rmmuAccept- = lens _rmmuAccept (\ s a -> s{_rmmuAccept = a}) .- _Default- . _Coerce---- | Maximum size of a media upload, such as \"1MB\", \"2GB\" or \"3TB\".-rmmuMaxSize :: Lens' RestMethodMediaUpload (Maybe Text)-rmmuMaxSize- = lens _rmmuMaxSize (\ s a -> s{_rmmuMaxSize = a})--instance FromJSON RestMethodMediaUpload where- parseJSON- = withObject "RestMethodMediaUpload"- (\ o ->- RestMethodMediaUpload' <$>- (o .:? "protocols") <*> (o .:? "accept" .!= mempty)- <*> (o .:? "maxSize"))--instance ToJSON RestMethodMediaUpload where- toJSON RestMethodMediaUpload'{..}- = object- (catMaybes- [("protocols" .=) <$> _rmmuProtocols,- ("accept" .=) <$> _rmmuAccept,- ("maxSize" .=) <$> _rmmuMaxSize])---- | If this is a schema for an object, list the schema for each property of--- this object.------ /See:/ 'jsonSchemaProperties' smart constructor.-newtype JSONSchemaProperties =- JSONSchemaProperties'- { _jspAddtional :: HashMap Text JSONSchema- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'JSONSchemaProperties' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jspAddtional'-jsonSchemaProperties- :: HashMap Text JSONSchema -- ^ 'jspAddtional'- -> JSONSchemaProperties-jsonSchemaProperties pJspAddtional_ =- JSONSchemaProperties' {_jspAddtional = _Coerce # pJspAddtional_}----- | A single property of this object. The value is itself a JSON Schema--- object describing this property.-jspAddtional :: Lens' JSONSchemaProperties (HashMap Text JSONSchema)-jspAddtional- = lens _jspAddtional (\ s a -> s{_jspAddtional = a})- . _Coerce--instance FromJSON JSONSchemaProperties where- parseJSON- = withObject "JSONSchemaProperties"- (\ o ->- JSONSchemaProperties' <$> (parseJSONObject o))--instance ToJSON JSONSchemaProperties where- toJSON = toJSON . _jspAddtional---- | Supports the Resumable Media Upload protocol.------ /See:/ 'restMethodMediaUploadProtocolsResumable' smart constructor.-data RestMethodMediaUploadProtocolsResumable =- RestMethodMediaUploadProtocolsResumable'- { _rmmuprPath :: !(Maybe Text)- , _rmmuprMultiPart :: !Bool- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestMethodMediaUploadProtocolsResumable' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rmmuprPath'------ * 'rmmuprMultiPart'-restMethodMediaUploadProtocolsResumable- :: RestMethodMediaUploadProtocolsResumable-restMethodMediaUploadProtocolsResumable =- RestMethodMediaUploadProtocolsResumable'- {_rmmuprPath = Nothing, _rmmuprMultiPart = True}----- | The URI path to be used for upload. Should be used in conjunction with--- the basePath property at the api-level.-rmmuprPath :: Lens' RestMethodMediaUploadProtocolsResumable (Maybe Text)-rmmuprPath- = lens _rmmuprPath (\ s a -> s{_rmmuprPath = a})---- | True if this endpoint supports uploading multipart media.-rmmuprMultiPart :: Lens' RestMethodMediaUploadProtocolsResumable Bool-rmmuprMultiPart- = lens _rmmuprMultiPart- (\ s a -> s{_rmmuprMultiPart = a})--instance FromJSON- RestMethodMediaUploadProtocolsResumable- where- parseJSON- = withObject- "RestMethodMediaUploadProtocolsResumable"- (\ o ->- RestMethodMediaUploadProtocolsResumable' <$>- (o .:? "path") <*> (o .:? "multipart" .!= True))--instance ToJSON- RestMethodMediaUploadProtocolsResumable- where- toJSON RestMethodMediaUploadProtocolsResumable'{..}- = object- (catMaybes- [("path" .=) <$> _rmmuprPath,- Just ("multipart" .= _rmmuprMultiPart)])------- /See:/ 'directoryList' smart constructor.-data DirectoryList =- DirectoryList'- { _dlKind :: !Text- , _dlItems :: !(Maybe [DirectoryListItemsItem])- , _dlDiscoveryVersion :: !Text- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'DirectoryList' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dlKind'------ * 'dlItems'------ * 'dlDiscoveryVersion'-directoryList- :: DirectoryList-directoryList =- DirectoryList'- { _dlKind = "discovery#directoryList"- , _dlItems = Nothing- , _dlDiscoveryVersion = "v1"- }----- | The kind for this response.-dlKind :: Lens' DirectoryList Text-dlKind = lens _dlKind (\ s a -> s{_dlKind = a})---- | The individual directory entries. One entry per api\/version pair.-dlItems :: Lens' DirectoryList [DirectoryListItemsItem]-dlItems- = lens _dlItems (\ s a -> s{_dlItems = a}) . _Default- . _Coerce---- | Indicate the version of the Discovery API used to generate this doc.-dlDiscoveryVersion :: Lens' DirectoryList Text-dlDiscoveryVersion- = lens _dlDiscoveryVersion- (\ s a -> s{_dlDiscoveryVersion = a})--instance FromJSON DirectoryList where- parseJSON- = withObject "DirectoryList"- (\ o ->- DirectoryList' <$>- (o .:? "kind" .!= "discovery#directoryList") <*>- (o .:? "items" .!= mempty)- <*> (o .:? "discoveryVersion" .!= "v1"))--instance ToJSON DirectoryList where- toJSON DirectoryList'{..}- = object- (catMaybes- [Just ("kind" .= _dlKind), ("items" .=) <$> _dlItems,- Just ("discoveryVersion" .= _dlDiscoveryVersion)])---- | The schema for the request.------ /See:/ 'restMethodRequest' smart constructor.-data RestMethodRequest =- RestMethodRequest'- { _rRef :: !(Maybe Text)- , _rParameterName :: !(Maybe Text)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'RestMethodRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rRef'------ * 'rParameterName'-restMethodRequest- :: RestMethodRequest-restMethodRequest =- RestMethodRequest' {_rRef = Nothing, _rParameterName = Nothing}----- | Schema ID for the request schema.-rRef :: Lens' RestMethodRequest (Maybe Text)-rRef = lens _rRef (\ s a -> s{_rRef = a})---- | parameter name.-rParameterName :: Lens' RestMethodRequest (Maybe Text)-rParameterName- = lens _rParameterName- (\ s a -> s{_rParameterName = a})--instance FromJSON RestMethodRequest where- parseJSON- = withObject "RestMethodRequest"- (\ o ->- RestMethodRequest' <$>- (o .:? "$ref") <*> (o .:? "parameterName"))--instance ToJSON RestMethodRequest where- toJSON RestMethodRequest'{..}- = object- (catMaybes- [("$ref" .=) <$> _rRef,- ("parameterName" .=) <$> _rParameterName])
− gen/Network/Google/Discovery/Types/Sum.hs
@@ -1,19 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- |--- Module : Network.Google.Discovery.Types.Sum--- Copyright : (c) 2015-2016 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.Discovery.Types.Sum where--import Network.Google.Prelude hiding (Bytes)
− gen/Network/Google/Resource/Discovery/APIs/GetRest.hs
@@ -1,98 +0,0 @@-{-# 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.Discovery.APIs.GetRest--- Copyright : (c) 2015-2016 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 the description of a particular version of an api.------ /See:/ <https://developers.google.com/discovery/ API Discovery Service Reference> for @discovery.apis.getRest@.-module Network.Google.Resource.Discovery.APIs.GetRest- (- -- * REST Resource- APIsGetRestResource-- -- * Creating a Request- , apisGetRest- , APIsGetRest-- -- * Request Lenses- , agrVersion- , agrAPI- ) where--import Network.Google.Discovery.Types-import Network.Google.Prelude---- | A resource alias for @discovery.apis.getRest@ method which the--- 'APIsGetRest' request conforms to.-type APIsGetRestResource =- "discovery" :>- "v1" :>- "apis" :>- Capture "api" Text :>- Capture "version" Text :>- "rest" :>- QueryParam "alt" AltJSON :>- Get '[JSON] RestDescription---- | Retrieve the description of a particular version of an api.------ /See:/ 'apisGetRest' smart constructor.-data APIsGetRest =- APIsGetRest'- { _agrVersion :: !Text- , _agrAPI :: !Text- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'APIsGetRest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'agrVersion'------ * 'agrAPI'-apisGetRest- :: Text -- ^ 'agrVersion'- -> Text -- ^ 'agrAPI'- -> APIsGetRest-apisGetRest pAgrVersion_ pAgrAPI_ =- APIsGetRest' {_agrVersion = pAgrVersion_, _agrAPI = pAgrAPI_}----- | The version of the API.-agrVersion :: Lens' APIsGetRest Text-agrVersion- = lens _agrVersion (\ s a -> s{_agrVersion = a})---- | The name of the API.-agrAPI :: Lens' APIsGetRest Text-agrAPI = lens _agrAPI (\ s a -> s{_agrAPI = a})--instance GoogleRequest APIsGetRest where- type Rs APIsGetRest = RestDescription- type Scopes APIsGetRest = '[]- requestClient APIsGetRest'{..}- = go _agrAPI _agrVersion (Just AltJSON)- discoveryService- where go- = buildClient (Proxy :: Proxy APIsGetRestResource)- mempty
− gen/Network/Google/Resource/Discovery/APIs/List.hs
@@ -1,93 +0,0 @@-{-# 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.Discovery.APIs.List--- Copyright : (c) 2015-2016 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 the list of APIs supported at this endpoint.------ /See:/ <https://developers.google.com/discovery/ API Discovery Service Reference> for @discovery.apis.list@.-module Network.Google.Resource.Discovery.APIs.List- (- -- * REST Resource- APIsListResource-- -- * Creating a Request- , apisList- , APIsList-- -- * Request Lenses- , alPreferred- , alName- ) where--import Network.Google.Discovery.Types-import Network.Google.Prelude---- | A resource alias for @discovery.apis.list@ method which the--- 'APIsList' request conforms to.-type APIsListResource =- "discovery" :>- "v1" :>- "apis" :>- QueryParam "preferred" Bool :>- QueryParam "name" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] DirectoryList---- | Retrieve the list of APIs supported at this endpoint.------ /See:/ 'apisList' smart constructor.-data APIsList =- APIsList'- { _alPreferred :: !Bool- , _alName :: !(Maybe Text)- }- deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'APIsList' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'alPreferred'------ * 'alName'-apisList- :: APIsList-apisList = APIsList' {_alPreferred = False, _alName = Nothing}----- | Return only the preferred version of an API.-alPreferred :: Lens' APIsList Bool-alPreferred- = lens _alPreferred (\ s a -> s{_alPreferred = a})---- | Only include APIs with the given name.-alName :: Lens' APIsList (Maybe Text)-alName = lens _alName (\ s a -> s{_alName = a})--instance GoogleRequest APIsList where- type Rs APIsList = DirectoryList- type Scopes APIsList = '[]- requestClient APIsList'{..}- = go (Just _alPreferred) _alName (Just AltJSON)- discoveryService- where go- = buildClient (Proxy :: Proxy APIsListResource)- mempty
gogol-discovery.cabal view
@@ -1,48 +1,62 @@-name: gogol-discovery-version: 0.5.0-synopsis: Google API Discovery Service 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-2016 Brendan Hay-category: Network, Google, Cloud-build-type: Simple-cabal-version: >= 1.10-extra-source-files: README.md src/.gitkeep+cabal-version: 2.2+name: gogol-discovery+version: 1.0.0+synopsis: Google API Discovery Service SDK.+homepage: https://github.com/brendanhay/gogol+bug-reports: https://github.com/brendanhay/gogol/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+gogol@gmail.com>, Toni Cebrián <toni@tonicebrian.com> +copyright: Copyright (c) 2015-2025 Brendan Hay+category: Google+build-type: Simple+extra-source-files:+ README.md+ src/.gitkeep+ description:- Provides information about other Google APIs, such as what APIs are- available, the resource, and method details for each API.- .- /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 @v1@- of the API.+ Provides information about other Google APIs, such as what APIs are available, the resource, and method details for each API.+ .+ /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 @v1@+ of the API. source-repository head- type: git- location: git://github.com/brendanhay/gogol.git+ type: git+ location: git://github.com/brendanhay/gogol.git+ subdir: gogol-discovery +flag field-selectors+ description:+ If record field selectors should be enabled. Disabling this requires GHC >=9.2 and the NoFieldSelectors extension.++ default: False+ manual: True+ library- default-language: Haskell2010- hs-source-dirs: src gen+ default-language: GHC2021+ hs-source-dirs: src gen+ ghc-options:+ -Wall -fwarn-incomplete-uni-patterns+ -fwarn-incomplete-record-updates -funbox-strict-fields+ -fwarn-unused-packages - ghc-options: -Wall+ if (!flag(field-selectors) && impl(ghc >=9.2))+ default-extensions: NoFieldSelectors - exposed-modules:- Network.Google.Discovery- , Network.Google.Discovery.Types- , Network.Google.Resource.Discovery.APIs.GetRest- , Network.Google.Resource.Discovery.APIs.List+ exposed-modules:+ Gogol.Discovery+ Gogol.Discovery.Apis.GetRest+ Gogol.Discovery.Apis.List+ Gogol.Discovery.Types - other-modules:- Network.Google.Discovery.Types.Product- , Network.Google.Discovery.Types.Sum+ other-modules:+ Gogol.Discovery.Internal.Product+ Gogol.Discovery.Internal.Sum - build-depends:- gogol-core == 0.5.0.*- , base >= 4.7 && < 5+ build-depends: gogol-core ^>=1.0.0