google-api-client 0.9.20 → 0.9.21

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.
Files changed (159) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +8 -4
  3. data/api_names.yaml +33179 -1058
  4. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  5. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  6. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +24 -6
  7. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +2 -0
  8. data/generated/google/apis/admin_directory_v1.rb +1 -1
  9. data/generated/google/apis/admin_directory_v1/classes.rb +14 -0
  10. data/generated/google/apis/admin_directory_v1/representations.rb +2 -0
  11. data/generated/google/apis/adsense_v1_4.rb +1 -1
  12. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  13. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  14. data/generated/google/apis/analyticsreporting_v4/classes.rb +7 -0
  15. data/generated/google/apis/analyticsreporting_v4/representations.rb +1 -0
  16. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  17. data/generated/google/apis/androidenterprise_v1/classes.rb +96 -156
  18. data/generated/google/apis/androidenterprise_v1/representations.rb +18 -47
  19. data/generated/google/apis/androidenterprise_v1/service.rb +15 -459
  20. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  21. data/generated/google/apis/androidpublisher_v2/classes.rb +176 -0
  22. data/generated/google/apis/androidpublisher_v2/representations.rb +62 -0
  23. data/generated/google/apis/androidpublisher_v2/service.rb +60 -2
  24. data/generated/google/apis/appengine_v1beta5.rb +1 -1
  25. data/generated/google/apis/appengine_v1beta5/classes.rb +300 -198
  26. data/generated/google/apis/appengine_v1beta5/representations.rb +36 -0
  27. data/generated/google/apis/appengine_v1beta5/service.rb +54 -49
  28. data/generated/google/apis/appsactivity_v1.rb +1 -1
  29. data/generated/google/apis/appstate_v1.rb +1 -1
  30. data/generated/google/apis/bigquery_v2.rb +1 -1
  31. data/generated/google/apis/bigquery_v2/classes.rb +50 -6
  32. data/generated/google/apis/bigquery_v2/representations.rb +5 -0
  33. data/generated/google/apis/books_v1.rb +1 -1
  34. data/generated/google/apis/books_v1/classes.rb +7 -2
  35. data/generated/google/apis/books_v1/representations.rb +1 -0
  36. data/generated/google/apis/calendar_v3.rb +1 -1
  37. data/generated/google/apis/classroom_v1.rb +1 -1
  38. data/generated/google/apis/classroom_v1/classes.rb +74 -74
  39. data/generated/google/apis/classroom_v1/representations.rb +29 -29
  40. data/generated/google/apis/classroom_v1/service.rb +132 -28
  41. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  42. data/generated/google/apis/cloudbuild_v1/classes.rb +47 -27
  43. data/generated/google/apis/cloudbuild_v1/representations.rb +20 -7
  44. data/generated/google/apis/cloudbuild_v1/service.rb +42 -0
  45. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  46. data/generated/google/apis/clouddebugger_v2/classes.rb +648 -578
  47. data/generated/google/apis/clouddebugger_v2/representations.rb +140 -140
  48. data/generated/google/apis/clouddebugger_v2/service.rb +161 -155
  49. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  50. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +563 -423
  51. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +116 -76
  52. data/generated/google/apis/cloudresourcemanager_v1/service.rb +318 -249
  53. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  54. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +396 -331
  55. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +79 -79
  56. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +317 -281
  57. data/generated/google/apis/compute_beta.rb +1 -1
  58. data/generated/google/apis/compute_beta/classes.rb +352 -80
  59. data/generated/google/apis/compute_beta/representations.rb +132 -19
  60. data/generated/google/apis/compute_beta/service.rb +214 -0
  61. data/generated/google/apis/compute_v1.rb +1 -1
  62. data/generated/google/apis/compute_v1/classes.rb +673 -73
  63. data/generated/google/apis/compute_v1/representations.rb +274 -9
  64. data/generated/google/apis/compute_v1/service.rb +1574 -2
  65. data/generated/google/apis/content_v2.rb +1 -1
  66. data/generated/google/apis/content_v2/classes.rb +7 -8
  67. data/generated/google/apis/content_v2/service.rb +125 -54
  68. data/generated/google/apis/dataflow_v1b3.rb +2 -3
  69. data/generated/google/apis/dataflow_v1b3/classes.rb +286 -114
  70. data/generated/google/apis/dataflow_v1b3/representations.rb +73 -0
  71. data/generated/google/apis/dataflow_v1b3/service.rb +37 -38
  72. data/generated/google/apis/datastore_v1.rb +1 -1
  73. data/generated/google/apis/datastore_v1/classes.rb +5 -0
  74. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  75. data/generated/google/apis/deploymentmanager_v2/classes.rb +37 -5
  76. data/generated/google/apis/deploymentmanager_v2/representations.rb +16 -0
  77. data/generated/google/apis/deploymentmanager_v2/service.rb +4 -1
  78. data/generated/google/apis/dns_v1.rb +1 -1
  79. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  80. data/generated/google/apis/drive_v2.rb +1 -1
  81. data/generated/google/apis/drive_v2/classes.rb +55 -21
  82. data/generated/google/apis/drive_v2/representations.rb +2 -0
  83. data/generated/google/apis/drive_v3.rb +1 -1
  84. data/generated/google/apis/drive_v3/classes.rb +41 -12
  85. data/generated/google/apis/drive_v3/representations.rb +2 -0
  86. data/generated/google/apis/fitness_v1.rb +31 -1
  87. data/generated/google/apis/fitness_v1/classes.rb +1 -1
  88. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  89. data/generated/google/apis/games_management_v1management.rb +1 -1
  90. data/generated/google/apis/games_v1.rb +1 -1
  91. data/generated/google/apis/gmail_v1.rb +1 -1
  92. data/generated/google/apis/gmail_v1/classes.rb +32 -1
  93. data/generated/google/apis/gmail_v1/representations.rb +15 -0
  94. data/generated/google/apis/gmail_v1/service.rb +41 -2
  95. data/generated/google/apis/identitytoolkit_v3.rb +4 -1
  96. data/generated/google/apis/identitytoolkit_v3/classes.rb +7 -0
  97. data/generated/google/apis/identitytoolkit_v3/representations.rb +1 -0
  98. data/generated/google/apis/kgsearch_v1.rb +2 -3
  99. data/generated/google/apis/kgsearch_v1/classes.rb +10 -10
  100. data/generated/google/apis/kgsearch_v1/representations.rb +2 -2
  101. data/generated/google/apis/kgsearch_v1/service.rb +28 -26
  102. data/generated/google/apis/language_v1beta1.rb +1 -1
  103. data/generated/google/apis/language_v1beta1/classes.rb +166 -8
  104. data/generated/google/apis/language_v1beta1/representations.rb +50 -0
  105. data/generated/google/apis/language_v1beta1/service.rb +32 -0
  106. data/generated/google/apis/logging_v2beta1.rb +6 -6
  107. data/generated/google/apis/logging_v2beta1/classes.rb +868 -789
  108. data/generated/google/apis/logging_v2beta1/representations.rb +179 -147
  109. data/generated/google/apis/logging_v2beta1/service.rb +378 -211
  110. data/generated/google/apis/monitoring_v3.rb +1 -1
  111. data/generated/google/apis/monitoring_v3/classes.rb +110 -112
  112. data/generated/google/apis/monitoring_v3/service.rb +68 -73
  113. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  114. data/generated/google/apis/plus_domains_v1.rb +1 -1
  115. data/generated/google/apis/plus_v1.rb +1 -1
  116. data/generated/google/apis/pubsub_v1.rb +1 -1
  117. data/generated/google/apis/pubsub_v1/classes.rb +380 -327
  118. data/generated/google/apis/pubsub_v1/representations.rb +79 -79
  119. data/generated/google/apis/pubsub_v1/service.rb +424 -396
  120. data/generated/google/apis/sheets_v4.rb +1 -1
  121. data/generated/google/apis/sheets_v4/classes.rb +175 -53
  122. data/generated/google/apis/sheets_v4/representations.rb +48 -13
  123. data/generated/google/apis/site_verification_v1.rb +1 -1
  124. data/generated/google/apis/slides_v1.rb +1 -1
  125. data/generated/google/apis/slides_v1/classes.rb +149 -31
  126. data/generated/google/apis/slides_v1/representations.rb +52 -9
  127. data/generated/google/apis/slides_v1/service.rb +5 -5
  128. data/generated/google/apis/speech_v1beta1.rb +1 -1
  129. data/generated/google/apis/speech_v1beta1/service.rb +3 -1
  130. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  131. data/generated/google/apis/sqladmin_v1beta4/classes.rb +54 -2
  132. data/generated/google/apis/sqladmin_v1beta4/representations.rb +29 -0
  133. data/generated/google/apis/sqladmin_v1beta4/service.rb +41 -0
  134. data/generated/google/apis/storage_v1.rb +1 -1
  135. data/generated/google/apis/storage_v1/classes.rb +7 -0
  136. data/generated/google/apis/storage_v1/representations.rb +2 -0
  137. data/generated/google/apis/tagmanager_v1.rb +5 -5
  138. data/generated/google/apis/vision_v1.rb +1 -1
  139. data/generated/google/apis/vision_v1/classes.rb +63 -59
  140. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  141. data/generated/google/apis/youtube_analytics_v1/classes.rb +0 -209
  142. data/generated/google/apis/youtube_analytics_v1/representations.rb +0 -99
  143. data/generated/google/apis/youtube_analytics_v1/service.rb +0 -76
  144. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  145. data/generated/google/apis/youtube_partner_v1/classes.rb +71 -0
  146. data/generated/google/apis/youtube_partner_v1/representations.rb +33 -0
  147. data/generated/google/apis/youtube_partner_v1/service.rb +52 -0
  148. data/generated/google/apis/youtube_v3.rb +1 -1
  149. data/generated/google/apis/youtube_v3/classes.rb +15 -2
  150. data/generated/google/apis/youtube_v3/representations.rb +3 -0
  151. data/generated/google/apis/youtube_v3/service.rb +4 -4
  152. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  153. data/generated/google/apis/youtubereporting_v1/classes.rb +146 -137
  154. data/generated/google/apis/youtubereporting_v1/representations.rb +33 -33
  155. data/generated/google/apis/youtubereporting_v1/service.rb +149 -145
  156. data/lib/google/apis/version.rb +1 -1
  157. data/samples/cli/lib/samples/calendar.rb +1 -1
  158. data/samples/cli/lib/samples/gmail.rb +74 -0
  159. metadata +29 -29
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/resource-manager
27
27
  module CloudresourcemanagerV1
28
28
  VERSION = 'V1'
29
- REVISION = '20160927'
29
+ REVISION = '20170116'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,79 +22,14 @@ module Google
22
22
  module Apis
23
23
  module CloudresourcemanagerV1
24
24
 
25
- # This resource represents a long-running operation that is the result of a
26
- # network API call.
27
- class Operation
25
+ # A classification of the Folder Operation error.
26
+ class FolderOperationError
28
27
  include Google::Apis::Core::Hashable
29
28
 
30
- # The server-assigned name, which is only unique within the same service that
31
- # originally returns it. If you use the default HTTP mapping, the `name` should
32
- # have the format of `operations/some/unique/name`.
33
- # Corresponds to the JSON property `name`
29
+ # The type of operation error experienced.
30
+ # Corresponds to the JSON property `errorMessageId`
34
31
  # @return [String]
35
- attr_accessor :name
36
-
37
- # Service-specific metadata associated with the operation. It typically contains
38
- # progress information and common metadata such as create time. Some services
39
- # might not provide such metadata. Any method that returns a long-running
40
- # operation should document the metadata type, if any.
41
- # Corresponds to the JSON property `metadata`
42
- # @return [Hash<String,Object>]
43
- attr_accessor :metadata
44
-
45
- # If the value is `false`, it means the operation is still in progress. If true,
46
- # the operation is completed, and either `error` or `response` is available.
47
- # Corresponds to the JSON property `done`
48
- # @return [Boolean]
49
- attr_accessor :done
50
- alias_method :done?, :done
51
-
52
- # The `Status` type defines a logical error model that is suitable for different
53
- # programming environments, including REST APIs and RPC APIs. It is used by [
54
- # gRPC](https://github.com/grpc). The error model is designed to be: - Simple to
55
- # use and understand for most users - Flexible enough to meet unexpected needs #
56
- # Overview The `Status` message contains three pieces of data: error code, error
57
- # message, and error details. The error code should be an enum value of google.
58
- # rpc.Code, but it may accept additional error codes if needed. The error
59
- # message should be a developer-facing English message that helps developers *
60
- # understand* and *resolve* the error. If a localized user-facing error message
61
- # is needed, put the localized message in the error details or localize it in
62
- # the client. The optional error details may contain arbitrary information about
63
- # the error. There is a predefined set of error detail types in the package `
64
- # google.rpc` which can be used for common error conditions. # Language mapping
65
- # The `Status` message is the logical representation of the error model, but it
66
- # is not necessarily the actual wire format. When the `Status` message is
67
- # exposed in different client libraries and different wire protocols, it can be
68
- # mapped differently. For example, it will likely be mapped to some exceptions
69
- # in Java, but more likely mapped to some error codes in C. # Other uses The
70
- # error model and the `Status` message can be used in a variety of environments,
71
- # either with or without APIs, to provide a consistent developer experience
72
- # across different environments. Example uses of this error model include: -
73
- # Partial errors. If a service needs to return partial errors to the client, it
74
- # may embed the `Status` in the normal response to indicate the partial errors. -
75
- # Workflow errors. A typical workflow has multiple steps. Each step may have a `
76
- # Status` message for error reporting purpose. - Batch operations. If a client
77
- # uses batch request and batch response, the `Status` message should be used
78
- # directly inside batch response, one for each error sub-response. -
79
- # Asynchronous operations. If an API call embeds asynchronous operation results
80
- # in its response, the status of those operations should be represented directly
81
- # using the `Status` message. - Logging. If some API errors are stored in logs,
82
- # the message `Status` could be used directly after any stripping needed for
83
- # security/privacy reasons.
84
- # Corresponds to the JSON property `error`
85
- # @return [Google::Apis::CloudresourcemanagerV1::Status]
86
- attr_accessor :error
87
-
88
- # The normal response of the operation in case of success. If the original
89
- # method returns no data on success, such as `Delete`, the response is `google.
90
- # protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
91
- # the response should be the resource. For other methods, the response should
92
- # have the type `XxxResponse`, where `Xxx` is the original method name. For
93
- # example, if the original method name is `TakeSnapshot()`, the inferred
94
- # response type is `TakeSnapshotResponse`.
95
- # Corresponds to the JSON property `response`
96
- # @return [Hash<String,Object>]
97
- attr_accessor :response
32
+ attr_accessor :error_message_id
98
33
 
99
34
  def initialize(**args)
100
35
  update!(**args)
@@ -102,46 +37,49 @@ module Google
102
37
 
103
38
  # Update properties of this object
104
39
  def update!(**args)
105
- @name = args[:name] if args.key?(:name)
106
- @metadata = args[:metadata] if args.key?(:metadata)
107
- @done = args[:done] if args.key?(:done)
108
- @error = args[:error] if args.key?(:error)
109
- @response = args[:response] if args.key?(:response)
40
+ @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
110
41
  end
111
42
  end
112
43
 
113
44
  # The `Status` type defines a logical error model that is suitable for different
114
- # programming environments, including REST APIs and RPC APIs. It is used by [
115
- # gRPC](https://github.com/grpc). The error model is designed to be: - Simple to
116
- # use and understand for most users - Flexible enough to meet unexpected needs #
117
- # Overview The `Status` message contains three pieces of data: error code, error
118
- # message, and error details. The error code should be an enum value of google.
119
- # rpc.Code, but it may accept additional error codes if needed. The error
120
- # message should be a developer-facing English message that helps developers *
121
- # understand* and *resolve* the error. If a localized user-facing error message
122
- # is needed, put the localized message in the error details or localize it in
123
- # the client. The optional error details may contain arbitrary information about
124
- # the error. There is a predefined set of error detail types in the package `
125
- # google.rpc` which can be used for common error conditions. # Language mapping
45
+ # programming environments, including REST APIs and RPC APIs. It is used by
46
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
47
+ # - Simple to use and understand for most users
48
+ # - Flexible enough to meet unexpected needs
49
+ # # Overview
50
+ # The `Status` message contains three pieces of data: error code, error message,
51
+ # and error details. The error code should be an enum value of
52
+ # google.rpc.Code, but it may accept additional error codes if needed. The
53
+ # error message should be a developer-facing English message that helps
54
+ # developers *understand* and *resolve* the error. If a localized user-facing
55
+ # error message is needed, put the localized message in the error details or
56
+ # localize it in the client. The optional error details may contain arbitrary
57
+ # information about the error. There is a predefined set of error detail types
58
+ # in the package `google.rpc` which can be used for common error conditions.
59
+ # # Language mapping
126
60
  # The `Status` message is the logical representation of the error model, but it
127
61
  # is not necessarily the actual wire format. When the `Status` message is
128
62
  # exposed in different client libraries and different wire protocols, it can be
129
63
  # mapped differently. For example, it will likely be mapped to some exceptions
130
- # in Java, but more likely mapped to some error codes in C. # Other uses The
131
- # error model and the `Status` message can be used in a variety of environments,
132
- # either with or without APIs, to provide a consistent developer experience
133
- # across different environments. Example uses of this error model include: -
134
- # Partial errors. If a service needs to return partial errors to the client, it
135
- # may embed the `Status` in the normal response to indicate the partial errors. -
136
- # Workflow errors. A typical workflow has multiple steps. Each step may have a `
137
- # Status` message for error reporting purpose. - Batch operations. If a client
138
- # uses batch request and batch response, the `Status` message should be used
139
- # directly inside batch response, one for each error sub-response. -
140
- # Asynchronous operations. If an API call embeds asynchronous operation results
141
- # in its response, the status of those operations should be represented directly
142
- # using the `Status` message. - Logging. If some API errors are stored in logs,
143
- # the message `Status` could be used directly after any stripping needed for
144
- # security/privacy reasons.
64
+ # in Java, but more likely mapped to some error codes in C.
65
+ # # Other uses
66
+ # The error model and the `Status` message can be used in a variety of
67
+ # environments, either with or without APIs, to provide a
68
+ # consistent developer experience across different environments.
69
+ # Example uses of this error model include:
70
+ # - Partial errors. If a service needs to return partial errors to the client,
71
+ # it may embed the `Status` in the normal response to indicate the partial
72
+ # errors.
73
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
74
+ # have a `Status` message for error reporting purpose.
75
+ # - Batch operations. If a client uses batch request and batch response, the
76
+ # `Status` message should be used directly inside batch response, one for
77
+ # each error sub-response.
78
+ # - Asynchronous operations. If an API call embeds asynchronous operation
79
+ # results in its response, the status of those operations should be
80
+ # represented directly using the `Status` message.
81
+ # - Logging. If some API errors are stored in logs, the message `Status` could
82
+ # be used directly after any stripping needed for security/privacy reasons.
145
83
  class Status
146
84
  include Google::Apis::Core::Hashable
147
85
 
@@ -150,19 +88,19 @@ module Google
150
88
  # @return [Fixnum]
151
89
  attr_accessor :code
152
90
 
153
- # A developer-facing error message, which should be in English. Any user-facing
154
- # error message should be localized and sent in the google.rpc.Status.details
155
- # field, or localized by the client.
156
- # Corresponds to the JSON property `message`
157
- # @return [String]
158
- attr_accessor :message
159
-
160
- # A list of messages that carry the error details. There will be a common set of
161
- # message types for APIs to use.
91
+ # A list of messages that carry the error details. There will be a
92
+ # common set of message types for APIs to use.
162
93
  # Corresponds to the JSON property `details`
163
94
  # @return [Array<Hash<String,Object>>]
164
95
  attr_accessor :details
165
96
 
97
+ # A developer-facing error message, which should be in English. Any
98
+ # user-facing error message should be localized and sent in the
99
+ # google.rpc.Status.details field, or localized by the client.
100
+ # Corresponds to the JSON property `message`
101
+ # @return [String]
102
+ attr_accessor :message
103
+
166
104
  def initialize(**args)
167
105
  update!(**args)
168
106
  end
@@ -170,37 +108,37 @@ module Google
170
108
  # Update properties of this object
171
109
  def update!(**args)
172
110
  @code = args[:code] if args.key?(:code)
173
- @message = args[:message] if args.key?(:message)
174
111
  @details = args[:details] if args.key?(:details)
112
+ @message = args[:message] if args.key?(:message)
175
113
  end
176
114
  end
177
115
 
178
- # The request sent to the `SearchOrganizations` method.
179
- class SearchOrganizationsRequest
116
+ # A page of the response received from the
117
+ # ListProjects
118
+ # method.
119
+ # A paginated response where more pages are available has
120
+ # `next_page_token` set. This token can be used in a subsequent request to
121
+ # retrieve the next request page.
122
+ class ListProjectsResponse
180
123
  include Google::Apis::Core::Hashable
181
124
 
182
- # The maximum number of Organizations to return in the response. This field is
183
- # optional.
184
- # Corresponds to the JSON property `pageSize`
185
- # @return [Fixnum]
186
- attr_accessor :page_size
187
-
188
- # A pagination token returned from a previous call to `SearchOrganizations` that
189
- # indicates from where listing should continue. This field is optional.
190
- # Corresponds to the JSON property `pageToken`
191
- # @return [String]
192
- attr_accessor :page_token
125
+ # The list of Projects that matched the list filter. This list can
126
+ # be paginated.
127
+ # Corresponds to the JSON property `projects`
128
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Project>]
129
+ attr_accessor :projects
193
130
 
194
- # An optional query string used to filter the Organizations to return in the
195
- # response. Filter rules are case-insensitive. Organizations may be filtered by `
196
- # owner.directoryCustomerId` or by `domain`, where the domain is a Google for
197
- # Work domain, for example: |Filter|Description| |------|-----------| |owner.
198
- # directorycustomerid:123456789|Organizations with `owner.directory_customer_id`
199
- # equal to `123456789`.| |domain:google.com|Organizations corresponding to the
200
- # domain `google.com`.| This field is optional.
201
- # Corresponds to the JSON property `filter`
131
+ # Pagination token.
132
+ # If the result set is too large to fit in a single response, this token
133
+ # is returned. It encodes the position of the current result cursor.
134
+ # Feeding this value into a new list request with the `page_token` parameter
135
+ # gives the next page of the results.
136
+ # When `next_page_token` is not filled in, there is no next page and
137
+ # the list returned is the last page in the result set.
138
+ # Pagination tokens have a limited lifetime.
139
+ # Corresponds to the JSON property `nextPageToken`
202
140
  # @return [String]
203
- attr_accessor :filter
141
+ attr_accessor :next_page_token
204
142
 
205
143
  def initialize(**args)
206
144
  update!(**args)
@@ -208,79 +146,50 @@ module Google
208
146
 
209
147
  # Update properties of this object
210
148
  def update!(**args)
211
- @page_size = args[:page_size] if args.key?(:page_size)
212
- @page_token = args[:page_token] if args.key?(:page_token)
213
- @filter = args[:filter] if args.key?(:filter)
149
+ @projects = args[:projects] if args.key?(:projects)
150
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
214
151
  end
215
152
  end
216
153
 
217
- # The response returned from the `SearchOrganizations` method.
218
- class SearchOrganizationsResponse
154
+ # The request sent to the UndeleteProject
155
+ # method.
156
+ class UndeleteProjectRequest
219
157
  include Google::Apis::Core::Hashable
220
158
 
221
- # The list of Organizations that matched the search query, possibly paginated.
222
- # Corresponds to the JSON property `organizations`
223
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Organization>]
224
- attr_accessor :organizations
225
-
226
- # A pagination token to be used to retrieve the next page of results. If the
227
- # result is too large to fit within the page size specified in the request, this
228
- # field will be set with a token that can be used to fetch the next page of
229
- # results. If this field is empty, it indicates that this response contains the
230
- # last page of results.
231
- # Corresponds to the JSON property `nextPageToken`
232
- # @return [String]
233
- attr_accessor :next_page_token
234
-
235
159
  def initialize(**args)
236
160
  update!(**args)
237
161
  end
238
162
 
239
163
  # Update properties of this object
240
164
  def update!(**args)
241
- @organizations = args[:organizations] if args.key?(:organizations)
242
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
243
165
  end
244
166
  end
245
167
 
246
- # The root node in the resource hierarchy to which a particular entity's (e.g.,
247
- # company) resources belong.
248
- class Organization
168
+ # Metadata describing a long running folder operation
169
+ class FolderOperation
249
170
  include Google::Apis::Core::Hashable
250
171
 
251
- # Output Only. The resource name of the organization. This is the organization's
252
- # relative path in the API. Its format is "organizations/[organization_id]". For
253
- # example, "organizations/1234".
254
- # Corresponds to the JSON property `name`
255
- # @return [String]
256
- attr_accessor :name
257
-
258
- # A friendly string to be used to refer to the Organization in the UI. Assigned
259
- # by the server, set to the firm name of the Google For Work customer that owns
260
- # this organization. @OutputOnly
172
+ # The display name of the folder.
261
173
  # Corresponds to the JSON property `displayName`
262
174
  # @return [String]
263
175
  attr_accessor :display_name
264
176
 
265
- # The entity that owns an Organization. The lifetime of the Organization and all
266
- # of its descendants are bound to the `OrganizationOwner`. If the `
267
- # OrganizationOwner` is deleted, the Organization and all its descendants will
268
- # be deleted.
269
- # Corresponds to the JSON property `owner`
270
- # @return [Google::Apis::CloudresourcemanagerV1::OrganizationOwner]
271
- attr_accessor :owner
177
+ # The resource name of the folder's parent.
178
+ # Only applicable when the operation_type is MOVE.
179
+ # Corresponds to the JSON property `sourceParent`
180
+ # @return [String]
181
+ attr_accessor :source_parent
272
182
 
273
- # Timestamp when the Organization was created. Assigned by the server. @
274
- # OutputOnly
275
- # Corresponds to the JSON property `creationTime`
183
+ # The resource name of the folder or organization we are either creating
184
+ # the folder under or moving the folder to.
185
+ # Corresponds to the JSON property `destinationParent`
276
186
  # @return [String]
277
- attr_accessor :creation_time
187
+ attr_accessor :destination_parent
278
188
 
279
- # The organization's current lifecycle state. Assigned by the server. @
280
- # OutputOnly
281
- # Corresponds to the JSON property `lifecycleState`
189
+ # The type of this operation.
190
+ # Corresponds to the JSON property `operationType`
282
191
  # @return [String]
283
- attr_accessor :lifecycle_state
192
+ attr_accessor :operation_type
284
193
 
285
194
  def initialize(**args)
286
195
  update!(**args)
@@ -288,25 +197,113 @@ module Google
288
197
 
289
198
  # Update properties of this object
290
199
  def update!(**args)
291
- @name = args[:name] if args.key?(:name)
292
200
  @display_name = args[:display_name] if args.key?(:display_name)
293
- @owner = args[:owner] if args.key?(:owner)
294
- @creation_time = args[:creation_time] if args.key?(:creation_time)
295
- @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
201
+ @source_parent = args[:source_parent] if args.key?(:source_parent)
202
+ @destination_parent = args[:destination_parent] if args.key?(:destination_parent)
203
+ @operation_type = args[:operation_type] if args.key?(:operation_type)
296
204
  end
297
205
  end
298
206
 
299
- # The entity that owns an Organization. The lifetime of the Organization and all
300
- # of its descendants are bound to the `OrganizationOwner`. If the `
301
- # OrganizationOwner` is deleted, the Organization and all its descendants will
302
- # be deleted.
303
- class OrganizationOwner
207
+ # This resource represents a long-running operation that is the result of a
208
+ # network API call.
209
+ class Operation
304
210
  include Google::Apis::Core::Hashable
305
211
 
306
- # The Google for Work customer id used in the Directory API.
307
- # Corresponds to the JSON property `directoryCustomerId`
212
+ # The `Status` type defines a logical error model that is suitable for different
213
+ # programming environments, including REST APIs and RPC APIs. It is used by
214
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
215
+ # - Simple to use and understand for most users
216
+ # - Flexible enough to meet unexpected needs
217
+ # # Overview
218
+ # The `Status` message contains three pieces of data: error code, error message,
219
+ # and error details. The error code should be an enum value of
220
+ # google.rpc.Code, but it may accept additional error codes if needed. The
221
+ # error message should be a developer-facing English message that helps
222
+ # developers *understand* and *resolve* the error. If a localized user-facing
223
+ # error message is needed, put the localized message in the error details or
224
+ # localize it in the client. The optional error details may contain arbitrary
225
+ # information about the error. There is a predefined set of error detail types
226
+ # in the package `google.rpc` which can be used for common error conditions.
227
+ # # Language mapping
228
+ # The `Status` message is the logical representation of the error model, but it
229
+ # is not necessarily the actual wire format. When the `Status` message is
230
+ # exposed in different client libraries and different wire protocols, it can be
231
+ # mapped differently. For example, it will likely be mapped to some exceptions
232
+ # in Java, but more likely mapped to some error codes in C.
233
+ # # Other uses
234
+ # The error model and the `Status` message can be used in a variety of
235
+ # environments, either with or without APIs, to provide a
236
+ # consistent developer experience across different environments.
237
+ # Example uses of this error model include:
238
+ # - Partial errors. If a service needs to return partial errors to the client,
239
+ # it may embed the `Status` in the normal response to indicate the partial
240
+ # errors.
241
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
242
+ # have a `Status` message for error reporting purpose.
243
+ # - Batch operations. If a client uses batch request and batch response, the
244
+ # `Status` message should be used directly inside batch response, one for
245
+ # each error sub-response.
246
+ # - Asynchronous operations. If an API call embeds asynchronous operation
247
+ # results in its response, the status of those operations should be
248
+ # represented directly using the `Status` message.
249
+ # - Logging. If some API errors are stored in logs, the message `Status` could
250
+ # be used directly after any stripping needed for security/privacy reasons.
251
+ # Corresponds to the JSON property `error`
252
+ # @return [Google::Apis::CloudresourcemanagerV1::Status]
253
+ attr_accessor :error
254
+
255
+ # If the value is `false`, it means the operation is still in progress.
256
+ # If true, the operation is completed, and either `error` or `response` is
257
+ # available.
258
+ # Corresponds to the JSON property `done`
259
+ # @return [Boolean]
260
+ attr_accessor :done
261
+ alias_method :done?, :done
262
+
263
+ # Service-specific metadata associated with the operation. It typically
264
+ # contains progress information and common metadata such as create time.
265
+ # Some services might not provide such metadata. Any method that returns a
266
+ # long-running operation should document the metadata type, if any.
267
+ # Corresponds to the JSON property `metadata`
268
+ # @return [Hash<String,Object>]
269
+ attr_accessor :metadata
270
+
271
+ # The normal response of the operation in case of success. If the original
272
+ # method returns no data on success, such as `Delete`, the response is
273
+ # `google.protobuf.Empty`. If the original method is standard
274
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
275
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
276
+ # is the original method name. For example, if the original method name
277
+ # is `TakeSnapshot()`, the inferred response type is
278
+ # `TakeSnapshotResponse`.
279
+ # Corresponds to the JSON property `response`
280
+ # @return [Hash<String,Object>]
281
+ attr_accessor :response
282
+
283
+ # The server-assigned name, which is only unique within the same service that
284
+ # originally returns it. If you use the default HTTP mapping, the
285
+ # `name` should have the format of `operations/some/unique/name`.
286
+ # Corresponds to the JSON property `name`
308
287
  # @return [String]
309
- attr_accessor :directory_customer_id
288
+ attr_accessor :name
289
+
290
+ def initialize(**args)
291
+ update!(**args)
292
+ end
293
+
294
+ # Update properties of this object
295
+ def update!(**args)
296
+ @error = args[:error] if args.key?(:error)
297
+ @done = args[:done] if args.key?(:done)
298
+ @metadata = args[:metadata] if args.key?(:metadata)
299
+ @response = args[:response] if args.key?(:response)
300
+ @name = args[:name] if args.key?(:name)
301
+ end
302
+ end
303
+
304
+ # Request message for `GetIamPolicy` method.
305
+ class GetIamPolicyRequest
306
+ include Google::Apis::Core::Hashable
310
307
 
311
308
  def initialize(**args)
312
309
  update!(**args)
@@ -314,7 +311,6 @@ module Google
314
311
 
315
312
  # Update properties of this object
316
313
  def update!(**args)
317
- @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id)
318
314
  end
319
315
  end
320
316
 
@@ -322,16 +318,32 @@ module Google
322
318
  class SetIamPolicyRequest
323
319
  include Google::Apis::Core::Hashable
324
320
 
325
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
326
- # access control policies for Cloud Platform resources. A `Policy` consists of a
327
- # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
328
- # the members can be user accounts, Google groups, Google domains, and service
329
- # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
330
- # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
331
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
332
- # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
333
- # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
334
- # IAM developer's guide](https://cloud.google.com/iam).
321
+ # Defines an Identity and Access Management (IAM) policy. It is used to
322
+ # specify access control policies for Cloud Platform resources.
323
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
324
+ # `members` to a `role`, where the members can be user accounts, Google groups,
325
+ # Google domains, and service accounts. A `role` is a named list of permissions
326
+ # defined by IAM.
327
+ # **Example**
328
+ # `
329
+ # "bindings": [
330
+ # `
331
+ # "role": "roles/owner",
332
+ # "members": [
333
+ # "user:mike@example.com",
334
+ # "group:admins@example.com",
335
+ # "domain:google.com",
336
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
337
+ # ]
338
+ # `,
339
+ # `
340
+ # "role": "roles/viewer",
341
+ # "members": ["user:sean@example.com"]
342
+ # `
343
+ # ]
344
+ # `
345
+ # For a description of IAM and its features, see the
346
+ # [IAM developer's guide](https://cloud.google.com/iam).
335
347
  # Corresponds to the JSON property `policy`
336
348
  # @return [Google::Apis::CloudresourcemanagerV1::Policy]
337
349
  attr_accessor :policy
@@ -346,42 +358,65 @@ module Google
346
358
  end
347
359
  end
348
360
 
349
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
350
- # access control policies for Cloud Platform resources. A `Policy` consists of a
351
- # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
352
- # the members can be user accounts, Google groups, Google domains, and service
353
- # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
354
- # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
355
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
356
- # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
357
- # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
358
- # IAM developer's guide](https://cloud.google.com/iam).
359
- class Policy
361
+ # Response message for `TestIamPermissions` method.
362
+ class TestIamPermissionsResponse
360
363
  include Google::Apis::Core::Hashable
361
364
 
362
- # Version of the `Policy`. The default version is 0.
363
- # Corresponds to the JSON property `version`
364
- # @return [Fixnum]
365
- attr_accessor :version
365
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
366
+ # allowed.
367
+ # Corresponds to the JSON property `permissions`
368
+ # @return [Array<String>]
369
+ attr_accessor :permissions
366
370
 
367
- # Associates a list of `members` to a `role`. Multiple `bindings` must not be
368
- # specified for the same `role`. `bindings` with no members will result in an
369
- # error.
370
- # Corresponds to the JSON property `bindings`
371
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Binding>]
372
- attr_accessor :bindings
371
+ def initialize(**args)
372
+ update!(**args)
373
+ end
373
374
 
374
- # `etag` is used for optimistic concurrency control as a way to help prevent
375
- # simultaneous updates of a policy from overwriting each other. It is strongly
376
- # suggested that systems make use of the `etag` in the read-modify-write cycle
377
- # to perform policy updates in order to avoid race conditions: An `etag` is
378
- # returned in the response to `getIamPolicy`, and systems are expected to put
379
- # that etag in the request to `setIamPolicy` to ensure that their change will be
380
- # applied to the same version of the policy. If no `etag` is provided in the
381
- # call to `setIamPolicy`, then the existing policy is overwritten blindly.
382
- # Corresponds to the JSON property `etag`
375
+ # Update properties of this object
376
+ def update!(**args)
377
+ @permissions = args[:permissions] if args.key?(:permissions)
378
+ end
379
+ end
380
+
381
+ # The root node in the resource hierarchy to which a particular entity's
382
+ # (e.g., company) resources belong.
383
+ class Organization
384
+ include Google::Apis::Core::Hashable
385
+
386
+ # A friendly string to be used to refer to the Organization in the UI.
387
+ # Assigned by the server, set to the firm name of the Google For Work
388
+ # customer that owns this organization.
389
+ # @OutputOnly
390
+ # Corresponds to the JSON property `displayName`
383
391
  # @return [String]
384
- attr_accessor :etag
392
+ attr_accessor :display_name
393
+
394
+ # Timestamp when the Organization was created. Assigned by the server.
395
+ # @OutputOnly
396
+ # Corresponds to the JSON property `creationTime`
397
+ # @return [String]
398
+ attr_accessor :creation_time
399
+
400
+ # The entity that owns an Organization. The lifetime of the Organization and
401
+ # all of its descendants are bound to the `OrganizationOwner`. If the
402
+ # `OrganizationOwner` is deleted, the Organization and all its descendants will
403
+ # be deleted.
404
+ # Corresponds to the JSON property `owner`
405
+ # @return [Google::Apis::CloudresourcemanagerV1::OrganizationOwner]
406
+ attr_accessor :owner
407
+
408
+ # The organization's current lifecycle state. Assigned by the server.
409
+ # @OutputOnly
410
+ # Corresponds to the JSON property `lifecycleState`
411
+ # @return [String]
412
+ attr_accessor :lifecycle_state
413
+
414
+ # Output Only. The resource name of the organization. This is the
415
+ # organization's relative path in the API. Its format is
416
+ # "organizations/[organization_id]". For example, "organizations/1234".
417
+ # Corresponds to the JSON property `name`
418
+ # @return [String]
419
+ attr_accessor :name
385
420
 
386
421
  def initialize(**args)
387
422
  update!(**args)
@@ -389,37 +424,67 @@ module Google
389
424
 
390
425
  # Update properties of this object
391
426
  def update!(**args)
392
- @version = args[:version] if args.key?(:version)
393
- @bindings = args[:bindings] if args.key?(:bindings)
394
- @etag = args[:etag] if args.key?(:etag)
427
+ @display_name = args[:display_name] if args.key?(:display_name)
428
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
429
+ @owner = args[:owner] if args.key?(:owner)
430
+ @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
431
+ @name = args[:name] if args.key?(:name)
395
432
  end
396
433
  end
397
434
 
398
- # Associates `members` with a `role`.
399
- class Binding
435
+ # Defines an Identity and Access Management (IAM) policy. It is used to
436
+ # specify access control policies for Cloud Platform resources.
437
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
438
+ # `members` to a `role`, where the members can be user accounts, Google groups,
439
+ # Google domains, and service accounts. A `role` is a named list of permissions
440
+ # defined by IAM.
441
+ # **Example**
442
+ # `
443
+ # "bindings": [
444
+ # `
445
+ # "role": "roles/owner",
446
+ # "members": [
447
+ # "user:mike@example.com",
448
+ # "group:admins@example.com",
449
+ # "domain:google.com",
450
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
451
+ # ]
452
+ # `,
453
+ # `
454
+ # "role": "roles/viewer",
455
+ # "members": ["user:sean@example.com"]
456
+ # `
457
+ # ]
458
+ # `
459
+ # For a description of IAM and its features, see the
460
+ # [IAM developer's guide](https://cloud.google.com/iam).
461
+ class Policy
400
462
  include Google::Apis::Core::Hashable
401
463
 
402
- # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
403
- # , or `roles/owner`. Required
404
- # Corresponds to the JSON property `role`
464
+ # Associates a list of `members` to a `role`.
465
+ # Multiple `bindings` must not be specified for the same `role`.
466
+ # `bindings` with no members will result in an error.
467
+ # Corresponds to the JSON property `bindings`
468
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Binding>]
469
+ attr_accessor :bindings
470
+
471
+ # `etag` is used for optimistic concurrency control as a way to help
472
+ # prevent simultaneous updates of a policy from overwriting each other.
473
+ # It is strongly suggested that systems make use of the `etag` in the
474
+ # read-modify-write cycle to perform policy updates in order to avoid race
475
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
476
+ # systems are expected to put that etag in the request to `setIamPolicy` to
477
+ # ensure that their change will be applied to the same version of the policy.
478
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
479
+ # policy is overwritten blindly.
480
+ # Corresponds to the JSON property `etag`
405
481
  # @return [String]
406
- attr_accessor :role
482
+ attr_accessor :etag
407
483
 
408
- # Specifies the identities requesting access for a Cloud Platform resource. `
409
- # members` can have the following values: * `allUsers`: A special identifier
410
- # that represents anyone who is on the internet; with or without a Google
411
- # account. * `allAuthenticatedUsers`: A special identifier that represents
412
- # anyone who is authenticated with a Google account or a service account. * `
413
- # user:`emailid``: An email address that represents a specific Google account.
414
- # For example, `alice@gmail.com` or `joe@example.com`. * `serviceAccount:`
415
- # emailid``: An email address that represents a service account. For example, `
416
- # my-other-app@appspot.gserviceaccount.com`. * `group:`emailid``: An email
417
- # address that represents a Google group. For example, `admins@example.com`. * `
418
- # domain:`domain``: A Google Apps domain name that represents all the users of
419
- # that domain. For example, `google.com` or `example.com`.
420
- # Corresponds to the JSON property `members`
421
- # @return [Array<String>]
422
- attr_accessor :members
484
+ # Version of the `Policy`. The default version is 0.
485
+ # Corresponds to the JSON property `version`
486
+ # @return [Fixnum]
487
+ attr_accessor :version
423
488
 
424
489
  def initialize(**args)
425
490
  update!(**args)
@@ -427,21 +492,46 @@ module Google
427
492
 
428
493
  # Update properties of this object
429
494
  def update!(**args)
430
- @role = args[:role] if args.key?(:role)
431
- @members = args[:members] if args.key?(:members)
495
+ @bindings = args[:bindings] if args.key?(:bindings)
496
+ @etag = args[:etag] if args.key?(:etag)
497
+ @version = args[:version] if args.key?(:version)
432
498
  end
433
499
  end
434
500
 
435
- # Request message for `GetIamPolicy` method.
436
- class GetIamPolicyRequest
501
+ # A status object which is used as the `metadata` field for the Operation
502
+ # returned by CreateProject. It provides insight for when significant phases of
503
+ # Project creation have completed.
504
+ class ProjectCreationStatus
437
505
  include Google::Apis::Core::Hashable
438
506
 
507
+ # True if the project creation process is complete.
508
+ # Corresponds to the JSON property `ready`
509
+ # @return [Boolean]
510
+ attr_accessor :ready
511
+ alias_method :ready?, :ready
512
+
513
+ # True if the project can be retrieved using GetProject. No other operations
514
+ # on the project are guaranteed to work until the project creation is
515
+ # complete.
516
+ # Corresponds to the JSON property `gettable`
517
+ # @return [Boolean]
518
+ attr_accessor :gettable
519
+ alias_method :gettable?, :gettable
520
+
521
+ # Creation time of the project creation workflow.
522
+ # Corresponds to the JSON property `createTime`
523
+ # @return [String]
524
+ attr_accessor :create_time
525
+
439
526
  def initialize(**args)
440
527
  update!(**args)
441
528
  end
442
529
 
443
530
  # Update properties of this object
444
531
  def update!(**args)
532
+ @ready = args[:ready] if args.key?(:ready)
533
+ @gettable = args[:gettable] if args.key?(:gettable)
534
+ @create_time = args[:create_time] if args.key?(:create_time)
445
535
  end
446
536
  end
447
537
 
@@ -449,9 +539,10 @@ module Google
449
539
  class TestIamPermissionsRequest
450
540
  include Google::Apis::Core::Hashable
451
541
 
452
- # The set of permissions to check for the `resource`. Permissions with wildcards
453
- # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
454
- # Overview](https://cloud.google.com/iam/docs/overview#permissions).
542
+ # The set of permissions to check for the `resource`. Permissions with
543
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
544
+ # information see
545
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
455
546
  # Corresponds to the JSON property `permissions`
456
547
  # @return [Array<String>]
457
548
  attr_accessor :permissions
@@ -466,79 +557,31 @@ module Google
466
557
  end
467
558
  end
468
559
 
469
- # Response message for `TestIamPermissions` method.
470
- class TestIamPermissionsResponse
560
+ # The request sent to the
561
+ # GetAncestry
562
+ # method.
563
+ class GetAncestryRequest
471
564
  include Google::Apis::Core::Hashable
472
565
 
473
- # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
474
- # Corresponds to the JSON property `permissions`
475
- # @return [Array<String>]
476
- attr_accessor :permissions
477
-
478
566
  def initialize(**args)
479
567
  update!(**args)
480
568
  end
481
569
 
482
570
  # Update properties of this object
483
571
  def update!(**args)
484
- @permissions = args[:permissions] if args.key?(:permissions)
485
572
  end
486
573
  end
487
574
 
488
- # A Project is a high-level Google Cloud Platform entity. It is a container for
489
- # ACLs, APIs, AppEngine Apps, VMs, and other Google Cloud Platform resources.
490
- class Project
575
+ # Response from the GetAncestry method.
576
+ class GetAncestryResponse
491
577
  include Google::Apis::Core::Hashable
492
578
 
493
- # The number uniquely identifying the project. Example: 415104041262 Read-only.
494
- # Corresponds to the JSON property `projectNumber`
495
- # @return [String]
496
- attr_accessor :project_number
497
-
498
- # The unique, user-assigned ID of the Project. It must be 6 to 30 lowercase
499
- # letters, digits, or hyphens. It must start with a letter. Trailing hyphens are
500
- # prohibited. Example: tokyo-rain-123 Read-only after creation.
501
- # Corresponds to the JSON property `projectId`
502
- # @return [String]
503
- attr_accessor :project_id
504
-
505
- # The Project lifecycle state. Read-only.
506
- # Corresponds to the JSON property `lifecycleState`
507
- # @return [String]
508
- attr_accessor :lifecycle_state
509
-
510
- # The user-assigned display name of the Project. It must be 4 to 30 characters.
511
- # Allowed characters are: lowercase and uppercase letters, numbers, hyphen,
512
- # single-quote, double-quote, space, and exclamation point. Example: My Project
513
- # Read-write.
514
- # Corresponds to the JSON property `name`
515
- # @return [String]
516
- attr_accessor :name
517
-
518
- # Creation time. Read-only.
519
- # Corresponds to the JSON property `createTime`
520
- # @return [String]
521
- attr_accessor :create_time
522
-
523
- # The labels associated with this Project. Label keys must be between 1 and 63
524
- # characters long and must conform to the following regular expression: \[a-z\](\
525
- # [-a-z0-9\]*\[a-z0-9\])?. Label values must be between 0 and 63 characters long
526
- # and must conform to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
527
- # No more than 256 labels can be associated with a given resource. Clients
528
- # should store labels in a representation such as JSON that does not depend on
529
- # specific characters being disallowed. Example: "environment" : "dev" Read-
530
- # write.
531
- # Corresponds to the JSON property `labels`
532
- # @return [Hash<String,String>]
533
- attr_accessor :labels
534
-
535
- # A container to reference an id for any resource type. A `resource` in Google
536
- # Cloud Platform is a generic term for something you (a developer) may want to
537
- # interact with through one of our API's. Some examples are an AppEngine app, a
538
- # Compute Engine instance, a Cloud SQL database, and so on.
539
- # Corresponds to the JSON property `parent`
540
- # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
541
- attr_accessor :parent
579
+ # Ancestors are ordered from bottom to top of the resource hierarchy. The
580
+ # first ancestor is the project itself, followed by the project's parent,
581
+ # etc.
582
+ # Corresponds to the JSON property `ancestor`
583
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Ancestor>]
584
+ attr_accessor :ancestor
542
585
 
543
586
  def initialize(**args)
544
587
  update!(**args)
@@ -546,34 +589,28 @@ module Google
546
589
 
547
590
  # Update properties of this object
548
591
  def update!(**args)
549
- @project_number = args[:project_number] if args.key?(:project_number)
550
- @project_id = args[:project_id] if args.key?(:project_id)
551
- @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
552
- @name = args[:name] if args.key?(:name)
553
- @create_time = args[:create_time] if args.key?(:create_time)
554
- @labels = args[:labels] if args.key?(:labels)
555
- @parent = args[:parent] if args.key?(:parent)
592
+ @ancestor = args[:ancestor] if args.key?(:ancestor)
556
593
  end
557
594
  end
558
595
 
559
- # A container to reference an id for any resource type. A `resource` in Google
560
- # Cloud Platform is a generic term for something you (a developer) may want to
561
- # interact with through one of our API's. Some examples are an AppEngine app, a
562
- # Compute Engine instance, a Cloud SQL database, and so on.
563
- class ResourceId
596
+ # The response returned from the `SearchOrganizations` method.
597
+ class SearchOrganizationsResponse
564
598
  include Google::Apis::Core::Hashable
565
599
 
566
- # Required field representing the resource type this id is for. At present, the
567
- # only valid type is "organization".
568
- # Corresponds to the JSON property `type`
569
- # @return [String]
570
- attr_accessor :type
600
+ # The list of Organizations that matched the search query, possibly
601
+ # paginated.
602
+ # Corresponds to the JSON property `organizations`
603
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Organization>]
604
+ attr_accessor :organizations
571
605
 
572
- # Required field for the type-specific id. This should correspond to the id used
573
- # in the type-specific API's.
574
- # Corresponds to the JSON property `id`
606
+ # A pagination token to be used to retrieve the next page of results. If the
607
+ # result is too large to fit within the page size specified in the request,
608
+ # this field will be set with a token that can be used to fetch the next page
609
+ # of results. If this field is empty, it indicates that this response
610
+ # contains the last page of results.
611
+ # Corresponds to the JSON property `nextPageToken`
575
612
  # @return [String]
576
- attr_accessor :id
613
+ attr_accessor :next_page_token
577
614
 
578
615
  def initialize(**args)
579
616
  update!(**args)
@@ -581,31 +618,41 @@ module Google
581
618
 
582
619
  # Update properties of this object
583
620
  def update!(**args)
584
- @type = args[:type] if args.key?(:type)
585
- @id = args[:id] if args.key?(:id)
621
+ @organizations = args[:organizations] if args.key?(:organizations)
622
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
586
623
  end
587
624
  end
588
625
 
589
- # A page of the response received from the ListProjects method. A paginated
590
- # response where more pages are available has `next_page_token` set. This token
591
- # can be used in a subsequent request to retrieve the next request page.
592
- class ListProjectsResponse
626
+ # The request sent to the `SearchOrganizations` method.
627
+ class SearchOrganizationsRequest
593
628
  include Google::Apis::Core::Hashable
594
629
 
595
- # The list of Projects that matched the list filter. This list can be paginated.
596
- # Corresponds to the JSON property `projects`
597
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Project>]
598
- attr_accessor :projects
630
+ # The maximum number of Organizations to return in the response.
631
+ # This field is optional.
632
+ # Corresponds to the JSON property `pageSize`
633
+ # @return [Fixnum]
634
+ attr_accessor :page_size
599
635
 
600
- # Pagination token. If the result set is too large to fit in a single response,
601
- # this token is returned. It encodes the position of the current result cursor.
602
- # Feeding this value into a new list request with the `page_token` parameter
603
- # gives the next page of the results. When `next_page_token` is not filled in,
604
- # there is no next page and the list returned is the last page in the result set.
605
- # Pagination tokens have a limited lifetime.
606
- # Corresponds to the JSON property `nextPageToken`
636
+ # An optional query string used to filter the Organizations to return in
637
+ # the response. Filter rules are case-insensitive.
638
+ # Organizations may be filtered by `owner.directoryCustomerId` or by
639
+ # `domain`, where the domain is a Google for Work domain, for example:
640
+ # |Filter|Description|
641
+ # |------|-----------|
642
+ # |owner.directorycustomerid:123456789|Organizations with
643
+ # `owner.directory_customer_id` equal to `123456789`.|
644
+ # |domain:google.com|Organizations corresponding to the domain `google.com`.|
645
+ # This field is optional.
646
+ # Corresponds to the JSON property `filter`
607
647
  # @return [String]
608
- attr_accessor :next_page_token
648
+ attr_accessor :filter
649
+
650
+ # A pagination token returned from a previous call to `SearchOrganizations`
651
+ # that indicates from where listing should continue.
652
+ # This field is optional.
653
+ # Corresponds to the JSON property `pageToken`
654
+ # @return [String]
655
+ attr_accessor :page_token
609
656
 
610
657
  def initialize(**args)
611
658
  update!(**args)
@@ -613,16 +660,19 @@ module Google
613
660
 
614
661
  # Update properties of this object
615
662
  def update!(**args)
616
- @projects = args[:projects] if args.key?(:projects)
617
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
663
+ @page_size = args[:page_size] if args.key?(:page_size)
664
+ @filter = args[:filter] if args.key?(:filter)
665
+ @page_token = args[:page_token] if args.key?(:page_token)
618
666
  end
619
667
  end
620
668
 
621
- # A generic empty message that you can re-use to avoid defining duplicated empty
622
- # messages in your APIs. A typical example is to use it as the request or the
623
- # response type of an API method. For instance: service Foo ` rpc Bar(google.
624
- # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
625
- # `Empty` is empty JSON object ````.
669
+ # A generic empty message that you can re-use to avoid defining duplicated
670
+ # empty messages in your APIs. A typical example is to use it as the request
671
+ # or the response type of an API method. For instance:
672
+ # service Foo `
673
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
674
+ # `
675
+ # The JSON representation for `Empty` is empty JSON object ````.
626
676
  class Empty
627
677
  include Google::Apis::Core::Hashable
628
678
 
@@ -635,42 +685,86 @@ module Google
635
685
  end
636
686
  end
637
687
 
638
- # The request sent to the UndeleteProject method.
639
- class UndeleteProjectRequest
688
+ # Identifying information for a single ancestor of a project.
689
+ class Ancestor
640
690
  include Google::Apis::Core::Hashable
641
691
 
692
+ # A container to reference an id for any resource type. A `resource` in Google
693
+ # Cloud Platform is a generic term for something you (a developer) may want to
694
+ # interact with through one of our API's. Some examples are an AppEngine app,
695
+ # a Compute Engine instance, a Cloud SQL database, and so on.
696
+ # Corresponds to the JSON property `resourceId`
697
+ # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
698
+ attr_accessor :resource_id
699
+
642
700
  def initialize(**args)
643
701
  update!(**args)
644
702
  end
645
703
 
646
704
  # Update properties of this object
647
705
  def update!(**args)
706
+ @resource_id = args[:resource_id] if args.key?(:resource_id)
648
707
  end
649
708
  end
650
709
 
651
- # A status object which is used as the `metadata` field for the Operation
652
- # returned by CreateProject. It provides insight for when significant phases of
653
- # Project creation have completed.
654
- class ProjectCreationStatus
710
+ # A container to reference an id for any resource type. A `resource` in Google
711
+ # Cloud Platform is a generic term for something you (a developer) may want to
712
+ # interact with through one of our API's. Some examples are an AppEngine app,
713
+ # a Compute Engine instance, a Cloud SQL database, and so on.
714
+ class ResourceId
655
715
  include Google::Apis::Core::Hashable
656
716
 
657
- # Creation time of the project creation workflow.
658
- # Corresponds to the JSON property `createTime`
717
+ # Required field representing the resource type this id is for.
718
+ # At present, the only valid type is "organization".
719
+ # Corresponds to the JSON property `type`
659
720
  # @return [String]
660
- attr_accessor :create_time
721
+ attr_accessor :type
661
722
 
662
- # True if the project can be retrieved using GetProject. No other operations on
663
- # the project are guaranteed to work until the project creation is complete.
664
- # Corresponds to the JSON property `gettable`
665
- # @return [Boolean]
666
- attr_accessor :gettable
667
- alias_method :gettable?, :gettable
723
+ # Required field for the type-specific id. This should correspond to the id
724
+ # used in the type-specific API's.
725
+ # Corresponds to the JSON property `id`
726
+ # @return [String]
727
+ attr_accessor :id
668
728
 
669
- # True if the project creation process is complete.
670
- # Corresponds to the JSON property `ready`
671
- # @return [Boolean]
672
- attr_accessor :ready
673
- alias_method :ready?, :ready
729
+ def initialize(**args)
730
+ update!(**args)
731
+ end
732
+
733
+ # Update properties of this object
734
+ def update!(**args)
735
+ @type = args[:type] if args.key?(:type)
736
+ @id = args[:id] if args.key?(:id)
737
+ end
738
+ end
739
+
740
+ # Associates `members` with a `role`.
741
+ class Binding
742
+ include Google::Apis::Core::Hashable
743
+
744
+ # Specifies the identities requesting access for a Cloud Platform resource.
745
+ # `members` can have the following values:
746
+ # * `allUsers`: A special identifier that represents anyone who is
747
+ # on the internet; with or without a Google account.
748
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
749
+ # who is authenticated with a Google account or a service account.
750
+ # * `user:`emailid``: An email address that represents a specific Google
751
+ # account. For example, `alice@gmail.com` or `joe@example.com`.
752
+ # * `serviceAccount:`emailid``: An email address that represents a service
753
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
754
+ # * `group:`emailid``: An email address that represents a Google group.
755
+ # For example, `admins@example.com`.
756
+ # * `domain:`domain``: A Google Apps domain name that represents all the
757
+ # users of that domain. For example, `google.com` or `example.com`.
758
+ # Corresponds to the JSON property `members`
759
+ # @return [Array<String>]
760
+ attr_accessor :members
761
+
762
+ # Role that is assigned to `members`.
763
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
764
+ # Required
765
+ # Corresponds to the JSON property `role`
766
+ # @return [String]
767
+ attr_accessor :role
674
768
 
675
769
  def initialize(**args)
676
770
  update!(**args)
@@ -678,37 +772,77 @@ module Google
678
772
 
679
773
  # Update properties of this object
680
774
  def update!(**args)
681
- @create_time = args[:create_time] if args.key?(:create_time)
682
- @gettable = args[:gettable] if args.key?(:gettable)
683
- @ready = args[:ready] if args.key?(:ready)
775
+ @members = args[:members] if args.key?(:members)
776
+ @role = args[:role] if args.key?(:role)
684
777
  end
685
778
  end
686
779
 
687
- # Metadata describing a long running folder operation
688
- class FolderOperation
780
+ # A Project is a high-level Google Cloud Platform entity. It is a
781
+ # container for ACLs, APIs, AppEngine Apps, VMs, and other
782
+ # Google Cloud Platform resources.
783
+ class Project
689
784
  include Google::Apis::Core::Hashable
690
785
 
691
- # The display name of the folder.
692
- # Corresponds to the JSON property `displayName`
786
+ # A container to reference an id for any resource type. A `resource` in Google
787
+ # Cloud Platform is a generic term for something you (a developer) may want to
788
+ # interact with through one of our API's. Some examples are an AppEngine app,
789
+ # a Compute Engine instance, a Cloud SQL database, and so on.
790
+ # Corresponds to the JSON property `parent`
791
+ # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
792
+ attr_accessor :parent
793
+
794
+ # The labels associated with this Project.
795
+ # Label keys must be between 1 and 63 characters long and must conform
796
+ # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
797
+ # Label values must be between 0 and 63 characters long and must conform
798
+ # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
799
+ # No more than 256 labels can be associated with a given resource.
800
+ # Clients should store labels in a representation such as JSON that does not
801
+ # depend on specific characters being disallowed.
802
+ # Example: <code>"environment" : "dev"</code>
803
+ # Read-write.
804
+ # Corresponds to the JSON property `labels`
805
+ # @return [Hash<String,String>]
806
+ attr_accessor :labels
807
+
808
+ # The Project lifecycle state.
809
+ # Read-only.
810
+ # Corresponds to the JSON property `lifecycleState`
693
811
  # @return [String]
694
- attr_accessor :display_name
812
+ attr_accessor :lifecycle_state
695
813
 
696
- # The type of this operation.
697
- # Corresponds to the JSON property `operationType`
814
+ # Creation time.
815
+ # Read-only.
816
+ # Corresponds to the JSON property `createTime`
698
817
  # @return [String]
699
- attr_accessor :operation_type
818
+ attr_accessor :create_time
700
819
 
701
- # The resource name of the folder's parent. Only applicable when the
702
- # operation_type is MOVE.
703
- # Corresponds to the JSON property `sourceParent`
820
+ # The user-assigned display name of the Project.
821
+ # It must be 4 to 30 characters.
822
+ # Allowed characters are: lowercase and uppercase letters, numbers,
823
+ # hyphen, single-quote, double-quote, space, and exclamation point.
824
+ # Example: <code>My Project</code>
825
+ # Read-write.
826
+ # Corresponds to the JSON property `name`
704
827
  # @return [String]
705
- attr_accessor :source_parent
828
+ attr_accessor :name
706
829
 
707
- # The resource name of the folder or organization we are either creating the
708
- # folder under or moving the folder to.
709
- # Corresponds to the JSON property `destinationParent`
830
+ # The number uniquely identifying the project.
831
+ # Example: <code>415104041262</code>
832
+ # Read-only.
833
+ # Corresponds to the JSON property `projectNumber`
710
834
  # @return [String]
711
- attr_accessor :destination_parent
835
+ attr_accessor :project_number
836
+
837
+ # The unique, user-assigned ID of the Project.
838
+ # It must be 6 to 30 lowercase letters, digits, or hyphens.
839
+ # It must start with a letter.
840
+ # Trailing hyphens are prohibited.
841
+ # Example: <code>tokyo-rain-123</code>
842
+ # Read-only after creation.
843
+ # Corresponds to the JSON property `projectId`
844
+ # @return [String]
845
+ attr_accessor :project_id
712
846
 
713
847
  def initialize(**args)
714
848
  update!(**args)
@@ -716,21 +850,27 @@ module Google
716
850
 
717
851
  # Update properties of this object
718
852
  def update!(**args)
719
- @display_name = args[:display_name] if args.key?(:display_name)
720
- @operation_type = args[:operation_type] if args.key?(:operation_type)
721
- @source_parent = args[:source_parent] if args.key?(:source_parent)
722
- @destination_parent = args[:destination_parent] if args.key?(:destination_parent)
853
+ @parent = args[:parent] if args.key?(:parent)
854
+ @labels = args[:labels] if args.key?(:labels)
855
+ @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
856
+ @create_time = args[:create_time] if args.key?(:create_time)
857
+ @name = args[:name] if args.key?(:name)
858
+ @project_number = args[:project_number] if args.key?(:project_number)
859
+ @project_id = args[:project_id] if args.key?(:project_id)
723
860
  end
724
861
  end
725
862
 
726
- # A classification of the Folder Operation error.
727
- class FolderOperationError
863
+ # The entity that owns an Organization. The lifetime of the Organization and
864
+ # all of its descendants are bound to the `OrganizationOwner`. If the
865
+ # `OrganizationOwner` is deleted, the Organization and all its descendants will
866
+ # be deleted.
867
+ class OrganizationOwner
728
868
  include Google::Apis::Core::Hashable
729
869
 
730
- # The type of operation error experienced.
731
- # Corresponds to the JSON property `errorMessageId`
870
+ # The Google for Work customer id used in the Directory API.
871
+ # Corresponds to the JSON property `directoryCustomerId`
732
872
  # @return [String]
733
- attr_accessor :error_message_id
873
+ attr_accessor :directory_customer_id
734
874
 
735
875
  def initialize(**args)
736
876
  update!(**args)
@@ -738,7 +878,7 @@ module Google
738
878
 
739
879
  # Update properties of this object
740
880
  def update!(**args)
741
- @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
881
+ @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id)
742
882
  end
743
883
  end
744
884
  end