on develop help sign in
Regenerating gogol-kgsearch from latest service definition
commit94bf4b9fe0c150a2fdfb3c0d823855624b2ec76e authorBrendan Hay <brendan.g.hay@gmail.com> dateTue 25 Oct 2016, 11:37 (10 years ago) parent2c23c17
19 files changed+711−568
gogol-kgsearch/README.md+1−1 gogol-kgsearch/gen/Network/Google/KnowledgeGraphSearch.hs+44−45 gogol-kgsearch/gen/Network/Google/KnowledgeGraphSearch/Types.hs+36−42 gogol-kgsearch/gen/Network/Google/KnowledgeGraphSearch/Types/Product.hs+341−379 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Create.hs+4−4 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Delete.hs+8−8 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Get.hs+8−8 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/GetIAMPolicy.hs+5−7 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Keys/Create.hs+8−8 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Keys/Delete.hs+8−8 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Keys/Get.hs+23−9 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Keys/List.hs+10−9 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/List.hs+6−6 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/SetIAMPolicy.hs+5−7 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/SignBlob.hs+8−8 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/TestIAMPermissions.hs+5−7 gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Update.hs+12−11 gogol-kgsearch/gen/Network/Google/Resource/IAM/Roles/QueryGrantableRoles.hs+177 gogol-kgsearch/gogol-kgsearch.cabal+2−1
gogol-kgsearch/README.md+1−1
@@ -13,7 +13,7 @@
1313
1414## Description
1515
16−A client library for the Google Identity and Access Management.
16+A client library for the Google Identity and Access Management (IAM).
1717
1818
1919## Contribute
gogol-kgsearch/gen/Network/Google/KnowledgeGraphSearch.hs+44−45
@@ -17,7 +17,7 @@
1717-- including the creation of service accounts, which you can use to
1818-- authenticate to Google and make API calls.
1919--
20−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference>
20+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference>
2121module Network.Google.KnowledgeGraphSearch
2222 (
2323 -- * Service Configuration
@@ -70,48 +70,49 @@ module Network.Google.KnowledgeGraphSearch
7070 -- ** iam.projects.serviceAccounts.update
7171 , module Network.Google.Resource.IAM.Projects.ServiceAccounts.Update
7272
73− -- * Types
73+ -- ** iam.roles.queryGrantableRoles
74+ , module Network.Google.Resource.IAM.Roles.QueryGrantableRoles
7475
75− -- ** CounterOptions
76− , CounterOptions
77− , counterOptions
78− , coField
79− , coMetric
76+ -- * Types
8077
8178 -- ** Empty
8279 , Empty
8380 , empty
8481
82+ -- ** AuditData
83+ , AuditData
84+ , auditData
85+ , adPolicyDelta
86+
8587 -- ** ServiceAccountKey
8688 , ServiceAccountKey
8789 , serviceAccountKey
8890 , sakValidAfterTime
8991 , sakPrivateKeyData
92+ , sakPublicKeyData
9093 , sakName
9194 , sakPrivateKeyType
9295 , sakValidBeforeTime
93−
94− -- ** Rule
95− , Rule
96− , rule
97− , rAction
98− , rIn
99− , rNotIn
100− , rConditions
101− , rPermissions
102− , rLogConfig
103− , rDescription
96+ , sakKeyAlgorithm
10497
10598 -- ** CreateServiceAccountKeyRequest
10699 , CreateServiceAccountKeyRequest
107100 , createServiceAccountKeyRequest
108101 , csakrPrivateKeyType
102+ , csakrKeyAlgorithm
109103
110104 -- ** SetIAMPolicyRequest
111105 , SetIAMPolicyRequest
112106 , setIAMPolicyRequest
113107 , siprPolicy
114108
109+ -- ** BindingDelta
110+ , BindingDelta
111+ , bindingDelta
112+ , bdAction
113+ , bdRole
114+ , bdMember
115+
115116 -- ** SignBlobRequest
116117 , SignBlobRequest
117118 , signBlobRequest
@@ -122,13 +123,12 @@ module Network.Google.KnowledgeGraphSearch
122123 , listServiceAccountKeysResponse
123124 , lsakrKeys
124125
125− -- ** CloudAuditOptions
126− , CloudAuditOptions
127− , cloudAuditOptions
128−
129− -- ** DataAccessOptions
130− , DataAccessOptions
131− , dataAccessOptions
126+ -- ** Role
127+ , Role
128+ , role'
129+ , rName
130+ , rTitle
131+ , rDescription
132132
133133 -- ** ServiceAccount
134134 , ServiceAccount
@@ -141,6 +141,11 @@ module Network.Google.KnowledgeGraphSearch
141141 , saProjectId
142142 , saOAuth2ClientId
143143
144+ -- ** QueryGrantableRolesResponse
145+ , QueryGrantableRolesResponse
146+ , queryGrantableRolesResponse
147+ , qgrrRoles
148+
144149 -- ** TestIAMPermissionsRequest
145150 , TestIAMPermissionsRequest
146151 , testIAMPermissionsRequest
@@ -155,19 +160,18 @@ module Network.Google.KnowledgeGraphSearch
155160 , Policy
156161 , policy
157162 , pEtag
158− , pRules
159163 , pVersion
160164 , pBindings
161165
162− -- ** Condition
163− , Condition
164− , condition
165− , cOp
166− , cIAM
167− , cValues
168− , cValue
169− , cSys
170− , cSvc
166+ -- ** PolicyDelta
167+ , PolicyDelta
168+ , policyDelta
169+ , pdBindingDeltas
170+
171+ -- ** QueryGrantableRolesRequest
172+ , QueryGrantableRolesRequest
173+ , queryGrantableRolesRequest
174+ , qgrrFullResourceName
171175
172176 -- ** SignBlobResponse
173177 , SignBlobResponse
@@ -181,13 +185,6 @@ module Network.Google.KnowledgeGraphSearch
181185 , lsarNextPageToken
182186 , lsarAccounts
183187
184− -- ** LogConfig
185− , LogConfig
186− , logConfig
187− , lcCloudAudit
188− , lcDataAccess
189− , lcCounter
190−
191188 -- ** CreateServiceAccountRequest
192189 , CreateServiceAccountRequest
193190 , createServiceAccountRequest
@@ -216,15 +213,17 @@ import Network.Google.Resource.IAM.Projects.ServiceAccounts.SetIAMPoli
216213import Network.Google.Resource.IAM.Projects.ServiceAccounts.SignBlob
217214import Network.Google.Resource.IAM.Projects.ServiceAccounts.TestIAMPermissions
218215import Network.Google.Resource.IAM.Projects.ServiceAccounts.Update
216+import Network.Google.Resource.IAM.Roles.QueryGrantableRoles
219217
220218{- $resources
221219TODO
222220-}
223221
224−-- | Represents the entirety of the methods and resources available for the Google Identity and Access Management API service.
222+-- | Represents the entirety of the methods and resources available for the Google Identity and Access Management (IAM) API service.
225223type KnowledgeGraphSearchAPI =
226− ProjectsServiceAccountsKeysListResource :<|>
227− ProjectsServiceAccountsKeysGetResource
224+ RolesQueryGrantableRolesResource :<|>
225+ ProjectsServiceAccountsKeysListResource
226+ :<|> ProjectsServiceAccountsKeysGetResource
228227 :<|> ProjectsServiceAccountsKeysCreateResource
229228 :<|> ProjectsServiceAccountsKeysDeleteResource
230229 :<|> ProjectsServiceAccountsListResource
gogol-kgsearch/gen/Network/Google/KnowledgeGraphSearch/Types.hs+36−42
@@ -22,46 +22,44 @@ module Network.Google.KnowledgeGraphSearch.Types
2222 -- * OAuth Scopes
2323 , cloudPlatformScope
2424
25− -- * CounterOptions
26− , CounterOptions
27− , counterOptions
28− , coField
29− , coMetric
30−
3125 -- * Empty
3226 , Empty
3327 , empty
3428
29+ -- * AuditData
30+ , AuditData
31+ , auditData
32+ , adPolicyDelta
33+
3534 -- * ServiceAccountKey
3635 , ServiceAccountKey
3736 , serviceAccountKey
3837 , sakValidAfterTime
3938 , sakPrivateKeyData
39+ , sakPublicKeyData
4040 , sakName
4141 , sakPrivateKeyType
4242 , sakValidBeforeTime
43−
44− -- * Rule
45− , Rule
46− , rule
47− , rAction
48− , rIn
49− , rNotIn
50− , rConditions
51− , rPermissions
52− , rLogConfig
53− , rDescription
43+ , sakKeyAlgorithm
5444
5545 -- * CreateServiceAccountKeyRequest
5646 , CreateServiceAccountKeyRequest
5747 , createServiceAccountKeyRequest
5848 , csakrPrivateKeyType
49+ , csakrKeyAlgorithm
5950
6051 -- * SetIAMPolicyRequest
6152 , SetIAMPolicyRequest
6253 , setIAMPolicyRequest
6354 , siprPolicy
6455
56+ -- * BindingDelta
57+ , BindingDelta
58+ , bindingDelta
59+ , bdAction
60+ , bdRole
61+ , bdMember
62+
6563 -- * SignBlobRequest
6664 , SignBlobRequest
6765 , signBlobRequest
@@ -72,13 +70,12 @@ module Network.Google.KnowledgeGraphSearch.Types
7270 , listServiceAccountKeysResponse
7371 , lsakrKeys
7472
75− -- * CloudAuditOptions
76− , CloudAuditOptions
77− , cloudAuditOptions
78−
79− -- * DataAccessOptions
80− , DataAccessOptions
81− , dataAccessOptions
73+ -- * Role
74+ , Role
75+ , role'
76+ , rName
77+ , rTitle
78+ , rDescription
8279
8380 -- * ServiceAccount
8481 , ServiceAccount
@@ -91,6 +88,11 @@ module Network.Google.KnowledgeGraphSearch.Types
9188 , saProjectId
9289 , saOAuth2ClientId
9390
91+ -- * QueryGrantableRolesResponse
92+ , QueryGrantableRolesResponse
93+ , queryGrantableRolesResponse
94+ , qgrrRoles
95+
9496 -- * TestIAMPermissionsRequest
9597 , TestIAMPermissionsRequest
9698 , testIAMPermissionsRequest
@@ -105,19 +107,18 @@ module Network.Google.KnowledgeGraphSearch.Types
105107 , Policy
106108 , policy
107109 , pEtag
108− , pRules
109110 , pVersion
110111 , pBindings
111112
112− -- * Condition
113− , Condition
114− , condition
115− , cOp
116− , cIAM
117− , cValues
118− , cValue
119− , cSys
120− , cSvc
113+ -- * PolicyDelta
114+ , PolicyDelta
115+ , policyDelta
116+ , pdBindingDeltas
117+
118+ -- * QueryGrantableRolesRequest
119+ , QueryGrantableRolesRequest
120+ , queryGrantableRolesRequest
121+ , qgrrFullResourceName
121122
122123 -- * SignBlobResponse
123124 , SignBlobResponse
@@ -131,13 +132,6 @@ module Network.Google.KnowledgeGraphSearch.Types
131132 , lsarNextPageToken
132133 , lsarAccounts
133134
134− -- * LogConfig
135− , LogConfig
136− , logConfig
137− , lcCloudAudit
138− , lcDataAccess
139− , lcCounter
140−
141135 -- * CreateServiceAccountRequest
142136 , CreateServiceAccountRequest
143137 , createServiceAccountRequest
@@ -155,7 +149,7 @@ import Network.Google.KnowledgeGraphSearch.Types.Product
155149import Network.Google.KnowledgeGraphSearch.Types.Sum
156150import Network.Google.Prelude
157151
158−-- | Default request referring to version 'v1' of the Google Identity and Access Management API. This contains the host and root path used as a starting point for constructing service requests.
152+-- | Default request referring to version 'v1' of the Google Identity and Access Management (IAM) API. This contains the host and root path used as a starting point for constructing service requests.
159153knowledgeGraphSearchService :: ServiceConfig
160154knowledgeGraphSearchService
161155 = defaultService (ServiceId "iam:v1")
gogol-kgsearch/gen/Network/Google/KnowledgeGraphSearch/Types/Product.hs+341−379
@@ -20,51 +20,6 @@ module Network.Google.KnowledgeGraphSearch.Types.Product where
2020import Network.Google.KnowledgeGraphSearch.Types.Sum
2121import Network.Google.Prelude
2222
23−-- | Options for counters
24−--
25−-- /See:/ 'counterOptions' smart constructor.
26−data CounterOptions = CounterOptions'
27− { _coField :: !(Maybe Text)
28− , _coMetric :: !(Maybe Text)
29− } deriving (Eq,Show,Data,Typeable,Generic)
30−
31−-- | Creates a value of 'CounterOptions' with the minimum fields required to make a request.
32−--
33−-- Use one of the following lenses to modify other fields as desired:
34−--
35−-- * 'coField'
36−--
37−-- * 'coMetric'
38−counterOptions
39− :: CounterOptions
40−counterOptions =
41− CounterOptions'
42− { _coField = Nothing
43− , _coMetric = Nothing
44− }
45−
46−-- | The field value to attribute.
47−coField :: Lens' CounterOptions (Maybe Text)
48−coField = lens _coField (\ s a -> s{_coField = a})
49−
50−-- | The metric to update.
51−coMetric :: Lens' CounterOptions (Maybe Text)
52−coMetric = lens _coMetric (\ s a -> s{_coMetric = a})
53−
54−instance FromJSON CounterOptions where
55− parseJSON
56− = withObject "CounterOptions"
57− (\ o ->
58− CounterOptions' <$>
59− (o .:? "field") <*> (o .:? "metric"))
60−
61−instance ToJSON CounterOptions where
62− toJSON CounterOptions'{..}
63− = object
64− (catMaybes
65− [("field" .=) <$> _coField,
66− ("metric" .=) <$> _coMetric])
67−
6823-- | A generic empty message that you can re-use to avoid defining duplicated
6924-- empty messages in your APIs. A typical example is to use it as the
7025-- request or the response type of an API method. For instance: service Foo
@@ -88,17 +43,62 @@ instance FromJSON Empty where
8843instance ToJSON Empty where
8944 toJSON = const emptyObject
9045
91−-- | Represents a service account key. A service account can have 0 or more
92−-- key pairs. The private keys for these are not stored by Google.
93−-- ServiceAccountKeys are immutable.
46+-- | Audit log information specific to Cloud IAM. This message is serialized
47+-- as an \`Any\` type in the \`ServiceData\` message of an \`AuditLog\`
48+-- message.
49+--
50+-- /See:/ 'auditData' smart constructor.
51+newtype AuditData = AuditData'
52+ { _adPolicyDelta :: Maybe PolicyDelta
53+ } deriving (Eq,Show,Data,Typeable,Generic)
54+
55+-- | Creates a value of 'AuditData' with the minimum fields required to make a request.
56+--
57+-- Use one of the following lenses to modify other fields as desired:
58+--
59+-- * 'adPolicyDelta'
60+auditData
61+ :: AuditData
62+auditData =
63+ AuditData'
64+ { _adPolicyDelta = Nothing
65+ }
66+
67+-- | Policy delta between the original policy and the newly set policy.
68+adPolicyDelta :: Lens' AuditData (Maybe PolicyDelta)
69+adPolicyDelta
70+ = lens _adPolicyDelta
71+ (\ s a -> s{_adPolicyDelta = a})
72+
73+instance FromJSON AuditData where
74+ parseJSON
75+ = withObject "AuditData"
76+ (\ o -> AuditData' <$> (o .:? "policyDelta"))
77+
78+instance ToJSON AuditData where
79+ toJSON AuditData'{..}
80+ = object
81+ (catMaybes [("policyDelta" .=) <$> _adPolicyDelta])
82+
83+-- | Represents a service account key. A service account has two sets of
84+-- key-pairs: user-managed, and system-managed. User-managed key-pairs can
85+-- be created and deleted by users. Users are responsible for rotating
86+-- these keys periodically to ensure security of their service accounts.
87+-- Users retain the private key of these key-pairs, and Google retains ONLY
88+-- the public key. System-managed key-pairs are managed automatically by
89+-- Google, and rotated daily without user intervention. The private key
90+-- never leaves Google\'s servers to maximize security. Public keys for all
91+-- service accounts are also published at the OAuth2 Service Account API.
9492--
9593-- /See:/ 'serviceAccountKey' smart constructor.
9694data ServiceAccountKey = ServiceAccountKey'
9795 { _sakValidAfterTime :: !(Maybe Text)
9896 , _sakPrivateKeyData :: !(Maybe Base64)
97+ , _sakPublicKeyData :: !(Maybe Base64)
9998 , _sakName :: !(Maybe Text)
10099 , _sakPrivateKeyType :: !(Maybe Text)
101100 , _sakValidBeforeTime :: !(Maybe Text)
101+ , _sakKeyAlgorithm :: !(Maybe Text)
102102 } deriving (Eq,Show,Data,Typeable,Generic)
103103
104104-- | Creates a value of 'ServiceAccountKey' with the minimum fields required to make a request.
@@ -109,20 +109,26 @@ data ServiceAccountKey = ServiceAccountKey'
109109--
110110-- * 'sakPrivateKeyData'
111111--
112+-- * 'sakPublicKeyData'
113+--
112114-- * 'sakName'
113115--
114116-- * 'sakPrivateKeyType'
115117--
116118-- * 'sakValidBeforeTime'
119+--
120+-- * 'sakKeyAlgorithm'
117121serviceAccountKey
118122 :: ServiceAccountKey
119123serviceAccountKey =
120124 ServiceAccountKey'
121125 { _sakValidAfterTime = Nothing
122126 , _sakPrivateKeyData = Nothing
127+ , _sakPublicKeyData = Nothing
123128 , _sakName = Nothing
124129 , _sakPrivateKeyType = Nothing
125130 , _sakValidBeforeTime = Nothing
131+ , _sakKeyAlgorithm = Nothing
126132 }
127133
128134-- | The key can be used after this timestamp.
@@ -131,19 +137,32 @@ sakValidAfterTime
131137 = lens _sakValidAfterTime
132138 (\ s a -> s{_sakValidAfterTime = a})
133139
134−-- | The key data.
140+-- | The private key data. Only provided in \`CreateServiceAccountKey\`
141+-- responses.
135142sakPrivateKeyData :: Lens' ServiceAccountKey (Maybe ByteString)
136143sakPrivateKeyData
137144 = lens _sakPrivateKeyData
138145 (\ s a -> s{_sakPrivateKeyData = a})
139146 . mapping _Base64
140147
141−-- | The resource name of the service account key in the format
142−-- \"projects\/{project}\/serviceAccounts\/{email}\/keys\/{key}\".
148+-- | The public key data. Only provided in \`GetServiceAccountKey\`
149+-- responses.
150+sakPublicKeyData :: Lens' ServiceAccountKey (Maybe ByteString)
151+sakPublicKeyData
152+ = lens _sakPublicKeyData
153+ (\ s a -> s{_sakPublicKeyData = a})
154+ . mapping _Base64
155+
156+-- | The resource name of the service account key in the following format
157+-- \`projects\/{project}\/serviceAccounts\/{account}\/keys\/{key}\`.
143158sakName :: Lens' ServiceAccountKey (Maybe Text)
144159sakName = lens _sakName (\ s a -> s{_sakName = a})
145160
146−-- | The type of the private key.
161+-- | The output format for the private key. Only provided in
162+-- \`CreateServiceAccountKey\` responses, not in \`GetServiceAccountKey\`
163+-- or \`ListServiceAccountKey\` responses. Google never exposes
164+-- system-managed private keys, and never retains user-managed private
165+-- keys.
147166sakPrivateKeyType :: Lens' ServiceAccountKey (Maybe Text)
148167sakPrivateKeyType
149168 = lens _sakPrivateKeyType
@@ -155,15 +174,23 @@ sakValidBeforeTime
155174 = lens _sakValidBeforeTime
156175 (\ s a -> s{_sakValidBeforeTime = a})
157176
177+-- | Specifies the algorithm (and possibly key size) for the key.
178+sakKeyAlgorithm :: Lens' ServiceAccountKey (Maybe Text)
179+sakKeyAlgorithm
180+ = lens _sakKeyAlgorithm
181+ (\ s a -> s{_sakKeyAlgorithm = a})
182+
158183instance FromJSON ServiceAccountKey where
159184 parseJSON
160185 = withObject "ServiceAccountKey"
161186 (\ o ->
162187 ServiceAccountKey' <$>
163188 (o .:? "validAfterTime") <*> (o .:? "privateKeyData")
189+ <*> (o .:? "publicKeyData")
164190 <*> (o .:? "name")
165191 <*> (o .:? "privateKeyType")
166− <*> (o .:? "validBeforeTime"))
192+ <*> (o .:? "validBeforeTime")
193+ <*> (o .:? "keyAlgorithm"))
167194
168195instance ToJSON ServiceAccountKey where
169196 toJSON ServiceAccountKey'{..}
@@ -171,129 +198,18 @@ instance ToJSON ServiceAccountKey where
171198 (catMaybes
172199 [("validAfterTime" .=) <$> _sakValidAfterTime,
173200 ("privateKeyData" .=) <$> _sakPrivateKeyData,
201+ ("publicKeyData" .=) <$> _sakPublicKeyData,
174202 ("name" .=) <$> _sakName,
175203 ("privateKeyType" .=) <$> _sakPrivateKeyType,
176− ("validBeforeTime" .=) <$> _sakValidBeforeTime])
177−
178−-- | A rule to be applied in a Policy.
179−--
180−-- /See:/ 'rule' smart constructor.
181−data Rule = Rule'
182− { _rAction :: !(Maybe Text)
183− , _rIn :: !(Maybe [Text])
184− , _rNotIn :: !(Maybe [Text])
185− , _rConditions :: !(Maybe [Condition])
186− , _rPermissions :: !(Maybe [Text])
187− , _rLogConfig :: !(Maybe [LogConfig])
188− , _rDescription :: !(Maybe Text)
189− } deriving (Eq,Show,Data,Typeable,Generic)
190−
191−-- | Creates a value of 'Rule' with the minimum fields required to make a request.
192−--
193−-- Use one of the following lenses to modify other fields as desired:
194−--
195−-- * 'rAction'
196−--
197−-- * 'rIn'
198−--
199−-- * 'rNotIn'
200−--
201−-- * 'rConditions'
202−--
203−-- * 'rPermissions'
204−--
205−-- * 'rLogConfig'
206−--
207−-- * 'rDescription'
208−rule
209− :: Rule
210−rule =
211− Rule'
212− { _rAction = Nothing
213− , _rIn = Nothing
214− , _rNotIn = Nothing
215− , _rConditions = Nothing
216− , _rPermissions = Nothing
217− , _rLogConfig = Nothing
218− , _rDescription = Nothing
219− }
220−
221−-- | Required
222−rAction :: Lens' Rule (Maybe Text)
223−rAction = lens _rAction (\ s a -> s{_rAction = a})
224−
225−-- | The rule matches if the PRINCIPAL\/AUTHORITY_SELECTOR is in this set of
226−-- entries.
227−rIn :: Lens' Rule [Text]
228−rIn
229− = lens _rIn (\ s a -> s{_rIn = a}) . _Default .
230− _Coerce
231−
232−-- | The rule matches if the PRINCIPAL\/AUTHORITY_SELECTOR is not in this set
233−-- of entries. The format for in and not_in entries is the same as for
234−-- members in a Binding (see google\/iam\/v1\/policy.proto).
235−rNotIn :: Lens' Rule [Text]
236−rNotIn
237− = lens _rNotIn (\ s a -> s{_rNotIn = a}) . _Default .
238− _Coerce
239−
240−-- | Additional restrictions that must be met
241−rConditions :: Lens' Rule [Condition]
242−rConditions
243− = lens _rConditions (\ s a -> s{_rConditions = a}) .
244− _Default
245− . _Coerce
246−
247−-- | A permission is a string of form \'..\' (e.g.,
248−-- \'storage.buckets.list\'). A value of \'*\' matches all permissions, and
249−-- a verb part of \'*\' (e.g., \'storage.buckets.*\') matches all verbs.
250−rPermissions :: Lens' Rule [Text]
251−rPermissions
252− = lens _rPermissions (\ s a -> s{_rPermissions = a})
253− . _Default
254− . _Coerce
255−
256−-- | The config returned to callers of tech.iam.IAM.CheckPolicy for any
257−-- entries that match the LOG action.
258−rLogConfig :: Lens' Rule [LogConfig]
259−rLogConfig
260− = lens _rLogConfig (\ s a -> s{_rLogConfig = a}) .
261− _Default
262− . _Coerce
263−
264−-- | Human-readable description of the rule.
265−rDescription :: Lens' Rule (Maybe Text)
266−rDescription
267− = lens _rDescription (\ s a -> s{_rDescription = a})
268−
269−instance FromJSON Rule where
270− parseJSON
271− = withObject "Rule"
272− (\ o ->
273− Rule' <$>
274− (o .:? "action") <*> (o .:? "in" .!= mempty) <*>
275− (o .:? "notIn" .!= mempty)
276− <*> (o .:? "conditions" .!= mempty)
277− <*> (o .:? "permissions" .!= mempty)
278− <*> (o .:? "logConfig" .!= mempty)
279− <*> (o .:? "description"))
280−
281−instance ToJSON Rule where
282− toJSON Rule'{..}
283− = object
284− (catMaybes
285− [("action" .=) <$> _rAction, ("in" .=) <$> _rIn,
286− ("notIn" .=) <$> _rNotIn,
287− ("conditions" .=) <$> _rConditions,
288− ("permissions" .=) <$> _rPermissions,
289− ("logConfig" .=) <$> _rLogConfig,
290− ("description" .=) <$> _rDescription])
204+ ("validBeforeTime" .=) <$> _sakValidBeforeTime,
205+ ("keyAlgorithm" .=) <$> _sakKeyAlgorithm])
291206
292207-- | The service account key create request.
293208--
294209-- /See:/ 'createServiceAccountKeyRequest' smart constructor.
295−newtype CreateServiceAccountKeyRequest = CreateServiceAccountKeyRequest'
296− { _csakrPrivateKeyType :: Maybe Text
210+data CreateServiceAccountKeyRequest = CreateServiceAccountKeyRequest'
211+ { _csakrPrivateKeyType :: !(Maybe Text)
212+ , _csakrKeyAlgorithm :: !(Maybe Text)
297213 } deriving (Eq,Show,Data,Typeable,Generic)
298214
299215-- | Creates a value of 'CreateServiceAccountKeyRequest' with the minimum fields required to make a request.
@@ -301,33 +217,44 @@ newtype CreateServiceAccountKeyRequest = CreateServiceAccountKeyRequest'
301217-- Use one of the following lenses to modify other fields as desired:
302218--
303219-- * 'csakrPrivateKeyType'
220+--
221+-- * 'csakrKeyAlgorithm'
304222createServiceAccountKeyRequest
305223 :: CreateServiceAccountKeyRequest
306224createServiceAccountKeyRequest =
307225 CreateServiceAccountKeyRequest'
308226 { _csakrPrivateKeyType = Nothing
227+ , _csakrKeyAlgorithm = Nothing
309228 }
310229
311−-- | The type of the key requested. GOOGLE_CREDENTIALS is the default key
312−-- type.
230+-- | The output format of the private key. \`GOOGLE_CREDENTIALS_FILE\` is the
231+-- default output format.
313232csakrPrivateKeyType :: Lens' CreateServiceAccountKeyRequest (Maybe Text)
314233csakrPrivateKeyType
315234 = lens _csakrPrivateKeyType
316235 (\ s a -> s{_csakrPrivateKeyType = a})
317236
237+-- | Which type of key and algorithm to use for the key. The default is
238+-- currently a 4K RSA key. However this may change in the future.
239+csakrKeyAlgorithm :: Lens' CreateServiceAccountKeyRequest (Maybe Text)
240+csakrKeyAlgorithm
241+ = lens _csakrKeyAlgorithm
242+ (\ s a -> s{_csakrKeyAlgorithm = a})
243+
318244instance FromJSON CreateServiceAccountKeyRequest
319245 where
320246 parseJSON
321247 = withObject "CreateServiceAccountKeyRequest"
322248 (\ o ->
323249 CreateServiceAccountKeyRequest' <$>
324− (o .:? "privateKeyType"))
250+ (o .:? "privateKeyType") <*> (o .:? "keyAlgorithm"))
325251
326252instance ToJSON CreateServiceAccountKeyRequest where
327253 toJSON CreateServiceAccountKeyRequest'{..}
328254 = object
329255 (catMaybes
330− [("privateKeyType" .=) <$> _csakrPrivateKeyType])
256+ [("privateKeyType" .=) <$> _csakrPrivateKeyType,
257+ ("keyAlgorithm" .=) <$> _csakrKeyAlgorithm])
331258
332259-- | Request message for \`SetIamPolicy\` method.
333260--
@@ -365,6 +292,64 @@ instance ToJSON SetIAMPolicyRequest where
365292 toJSON SetIAMPolicyRequest'{..}
366293 = object (catMaybes [("policy" .=) <$> _siprPolicy])
367294
295+-- | One delta entry for Binding. Each individual change (only one member in
296+-- each entry) to a binding will be a separate entry.
297+--
298+-- /See:/ 'bindingDelta' smart constructor.
299+data BindingDelta = BindingDelta'
300+ { _bdAction :: !(Maybe Text)
301+ , _bdRole :: !(Maybe Text)
302+ , _bdMember :: !(Maybe Text)
303+ } deriving (Eq,Show,Data,Typeable,Generic)
304+
305+-- | Creates a value of 'BindingDelta' with the minimum fields required to make a request.
306+--
307+-- Use one of the following lenses to modify other fields as desired:
308+--
309+-- * 'bdAction'
310+--
311+-- * 'bdRole'
312+--
313+-- * 'bdMember'
314+bindingDelta
315+ :: BindingDelta
316+bindingDelta =
317+ BindingDelta'
318+ { _bdAction = Nothing
319+ , _bdRole = Nothing
320+ , _bdMember = Nothing
321+ }
322+
323+-- | The action that was performed on a Binding. Required
324+bdAction :: Lens' BindingDelta (Maybe Text)
325+bdAction = lens _bdAction (\ s a -> s{_bdAction = a})
326+
327+-- | Role that is assigned to \`members\`. For example, \`roles\/viewer\`,
328+-- \`roles\/editor\`, or \`roles\/owner\`. Required
329+bdRole :: Lens' BindingDelta (Maybe Text)
330+bdRole = lens _bdRole (\ s a -> s{_bdRole = a})
331+
332+-- | A single identity requesting access for a Cloud Platform resource.
333+-- Follows the same format of Binding.members. Required
334+bdMember :: Lens' BindingDelta (Maybe Text)
335+bdMember = lens _bdMember (\ s a -> s{_bdMember = a})
336+
337+instance FromJSON BindingDelta where
338+ parseJSON
339+ = withObject "BindingDelta"
340+ (\ o ->
341+ BindingDelta' <$>
342+ (o .:? "action") <*> (o .:? "role") <*>
343+ (o .:? "member"))
344+
345+instance ToJSON BindingDelta where
346+ toJSON BindingDelta'{..}
347+ = object
348+ (catMaybes
349+ [("action" .=) <$> _bdAction,
350+ ("role" .=) <$> _bdRole,
351+ ("member" .=) <$> _bdMember])
352+
368353-- | The service account sign blob request.
369354--
370355-- /See:/ 'signBlobRequest' smart constructor.
@@ -384,7 +369,7 @@ signBlobRequest =
384369 { _sbrBytesToSign = Nothing
385370 }
386371
387−-- | The bytes to sign
372+-- | The bytes to sign.
388373sbrBytesToSign :: Lens' SignBlobRequest (Maybe ByteString)
389374sbrBytesToSign
390375 = lens _sbrBytesToSign
@@ -439,57 +424,80 @@ instance ToJSON ListServiceAccountKeysResponse where
439424 toJSON ListServiceAccountKeysResponse'{..}
440425 = object (catMaybes [("keys" .=) <$> _lsakrKeys])
441426
442−-- | Write a Cloud Audit log
427+-- | A role in the Identity and Access Management API.
443428--
444−-- /See:/ 'cloudAuditOptions' smart constructor.
445−data CloudAuditOptions =
446− CloudAuditOptions'
447− deriving (Eq,Show,Data,Typeable,Generic)
429+-- /See:/ 'role'' smart constructor.
430+data Role = Role'
431+ { _rName :: !(Maybe Text)
432+ , _rTitle :: !(Maybe Text)
433+ , _rDescription :: !(Maybe Text)
434+ } deriving (Eq,Show,Data,Typeable,Generic)
448435
449−-- | Creates a value of 'CloudAuditOptions' with the minimum fields required to make a request.
436+-- | Creates a value of 'Role' with the minimum fields required to make a request.
450437--
451−cloudAuditOptions
452− :: CloudAuditOptions
453−cloudAuditOptions = CloudAuditOptions'
454−
455−instance FromJSON CloudAuditOptions where
456− parseJSON
457− = withObject "CloudAuditOptions"
458− (\ o -> pure CloudAuditOptions')
459−
460−instance ToJSON CloudAuditOptions where
461− toJSON = const emptyObject
462−
463−-- | Write a Data Access (Gin) log
438+-- Use one of the following lenses to modify other fields as desired:
464439--
465−-- /See:/ 'dataAccessOptions' smart constructor.
466−data DataAccessOptions =
467− DataAccessOptions'
468− deriving (Eq,Show,Data,Typeable,Generic)
469−
470−-- | Creates a value of 'DataAccessOptions' with the minimum fields required to make a request.
440+-- * 'rName'
441+--
442+-- * 'rTitle'
471443--
472−dataAccessOptions
473− :: DataAccessOptions
474−dataAccessOptions = DataAccessOptions'
444+-- * 'rDescription'
445+role'
446+ :: Role
447+role' =
448+ Role'
449+ { _rName = Nothing
450+ , _rTitle = Nothing
451+ , _rDescription = Nothing
452+ }
475453
476−instance FromJSON DataAccessOptions where
454+-- | The name of the role. When Role is used in CreateRole, the role name
455+-- must not be set. When Role is used in output and other input such as
456+-- UpdateRole, the role name is the complete path, e.g.,
457+-- roles\/logging.viewer for curated roles and
458+-- organizations\/{organization-id}\/roles\/logging.viewer for custom
459+-- roles.
460+rName :: Lens' Role (Maybe Text)
461+rName = lens _rName (\ s a -> s{_rName = a})
462+
463+-- | Optional. A human-readable title for the role. Typically this is limited
464+-- to 100 UTF-8 bytes.
465+rTitle :: Lens' Role (Maybe Text)
466+rTitle = lens _rTitle (\ s a -> s{_rTitle = a})
467+
468+-- | Optional. A human-readable description for the role.
469+rDescription :: Lens' Role (Maybe Text)
470+rDescription
471+ = lens _rDescription (\ s a -> s{_rDescription = a})
472+
473+instance FromJSON Role where
477474 parseJSON
478− = withObject "DataAccessOptions"
479− (\ o -> pure DataAccessOptions')
475+ = withObject "Role"
476+ (\ o ->
477+ Role' <$>
478+ (o .:? "name") <*> (o .:? "title") <*>
479+ (o .:? "description"))
480480
481−instance ToJSON DataAccessOptions where
482− toJSON = const emptyObject
481+instance ToJSON Role where
482+ toJSON Role'{..}
483+ = object
484+ (catMaybes
485+ [("name" .=) <$> _rName, ("title" .=) <$> _rTitle,
486+ ("description" .=) <$> _rDescription])
483487
484488-- | A service account in the Identity and Access Management API. To create a
485−-- service account, you specify the project_id and account_id for the
486−-- account. The account_id is unique within the project, and used to
487−-- generate the service account email address and a stable unique id. All
488−-- other methods can identify accounts using the format
489−-- \"projects\/{project}\/serviceAccounts\/{account}\". Using \'-\' as a
490−-- wildcard for the project, will infer the project from the account. The
491−-- account value can be the email address or the unique_id of the service
492−-- account.
489+-- service account, specify the \`project_id\` and the \`account_id\` for
490+-- the account. The \`account_id\` is unique within the project, and is
491+-- used to generate the service account email address and a stable
492+-- \`unique_id\`. If the account already exists, the account\'s resource
493+-- name is returned in util::Status\'s ResourceInfo.resource_name in the
494+-- format of projects\/{project}\/serviceAccounts\/{email}. The caller can
495+-- use the name in other methods to access the account. All other methods
496+-- can identify the service account using the format
497+-- \`projects\/{project}\/serviceAccounts\/{account}\`. Using \`-\` as a
498+-- wildcard for the project will infer the project from the account. The
499+-- \`account\` value can be the \`email\` address or the \`unique_id\` of
500+-- the service account.
493501--
494502-- /See:/ 'serviceAccount' smart constructor.
495503data ServiceAccount = ServiceAccount'
@@ -532,7 +540,7 @@ serviceAccount =
532540 , _saOAuth2ClientId = Nothing
533541 }
534542
535−-- | \'OutputOnly Email address of the service account.
543+-- | \'OutputOnly The email address of the service account.
536544saEmail :: Lens' ServiceAccount (Maybe Text)
537545saEmail = lens _saEmail (\ s a -> s{_saEmail = a})
538546
@@ -542,17 +550,18 @@ saEtag
542550 = lens _saEtag (\ s a -> s{_saEtag = a}) .
543551 mapping _Base64
544552
545−-- | \'OutputOnly unique and stable id of the service account.
553+-- | \'OutputOnly The unique and stable id of the service account.
546554saUniqueId :: Lens' ServiceAccount (Maybe Text)
547555saUniqueId
548556 = lens _saUniqueId (\ s a -> s{_saUniqueId = a})
549557
550−-- | The resource name of the service account in the format
551−-- \"projects\/{project}\/serviceAccounts\/{account}\". In requests using
552−-- \'-\' as a wildcard for the project, will infer the project from the
553−-- account and the account value can be the email address or the unique_id
554−-- of the service account. In responses the resource name will always be in
555−-- the format \"projects\/{project}\/serviceAccounts\/{email}\".
558+-- | The resource name of the service account in the following format:
559+-- \`projects\/{project}\/serviceAccounts\/{account}\`. Requests using
560+-- \`-\` as a wildcard for the project will infer the project from the
561+-- \`account\` and the \`account\` value can be the \`email\` address or
562+-- the \`unique_id\` of the service account. In responses the resource name
563+-- will always be in the format
564+-- \`projects\/{project}\/serviceAccounts\/{email}\`.
556565saName :: Lens' ServiceAccount (Maybe Text)
557566saName = lens _saName (\ s a -> s{_saName = a})
558567
@@ -599,6 +608,43 @@ instance ToJSON ServiceAccount where
599608 ("projectId" .=) <$> _saProjectId,
600609 ("oauth2ClientId" .=) <$> _saOAuth2ClientId])
601610
611+-- | The grantable role query response.
612+--
613+-- /See:/ 'queryGrantableRolesResponse' smart constructor.
614+newtype QueryGrantableRolesResponse = QueryGrantableRolesResponse'
615+ { _qgrrRoles :: Maybe [Role]
616+ } deriving (Eq,Show,Data,Typeable,Generic)
617+
618+-- | Creates a value of 'QueryGrantableRolesResponse' with the minimum fields required to make a request.
619+--
620+-- Use one of the following lenses to modify other fields as desired:
621+--
622+-- * 'qgrrRoles'
623+queryGrantableRolesResponse
624+ :: QueryGrantableRolesResponse
625+queryGrantableRolesResponse =
626+ QueryGrantableRolesResponse'
627+ { _qgrrRoles = Nothing
628+ }
629+
630+-- | The list of matching roles.
631+qgrrRoles :: Lens' QueryGrantableRolesResponse [Role]
632+qgrrRoles
633+ = lens _qgrrRoles (\ s a -> s{_qgrrRoles = a}) .
634+ _Default
635+ . _Coerce
636+
637+instance FromJSON QueryGrantableRolesResponse where
638+ parseJSON
639+ = withObject "QueryGrantableRolesResponse"
640+ (\ o ->
641+ QueryGrantableRolesResponse' <$>
642+ (o .:? "roles" .!= mempty))
643+
644+instance ToJSON QueryGrantableRolesResponse where
645+ toJSON QueryGrantableRolesResponse'{..}
646+ = object (catMaybes [("roles" .=) <$> _qgrrRoles])
647+
602648-- | Request message for \`TestIamPermissions\` method.
603649--
604650-- /See:/ 'testIAMPermissionsRequest' smart constructor.
@@ -620,7 +666,8 @@ testIAMPermissionsRequest =
620666
621667-- | The set of permissions to check for the \`resource\`. Permissions with
622668-- wildcards (such as \'*\' or \'storage.*\') are not allowed. For more
623−-- information see IAM Overview.
669+-- information see [IAM
670+-- Overview](https:\/\/cloud.google.com\/iam\/docs\/overview#permissions).
624671tiprPermissions :: Lens' TestIAMPermissionsRequest [Text]
625672tiprPermissions
626673 = lens _tiprPermissions
@@ -690,7 +737,7 @@ instance ToJSON TestIAMPermissionsResponse where
690737-- \"bindings\": [ { \"role\": \"roles\/owner\", \"members\": [
691738-- \"user:mike\'example.com\", \"group:admins\'example.com\",
692739-- \"domain:google.com\",
693−-- \"serviceAccount:my-other-app\'appspot.gserviceaccount.com\"] }, {
740+-- \"serviceAccount:my-other-app\'appspot.gserviceaccount.com\", ] }, {
694741-- \"role\": \"roles\/viewer\", \"members\": [\"user:sean\'example.com\"] }
695742-- ] } For a description of IAM and its features, see the [IAM developer\'s
696743-- guide](https:\/\/cloud.google.com\/iam).
@@ -698,7 +745,6 @@ instance ToJSON TestIAMPermissionsResponse where
698745-- /See:/ 'policy' smart constructor.
699746data Policy = Policy'
700747 { _pEtag :: !(Maybe Base64)
701− , _pRules :: !(Maybe [Rule])
702748 , _pVersion :: !(Maybe (Textual Int32))
703749 , _pBindings :: !(Maybe [Binding])
704750 } deriving (Eq,Show,Data,Typeable,Generic)
@@ -709,8 +755,6 @@ data Policy = Policy'
709755--
710756-- * 'pEtag'
711757--
712−-- * 'pRules'
713−--
714758-- * 'pVersion'
715759--
716760-- * 'pBindings'
@@ -719,7 +763,6 @@ policy
719763policy =
720764 Policy'
721765 { _pEtag = Nothing
722− , _pRules = Nothing
723766 , _pVersion = Nothing
724767 , _pBindings = Nothing
725768 }
@@ -738,11 +781,6 @@ pEtag
738781 = lens _pEtag (\ s a -> s{_pEtag = a}) .
739782 mapping _Base64
740783
741−pRules :: Lens' Policy [Rule]
742−pRules
743− = lens _pRules (\ s a -> s{_pRules = a}) . _Default .
744− _Coerce
745−
746784-- | Version of the \`Policy\`. The default version is 0.
747785pVersion :: Lens' Policy (Maybe Int32)
748786pVersion
@@ -763,102 +801,96 @@ instance FromJSON Policy where
763801 = withObject "Policy"
764802 (\ o ->
765803 Policy' <$>
766− (o .:? "etag") <*> (o .:? "rules" .!= mempty) <*>
767− (o .:? "version")
768− <*> (o .:? "bindings" .!= mempty))
804+ (o .:? "etag") <*> (o .:? "version") <*>
805+ (o .:? "bindings" .!= mempty))
769806
770807instance ToJSON Policy where
771808 toJSON Policy'{..}
772809 = object
773810 (catMaybes
774− [("etag" .=) <$> _pEtag, ("rules" .=) <$> _pRules,
811+ [("etag" .=) <$> _pEtag,
775812 ("version" .=) <$> _pVersion,
776813 ("bindings" .=) <$> _pBindings])
777814
778−-- | A condition to be met.
815+-- | The difference delta between two policies.
779816--
780−-- /See:/ 'condition' smart constructor.
781−data Condition = Condition'
782− { _cOp :: !(Maybe Text)
783− , _cIAM :: !(Maybe Text)
784− , _cValues :: !(Maybe [Text])
785− , _cValue :: !(Maybe Text)
786− , _cSys :: !(Maybe Text)
787− , _cSvc :: !(Maybe Text)
817+-- /See:/ 'policyDelta' smart constructor.
818+newtype PolicyDelta = PolicyDelta'
819+ { _pdBindingDeltas :: Maybe [BindingDelta]
788820 } deriving (Eq,Show,Data,Typeable,Generic)
789821
790−-- | Creates a value of 'Condition' with the minimum fields required to make a request.
822+-- | Creates a value of 'PolicyDelta' with the minimum fields required to make a request.
791823--
792824-- Use one of the following lenses to modify other fields as desired:
793825--
794−-- * 'cOp'
795−--
796−-- * 'cIAM'
797−--
798−-- * 'cValues'
799−--
800−-- * 'cValue'
801−--
802−-- * 'cSys'
803−--
804−-- * 'cSvc'
805−condition
806− :: Condition
807−condition =
808− Condition'
809− { _cOp = Nothing
810− , _cIAM = Nothing
811− , _cValues = Nothing
812− , _cValue = Nothing
813− , _cSys = Nothing
814− , _cSvc = Nothing
826+-- * 'pdBindingDeltas'
827+policyDelta
828+ :: PolicyDelta
829+policyDelta =
830+ PolicyDelta'
831+ { _pdBindingDeltas = Nothing
815832 }
816833
817−-- | An operator to apply the subject with.
818−cOp :: Lens' Condition (Maybe Text)
819−cOp = lens _cOp (\ s a -> s{_cOp = a})
834+-- | The delta for Bindings between two policies.
835+pdBindingDeltas :: Lens' PolicyDelta [BindingDelta]
836+pdBindingDeltas
837+ = lens _pdBindingDeltas
838+ (\ s a -> s{_pdBindingDeltas = a})
839+ . _Default
840+ . _Coerce
820841
821−-- | Trusted attributes supplied by the IAM system.
822−cIAM :: Lens' Condition (Maybe Text)
823−cIAM = lens _cIAM (\ s a -> s{_cIAM = a})
842+instance FromJSON PolicyDelta where
843+ parseJSON
844+ = withObject "PolicyDelta"
845+ (\ o ->
846+ PolicyDelta' <$> (o .:? "bindingDeltas" .!= mempty))
824847
825−-- | The objects of the condition. This is mutually exclusive with \'value\'.
826−cValues :: Lens' Condition [Text]
827−cValues
828− = lens _cValues (\ s a -> s{_cValues = a}) . _Default
829− . _Coerce
848+instance ToJSON PolicyDelta where
849+ toJSON PolicyDelta'{..}
850+ = object
851+ (catMaybes
852+ [("bindingDeltas" .=) <$> _pdBindingDeltas])
830853
831−-- | The object of the condition. Exactly one of these must be set.
832−cValue :: Lens' Condition (Maybe Text)
833−cValue = lens _cValue (\ s a -> s{_cValue = a})
854+-- | The grantable role query request.
855+--
856+-- /See:/ 'queryGrantableRolesRequest' smart constructor.
857+newtype QueryGrantableRolesRequest = QueryGrantableRolesRequest'
858+ { _qgrrFullResourceName :: Maybe Text
859+ } deriving (Eq,Show,Data,Typeable,Generic)
834860
835−-- | Trusted attributes supplied by any service that owns resources and uses
836−-- the IAM system for access control.
837−cSys :: Lens' Condition (Maybe Text)
838−cSys = lens _cSys (\ s a -> s{_cSys = a})
861+-- | Creates a value of 'QueryGrantableRolesRequest' with the minimum fields required to make a request.
862+--
863+-- Use one of the following lenses to modify other fields as desired:
864+--
865+-- * 'qgrrFullResourceName'
866+queryGrantableRolesRequest
867+ :: QueryGrantableRolesRequest
868+queryGrantableRolesRequest =
869+ QueryGrantableRolesRequest'
870+ { _qgrrFullResourceName = Nothing
871+ }
839872
840−-- | Trusted attributes discharged by the service.
841−cSvc :: Lens' Condition (Maybe Text)
842−cSvc = lens _cSvc (\ s a -> s{_cSvc = a})
873+-- | Required. The full resource name to query from the list of grantable
874+-- roles. The name follows the Google Cloud Platform resource format. For
875+-- example, a Cloud Platform project with id \`my-project\` will be named
876+-- \`\/\/cloudresourcemanager.googleapis.com\/projects\/my-project\`.
877+qgrrFullResourceName :: Lens' QueryGrantableRolesRequest (Maybe Text)
878+qgrrFullResourceName
879+ = lens _qgrrFullResourceName
880+ (\ s a -> s{_qgrrFullResourceName = a})
843881
844−instance FromJSON Condition where
882+instance FromJSON QueryGrantableRolesRequest where
845883 parseJSON
846− = withObject "Condition"
884+ = withObject "QueryGrantableRolesRequest"
847885 (\ o ->
848− Condition' <$>
849− (o .:? "op") <*> (o .:? "iam") <*>
850− (o .:? "values" .!= mempty)
851− <*> (o .:? "value")
852− <*> (o .:? "sys")
853− <*> (o .:? "svc"))
854−
855−instance ToJSON Condition where
856− toJSON Condition'{..}
886+ QueryGrantableRolesRequest' <$>
887+ (o .:? "fullResourceName"))
888+
889+instance ToJSON QueryGrantableRolesRequest where
890+ toJSON QueryGrantableRolesRequest'{..}
857891 = object
858892 (catMaybes
859− [("op" .=) <$> _cOp, ("iam" .=) <$> _cIAM,
860− ("values" .=) <$> _cValues, ("value" .=) <$> _cValue,
861− ("sys" .=) <$> _cSys, ("svc" .=) <$> _cSvc])
893+ [("fullResourceName" .=) <$> _qgrrFullResourceName])
862894
863895-- | The service account sign blob response.
864896--
@@ -931,7 +963,7 @@ listServiceAccountsResponse =
931963 }
932964
933965-- | To retrieve the next page of results, set
934−-- [ListServiceAccountsRequest.page_token] to this value.
966+-- ListServiceAccountsRequest.page_token to this value.
935967lsarNextPageToken :: Lens' ListServiceAccountsResponse (Maybe Text)
936968lsarNextPageToken
937969 = lens _lsarNextPageToken
@@ -959,76 +991,6 @@ instance ToJSON ListServiceAccountsResponse where
959991 [("nextPageToken" .=) <$> _lsarNextPageToken,
960992 ("accounts" .=) <$> _lsarAccounts])
961993
962−-- | Specifies what kind of log the caller must write Increment a streamz
963−-- counter with the specified metric and field names. Metric names should
964−-- start with a \'\/\', generally be lowercase-only, and end in \"_count\".
965−-- Field names should not contain an initial slash. The actual exported
966−-- metric names will have \"\/iam\/policy\" prepended. Field names
967−-- correspond to IAM request parameters and field values are their
968−-- respective values. At present only \"iam_principal\", corresponding to
969−-- IAMContext.principal, is supported. Examples: counter { metric:
970−-- \"\/debug_access_count\" field: \"iam_principal\" } ==> increment
971−-- counter \/iam\/policy\/backend_debug_access_count {iam_principal=[value
972−-- of IAMContext.principal]} At this time we do not support: * multiple
973−-- field names (though this may be supported in the future) * decrementing
974−-- the counter * incrementing it by anything other than 1
975−--
976−-- /See:/ 'logConfig' smart constructor.
977−data LogConfig = LogConfig'
978− { _lcCloudAudit :: !(Maybe CloudAuditOptions)
979− , _lcDataAccess :: !(Maybe DataAccessOptions)
980− , _lcCounter :: !(Maybe CounterOptions)
981− } deriving (Eq,Show,Data,Typeable,Generic)
982−
983−-- | Creates a value of 'LogConfig' with the minimum fields required to make a request.
984−--
985−-- Use one of the following lenses to modify other fields as desired:
986−--
987−-- * 'lcCloudAudit'
988−--
989−-- * 'lcDataAccess'
990−--
991−-- * 'lcCounter'
992−logConfig
993− :: LogConfig
994−logConfig =
995− LogConfig'
996− { _lcCloudAudit = Nothing
997− , _lcDataAccess = Nothing
998− , _lcCounter = Nothing
999− }
1000−
1001−-- | Cloud audit options.
1002−lcCloudAudit :: Lens' LogConfig (Maybe CloudAuditOptions)
1003−lcCloudAudit
1004− = lens _lcCloudAudit (\ s a -> s{_lcCloudAudit = a})
1005−
1006−-- | Data access options.
1007−lcDataAccess :: Lens' LogConfig (Maybe DataAccessOptions)
1008−lcDataAccess
1009− = lens _lcDataAccess (\ s a -> s{_lcDataAccess = a})
1010−
1011−-- | Counter options.
1012−lcCounter :: Lens' LogConfig (Maybe CounterOptions)
1013−lcCounter
1014− = lens _lcCounter (\ s a -> s{_lcCounter = a})
1015−
1016−instance FromJSON LogConfig where
1017− parseJSON
1018− = withObject "LogConfig"
1019− (\ o ->
1020− LogConfig' <$>
1021− (o .:? "cloudAudit") <*> (o .:? "dataAccess") <*>
1022− (o .:? "counter"))
1023−
1024−instance ToJSON LogConfig where
1025− toJSON LogConfig'{..}
1026− = object
1027− (catMaybes
1028− [("cloudAudit" .=) <$> _lcCloudAudit,
1029− ("dataAccess" .=) <$> _lcDataAccess,
1030− ("counter" .=) <$> _lcCounter])
1031−
1032994-- | The service account create request.
1033995--
1034996-- /See:/ 'createServiceAccountRequest' smart constructor.
@@ -1053,7 +1015,7 @@ createServiceAccountRequest =
10531015 }
10541016
10551017-- | The ServiceAccount resource to create. Currently, only the following
1056−-- values are user assignable: display_name .
1018+-- values are user assignable: \`display_name\` .
10571019csarServiceAccount :: Lens' CreateServiceAccountRequest (Maybe ServiceAccount)
10581020csarServiceAccount
10591021 = lens _csarServiceAccount
@@ -1061,8 +1023,8 @@ csarServiceAccount
10611023
10621024-- | Required. The account id that is used to generate the service account
10631025-- email address and a stable unique id. It is unique within a project,
1064−-- must be 1-63 characters long, and match the regular expression
1065−-- [a-z]([-a-z0-9]*[a-z0-9]) to comply with RFC1035.
1026+-- must be 6-30 characters long, and match the regular expression
1027+-- \`[a-z]([-a-z0-9]*[a-z0-9])\` to comply with RFC1035.
10661028csarAccountId :: Lens' CreateServiceAccountRequest (Maybe Text)
10671029csarAccountId
10681030 = lens _csarAccountId
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Create.hs+4−4
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Creates a service account and returns it.
23+-- Creates a ServiceAccount and returns it.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.create@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.create@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.Create
2727 (
2828 -- * REST Resource
@@ -64,7 +64,7 @@ type ProjectsServiceAccountsCreateResource =
6464 ReqBody '[JSON] CreateServiceAccountRequest :>
6565 Post '[JSON] ServiceAccount
6666
67−-- | Creates a service account and returns it.
67+-- | Creates a ServiceAccount and returns it.
6868--
6969-- /See:/ 'projectsServiceAccountsCreate' smart constructor.
7070data ProjectsServiceAccountsCreate = ProjectsServiceAccountsCreate'
@@ -156,7 +156,7 @@ psacBearerToken
156156 (\ s a -> s{_psacBearerToken = a})
157157
158158-- | Required. The resource name of the project associated with the service
159−-- accounts, such as \"projects\/123\"
159+-- accounts, such as \`projects\/my-project-123\`.
160160psacName :: Lens' ProjectsServiceAccountsCreate Text
161161psacName = lens _psacName (\ s a -> s{_psacName = a})
162162
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Delete.hs+8−8
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Deletes a service acount.
23+-- Deletes a ServiceAccount.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.delete@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.delete@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.Delete
2727 (
2828 -- * REST Resource
@@ -60,7 +60,7 @@ type ProjectsServiceAccountsDeleteResource =
6060 QueryParam "callback" Text :>
6161 QueryParam "alt" AltJSON :> Delete '[JSON] Empty
6262
63−-- | Deletes a service acount.
63+-- | Deletes a ServiceAccount.
6464--
6565-- /See:/ 'projectsServiceAccountsDelete' smart constructor.
6666data ProjectsServiceAccountsDelete = ProjectsServiceAccountsDelete'
@@ -141,11 +141,11 @@ psadBearerToken
141141 = lens _psadBearerToken
142142 (\ s a -> s{_psadBearerToken = a})
143143
144−-- | The resource name of the service account in the format
145−-- \"projects\/{project}\/serviceAccounts\/{account}\". Using \'-\' as a
146−-- wildcard for the project, will infer the project from the account. The
147−-- account value can be the email address or the unique_id of the service
148−-- account.
144+-- | The resource name of the service account in the following format:
145+-- \`projects\/{project}\/serviceAccounts\/{account}\`. Using \`-\` as a
146+-- wildcard for the project will infer the project from the account. The
147+-- \`account\` value can be the \`email\` address or the \`unique_id\` of
148+-- the service account.
149149psadName :: Lens' ProjectsServiceAccountsDelete Text
150150psadName = lens _psadName (\ s a -> s{_psadName = a})
151151
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Get.hs+8−8
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Gets a ServiceAccount
23+-- Gets a ServiceAccount.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.get@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.get@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.Get
2727 (
2828 -- * REST Resource
@@ -61,7 +61,7 @@ type ProjectsServiceAccountsGetResource =
6161 QueryParam "alt" AltJSON :>
6262 Get '[JSON] ServiceAccount
6363
64−-- | Gets a ServiceAccount
64+-- | Gets a ServiceAccount.
6565--
6666-- /See:/ 'projectsServiceAccountsGet' smart constructor.
6767data ProjectsServiceAccountsGet = ProjectsServiceAccountsGet'
@@ -142,11 +142,11 @@ psagBearerToken
142142 = lens _psagBearerToken
143143 (\ s a -> s{_psagBearerToken = a})
144144
145−-- | The resource name of the service account in the format
146−-- \"projects\/{project}\/serviceAccounts\/{account}\". Using \'-\' as a
147−-- wildcard for the project, will infer the project from the account. The
148−-- account value can be the email address or the unique_id of the service
149−-- account.
145+-- | The resource name of the service account in the following format:
146+-- \`projects\/{project}\/serviceAccounts\/{account}\`. Using \`-\` as a
147+-- wildcard for the project will infer the project from the account. The
148+-- \`account\` value can be the \`email\` address or the \`unique_id\` of
149+-- the service account.
150150psagName :: Lens' ProjectsServiceAccountsGet Text
151151psagName = lens _psagName (\ s a -> s{_psagName = a})
152152
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/GetIAMPolicy.hs+5−7
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Returns the IAM access control policy for specified IAM resource.
23+-- Returns the IAM access control policy for a ServiceAccount.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.getIamPolicy@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.getIamPolicy@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.GetIAMPolicy
2727 (
2828 -- * REST Resource
@@ -60,7 +60,7 @@ type ProjectsServiceAccountsGetIAMPolicyResource =
6060 QueryParam "callback" Text :>
6161 QueryParam "alt" AltJSON :> Post '[JSON] Policy
6262
63−-- | Returns the IAM access control policy for specified IAM resource.
63+-- | Returns the IAM access control policy for a ServiceAccount.
6464--
6565-- /See:/ 'projectsServiceAccountsGetIAMPolicy' smart constructor.
6666data ProjectsServiceAccountsGetIAMPolicy = ProjectsServiceAccountsGetIAMPolicy'
@@ -142,10 +142,8 @@ psagipBearerToken
142142 (\ s a -> s{_psagipBearerToken = a})
143143
144144-- | REQUIRED: The resource for which the policy is being requested.
145−-- \`resource\` is usually specified as a path, such as
146−-- \`projects\/*project*\/zones\/*zone*\/disks\/*disk*\`. The format for
147−-- the path specified in this value is resource specific and is specified
148−-- in the \`getIamPolicy\` documentation.
145+-- \`resource\` is usually specified as a path. For example, a Project
146+-- resource is specified as \`projects\/{project}\`.
149147psagipResource :: Lens' ProjectsServiceAccountsGetIAMPolicy Text
150148psagipResource
151149 = lens _psagipResource
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Keys/Create.hs+8−8
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Creates a service account key and returns it.
23+-- Creates a ServiceAccountKey and returns it.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.keys.create@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.keys.create@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.Keys.Create
2727 (
2828 -- * REST Resource
@@ -64,7 +64,7 @@ type ProjectsServiceAccountsKeysCreateResource =
6464 ReqBody '[JSON] CreateServiceAccountKeyRequest :>
6565 Post '[JSON] ServiceAccountKey
6666
67−-- | Creates a service account key and returns it.
67+-- | Creates a ServiceAccountKey and returns it.
6868--
6969-- /See:/ 'projectsServiceAccountsKeysCreate' smart constructor.
7070data ProjectsServiceAccountsKeysCreate = ProjectsServiceAccountsKeysCreate'
@@ -155,11 +155,11 @@ psakcBearerToken
155155 = lens _psakcBearerToken
156156 (\ s a -> s{_psakcBearerToken = a})
157157
158−-- | The resource name of the service account in the format
159−-- \"projects\/{project}\/serviceAccounts\/{account}\". Using \'-\' as a
160−-- wildcard for the project, will infer the project from the account. The
161−-- account value can be the email address or the unique_id of the service
162−-- account.
158+-- | The resource name of the service account in the following format:
159+-- \`projects\/{project}\/serviceAccounts\/{account}\`. Using \`-\` as a
160+-- wildcard for the project will infer the project from the account. The
161+-- \`account\` value can be the \`email\` address or the \`unique_id\` of
162+-- the service account.
163163psakcName :: Lens' ProjectsServiceAccountsKeysCreate Text
164164psakcName
165165 = lens _psakcName (\ s a -> s{_psakcName = a})
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Keys/Delete.hs+8−8
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Deletes a service account key.
23+-- Deletes a ServiceAccountKey.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.keys.delete@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.keys.delete@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.Keys.Delete
2727 (
2828 -- * REST Resource
@@ -60,7 +60,7 @@ type ProjectsServiceAccountsKeysDeleteResource =
6060 QueryParam "callback" Text :>
6161 QueryParam "alt" AltJSON :> Delete '[JSON] Empty
6262
63−-- | Deletes a service account key.
63+-- | Deletes a ServiceAccountKey.
6464--
6565-- /See:/ 'projectsServiceAccountsKeysDelete' smart constructor.
6666data ProjectsServiceAccountsKeysDelete = ProjectsServiceAccountsKeysDelete'
@@ -141,11 +141,11 @@ psakdBearerToken
141141 = lens _psakdBearerToken
142142 (\ s a -> s{_psakdBearerToken = a})
143143
144−-- | The resource name of the service account key in the format
145−-- \"projects\/{project}\/serviceAccounts\/{account}\/keys\/{key}\". Using
146−-- \'-\' as a wildcard for the project will infer the project from the
147−-- account. The account value can be the email address or the unique_id of
148−-- the service account.
144+-- | The resource name of the service account key in the following format:
145+-- \`projects\/{project}\/serviceAccounts\/{account}\/keys\/{key}\`. Using
146+-- \`-\` as a wildcard for the project will infer the project from the
147+-- account. The \`account\` value can be the \`email\` address or the
148+-- \`unique_id\` of the service account.
149149psakdName :: Lens' ProjectsServiceAccountsKeysDelete Text
150150psakdName
151151 = lens _psakdName (\ s a -> s{_psakdName = a})
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Keys/Get.hs+23−9
@@ -22,7 +22,7 @@
2222--
2323-- Gets the ServiceAccountKey by key id.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.keys.get@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.keys.get@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.Keys.Get
2727 (
2828 -- * REST Resource
@@ -40,6 +40,7 @@ module Network.Google.Resource.IAM.Projects.ServiceAccounts.Keys.Get
4040 , psakgUploadType
4141 , psakgBearerToken
4242 , psakgName
43+ , psakgPublicKeyType
4344 , psakgCallback
4445 ) where
4546
@@ -57,9 +58,10 @@ type ProjectsServiceAccountsKeysGetResource =
5758 QueryParam "access_token" Text :>
5859 QueryParam "uploadType" Text :>
5960 QueryParam "bearer_token" Text :>
60− QueryParam "callback" Text :>
61− QueryParam "alt" AltJSON :>
62− Get '[JSON] ServiceAccountKey
61+ QueryParam "publicKeyType" Text :>
62+ QueryParam "callback" Text :>
63+ QueryParam "alt" AltJSON :>
64+ Get '[JSON] ServiceAccountKey
6365
6466-- | Gets the ServiceAccountKey by key id.
6567--
@@ -72,6 +74,7 @@ data ProjectsServiceAccountsKeysGet = ProjectsServiceAccountsKeysGet'
7274 , _psakgUploadType :: !(Maybe Text)
7375 , _psakgBearerToken :: !(Maybe Text)
7476 , _psakgName :: !Text
77+ , _psakgPublicKeyType :: !(Maybe Text)
7578 , _psakgCallback :: !(Maybe Text)
7679 } deriving (Eq,Show,Data,Typeable,Generic)
7780
@@ -93,6 +96,8 @@ data ProjectsServiceAccountsKeysGet = ProjectsServiceAccountsKeysGet'
9396--
9497-- * 'psakgName'
9598--
99+-- * 'psakgPublicKeyType'
100+--
96101-- * 'psakgCallback'
97102projectsServiceAccountsKeysGet
98103 :: Text -- ^ 'psakgName'
@@ -106,6 +111,7 @@ projectsServiceAccountsKeysGet pPsakgName_ =
106111 , _psakgUploadType = Nothing
107112 , _psakgBearerToken = Nothing
108113 , _psakgName = pPsakgName_
114+ , _psakgPublicKeyType = Nothing
109115 , _psakgCallback = Nothing
110116 }
111117
@@ -142,15 +148,22 @@ psakgBearerToken
142148 = lens _psakgBearerToken
143149 (\ s a -> s{_psakgBearerToken = a})
144150
145−-- | The resource name of the service account key in the format
146−-- \"projects\/{project}\/serviceAccounts\/{account}\/keys\/{key}\". Using
147−-- \'-\' as a wildcard for the project will infer the project from the
148−-- account. The account value can be the email address or the unique_id of
149−-- the service account.
151+-- | The resource name of the service account key in the following format:
152+-- \`projects\/{project}\/serviceAccounts\/{account}\/keys\/{key}\`. Using
153+-- \`-\` as a wildcard for the project will infer the project from the
154+-- account. The \`account\` value can be the \`email\` address or the
155+-- \`unique_id\` of the service account.
150156psakgName :: Lens' ProjectsServiceAccountsKeysGet Text
151157psakgName
152158 = lens _psakgName (\ s a -> s{_psakgName = a})
153159
160+-- | The output format of the public key requested. X509_PEM is the default
161+-- output format.
162+psakgPublicKeyType :: Lens' ProjectsServiceAccountsKeysGet (Maybe Text)
163+psakgPublicKeyType
164+ = lens _psakgPublicKeyType
165+ (\ s a -> s{_psakgPublicKeyType = a})
166+
154167-- | JSONP
155168psakgCallback :: Lens' ProjectsServiceAccountsKeysGet (Maybe Text)
156169psakgCallback
@@ -169,6 +182,7 @@ instance GoogleRequest ProjectsServiceAccountsKeysGet
169182 _psakgAccessToken
170183 _psakgUploadType
171184 _psakgBearerToken
185+ _psakgPublicKeyType
172186 _psakgCallback
173187 (Just AltJSON)
174188 knowledgeGraphSearchService
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Keys/List.hs+10−9
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Lists service account keys
23+-- Lists ServiceAccountKeys.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.keys.list@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.keys.list@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.Keys.List
2727 (
2828 -- * REST Resource
@@ -64,7 +64,7 @@ type ProjectsServiceAccountsKeysListResource =
6464 QueryParam "alt" AltJSON :>
6565 Get '[JSON] ListServiceAccountKeysResponse
6666
67−-- | Lists service account keys
67+-- | Lists ServiceAccountKeys.
6868--
6969-- /See:/ 'projectsServiceAccountsKeysList' smart constructor.
7070data ProjectsServiceAccountsKeysList = ProjectsServiceAccountsKeysList'
@@ -116,8 +116,9 @@ projectsServiceAccountsKeysList pPsaklName_ =
116116 , _psaklCallback = Nothing
117117 }
118118
119−-- | The type of keys the user wants to list. If empty, all key types are
120−-- included in the response. Duplicate key types are not allowed.
119+-- | Filters the types of keys the user wants to include in the list
120+-- response. Duplicate key types are not allowed. If no key type is
121+-- provided, all keys are returned.
121122psaklKeyTypes :: Lens' ProjectsServiceAccountsKeysList [Text]
122123psaklKeyTypes
123124 = lens _psaklKeyTypes
@@ -158,11 +159,11 @@ psaklBearerToken
158159 = lens _psaklBearerToken
159160 (\ s a -> s{_psaklBearerToken = a})
160161
161−-- | The resource name of the service account in the format
162−-- \"projects\/{project}\/serviceAccounts\/{account}\". Using \'-\' as a
162+-- | The resource name of the service account in the following format:
163+-- \`projects\/{project}\/serviceAccounts\/{account}\`. Using \`-\` as a
163164-- wildcard for the project, will infer the project from the account. The
164−-- account value can be the email address or the unique_id of the service
165−-- account.
165+-- \`account\` value can be the \`email\` address or the \`unique_id\` of
166+-- the service account.
166167psaklName :: Lens' ProjectsServiceAccountsKeysList Text
167168psaklName
168169 = lens _psaklName (\ s a -> s{_psaklName = a})
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/List.hs+6−6
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Lists service accounts for a project.
23+-- Lists ServiceAccounts for a project.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.list@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.list@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.List
2727 (
2828 -- * REST Resource
@@ -66,7 +66,7 @@ type ProjectsServiceAccountsListResource =
6666 QueryParam "alt" AltJSON :>
6767 Get '[JSON] ListServiceAccountsResponse
6868
69−-- | Lists service accounts for a project.
69+-- | Lists ServiceAccounts for a project.
7070--
7171-- /See:/ 'projectsServiceAccountsList' smart constructor.
7272data ProjectsServiceAccountsList = ProjectsServiceAccountsList'
@@ -156,12 +156,12 @@ psalBearerToken
156156 (\ s a -> s{_psalBearerToken = a})
157157
158158-- | Required. The resource name of the project associated with the service
159−-- accounts, such as \"projects\/123\"
159+-- accounts, such as \`projects\/my-project-123\`.
160160psalName :: Lens' ProjectsServiceAccountsList Text
161161psalName = lens _psalName (\ s a -> s{_psalName = a})
162162
163163-- | Optional pagination token returned in an earlier
164−-- [ListServiceAccountsResponse.next_page_token].
164+-- ListServiceAccountsResponse.next_page_token.
165165psalPageToken :: Lens' ProjectsServiceAccountsList (Maybe Text)
166166psalPageToken
167167 = lens _psalPageToken
@@ -169,7 +169,7 @@ psalPageToken
169169
170170-- | Optional limit on the number of service accounts to include in the
171171-- response. Further accounts can subsequently be obtained by including the
172−-- [ListServiceAccountsResponse.next_page_token] in a subsequent request.
172+-- ListServiceAccountsResponse.next_page_token in a subsequent request.
173173psalPageSize :: Lens' ProjectsServiceAccountsList (Maybe Int32)
174174psalPageSize
175175 = lens _psalPageSize (\ s a -> s{_psalPageSize = a})
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/SetIAMPolicy.hs+5−7
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Sets the IAM access control policy for the specified IAM resource.
23+-- Sets the IAM access control policy for a ServiceAccount.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.setIamPolicy@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.setIamPolicy@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.SetIAMPolicy
2727 (
2828 -- * REST Resource
@@ -63,7 +63,7 @@ type ProjectsServiceAccountsSetIAMPolicyResource =
6363 ReqBody '[JSON] SetIAMPolicyRequest :>
6464 Post '[JSON] Policy
6565
66−-- | Sets the IAM access control policy for the specified IAM resource.
66+-- | Sets the IAM access control policy for a ServiceAccount.
6767--
6868-- /See:/ 'projectsServiceAccountsSetIAMPolicy' smart constructor.
6969data ProjectsServiceAccountsSetIAMPolicy = ProjectsServiceAccountsSetIAMPolicy'
@@ -156,10 +156,8 @@ psasipBearerToken
156156 (\ s a -> s{_psasipBearerToken = a})
157157
158158-- | REQUIRED: The resource for which the policy is being specified.
159−-- \`resource\` is usually specified as a path, such as
160−-- \`projects\/*project*\/zones\/*zone*\/disks\/*disk*\`. The format for
161−-- the path specified in this value is resource specific and is specified
162−-- in the \`setIamPolicy\` documentation.
159+-- \`resource\` is usually specified as a path. For example, a Project
160+-- resource is specified as \`projects\/{project}\`.
163161psasipResource :: Lens' ProjectsServiceAccountsSetIAMPolicy Text
164162psasipResource
165163 = lens _psasipResource
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/SignBlob.hs+8−8
@@ -20,9 +20,9 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Signs a blob using a service account.
23+-- Signs a blob using a service account\'s system-managed private key.
2424--
25−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.signBlob@.
25+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.signBlob@.
2626module Network.Google.Resource.IAM.Projects.ServiceAccounts.SignBlob
2727 (
2828 -- * REST Resource
@@ -63,7 +63,7 @@ type ProjectsServiceAccountsSignBlobResource =
6363 ReqBody '[JSON] SignBlobRequest :>
6464 Post '[JSON] SignBlobResponse
6565
66−-- | Signs a blob using a service account.
66+-- | Signs a blob using a service account\'s system-managed private key.
6767--
6868-- /See:/ 'projectsServiceAccountsSignBlob' smart constructor.
6969data ProjectsServiceAccountsSignBlob = ProjectsServiceAccountsSignBlob'
@@ -154,11 +154,11 @@ psasbBearerToken
154154 = lens _psasbBearerToken
155155 (\ s a -> s{_psasbBearerToken = a})
156156
157−-- | The resource name of the service account in the format
158−-- \"projects\/{project}\/serviceAccounts\/{account}\". Using \'-\' as a
159−-- wildcard for the project, will infer the project from the account. The
160−-- account value can be the email address or the unique_id of the service
161−-- account.
157+-- | The resource name of the service account in the following format:
158+-- \`projects\/{project}\/serviceAccounts\/{account}\`. Using \`-\` as a
159+-- wildcard for the project will infer the project from the account. The
160+-- \`account\` value can be the \`email\` address or the \`unique_id\` of
161+-- the service account.
162162psasbName :: Lens' ProjectsServiceAccountsSignBlob Text
163163psasbName
164164 = lens _psasbName (\ s a -> s{_psasbName = a})
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/TestIAMPermissions.hs+5−7
@@ -21,9 +21,9 @@
2121-- Portability : non-portable (GHC extensions)
2222--
2323-- Tests the specified permissions against the IAM access control policy
24−-- for the specified IAM resource.
24+-- for a ServiceAccount.
2525--
26−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.testIamPermissions@.
26+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.testIamPermissions@.
2727module Network.Google.Resource.IAM.Projects.ServiceAccounts.TestIAMPermissions
2828 (
2929 -- * REST Resource
@@ -66,7 +66,7 @@ type ProjectsServiceAccountsTestIAMPermissionsResource
6666 Post '[JSON] TestIAMPermissionsResponse
6767
6868-- | Tests the specified permissions against the IAM access control policy
69−-- for the specified IAM resource.
69+-- for a ServiceAccount.
7070--
7171-- /See:/ 'projectsServiceAccountsTestIAMPermissions' smart constructor.
7272data ProjectsServiceAccountsTestIAMPermissions = ProjectsServiceAccountsTestIAMPermissions'
@@ -159,10 +159,8 @@ psatipBearerToken
159159 (\ s a -> s{_psatipBearerToken = a})
160160
161161-- | REQUIRED: The resource for which the policy detail is being requested.
162−-- \`resource\` is usually specified as a path, such as
163−-- \`projects\/*project*\/zones\/*zone*\/disks\/*disk*\`. The format for
164−-- the path specified in this value is resource specific and is specified
165−-- in the \`testIamPermissions\` documentation.
162+-- \`resource\` is usually specified as a path. For example, a Project
163+-- resource is specified as \`projects\/{project}\`.
166164psatipResource :: Lens' ProjectsServiceAccountsTestIAMPermissions Text
167165psatipResource
168166 = lens _psatipResource
gogol-kgsearch/gen/Network/Google/Resource/IAM/Projects/ServiceAccounts/Update.hs+12−11
@@ -20,10 +20,10 @@
2020-- Stability : auto-generated
2121-- Portability : non-portable (GHC extensions)
2222--
23−-- Updates a service account. Currently, only the following fields are
24−-- updatable: \'display_name\' . The \'etag\' is mandatory.
23+-- Updates a ServiceAccount. Currently, only the following fields are
24+-- updatable: \`display_name\` . The \`etag\` is mandatory.
2525--
26−-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management API Reference> for @iam.projects.serviceAccounts.update@.
26+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.projects.serviceAccounts.update@.
2727module Network.Google.Resource.IAM.Projects.ServiceAccounts.Update
2828 (
2929 -- * REST Resource
@@ -64,8 +64,8 @@ type ProjectsServiceAccountsUpdateResource =
6464 ReqBody '[JSON] ServiceAccount :>
6565 Put '[JSON] ServiceAccount
6666
67−-- | Updates a service account. Currently, only the following fields are
68−-- updatable: \'display_name\' . The \'etag\' is mandatory.
67+-- | Updates a ServiceAccount. Currently, only the following fields are
68+-- updatable: \`display_name\` . The \`etag\` is mandatory.
6969--
7070-- /See:/ 'projectsServiceAccountsUpdate' smart constructor.
7171data ProjectsServiceAccountsUpdate = ProjectsServiceAccountsUpdate'
@@ -156,12 +156,13 @@ psauBearerToken
156156 = lens _psauBearerToken
157157 (\ s a -> s{_psauBearerToken = a})
158158
159−-- | The resource name of the service account in the format
160−-- \"projects\/{project}\/serviceAccounts\/{account}\". In requests using
161−-- \'-\' as a wildcard for the project, will infer the project from the
162−-- account and the account value can be the email address or the unique_id
163−-- of the service account. In responses the resource name will always be in
164−-- the format \"projects\/{project}\/serviceAccounts\/{email}\".
159+-- | The resource name of the service account in the following format:
160+-- \`projects\/{project}\/serviceAccounts\/{account}\`. Requests using
161+-- \`-\` as a wildcard for the project will infer the project from the
162+-- \`account\` and the \`account\` value can be the \`email\` address or
163+-- the \`unique_id\` of the service account. In responses the resource name
164+-- will always be in the format
165+-- \`projects\/{project}\/serviceAccounts\/{email}\`.
165166psauName :: Lens' ProjectsServiceAccountsUpdate Text
166167psauName = lens _psauName (\ s a -> s{_psauName = a})
167168
gogol-kgsearch/gen/Network/Google/Resource/IAM/Roles/QueryGrantableRoles.hsnew file+177
@@ -0,0 +1,177 @@
1+{-# LANGUAGE DataKinds #-}
2+{-# LANGUAGE DeriveDataTypeable #-}
3+{-# LANGUAGE DeriveGeneric #-}
4+{-# LANGUAGE FlexibleInstances #-}
5+{-# LANGUAGE NoImplicitPrelude #-}
6+{-# LANGUAGE OverloadedStrings #-}
7+{-# LANGUAGE RecordWildCards #-}
8+{-# LANGUAGE TypeFamilies #-}
9+{-# LANGUAGE TypeOperators #-}
10+
11+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
12+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
13+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
14+
15+-- |
16+-- Module : Network.Google.Resource.IAM.Roles.QueryGrantableRoles
17+-- Copyright : (c) 2015-2016 Brendan Hay
18+-- License : Mozilla Public License, v. 2.0.
19+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
20+-- Stability : auto-generated
21+-- Portability : non-portable (GHC extensions)
22+--
23+-- Queries roles that can be granted on a particular resource. A role is
24+-- grantable if it can be used as the role in a binding for a policy for
25+-- that resource.
26+--
27+-- /See:/ <https://cloud.google.com/iam/ Google Identity and Access Management (IAM) API Reference> for @iam.roles.queryGrantableRoles@.
28+module Network.Google.Resource.IAM.Roles.QueryGrantableRoles
29+ (
30+ -- * REST Resource
31+ RolesQueryGrantableRolesResource
32+
33+ -- * Creating a Request
34+ , rolesQueryGrantableRoles
35+ , RolesQueryGrantableRoles
36+
37+ -- * Request Lenses
38+ , rqgrXgafv
39+ , rqgrUploadProtocol
40+ , rqgrPp
41+ , rqgrAccessToken
42+ , rqgrUploadType
43+ , rqgrPayload
44+ , rqgrBearerToken
45+ , rqgrCallback
46+ ) where
47+
48+import Network.Google.KnowledgeGraphSearch.Types
49+import Network.Google.Prelude
50+
51+-- | A resource alias for @iam.roles.queryGrantableRoles@ method which the
52+-- 'RolesQueryGrantableRoles' request conforms to.
53+type RolesQueryGrantableRolesResource =
54+ "v1" :>
55+ "roles:queryGrantableRoles" :>
56+ QueryParam "$.xgafv" Text :>
57+ QueryParam "upload_protocol" Text :>
58+ QueryParam "pp" Bool :>
59+ QueryParam "access_token" Text :>
60+ QueryParam "uploadType" Text :>
61+ QueryParam "bearer_token" Text :>
62+ QueryParam "callback" Text :>
63+ QueryParam "alt" AltJSON :>
64+ ReqBody '[JSON] QueryGrantableRolesRequest :>
65+ Post '[JSON] QueryGrantableRolesResponse
66+
67+-- | Queries roles that can be granted on a particular resource. A role is
68+-- grantable if it can be used as the role in a binding for a policy for
69+-- that resource.
70+--
71+-- /See:/ 'rolesQueryGrantableRoles' smart constructor.
72+data RolesQueryGrantableRoles = RolesQueryGrantableRoles'
73+ { _rqgrXgafv :: !(Maybe Text)
74+ , _rqgrUploadProtocol :: !(Maybe Text)
75+ , _rqgrPp :: !Bool
76+ , _rqgrAccessToken :: !(Maybe Text)
77+ , _rqgrUploadType :: !(Maybe Text)
78+ , _rqgrPayload :: !QueryGrantableRolesRequest
79+ , _rqgrBearerToken :: !(Maybe Text)
80+ , _rqgrCallback :: !(Maybe Text)
81+ } deriving (Eq,Show,Data,Typeable,Generic)
82+
83+-- | Creates a value of 'RolesQueryGrantableRoles' with the minimum fields required to make a request.
84+--
85+-- Use one of the following lenses to modify other fields as desired:
86+--
87+-- * 'rqgrXgafv'
88+--
89+-- * 'rqgrUploadProtocol'
90+--
91+-- * 'rqgrPp'
92+--
93+-- * 'rqgrAccessToken'
94+--
95+-- * 'rqgrUploadType'
96+--
97+-- * 'rqgrPayload'
98+--
99+-- * 'rqgrBearerToken'
100+--
101+-- * 'rqgrCallback'
102+rolesQueryGrantableRoles
103+ :: QueryGrantableRolesRequest -- ^ 'rqgrPayload'
104+ -> RolesQueryGrantableRoles
105+rolesQueryGrantableRoles pRqgrPayload_ =
106+ RolesQueryGrantableRoles'
107+ { _rqgrXgafv = Nothing
108+ , _rqgrUploadProtocol = Nothing
109+ , _rqgrPp = True
110+ , _rqgrAccessToken = Nothing
111+ , _rqgrUploadType = Nothing
112+ , _rqgrPayload = pRqgrPayload_
113+ , _rqgrBearerToken = Nothing
114+ , _rqgrCallback = Nothing
115+ }
116+
117+-- | V1 error format.
118+rqgrXgafv :: Lens' RolesQueryGrantableRoles (Maybe Text)
119+rqgrXgafv
120+ = lens _rqgrXgafv (\ s a -> s{_rqgrXgafv = a})
121+
122+-- | Upload protocol for media (e.g. \"raw\", \"multipart\").
123+rqgrUploadProtocol :: Lens' RolesQueryGrantableRoles (Maybe Text)
124+rqgrUploadProtocol
125+ = lens _rqgrUploadProtocol
126+ (\ s a -> s{_rqgrUploadProtocol = a})
127+
128+-- | Pretty-print response.
129+rqgrPp :: Lens' RolesQueryGrantableRoles Bool
130+rqgrPp = lens _rqgrPp (\ s a -> s{_rqgrPp = a})
131+
132+-- | OAuth access token.
133+rqgrAccessToken :: Lens' RolesQueryGrantableRoles (Maybe Text)
134+rqgrAccessToken
135+ = lens _rqgrAccessToken
136+ (\ s a -> s{_rqgrAccessToken = a})
137+
138+-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
139+rqgrUploadType :: Lens' RolesQueryGrantableRoles (Maybe Text)
140+rqgrUploadType
141+ = lens _rqgrUploadType
142+ (\ s a -> s{_rqgrUploadType = a})
143+
144+-- | Multipart request metadata.
145+rqgrPayload :: Lens' RolesQueryGrantableRoles QueryGrantableRolesRequest
146+rqgrPayload
147+ = lens _rqgrPayload (\ s a -> s{_rqgrPayload = a})
148+
149+-- | OAuth bearer token.
150+rqgrBearerToken :: Lens' RolesQueryGrantableRoles (Maybe Text)
151+rqgrBearerToken
152+ = lens _rqgrBearerToken
153+ (\ s a -> s{_rqgrBearerToken = a})
154+
155+-- | JSONP
156+rqgrCallback :: Lens' RolesQueryGrantableRoles (Maybe Text)
157+rqgrCallback
158+ = lens _rqgrCallback (\ s a -> s{_rqgrCallback = a})
159+
160+instance GoogleRequest RolesQueryGrantableRoles where
161+ type Rs RolesQueryGrantableRoles =
162+ QueryGrantableRolesResponse
163+ type Scopes RolesQueryGrantableRoles =
164+ '["https://www.googleapis.com/auth/cloud-platform"]
165+ requestClient RolesQueryGrantableRoles'{..}
166+ = go _rqgrXgafv _rqgrUploadProtocol (Just _rqgrPp)
167+ _rqgrAccessToken
168+ _rqgrUploadType
169+ _rqgrBearerToken
170+ _rqgrCallback
171+ (Just AltJSON)
172+ _rqgrPayload
173+ knowledgeGraphSearchService
174+ where go
175+ = buildClient
176+ (Proxy :: Proxy RolesQueryGrantableRolesResource)
177+ mempty
gogol-kgsearch/gogol-kgsearch.cabal+2−1
@@ -1,6 +1,6 @@
11name: gogol-kgsearch
22version: 0.1.0
3−synopsis: Google Identity and Access Management SDK.
3+synopsis: Google Identity and Access Management (IAM) SDK.
44homepage: https://github.com/brendanhay/gogol
55bug-reports: https://github.com/brendanhay/gogol/issues
66license: OtherLicense
@@ -50,6 +50,7 @@ library
5050 , Network.Google.Resource.IAM.Projects.ServiceAccounts.SignBlob
5151 , Network.Google.Resource.IAM.Projects.ServiceAccounts.TestIAMPermissions
5252 , Network.Google.Resource.IAM.Projects.ServiceAccounts.Update
53+ , Network.Google.Resource.IAM.Roles.QueryGrantableRoles
5354
5455 other-modules:
5556 Network.Google.KnowledgeGraphSearch.Types.Product