google-api-client 0.9.3 → 0.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/README.md +28 -3
- data/api_names.yaml +1 -0
- data/api_names_out.yaml +418 -0
- data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
- data/generated/google/apis/adsense_v1_4.rb +2 -3
- data/generated/google/apis/adsense_v1_4/service.rb +1 -2
- data/generated/google/apis/adsensehost_v4_1.rb +3 -3
- data/generated/google/apis/adsensehost_v4_1/service.rb +2 -2
- data/generated/google/apis/analytics_v3.rb +2 -2
- data/generated/google/apis/analytics_v3/classes.rb +42 -0
- data/generated/google/apis/analytics_v3/representations.rb +6 -0
- data/generated/google/apis/analytics_v3/service.rb +3 -3
- data/generated/google/apis/androidenterprise_v1.rb +1 -1
- data/generated/google/apis/appsactivity_v1.rb +1 -1
- data/generated/google/apis/appsactivity_v1/classes.rb +16 -0
- data/generated/google/apis/appsactivity_v1/representations.rb +2 -0
- data/generated/google/apis/appstate_v1.rb +1 -1
- data/generated/google/apis/bigquery_v2.rb +1 -1
- data/generated/google/apis/bigquery_v2/classes.rb +200 -13
- data/generated/google/apis/bigquery_v2/representations.rb +54 -0
- data/generated/google/apis/books_v1.rb +1 -1
- data/generated/google/apis/books_v1/classes.rb +6 -0
- data/generated/google/apis/books_v1/representations.rb +1 -0
- data/generated/google/apis/books_v1/service.rb +4 -1
- data/generated/google/apis/calendar_v3.rb +1 -1
- data/generated/google/apis/cloudbuild_v1.rb +2 -3
- data/generated/google/apis/cloudbuild_v1/classes.rb +7 -0
- data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
- data/generated/google/apis/cloudbuild_v1/service.rb +1 -2
- data/generated/google/apis/clouddebugger_v2.rb +2 -2
- data/generated/google/apis/clouddebugger_v2/classes.rb +8 -1
- data/generated/google/apis/clouddebugger_v2/representations.rb +1 -0
- data/generated/google/apis/clouddebugger_v2/service.rb +26 -6
- data/generated/google/apis/cloudlatencytest_v2.rb +2 -2
- data/generated/google/apis/cloudlatencytest_v2/service.rb +1 -1
- data/generated/google/apis/cloudmonitoring_v2beta2.rb +2 -2
- data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +1 -1
- data/generated/google/apis/cloudresourcemanager_v1.rb +38 -0
- data/generated/google/apis/cloudresourcemanager_v1/classes.rb +355 -0
- data/generated/google/apis/cloudresourcemanager_v1/representations.rb +181 -0
- data/generated/google/apis/cloudresourcemanager_v1/service.rb +373 -0
- data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
- data/generated/google/apis/clouduseraccounts_beta.rb +3 -2
- data/generated/google/apis/clouduseraccounts_beta/classes.rb +52 -30
- data/generated/google/apis/clouduseraccounts_beta/representations.rb +1 -0
- data/generated/google/apis/clouduseraccounts_beta/service.rb +110 -57
- data/generated/google/apis/compute_beta.rb +1 -1
- data/generated/google/apis/compute_beta/classes.rb +324 -101
- data/generated/google/apis/compute_beta/representations.rb +78 -0
- data/generated/google/apis/compute_beta/service.rb +1599 -208
- data/generated/google/apis/compute_v1.rb +1 -1
- data/generated/google/apis/compute_v1/classes.rb +96 -79
- data/generated/google/apis/compute_v1/service.rb +199 -169
- data/generated/google/apis/content_v2.rb +2 -2
- data/generated/google/apis/content_v2/classes.rb +6 -0
- data/generated/google/apis/content_v2/representations.rb +1 -0
- data/generated/google/apis/content_v2/service.rb +1 -1
- data/generated/google/apis/deploymentmanager_v2.rb +1 -1
- data/generated/google/apis/deploymentmanager_v2/classes.rb +6 -6
- data/generated/google/apis/deploymentmanager_v2/service.rb +10 -10
- data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
- data/generated/google/apis/doubleclicksearch_v2.rb +2 -2
- data/generated/google/apis/doubleclicksearch_v2/service.rb +1 -1
- data/generated/google/apis/drive_v2.rb +1 -1
- data/generated/google/apis/drive_v3.rb +1 -1
- data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
- data/generated/google/apis/games_management_v1management.rb +1 -1
- data/generated/google/apis/games_v1.rb +1 -1
- data/generated/google/apis/games_v1/classes.rb +9 -2
- data/generated/google/apis/games_v1/representations.rb +1 -0
- data/generated/google/apis/genomics_v1.rb +4 -5
- data/generated/google/apis/genomics_v1/classes.rb +51 -0
- data/generated/google/apis/genomics_v1/representations.rb +17 -0
- data/generated/google/apis/genomics_v1/service.rb +44 -8
- data/generated/google/apis/gmail_v1.rb +2 -2
- data/generated/google/apis/gmail_v1/classes.rb +19 -0
- data/generated/google/apis/gmail_v1/representations.rb +13 -0
- data/generated/google/apis/gmail_v1/service.rb +43 -2
- data/generated/google/apis/iam_v1.rb +36 -0
- data/generated/google/apis/iam_v1/classes.rb +665 -0
- data/generated/google/apis/iam_v1/representations.rb +325 -0
- data/generated/google/apis/iam_v1/service.rb +520 -0
- data/generated/google/apis/identitytoolkit_v3.rb +1 -1
- data/generated/google/apis/identitytoolkit_v3/classes.rb +306 -0
- data/generated/google/apis/identitytoolkit_v3/representations.rb +85 -0
- data/generated/google/apis/identitytoolkit_v3/service.rb +42 -1
- data/generated/google/apis/pagespeedonline_v2.rb +2 -2
- data/generated/google/apis/pagespeedonline_v2/service.rb +1 -1
- data/generated/google/apis/plus_domains_v1.rb +1 -1
- data/generated/google/apis/plus_v1.rb +1 -1
- data/generated/google/apis/prediction_v1_6.rb +1 -1
- data/generated/google/apis/prediction_v1_6/classes.rb +1 -1
- data/generated/google/apis/qpx_express_v1.rb +2 -2
- data/generated/google/apis/qpx_express_v1/service.rb +1 -1
- data/generated/google/apis/replicapoolupdater_v1beta1.rb +2 -3
- data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +1 -2
- data/generated/google/apis/reseller_v1.rb +2 -2
- data/generated/google/apis/reseller_v1/service.rb +1 -1
- data/generated/google/apis/site_verification_v1.rb +2 -2
- data/generated/google/apis/site_verification_v1/service.rb +1 -1
- data/generated/google/apis/storage_v1.rb +2 -2
- data/generated/google/apis/storage_v1/service.rb +1 -1
- data/generated/google/apis/tagmanager_v1.rb +2 -2
- data/generated/google/apis/tagmanager_v1/service.rb +1 -1
- data/generated/google/apis/vision_v1.rb +1 -1
- data/generated/google/apis/vision_v1/classes.rb +2 -2
- data/generated/google/apis/youtube_analytics_v1.rb +2 -2
- data/generated/google/apis/youtube_analytics_v1/service.rb +1 -1
- data/generated/google/apis/youtube_v3.rb +1 -1
- data/generated/google/apis/youtube_v3/classes.rb +8 -0
- data/generated/google/apis/youtube_v3/representations.rb +1 -0
- data/generated/google/apis/youtubereporting_v1.rb +3 -3
- data/generated/google/apis/youtubereporting_v1/classes.rb +1 -2
- data/generated/google/apis/youtubereporting_v1/service.rb +4 -4
- data/lib/google/apis/core/base_service.rb +84 -6
- data/lib/google/apis/version.rb +1 -1
- data/script/generate +2 -0
- data/spec/google/apis/core/service_spec.rb +66 -0
- metadata +10 -2
|
@@ -22,10 +22,9 @@ module Google
|
|
|
22
22
|
module GenomicsV1
|
|
23
23
|
# Genomics API
|
|
24
24
|
#
|
|
25
|
-
#
|
|
26
|
-
#
|
|
27
|
-
#
|
|
28
|
-
# GA4GH) v0.5.1 API as well as several extensions.
|
|
25
|
+
# Stores, processes, explores and shares genomic data. This API implements the
|
|
26
|
+
# Global Alliance for Genomics and Health (GA4GH) v0.5.1 API as well as several
|
|
27
|
+
# extensions.
|
|
29
28
|
#
|
|
30
29
|
# @example
|
|
31
30
|
# require 'google/apis/genomics_v1'
|
|
@@ -1254,6 +1253,43 @@ module Google
|
|
|
1254
1253
|
execute_or_queue_command(command, &block)
|
|
1255
1254
|
end
|
|
1256
1255
|
|
|
1256
|
+
# Merges the given variants with existing variants. For the definitions of
|
|
1257
|
+
# variants and other genomics resources, see [Fundamentals of Google Genomics](
|
|
1258
|
+
# https://cloud.google.com/genomics/fundamentals-of-google-genomics) Each
|
|
1259
|
+
# variant will be merged with an existing variant that matches its reference
|
|
1260
|
+
# sequence, start, end, reference bases, and alternative bases. If no such
|
|
1261
|
+
# variant exists, a new one will be created. When variants are merged, the call
|
|
1262
|
+
# information from the new variant is added to the existing variant, and other
|
|
1263
|
+
# fields (such as key/value pairs) are discarded.
|
|
1264
|
+
# @param [Google::Apis::GenomicsV1::MergeVariantsRequest] merge_variants_request_object
|
|
1265
|
+
# @param [String] fields
|
|
1266
|
+
# Selector specifying which fields to include in a partial response.
|
|
1267
|
+
# @param [String] quota_user
|
|
1268
|
+
# Available to use for quota purposes for server-side applications. Can be any
|
|
1269
|
+
# arbitrary string assigned to a user, but should not exceed 40 characters.
|
|
1270
|
+
# @param [Google::Apis::RequestOptions] options
|
|
1271
|
+
# Request-specific options
|
|
1272
|
+
#
|
|
1273
|
+
# @yield [result, err] Result & error if block supplied
|
|
1274
|
+
# @yieldparam result [Google::Apis::GenomicsV1::Empty] parsed result object
|
|
1275
|
+
# @yieldparam err [StandardError] error object if request failed
|
|
1276
|
+
#
|
|
1277
|
+
# @return [Google::Apis::GenomicsV1::Empty]
|
|
1278
|
+
#
|
|
1279
|
+
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
|
|
1280
|
+
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
|
|
1281
|
+
# @raise [Google::Apis::AuthorizationError] Authorization is required
|
|
1282
|
+
def merge_variants(merge_variants_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
|
|
1283
|
+
command = make_simple_command(:post, 'v1/variants:merge', options)
|
|
1284
|
+
command.request_representation = Google::Apis::GenomicsV1::MergeVariantsRequest::Representation
|
|
1285
|
+
command.request_object = merge_variants_request_object
|
|
1286
|
+
command.response_representation = Google::Apis::GenomicsV1::Empty::Representation
|
|
1287
|
+
command.response_class = Google::Apis::GenomicsV1::Empty
|
|
1288
|
+
command.query['fields'] = fields unless fields.nil?
|
|
1289
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
|
1290
|
+
execute_or_queue_command(command, &block)
|
|
1291
|
+
end
|
|
1292
|
+
|
|
1257
1293
|
# Returns a stream of all the variants matching the search request, ordered by
|
|
1258
1294
|
# reference name, position, and ID.
|
|
1259
1295
|
# @param [Google::Apis::GenomicsV1::StreamVariantsRequest] stream_variants_request_object
|
|
@@ -1421,10 +1457,10 @@ module Google
|
|
|
1421
1457
|
execute_or_queue_command(command, &block)
|
|
1422
1458
|
end
|
|
1423
1459
|
|
|
1424
|
-
# Deletes
|
|
1425
|
-
# For the definitions of variant sets and other genomics
|
|
1426
|
-
# Fundamentals of Google Genomics](https://cloud.google.com/
|
|
1427
|
-
# fundamentals-of-google-genomics)
|
|
1460
|
+
# Deletes a variant set including all variants, call sets, and calls within.
|
|
1461
|
+
# This is not reversible. For the definitions of variant sets and other genomics
|
|
1462
|
+
# resources, see [Fundamentals of Google Genomics](https://cloud.google.com/
|
|
1463
|
+
# genomics/fundamentals-of-google-genomics)
|
|
1428
1464
|
# @param [String] variant_set_id
|
|
1429
1465
|
# The ID of the variant set to be deleted.
|
|
1430
1466
|
# @param [String] fields
|
|
@@ -20,12 +20,12 @@ module Google
|
|
|
20
20
|
module Apis
|
|
21
21
|
# Gmail API
|
|
22
22
|
#
|
|
23
|
-
#
|
|
23
|
+
# Access Gmail mailboxes including sending user email.
|
|
24
24
|
#
|
|
25
25
|
# @see https://developers.google.com/gmail/api/
|
|
26
26
|
module GmailV1
|
|
27
27
|
VERSION = 'V1'
|
|
28
|
-
REVISION = '
|
|
28
|
+
REVISION = '20160301'
|
|
29
29
|
|
|
30
30
|
# View and manage your mail
|
|
31
31
|
AUTH_SCOPE = 'https://mail.google.com/'
|
|
@@ -22,6 +22,25 @@ module Google
|
|
|
22
22
|
module Apis
|
|
23
23
|
module GmailV1
|
|
24
24
|
|
|
25
|
+
#
|
|
26
|
+
class BatchDeleteMessagesRequest
|
|
27
|
+
include Google::Apis::Core::Hashable
|
|
28
|
+
|
|
29
|
+
# The IDs of the messages to delete.
|
|
30
|
+
# Corresponds to the JSON property `ids`
|
|
31
|
+
# @return [Array<String>]
|
|
32
|
+
attr_accessor :ids
|
|
33
|
+
|
|
34
|
+
def initialize(**args)
|
|
35
|
+
update!(**args)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Update properties of this object
|
|
39
|
+
def update!(**args)
|
|
40
|
+
@ids = args[:ids] if args.key?(:ids)
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
25
44
|
# A draft email in the user's mailbox.
|
|
26
45
|
class Draft
|
|
27
46
|
include Google::Apis::Core::Hashable
|
|
@@ -22,6 +22,12 @@ module Google
|
|
|
22
22
|
module Apis
|
|
23
23
|
module GmailV1
|
|
24
24
|
|
|
25
|
+
class BatchDeleteMessagesRequest
|
|
26
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
27
|
+
|
|
28
|
+
include Google::Apis::Core::JsonObjectSupport
|
|
29
|
+
end
|
|
30
|
+
|
|
25
31
|
class Draft
|
|
26
32
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
|
27
33
|
|
|
@@ -154,6 +160,13 @@ module Google
|
|
|
154
160
|
include Google::Apis::Core::JsonObjectSupport
|
|
155
161
|
end
|
|
156
162
|
|
|
163
|
+
class BatchDeleteMessagesRequest
|
|
164
|
+
# @private
|
|
165
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
|
166
|
+
collection :ids, as: 'ids'
|
|
167
|
+
end
|
|
168
|
+
end
|
|
169
|
+
|
|
157
170
|
class Draft
|
|
158
171
|
# @private
|
|
159
172
|
class Representation < Google::Apis::Core::JsonRepresentation
|
|
@@ -22,7 +22,7 @@ module Google
|
|
|
22
22
|
module GmailV1
|
|
23
23
|
# Gmail API
|
|
24
24
|
#
|
|
25
|
-
#
|
|
25
|
+
# Access Gmail mailboxes including sending user email.
|
|
26
26
|
#
|
|
27
27
|
# @example
|
|
28
28
|
# require 'google/apis/gmail_v1'
|
|
@@ -294,6 +294,8 @@ module Google
|
|
|
294
294
|
# @param [String] user_id
|
|
295
295
|
# The user's email address. The special value me can be used to indicate the
|
|
296
296
|
# authenticated user.
|
|
297
|
+
# @param [Boolean] include_spam_trash
|
|
298
|
+
# Include drafts from SPAM and TRASH in the results.
|
|
297
299
|
# @param [Fixnum] max_results
|
|
298
300
|
# Maximum number of drafts to return.
|
|
299
301
|
# @param [String] page_token
|
|
@@ -319,11 +321,12 @@ module Google
|
|
|
319
321
|
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
|
|
320
322
|
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
|
|
321
323
|
# @raise [Google::Apis::AuthorizationError] Authorization is required
|
|
322
|
-
def list_user_drafts(user_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
|
|
324
|
+
def list_user_drafts(user_id, include_spam_trash: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
|
|
323
325
|
command = make_simple_command(:get, '{userId}/drafts', options)
|
|
324
326
|
command.response_representation = Google::Apis::GmailV1::ListDraftsResponse::Representation
|
|
325
327
|
command.response_class = Google::Apis::GmailV1::ListDraftsResponse
|
|
326
328
|
command.params['userId'] = user_id unless user_id.nil?
|
|
329
|
+
command.query['includeSpamTrash'] = include_spam_trash unless include_spam_trash.nil?
|
|
327
330
|
command.query['maxResults'] = max_results unless max_results.nil?
|
|
328
331
|
command.query['pageToken'] = page_token unless page_token.nil?
|
|
329
332
|
command.query['fields'] = fields unless fields.nil?
|
|
@@ -728,6 +731,44 @@ module Google
|
|
|
728
731
|
execute_or_queue_command(command, &block)
|
|
729
732
|
end
|
|
730
733
|
|
|
734
|
+
# Deletes many messages by message ID. Provides no guarantees that messages were
|
|
735
|
+
# not already deleted or even existed at all.
|
|
736
|
+
# @param [String] user_id
|
|
737
|
+
# The user's email address. The special value me can be used to indicate the
|
|
738
|
+
# authenticated user.
|
|
739
|
+
# @param [Google::Apis::GmailV1::BatchDeleteMessagesRequest] batch_delete_messages_request_object
|
|
740
|
+
# @param [String] fields
|
|
741
|
+
# Selector specifying which fields to include in a partial response.
|
|
742
|
+
# @param [String] quota_user
|
|
743
|
+
# Available to use for quota purposes for server-side applications. Can be any
|
|
744
|
+
# arbitrary string assigned to a user, but should not exceed 40 characters.
|
|
745
|
+
# Overrides userIp if both are provided.
|
|
746
|
+
# @param [String] user_ip
|
|
747
|
+
# IP address of the site where the request originates. Use this if you want to
|
|
748
|
+
# enforce per-user limits.
|
|
749
|
+
# @param [Google::Apis::RequestOptions] options
|
|
750
|
+
# Request-specific options
|
|
751
|
+
#
|
|
752
|
+
# @yield [result, err] Result & error if block supplied
|
|
753
|
+
# @yieldparam result [NilClass] No result returned for this method
|
|
754
|
+
# @yieldparam err [StandardError] error object if request failed
|
|
755
|
+
#
|
|
756
|
+
# @return [void]
|
|
757
|
+
#
|
|
758
|
+
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
|
|
759
|
+
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
|
|
760
|
+
# @raise [Google::Apis::AuthorizationError] Authorization is required
|
|
761
|
+
def batch_delete_messages(user_id, batch_delete_messages_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
|
|
762
|
+
command = make_simple_command(:post, '{userId}/messages/batchDelete', options)
|
|
763
|
+
command.request_representation = Google::Apis::GmailV1::BatchDeleteMessagesRequest::Representation
|
|
764
|
+
command.request_object = batch_delete_messages_request_object
|
|
765
|
+
command.params['userId'] = user_id unless user_id.nil?
|
|
766
|
+
command.query['fields'] = fields unless fields.nil?
|
|
767
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
|
768
|
+
command.query['userIp'] = user_ip unless user_ip.nil?
|
|
769
|
+
execute_or_queue_command(command, &block)
|
|
770
|
+
end
|
|
771
|
+
|
|
731
772
|
# Immediately and permanently deletes the specified message. This operation
|
|
732
773
|
# cannot be undone. Prefer messages.trash instead.
|
|
733
774
|
# @param [String] user_id
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Copyright 2015 Google Inc.
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
require 'google/apis/iam_v1/service.rb'
|
|
16
|
+
require 'google/apis/iam_v1/classes.rb'
|
|
17
|
+
require 'google/apis/iam_v1/representations.rb'
|
|
18
|
+
|
|
19
|
+
module Google
|
|
20
|
+
module Apis
|
|
21
|
+
# Google Identity and Access Management API
|
|
22
|
+
#
|
|
23
|
+
# Manages identity and access control for Google Cloud Platform resources,
|
|
24
|
+
# including the creation of service accounts, which you can use to authenticate
|
|
25
|
+
# to Google and make API calls.
|
|
26
|
+
#
|
|
27
|
+
# @see https://cloud.google.com/iam/
|
|
28
|
+
module IamV1
|
|
29
|
+
VERSION = 'V1'
|
|
30
|
+
REVISION = '20160129'
|
|
31
|
+
|
|
32
|
+
# View and manage your data across Google Cloud Platform services
|
|
33
|
+
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,665 @@
|
|
|
1
|
+
# Copyright 2015 Google Inc.
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
require 'date'
|
|
16
|
+
require 'google/apis/core/base_service'
|
|
17
|
+
require 'google/apis/core/json_representation'
|
|
18
|
+
require 'google/apis/core/hashable'
|
|
19
|
+
require 'google/apis/errors'
|
|
20
|
+
|
|
21
|
+
module Google
|
|
22
|
+
module Apis
|
|
23
|
+
module IamV1
|
|
24
|
+
|
|
25
|
+
# The service account list response.
|
|
26
|
+
class ListServiceAccountsResponse
|
|
27
|
+
include Google::Apis::Core::Hashable
|
|
28
|
+
|
|
29
|
+
# The list of matching service accounts.
|
|
30
|
+
# Corresponds to the JSON property `accounts`
|
|
31
|
+
# @return [Array<Google::Apis::IamV1::ServiceAccount>]
|
|
32
|
+
attr_accessor :accounts
|
|
33
|
+
|
|
34
|
+
# To retrieve the next page of results, set [ListServiceAccountsRequest.
|
|
35
|
+
# page_token] to this value.
|
|
36
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
37
|
+
# @return [String]
|
|
38
|
+
attr_accessor :next_page_token
|
|
39
|
+
|
|
40
|
+
def initialize(**args)
|
|
41
|
+
update!(**args)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Update properties of this object
|
|
45
|
+
def update!(**args)
|
|
46
|
+
@accounts = args[:accounts] if args.key?(:accounts)
|
|
47
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
# A service account in the Identity and Access Management API. To create a
|
|
52
|
+
# service account, you specify the project_id and account_id for the account.
|
|
53
|
+
# The account_id is unique within the project, and used to generate the service
|
|
54
|
+
# account email address and a stable unique id. All other methods can identify
|
|
55
|
+
# accounts using the format "projects/`project`/serviceAccounts/`account`".
|
|
56
|
+
# Using '-' as a wildcard for the project, will infer the project from the
|
|
57
|
+
# account. The account value can be the email address or the unique_id of the
|
|
58
|
+
# service account.
|
|
59
|
+
class ServiceAccount
|
|
60
|
+
include Google::Apis::Core::Hashable
|
|
61
|
+
|
|
62
|
+
# The resource name of the service account in the format "projects/`project`/
|
|
63
|
+
# serviceAccounts/`account`". In requests using '-' as a wildcard for the
|
|
64
|
+
# project, will infer the project from the account and the account value can be
|
|
65
|
+
# the email address or the unique_id of the service account. In responses the
|
|
66
|
+
# resource name will always be in the format "projects/`project`/serviceAccounts/
|
|
67
|
+
# `email`".
|
|
68
|
+
# Corresponds to the JSON property `name`
|
|
69
|
+
# @return [String]
|
|
70
|
+
attr_accessor :name
|
|
71
|
+
|
|
72
|
+
# @OutputOnly The id of the project that owns the service account.
|
|
73
|
+
# Corresponds to the JSON property `projectId`
|
|
74
|
+
# @return [String]
|
|
75
|
+
attr_accessor :project_id
|
|
76
|
+
|
|
77
|
+
# @OutputOnly unique and stable id of the service account.
|
|
78
|
+
# Corresponds to the JSON property `uniqueId`
|
|
79
|
+
# @return [String]
|
|
80
|
+
attr_accessor :unique_id
|
|
81
|
+
|
|
82
|
+
# @OutputOnly Email address of the service account.
|
|
83
|
+
# Corresponds to the JSON property `email`
|
|
84
|
+
# @return [String]
|
|
85
|
+
attr_accessor :email
|
|
86
|
+
|
|
87
|
+
# Optional. A user-specified description of the service account. Must be fewer
|
|
88
|
+
# than 100 UTF-8 bytes.
|
|
89
|
+
# Corresponds to the JSON property `displayName`
|
|
90
|
+
# @return [String]
|
|
91
|
+
attr_accessor :display_name
|
|
92
|
+
|
|
93
|
+
# Used to perform a consistent read-modify-write.
|
|
94
|
+
# Corresponds to the JSON property `etag`
|
|
95
|
+
# @return [String]
|
|
96
|
+
attr_accessor :etag
|
|
97
|
+
|
|
98
|
+
# @OutputOnly. The OAuth2 client id for the service account. This is used in
|
|
99
|
+
# conjunction with the OAuth2 clientconfig API to make three legged OAuth2 (3LO)
|
|
100
|
+
# flows to access the data of Google users.
|
|
101
|
+
# Corresponds to the JSON property `oauth2ClientId`
|
|
102
|
+
# @return [String]
|
|
103
|
+
attr_accessor :oauth2_client_id
|
|
104
|
+
|
|
105
|
+
def initialize(**args)
|
|
106
|
+
update!(**args)
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
# Update properties of this object
|
|
110
|
+
def update!(**args)
|
|
111
|
+
@name = args[:name] if args.key?(:name)
|
|
112
|
+
@project_id = args[:project_id] if args.key?(:project_id)
|
|
113
|
+
@unique_id = args[:unique_id] if args.key?(:unique_id)
|
|
114
|
+
@email = args[:email] if args.key?(:email)
|
|
115
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
|
116
|
+
@etag = args[:etag] if args.key?(:etag)
|
|
117
|
+
@oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id)
|
|
118
|
+
end
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
# The service account create request.
|
|
122
|
+
class CreateServiceAccountRequest
|
|
123
|
+
include Google::Apis::Core::Hashable
|
|
124
|
+
|
|
125
|
+
# Required. The account id that is used to generate the service account email
|
|
126
|
+
# address and a stable unique id. It is unique within a project, must be 1-63
|
|
127
|
+
# characters long, and match the regular expression [a-z]([-a-z0-9]*[a-z0-9]) to
|
|
128
|
+
# comply with RFC1035.
|
|
129
|
+
# Corresponds to the JSON property `accountId`
|
|
130
|
+
# @return [String]
|
|
131
|
+
attr_accessor :account_id
|
|
132
|
+
|
|
133
|
+
# A service account in the Identity and Access Management API. To create a
|
|
134
|
+
# service account, you specify the project_id and account_id for the account.
|
|
135
|
+
# The account_id is unique within the project, and used to generate the service
|
|
136
|
+
# account email address and a stable unique id. All other methods can identify
|
|
137
|
+
# accounts using the format "projects/`project`/serviceAccounts/`account`".
|
|
138
|
+
# Using '-' as a wildcard for the project, will infer the project from the
|
|
139
|
+
# account. The account value can be the email address or the unique_id of the
|
|
140
|
+
# service account.
|
|
141
|
+
# Corresponds to the JSON property `serviceAccount`
|
|
142
|
+
# @return [Google::Apis::IamV1::ServiceAccount]
|
|
143
|
+
attr_accessor :service_account
|
|
144
|
+
|
|
145
|
+
def initialize(**args)
|
|
146
|
+
update!(**args)
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
# Update properties of this object
|
|
150
|
+
def update!(**args)
|
|
151
|
+
@account_id = args[:account_id] if args.key?(:account_id)
|
|
152
|
+
@service_account = args[:service_account] if args.key?(:service_account)
|
|
153
|
+
end
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
# A generic empty message that you can re-use to avoid defining duplicated empty
|
|
157
|
+
# messages in your APIs. A typical example is to use it as the request or the
|
|
158
|
+
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
|
159
|
+
# protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
|
|
160
|
+
# `Empty` is empty JSON object ````.
|
|
161
|
+
class Empty
|
|
162
|
+
include Google::Apis::Core::Hashable
|
|
163
|
+
|
|
164
|
+
def initialize(**args)
|
|
165
|
+
update!(**args)
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
# Update properties of this object
|
|
169
|
+
def update!(**args)
|
|
170
|
+
end
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
# The service account keys list response.
|
|
174
|
+
class ListServiceAccountKeysResponse
|
|
175
|
+
include Google::Apis::Core::Hashable
|
|
176
|
+
|
|
177
|
+
# The public keys for the service account.
|
|
178
|
+
# Corresponds to the JSON property `keys`
|
|
179
|
+
# @return [Array<Google::Apis::IamV1::ServiceAccountKey>]
|
|
180
|
+
attr_accessor :keys
|
|
181
|
+
|
|
182
|
+
def initialize(**args)
|
|
183
|
+
update!(**args)
|
|
184
|
+
end
|
|
185
|
+
|
|
186
|
+
# Update properties of this object
|
|
187
|
+
def update!(**args)
|
|
188
|
+
@keys = args[:keys] if args.key?(:keys)
|
|
189
|
+
end
|
|
190
|
+
end
|
|
191
|
+
|
|
192
|
+
# Represents a service account key. A service account can have 0 or more key
|
|
193
|
+
# pairs. The private keys for these are not stored by Google. ServiceAccountKeys
|
|
194
|
+
# are immutable.
|
|
195
|
+
class ServiceAccountKey
|
|
196
|
+
include Google::Apis::Core::Hashable
|
|
197
|
+
|
|
198
|
+
# The resource name of the service account key in the format "projects/`project`/
|
|
199
|
+
# serviceAccounts/`email`/keys/`key`".
|
|
200
|
+
# Corresponds to the JSON property `name`
|
|
201
|
+
# @return [String]
|
|
202
|
+
attr_accessor :name
|
|
203
|
+
|
|
204
|
+
# The type of the private key.
|
|
205
|
+
# Corresponds to the JSON property `privateKeyType`
|
|
206
|
+
# @return [String]
|
|
207
|
+
attr_accessor :private_key_type
|
|
208
|
+
|
|
209
|
+
# The key data.
|
|
210
|
+
# Corresponds to the JSON property `privateKeyData`
|
|
211
|
+
# @return [String]
|
|
212
|
+
attr_accessor :private_key_data
|
|
213
|
+
|
|
214
|
+
# The key can be used after this timestamp.
|
|
215
|
+
# Corresponds to the JSON property `validAfterTime`
|
|
216
|
+
# @return [String]
|
|
217
|
+
attr_accessor :valid_after_time
|
|
218
|
+
|
|
219
|
+
# The key can be used before this timestamp.
|
|
220
|
+
# Corresponds to the JSON property `validBeforeTime`
|
|
221
|
+
# @return [String]
|
|
222
|
+
attr_accessor :valid_before_time
|
|
223
|
+
|
|
224
|
+
def initialize(**args)
|
|
225
|
+
update!(**args)
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
# Update properties of this object
|
|
229
|
+
def update!(**args)
|
|
230
|
+
@name = args[:name] if args.key?(:name)
|
|
231
|
+
@private_key_type = args[:private_key_type] if args.key?(:private_key_type)
|
|
232
|
+
@private_key_data = args[:private_key_data] if args.key?(:private_key_data)
|
|
233
|
+
@valid_after_time = args[:valid_after_time] if args.key?(:valid_after_time)
|
|
234
|
+
@valid_before_time = args[:valid_before_time] if args.key?(:valid_before_time)
|
|
235
|
+
end
|
|
236
|
+
end
|
|
237
|
+
|
|
238
|
+
# The service account key create request.
|
|
239
|
+
class CreateServiceAccountKeyRequest
|
|
240
|
+
include Google::Apis::Core::Hashable
|
|
241
|
+
|
|
242
|
+
# The type of the key requested. GOOGLE_CREDENTIALS is the default key type.
|
|
243
|
+
# Corresponds to the JSON property `privateKeyType`
|
|
244
|
+
# @return [String]
|
|
245
|
+
attr_accessor :private_key_type
|
|
246
|
+
|
|
247
|
+
def initialize(**args)
|
|
248
|
+
update!(**args)
|
|
249
|
+
end
|
|
250
|
+
|
|
251
|
+
# Update properties of this object
|
|
252
|
+
def update!(**args)
|
|
253
|
+
@private_key_type = args[:private_key_type] if args.key?(:private_key_type)
|
|
254
|
+
end
|
|
255
|
+
end
|
|
256
|
+
|
|
257
|
+
# The service account sign blob request.
|
|
258
|
+
class SignBlobRequest
|
|
259
|
+
include Google::Apis::Core::Hashable
|
|
260
|
+
|
|
261
|
+
# The bytes to sign
|
|
262
|
+
# Corresponds to the JSON property `bytesToSign`
|
|
263
|
+
# @return [String]
|
|
264
|
+
attr_accessor :bytes_to_sign
|
|
265
|
+
|
|
266
|
+
def initialize(**args)
|
|
267
|
+
update!(**args)
|
|
268
|
+
end
|
|
269
|
+
|
|
270
|
+
# Update properties of this object
|
|
271
|
+
def update!(**args)
|
|
272
|
+
@bytes_to_sign = args[:bytes_to_sign] if args.key?(:bytes_to_sign)
|
|
273
|
+
end
|
|
274
|
+
end
|
|
275
|
+
|
|
276
|
+
# The service account sign blob response.
|
|
277
|
+
class SignBlobResponse
|
|
278
|
+
include Google::Apis::Core::Hashable
|
|
279
|
+
|
|
280
|
+
# The id of the key used to sign the blob.
|
|
281
|
+
# Corresponds to the JSON property `keyId`
|
|
282
|
+
# @return [String]
|
|
283
|
+
attr_accessor :key_id
|
|
284
|
+
|
|
285
|
+
# The signed blob.
|
|
286
|
+
# Corresponds to the JSON property `signature`
|
|
287
|
+
# @return [String]
|
|
288
|
+
attr_accessor :signature
|
|
289
|
+
|
|
290
|
+
def initialize(**args)
|
|
291
|
+
update!(**args)
|
|
292
|
+
end
|
|
293
|
+
|
|
294
|
+
# Update properties of this object
|
|
295
|
+
def update!(**args)
|
|
296
|
+
@key_id = args[:key_id] if args.key?(:key_id)
|
|
297
|
+
@signature = args[:signature] if args.key?(:signature)
|
|
298
|
+
end
|
|
299
|
+
end
|
|
300
|
+
|
|
301
|
+
# Defines an Identity and Access Management (IAM) policy. It is used to specify
|
|
302
|
+
# access control policies for Cloud Platform resources. A `Policy` consists of a
|
|
303
|
+
# list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
|
|
304
|
+
# the members can be user accounts, Google groups, Google domains, and service
|
|
305
|
+
# accounts. A `role` is a named list of permissions defined by IAM. **Example** `
|
|
306
|
+
# "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
|
|
307
|
+
# group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
|
|
308
|
+
# appspot.gserviceaccount.com"] `, ` "role": "roles/viewer", "members": ["user:
|
|
309
|
+
# sean@example.com"] ` ] ` For a description of IAM and its features, see the [
|
|
310
|
+
# IAM developer's guide](https://cloud.google.com/iam).
|
|
311
|
+
class Policy
|
|
312
|
+
include Google::Apis::Core::Hashable
|
|
313
|
+
|
|
314
|
+
# Version of the `Policy`. The default version is 0.
|
|
315
|
+
# Corresponds to the JSON property `version`
|
|
316
|
+
# @return [Fixnum]
|
|
317
|
+
attr_accessor :version
|
|
318
|
+
|
|
319
|
+
# Associates a list of `members` to a `role`. Multiple `bindings` must not be
|
|
320
|
+
# specified for the same `role`. `bindings` with no members will result in an
|
|
321
|
+
# error.
|
|
322
|
+
# Corresponds to the JSON property `bindings`
|
|
323
|
+
# @return [Array<Google::Apis::IamV1::Binding>]
|
|
324
|
+
attr_accessor :bindings
|
|
325
|
+
|
|
326
|
+
#
|
|
327
|
+
# Corresponds to the JSON property `rules`
|
|
328
|
+
# @return [Array<Google::Apis::IamV1::Rule>]
|
|
329
|
+
attr_accessor :rules
|
|
330
|
+
|
|
331
|
+
# `etag` is used for optimistic concurrency control as a way to help prevent
|
|
332
|
+
# simultaneous updates of a policy from overwriting each other. It is strongly
|
|
333
|
+
# suggested that systems make use of the `etag` in the read-modify-write cycle
|
|
334
|
+
# to perform policy updates in order to avoid race conditions: An `etag` is
|
|
335
|
+
# returned in the response to `getIamPolicy`, and systems are expected to put
|
|
336
|
+
# that etag in the request to `setIamPolicy` to ensure that their change will be
|
|
337
|
+
# applied to the same version of the policy. If no `etag` is provided in the
|
|
338
|
+
# call to `setIamPolicy`, then the existing policy is overwritten blindly.
|
|
339
|
+
# Corresponds to the JSON property `etag`
|
|
340
|
+
# @return [String]
|
|
341
|
+
attr_accessor :etag
|
|
342
|
+
|
|
343
|
+
def initialize(**args)
|
|
344
|
+
update!(**args)
|
|
345
|
+
end
|
|
346
|
+
|
|
347
|
+
# Update properties of this object
|
|
348
|
+
def update!(**args)
|
|
349
|
+
@version = args[:version] if args.key?(:version)
|
|
350
|
+
@bindings = args[:bindings] if args.key?(:bindings)
|
|
351
|
+
@rules = args[:rules] if args.key?(:rules)
|
|
352
|
+
@etag = args[:etag] if args.key?(:etag)
|
|
353
|
+
end
|
|
354
|
+
end
|
|
355
|
+
|
|
356
|
+
# Associates `members` with a `role`.
|
|
357
|
+
class Binding
|
|
358
|
+
include Google::Apis::Core::Hashable
|
|
359
|
+
|
|
360
|
+
# Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
|
|
361
|
+
# , or `roles/owner`. Required
|
|
362
|
+
# Corresponds to the JSON property `role`
|
|
363
|
+
# @return [String]
|
|
364
|
+
attr_accessor :role
|
|
365
|
+
|
|
366
|
+
# Specifies the identities requesting access for a Cloud Platform resource. `
|
|
367
|
+
# members` can have the following values: * `allUsers`: A special identifier
|
|
368
|
+
# that represents anyone who is on the internet; with or without a Google
|
|
369
|
+
# account. * `allAuthenticatedUsers`: A special identifier that represents
|
|
370
|
+
# anyone who is authenticated with a Google account or a service account. * `
|
|
371
|
+
# user:`emailid``: An email address that represents a specific Google account.
|
|
372
|
+
# For example, `alice@gmail.com` or `joe@example.com`. * `serviceAccount:`
|
|
373
|
+
# emailid``: An email address that represents a service account. For example, `
|
|
374
|
+
# my-other-app@appspot.gserviceaccount.com`. * `group:`emailid``: An email
|
|
375
|
+
# address that represents a Google group. For example, `admins@example.com`. * `
|
|
376
|
+
# domain:`domain``: A Google Apps domain name that represents all the users of
|
|
377
|
+
# that domain. For example, `google.com` or `example.com`.
|
|
378
|
+
# Corresponds to the JSON property `members`
|
|
379
|
+
# @return [Array<String>]
|
|
380
|
+
attr_accessor :members
|
|
381
|
+
|
|
382
|
+
def initialize(**args)
|
|
383
|
+
update!(**args)
|
|
384
|
+
end
|
|
385
|
+
|
|
386
|
+
# Update properties of this object
|
|
387
|
+
def update!(**args)
|
|
388
|
+
@role = args[:role] if args.key?(:role)
|
|
389
|
+
@members = args[:members] if args.key?(:members)
|
|
390
|
+
end
|
|
391
|
+
end
|
|
392
|
+
|
|
393
|
+
# A rule to be applied in a Policy.
|
|
394
|
+
class Rule
|
|
395
|
+
include Google::Apis::Core::Hashable
|
|
396
|
+
|
|
397
|
+
# Human-readable description of the rule.
|
|
398
|
+
# Corresponds to the JSON property `description`
|
|
399
|
+
# @return [String]
|
|
400
|
+
attr_accessor :description
|
|
401
|
+
|
|
402
|
+
# A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value
|
|
403
|
+
# of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.
|
|
404
|
+
# *') matches all verbs.
|
|
405
|
+
# Corresponds to the JSON property `permissions`
|
|
406
|
+
# @return [Array<String>]
|
|
407
|
+
attr_accessor :permissions
|
|
408
|
+
|
|
409
|
+
# Required
|
|
410
|
+
# Corresponds to the JSON property `action`
|
|
411
|
+
# @return [String]
|
|
412
|
+
attr_accessor :action
|
|
413
|
+
|
|
414
|
+
# The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.
|
|
415
|
+
# Corresponds to the JSON property `in`
|
|
416
|
+
# @return [Array<String>]
|
|
417
|
+
attr_accessor :in
|
|
418
|
+
|
|
419
|
+
# The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of
|
|
420
|
+
# entries. The format for in and not_in entries is the same as for members in a
|
|
421
|
+
# Binding (see google/iam/v1/policy.proto).
|
|
422
|
+
# Corresponds to the JSON property `notIn`
|
|
423
|
+
# @return [Array<String>]
|
|
424
|
+
attr_accessor :not_in
|
|
425
|
+
|
|
426
|
+
# Additional restrictions that must be met
|
|
427
|
+
# Corresponds to the JSON property `conditions`
|
|
428
|
+
# @return [Array<Google::Apis::IamV1::Condition>]
|
|
429
|
+
attr_accessor :conditions
|
|
430
|
+
|
|
431
|
+
# The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
|
|
432
|
+
# that match the LOG action.
|
|
433
|
+
# Corresponds to the JSON property `logConfig`
|
|
434
|
+
# @return [Array<Google::Apis::IamV1::LogConfig>]
|
|
435
|
+
attr_accessor :log_config
|
|
436
|
+
|
|
437
|
+
def initialize(**args)
|
|
438
|
+
update!(**args)
|
|
439
|
+
end
|
|
440
|
+
|
|
441
|
+
# Update properties of this object
|
|
442
|
+
def update!(**args)
|
|
443
|
+
@description = args[:description] if args.key?(:description)
|
|
444
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
|
445
|
+
@action = args[:action] if args.key?(:action)
|
|
446
|
+
@in = args[:in] if args.key?(:in)
|
|
447
|
+
@not_in = args[:not_in] if args.key?(:not_in)
|
|
448
|
+
@conditions = args[:conditions] if args.key?(:conditions)
|
|
449
|
+
@log_config = args[:log_config] if args.key?(:log_config)
|
|
450
|
+
end
|
|
451
|
+
end
|
|
452
|
+
|
|
453
|
+
# A condition to be met.
|
|
454
|
+
class Condition
|
|
455
|
+
include Google::Apis::Core::Hashable
|
|
456
|
+
|
|
457
|
+
# Trusted attributes supplied by the IAM system.
|
|
458
|
+
# Corresponds to the JSON property `iam`
|
|
459
|
+
# @return [String]
|
|
460
|
+
attr_accessor :iam
|
|
461
|
+
|
|
462
|
+
# Trusted attributes supplied by any service that owns resources and uses the
|
|
463
|
+
# IAM system for access control.
|
|
464
|
+
# Corresponds to the JSON property `sys`
|
|
465
|
+
# @return [String]
|
|
466
|
+
attr_accessor :sys
|
|
467
|
+
|
|
468
|
+
# Trusted attributes discharged by the service.
|
|
469
|
+
# Corresponds to the JSON property `svc`
|
|
470
|
+
# @return [String]
|
|
471
|
+
attr_accessor :svc
|
|
472
|
+
|
|
473
|
+
# An operator to apply the subject with.
|
|
474
|
+
# Corresponds to the JSON property `op`
|
|
475
|
+
# @return [String]
|
|
476
|
+
attr_accessor :op
|
|
477
|
+
|
|
478
|
+
# The object of the condition. Exactly one of these must be set.
|
|
479
|
+
# Corresponds to the JSON property `value`
|
|
480
|
+
# @return [String]
|
|
481
|
+
attr_accessor :value
|
|
482
|
+
|
|
483
|
+
# The objects of the condition. This is mutually exclusive with 'value'.
|
|
484
|
+
# Corresponds to the JSON property `values`
|
|
485
|
+
# @return [Array<String>]
|
|
486
|
+
attr_accessor :values
|
|
487
|
+
|
|
488
|
+
def initialize(**args)
|
|
489
|
+
update!(**args)
|
|
490
|
+
end
|
|
491
|
+
|
|
492
|
+
# Update properties of this object
|
|
493
|
+
def update!(**args)
|
|
494
|
+
@iam = args[:iam] if args.key?(:iam)
|
|
495
|
+
@sys = args[:sys] if args.key?(:sys)
|
|
496
|
+
@svc = args[:svc] if args.key?(:svc)
|
|
497
|
+
@op = args[:op] if args.key?(:op)
|
|
498
|
+
@value = args[:value] if args.key?(:value)
|
|
499
|
+
@values = args[:values] if args.key?(:values)
|
|
500
|
+
end
|
|
501
|
+
end
|
|
502
|
+
|
|
503
|
+
# Specifies what kind of log the caller must write Increment a streamz counter
|
|
504
|
+
# with the specified metric and field names. Metric names should start with a '/'
|
|
505
|
+
# , generally be lowercase-only, and end in "_count". Field names should not
|
|
506
|
+
# contain an initial slash. The actual exported metric names will have "/iam/
|
|
507
|
+
# policy" prepended. Field names correspond to IAM request parameters and field
|
|
508
|
+
# values are their respective values. At present only "iam_principal",
|
|
509
|
+
# corresponding to IAMContext.principal, is supported. Examples: counter `
|
|
510
|
+
# metric: "/debug_access_count" field: "iam_principal" ` ==> increment counter /
|
|
511
|
+
# iam/policy/backend_debug_access_count `iam_principal=[value of IAMContext.
|
|
512
|
+
# principal]` At this time we do not support: * multiple field names (though
|
|
513
|
+
# this may be supported in the future) * decrementing the counter * incrementing
|
|
514
|
+
# it by anything other than 1
|
|
515
|
+
class LogConfig
|
|
516
|
+
include Google::Apis::Core::Hashable
|
|
517
|
+
|
|
518
|
+
# Options for counters
|
|
519
|
+
# Corresponds to the JSON property `counter`
|
|
520
|
+
# @return [Google::Apis::IamV1::CounterOptions]
|
|
521
|
+
attr_accessor :counter
|
|
522
|
+
|
|
523
|
+
# Write a Data Access (Gin) log
|
|
524
|
+
# Corresponds to the JSON property `dataAccess`
|
|
525
|
+
# @return [Google::Apis::IamV1::DataAccessOptions]
|
|
526
|
+
attr_accessor :data_access
|
|
527
|
+
|
|
528
|
+
# Write a Cloud Audit log
|
|
529
|
+
# Corresponds to the JSON property `cloudAudit`
|
|
530
|
+
# @return [Google::Apis::IamV1::CloudAuditOptions]
|
|
531
|
+
attr_accessor :cloud_audit
|
|
532
|
+
|
|
533
|
+
def initialize(**args)
|
|
534
|
+
update!(**args)
|
|
535
|
+
end
|
|
536
|
+
|
|
537
|
+
# Update properties of this object
|
|
538
|
+
def update!(**args)
|
|
539
|
+
@counter = args[:counter] if args.key?(:counter)
|
|
540
|
+
@data_access = args[:data_access] if args.key?(:data_access)
|
|
541
|
+
@cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
|
|
542
|
+
end
|
|
543
|
+
end
|
|
544
|
+
|
|
545
|
+
# Options for counters
|
|
546
|
+
class CounterOptions
|
|
547
|
+
include Google::Apis::Core::Hashable
|
|
548
|
+
|
|
549
|
+
# The metric to update.
|
|
550
|
+
# Corresponds to the JSON property `metric`
|
|
551
|
+
# @return [String]
|
|
552
|
+
attr_accessor :metric
|
|
553
|
+
|
|
554
|
+
# The field value to attribute.
|
|
555
|
+
# Corresponds to the JSON property `field`
|
|
556
|
+
# @return [String]
|
|
557
|
+
attr_accessor :field
|
|
558
|
+
|
|
559
|
+
def initialize(**args)
|
|
560
|
+
update!(**args)
|
|
561
|
+
end
|
|
562
|
+
|
|
563
|
+
# Update properties of this object
|
|
564
|
+
def update!(**args)
|
|
565
|
+
@metric = args[:metric] if args.key?(:metric)
|
|
566
|
+
@field = args[:field] if args.key?(:field)
|
|
567
|
+
end
|
|
568
|
+
end
|
|
569
|
+
|
|
570
|
+
# Write a Data Access (Gin) log
|
|
571
|
+
class DataAccessOptions
|
|
572
|
+
include Google::Apis::Core::Hashable
|
|
573
|
+
|
|
574
|
+
def initialize(**args)
|
|
575
|
+
update!(**args)
|
|
576
|
+
end
|
|
577
|
+
|
|
578
|
+
# Update properties of this object
|
|
579
|
+
def update!(**args)
|
|
580
|
+
end
|
|
581
|
+
end
|
|
582
|
+
|
|
583
|
+
# Write a Cloud Audit log
|
|
584
|
+
class CloudAuditOptions
|
|
585
|
+
include Google::Apis::Core::Hashable
|
|
586
|
+
|
|
587
|
+
def initialize(**args)
|
|
588
|
+
update!(**args)
|
|
589
|
+
end
|
|
590
|
+
|
|
591
|
+
# Update properties of this object
|
|
592
|
+
def update!(**args)
|
|
593
|
+
end
|
|
594
|
+
end
|
|
595
|
+
|
|
596
|
+
# Request message for `SetIamPolicy` method.
|
|
597
|
+
class SetIamPolicyRequest
|
|
598
|
+
include Google::Apis::Core::Hashable
|
|
599
|
+
|
|
600
|
+
# Defines an Identity and Access Management (IAM) policy. It is used to specify
|
|
601
|
+
# access control policies for Cloud Platform resources. A `Policy` consists of a
|
|
602
|
+
# list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
|
|
603
|
+
# the members can be user accounts, Google groups, Google domains, and service
|
|
604
|
+
# accounts. A `role` is a named list of permissions defined by IAM. **Example** `
|
|
605
|
+
# "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
|
|
606
|
+
# group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
|
|
607
|
+
# appspot.gserviceaccount.com"] `, ` "role": "roles/viewer", "members": ["user:
|
|
608
|
+
# sean@example.com"] ` ] ` For a description of IAM and its features, see the [
|
|
609
|
+
# IAM developer's guide](https://cloud.google.com/iam).
|
|
610
|
+
# Corresponds to the JSON property `policy`
|
|
611
|
+
# @return [Google::Apis::IamV1::Policy]
|
|
612
|
+
attr_accessor :policy
|
|
613
|
+
|
|
614
|
+
def initialize(**args)
|
|
615
|
+
update!(**args)
|
|
616
|
+
end
|
|
617
|
+
|
|
618
|
+
# Update properties of this object
|
|
619
|
+
def update!(**args)
|
|
620
|
+
@policy = args[:policy] if args.key?(:policy)
|
|
621
|
+
end
|
|
622
|
+
end
|
|
623
|
+
|
|
624
|
+
# Request message for `TestIamPermissions` method.
|
|
625
|
+
class TestIamPermissionsRequest
|
|
626
|
+
include Google::Apis::Core::Hashable
|
|
627
|
+
|
|
628
|
+
# The set of permissions to check for the `resource`. Permissions with wildcards
|
|
629
|
+
# (such as '*' or 'storage.*') are not allowed. For more information see IAM
|
|
630
|
+
# Overview.
|
|
631
|
+
# Corresponds to the JSON property `permissions`
|
|
632
|
+
# @return [Array<String>]
|
|
633
|
+
attr_accessor :permissions
|
|
634
|
+
|
|
635
|
+
def initialize(**args)
|
|
636
|
+
update!(**args)
|
|
637
|
+
end
|
|
638
|
+
|
|
639
|
+
# Update properties of this object
|
|
640
|
+
def update!(**args)
|
|
641
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
|
642
|
+
end
|
|
643
|
+
end
|
|
644
|
+
|
|
645
|
+
# Response message for `TestIamPermissions` method.
|
|
646
|
+
class TestIamPermissionsResponse
|
|
647
|
+
include Google::Apis::Core::Hashable
|
|
648
|
+
|
|
649
|
+
# A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
|
|
650
|
+
# Corresponds to the JSON property `permissions`
|
|
651
|
+
# @return [Array<String>]
|
|
652
|
+
attr_accessor :permissions
|
|
653
|
+
|
|
654
|
+
def initialize(**args)
|
|
655
|
+
update!(**args)
|
|
656
|
+
end
|
|
657
|
+
|
|
658
|
+
# Update properties of this object
|
|
659
|
+
def update!(**args)
|
|
660
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
|
661
|
+
end
|
|
662
|
+
end
|
|
663
|
+
end
|
|
664
|
+
end
|
|
665
|
+
end
|