google-api-client 0.9.8 → 0.9.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (238) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +37 -0
  3. data/Gemfile +9 -1
  4. data/README.md +10 -2
  5. data/api_names.yaml +63 -110
  6. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +298 -0
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +122 -0
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +458 -0
  10. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  11. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +260 -13
  12. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +81 -0
  13. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +60 -8
  14. data/generated/google/apis/adexchangeseller_v2_0.rb +2 -3
  15. data/generated/google/apis/adexchangeseller_v2_0/service.rb +1 -2
  16. data/generated/google/apis/admin_directory_v1.rb +1 -1
  17. data/generated/google/apis/admin_directory_v1/classes.rb +86 -0
  18. data/generated/google/apis/admin_directory_v1/representations.rb +24 -0
  19. data/generated/google/apis/admin_directory_v1/service.rb +41 -2
  20. data/generated/google/apis/admin_reports_v1.rb +3 -3
  21. data/generated/google/apis/admin_reports_v1/service.rb +2 -2
  22. data/generated/google/apis/adsense_v1_4.rb +1 -1
  23. data/generated/google/apis/adsense_v1_4/classes.rb +1 -1
  24. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  25. data/generated/google/apis/adsensehost_v4_1/classes.rb +1 -2
  26. data/generated/google/apis/analytics_v3.rb +1 -1
  27. data/generated/google/apis/analytics_v3/classes.rb +379 -3
  28. data/generated/google/apis/analytics_v3/representations.rb +136 -0
  29. data/generated/google/apis/analytics_v3/service.rb +217 -0
  30. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  31. data/generated/google/apis/analyticsreporting_v4/classes.rb +50 -22
  32. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  33. data/generated/google/apis/androidenterprise_v1/classes.rb +813 -49
  34. data/generated/google/apis/androidenterprise_v1/representations.rb +336 -0
  35. data/generated/google/apis/androidenterprise_v1/service.rb +1234 -145
  36. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  37. data/generated/google/apis/androidpublisher_v2/classes.rb +47 -8
  38. data/generated/google/apis/androidpublisher_v2/representations.rb +27 -0
  39. data/generated/google/apis/androidpublisher_v2/service.rb +55 -0
  40. data/generated/google/apis/appengine_v1beta5.rb +7 -1
  41. data/generated/google/apis/appengine_v1beta5/classes.rb +516 -313
  42. data/generated/google/apis/appengine_v1beta5/representations.rb +115 -22
  43. data/generated/google/apis/appengine_v1beta5/service.rb +329 -33
  44. data/generated/google/apis/appsactivity_v1.rb +1 -1
  45. data/generated/google/apis/appsactivity_v1/classes.rb +7 -0
  46. data/generated/google/apis/appsactivity_v1/representations.rb +1 -0
  47. data/generated/google/apis/appstate_v1.rb +1 -1
  48. data/generated/google/apis/bigquery_v2.rb +1 -1
  49. data/generated/google/apis/bigquery_v2/classes.rb +277 -20
  50. data/generated/google/apis/bigquery_v2/representations.rb +86 -0
  51. data/generated/google/apis/bigquery_v2/service.rb +8 -2
  52. data/generated/google/apis/books_v1.rb +2 -2
  53. data/generated/google/apis/books_v1/classes.rb +79 -1
  54. data/generated/google/apis/books_v1/representations.rb +34 -0
  55. data/generated/google/apis/books_v1/service.rb +7 -3
  56. data/generated/google/apis/calendar_v3.rb +1 -1
  57. data/generated/google/apis/civicinfo_v2.rb +3 -2
  58. data/generated/google/apis/civicinfo_v2/classes.rb +377 -5
  59. data/generated/google/apis/civicinfo_v2/representations.rb +149 -0
  60. data/generated/google/apis/civicinfo_v2/service.rb +27 -6
  61. data/generated/google/apis/classroom_v1.rb +1 -1
  62. data/generated/google/apis/classroom_v1/classes.rb +183 -37
  63. data/generated/google/apis/classroom_v1/representations.rb +74 -9
  64. data/generated/google/apis/classroom_v1/service.rb +403 -38
  65. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  66. data/generated/google/apis/cloudbuild_v1/classes.rb +381 -17
  67. data/generated/google/apis/cloudbuild_v1/representations.rb +137 -2
  68. data/generated/google/apis/cloudbuild_v1/service.rb +174 -1
  69. data/generated/google/apis/clouddebugger_v2.rb +3 -6
  70. data/generated/google/apis/clouddebugger_v2/service.rb +4 -4
  71. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  72. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  73. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +502 -111
  74. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +162 -24
  75. data/generated/google/apis/cloudresourcemanager_v1/service.rb +274 -30
  76. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  77. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +121 -9
  78. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +46 -0
  79. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +71 -58
  80. data/generated/google/apis/compute_beta.rb +1 -1
  81. data/generated/google/apis/compute_beta/classes.rb +2299 -434
  82. data/generated/google/apis/compute_beta/representations.rb +752 -33
  83. data/generated/google/apis/compute_beta/service.rb +6067 -3153
  84. data/generated/google/apis/compute_v1.rb +1 -1
  85. data/generated/google/apis/compute_v1/classes.rb +1681 -207
  86. data/generated/google/apis/compute_v1/representations.rb +552 -0
  87. data/generated/google/apis/compute_v1/service.rb +2797 -1171
  88. data/generated/google/apis/content_v2.rb +1 -1
  89. data/generated/google/apis/content_v2/classes.rb +757 -1
  90. data/generated/google/apis/content_v2/representations.rb +337 -0
  91. data/generated/google/apis/content_v2/service.rb +244 -0
  92. data/generated/google/apis/dataflow_v1b3.rb +38 -0
  93. data/generated/google/apis/dataflow_v1b3/classes.rb +4053 -0
  94. data/generated/google/apis/dataflow_v1b3/representations.rb +1736 -0
  95. data/generated/google/apis/dataflow_v1b3/service.rb +875 -0
  96. data/generated/google/apis/dataproc_v1.rb +2 -2
  97. data/generated/google/apis/dataproc_v1/classes.rb +213 -68
  98. data/generated/google/apis/dataproc_v1/representations.rb +38 -0
  99. data/generated/google/apis/dataproc_v1/service.rb +78 -48
  100. data/generated/google/apis/datastore_v1.rb +38 -0
  101. data/generated/google/apis/datastore_v1/classes.rb +1284 -0
  102. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  103. data/generated/google/apis/datastore_v1/service.rb +259 -0
  104. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  105. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  106. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  107. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  108. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  109. data/generated/google/apis/deploymentmanager_v2/classes.rb +384 -2
  110. data/generated/google/apis/deploymentmanager_v2/representations.rb +161 -0
  111. data/generated/google/apis/deploymentmanager_v2/service.rb +217 -55
  112. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  113. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  114. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  115. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  116. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  117. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  118. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  119. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  120. data/generated/google/apis/dns_v1.rb +1 -1
  121. data/generated/google/apis/dns_v1/classes.rb +1 -1
  122. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  123. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +79 -86
  124. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +25 -28
  125. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +10 -8
  126. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  127. data/generated/google/apis/drive_v2.rb +1 -1
  128. data/generated/google/apis/drive_v2/classes.rb +27 -3
  129. data/generated/google/apis/drive_v2/representations.rb +4 -0
  130. data/generated/google/apis/drive_v2/service.rb +16 -3
  131. data/generated/google/apis/drive_v3.rb +1 -1
  132. data/generated/google/apis/drive_v3/classes.rb +50 -16
  133. data/generated/google/apis/drive_v3/representations.rb +4 -0
  134. data/generated/google/apis/drive_v3/service.rb +12 -2
  135. data/generated/google/apis/fitness_v1.rb +8 -2
  136. data/generated/google/apis/fitness_v1/classes.rb +64 -6
  137. data/generated/google/apis/fitness_v1/representations.rb +20 -0
  138. data/generated/google/apis/fitness_v1/service.rb +17 -18
  139. data/generated/google/apis/fusiontables_v2.rb +1 -1
  140. data/generated/google/apis/fusiontables_v2/classes.rb +4 -3
  141. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  142. data/generated/google/apis/games_management_v1management.rb +1 -1
  143. data/generated/google/apis/games_v1.rb +1 -1
  144. data/generated/google/apis/genomics_v1.rb +2 -4
  145. data/generated/google/apis/genomics_v1/classes.rb +143 -34
  146. data/generated/google/apis/genomics_v1/representations.rb +48 -11
  147. data/generated/google/apis/genomics_v1/service.rb +35 -37
  148. data/generated/google/apis/gmail_v1.rb +10 -1
  149. data/generated/google/apis/gmail_v1/classes.rb +542 -4
  150. data/generated/google/apis/gmail_v1/representations.rb +213 -0
  151. data/generated/google/apis/gmail_v1/service.rb +898 -1
  152. data/generated/google/apis/groupssettings_v1.rb +1 -1
  153. data/generated/google/apis/groupssettings_v1/classes.rb +12 -0
  154. data/generated/google/apis/groupssettings_v1/representations.rb +2 -0
  155. data/generated/google/apis/iam_v1.rb +2 -2
  156. data/generated/google/apis/iam_v1/classes.rb +181 -206
  157. data/generated/google/apis/iam_v1/representations.rb +36 -45
  158. data/generated/google/apis/iam_v1/service.rb +101 -67
  159. data/generated/google/apis/identitytoolkit_v3.rb +4 -1
  160. data/generated/google/apis/identitytoolkit_v3/classes.rb +171 -1
  161. data/generated/google/apis/identitytoolkit_v3/representations.rb +26 -0
  162. data/generated/google/apis/language_v1beta1.rb +36 -0
  163. data/generated/google/apis/language_v1beta1/classes.rb +599 -0
  164. data/generated/google/apis/language_v1beta1/representations.rb +289 -0
  165. data/generated/google/apis/language_v1beta1/service.rb +152 -0
  166. data/generated/google/apis/logging_v2beta1.rb +6 -6
  167. data/generated/google/apis/logging_v2beta1/classes.rb +760 -731
  168. data/generated/google/apis/logging_v2beta1/representations.rb +136 -147
  169. data/generated/google/apis/logging_v2beta1/service.rb +290 -209
  170. data/generated/google/apis/mirror_v1.rb +2 -2
  171. data/generated/google/apis/mirror_v1/service.rb +1 -1
  172. data/generated/google/apis/monitoring_v3.rb +45 -0
  173. data/generated/google/apis/monitoring_v3/classes.rb +1337 -0
  174. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  175. data/generated/google/apis/monitoring_v3/service.rb +711 -0
  176. data/generated/google/apis/oauth2_v2.rb +1 -1
  177. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  178. data/generated/google/apis/plus_domains_v1.rb +1 -1
  179. data/generated/google/apis/plus_v1.rb +1 -1
  180. data/generated/google/apis/pubsub_v1.rb +1 -1
  181. data/generated/google/apis/pubsub_v1/classes.rb +10 -9
  182. data/generated/google/apis/pubsub_v1/service.rb +128 -27
  183. data/generated/google/apis/qpx_express_v1.rb +1 -1
  184. data/generated/google/apis/qpx_express_v1/classes.rb +6 -0
  185. data/generated/google/apis/qpx_express_v1/representations.rb +1 -0
  186. data/generated/google/apis/replicapool_v1beta2.rb +1 -1
  187. data/generated/google/apis/replicapoolupdater_v1beta1.rb +4 -2
  188. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +3 -1
  189. data/generated/google/apis/script_v1.rb +1 -1
  190. data/generated/google/apis/script_v1/classes.rb +6 -0
  191. data/generated/google/apis/script_v1/representations.rb +1 -0
  192. data/generated/google/apis/sheets_v4.rb +1 -1
  193. data/generated/google/apis/sheets_v4/classes.rb +910 -89
  194. data/generated/google/apis/sheets_v4/representations.rb +194 -10
  195. data/generated/google/apis/sheets_v4/service.rb +216 -49
  196. data/generated/google/apis/slides_v1.rb +49 -0
  197. data/generated/google/apis/slides_v1/classes.rb +3926 -0
  198. data/generated/google/apis/slides_v1/representations.rb +1722 -0
  199. data/generated/google/apis/slides_v1/service.rb +202 -0
  200. data/generated/google/apis/speech_v1beta1.rb +34 -0
  201. data/generated/google/apis/speech_v1beta1/classes.rb +511 -0
  202. data/generated/google/apis/speech_v1beta1/representations.rb +218 -0
  203. data/generated/google/apis/speech_v1beta1/service.rb +271 -0
  204. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  205. data/generated/google/apis/sqladmin_v1beta4/classes.rb +32 -8
  206. data/generated/google/apis/sqladmin_v1beta4/representations.rb +3 -0
  207. data/generated/google/apis/sqladmin_v1beta4/service.rb +42 -0
  208. data/generated/google/apis/storage_v1.rb +1 -1
  209. data/generated/google/apis/storage_v1/classes.rb +43 -18
  210. data/generated/google/apis/storage_v1/representations.rb +4 -1
  211. data/generated/google/apis/storage_v1/service.rb +5 -2
  212. data/generated/google/apis/translate_v2.rb +2 -2
  213. data/generated/google/apis/translate_v2/service.rb +1 -1
  214. data/generated/google/apis/vision_v1.rb +1 -1
  215. data/generated/google/apis/vision_v1/classes.rb +12 -11
  216. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  217. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  218. data/generated/google/apis/youtube_partner_v1/classes.rb +6 -0
  219. data/generated/google/apis/youtube_partner_v1/representations.rb +2 -0
  220. data/generated/google/apis/youtube_partner_v1/service.rb +15 -3
  221. data/generated/google/apis/youtube_v3.rb +1 -1
  222. data/generated/google/apis/youtube_v3/classes.rb +183 -21
  223. data/generated/google/apis/youtube_v3/representations.rb +85 -4
  224. data/generated/google/apis/youtube_v3/service.rb +41 -5
  225. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  226. data/google-api-client.gemspec +2 -1
  227. data/lib/google/apis/core/api_command.rb +4 -0
  228. data/lib/google/apis/core/base_service.rb +10 -4
  229. data/lib/google/apis/core/download.rb +7 -2
  230. data/lib/google/apis/core/http_command.rb +5 -1
  231. data/lib/google/apis/core/upload.rb +7 -1
  232. data/lib/google/apis/errors.rb +2 -2
  233. data/lib/google/apis/generator/annotator.rb +6 -0
  234. data/lib/google/apis/version.rb +1 -1
  235. data/samples/cli/lib/samples/bigquery.rb +101 -0
  236. data/samples/cli/lib/samples/sheets.rb +61 -0
  237. data/sync.rb +71 -0
  238. metadata +55 -13
@@ -20,7 +20,7 @@ require 'google/apis/errors'
20
20
  module Google
21
21
  module Apis
22
22
  module ClouddebuggerV2
23
- # Google Cloud Debugger API
23
+ # Stackdriver Debugger API
24
24
  #
25
25
  # Examines the call stack and variables of a running application without
26
26
  # stopping or slowing it down.
@@ -29,10 +29,10 @@ module Google
29
29
  # require 'google/apis/clouddebugger_v2'
30
30
  #
31
31
  # Clouddebugger = Google::Apis::ClouddebuggerV2 # Alias the module
32
- # service = Clouddebugger::ClouddebuggerService.new
32
+ # service = Clouddebugger::CloudDebuggerService.new
33
33
  #
34
- # @see https://cloud.google.com/tools/cloud-debugger
35
- class ClouddebuggerService < Google::Apis::Core::BaseService
34
+ # @see http://cloud.google.com/debugger
35
+ class CloudDebuggerService < Google::Apis::Core::BaseService
36
36
  # @return [String]
37
37
  # API key. Your API key identifies your project and provides you with API access,
38
38
  # quota, and reports. Required unless you provide an OAuth 2.0 token.
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/monitoring/v2beta2/
26
26
  module CloudmonitoringV2beta2
27
27
  VERSION = 'V2beta2'
28
- REVISION = '20160415'
28
+ REVISION = '20161031'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -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 = '20160518'
29
+ REVISION = '20160927'
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,59 +22,146 @@ module Google
22
22
  module Apis
23
23
  module CloudresourcemanagerV1
24
24
 
25
- # A Project is a high-level Google Cloud Platform entity. It is a container for
26
- # ACLs, APIs, AppEngine Apps, VMs, and other Google Cloud Platform resources.
27
- class Project
25
+ # This resource represents a long-running operation that is the result of a
26
+ # network API call.
27
+ class Operation
28
28
  include Google::Apis::Core::Hashable
29
29
 
30
- # The number uniquely identifying the project. Example: 415104041262 Read-only.
31
- # Corresponds to the JSON property `projectNumber`
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`
32
34
  # @return [String]
33
- attr_accessor :project_number
35
+ attr_accessor :name
34
36
 
35
- # The unique, user-assigned ID of the Project. It must be 6 to 30 lowercase
36
- # letters, digits, or hyphens. It must start with a letter. Trailing hyphens are
37
- # prohibited. Example: tokyo-rain-123 Read-only after creation.
38
- # Corresponds to the JSON property `projectId`
39
- # @return [String]
40
- attr_accessor :project_id
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
41
98
 
42
- # The Project lifecycle state. Read-only.
43
- # Corresponds to the JSON property `lifecycleState`
44
- # @return [String]
45
- attr_accessor :lifecycle_state
99
+ def initialize(**args)
100
+ update!(**args)
101
+ end
46
102
 
47
- # The user-assigned name of the Project. It must be 4 to 30 characters. Allowed
48
- # characters are: lowercase and uppercase letters, numbers, hyphen, single-quote,
49
- # double-quote, space, and exclamation point. Example: My Project Read-write.
50
- # Corresponds to the JSON property `name`
51
- # @return [String]
52
- attr_accessor :name
103
+ # Update properties of this object
104
+ 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)
110
+ end
111
+ end
53
112
 
54
- # Creation time. Read-only.
55
- # Corresponds to the JSON property `createTime`
56
- # @return [String]
57
- attr_accessor :create_time
113
+ # 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
126
+ # The `Status` message is the logical representation of the error model, but it
127
+ # is not necessarily the actual wire format. When the `Status` message is
128
+ # exposed in different client libraries and different wire protocols, it can be
129
+ # 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.
145
+ class Status
146
+ include Google::Apis::Core::Hashable
58
147
 
59
- # The labels associated with this Project. Label keys must be between 1 and 63
60
- # characters long and must conform to the following regular expression: \[a-z\](\
61
- # [-a-z0-9\]*\[a-z0-9\])?. Label values must be between 0 and 63 characters long
62
- # and must conform to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
63
- # No more than 256 labels can be associated with a given resource. Clients
64
- # should store labels in a representation such as JSON that does not depend on
65
- # specific characters being disallowed. Example: "environment" : "dev" Read-
66
- # write.
67
- # Corresponds to the JSON property `labels`
68
- # @return [Hash<String,String>]
69
- attr_accessor :labels
148
+ # The status code, which should be an enum value of google.rpc.Code.
149
+ # Corresponds to the JSON property `code`
150
+ # @return [Fixnum]
151
+ attr_accessor :code
70
152
 
71
- # A container to reference an id for any resource type. A `resource` in Google
72
- # Cloud Platform is a generic term for something you (a developer) may want to
73
- # interact with through one of our API's. Some examples are an AppEngine app, a
74
- # Compute Engine instance, a Cloud SQL database, and so on.
75
- # Corresponds to the JSON property `parent`
76
- # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
77
- attr_accessor :parent
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.
162
+ # Corresponds to the JSON property `details`
163
+ # @return [Array<Hash<String,Object>>]
164
+ attr_accessor :details
78
165
 
79
166
  def initialize(**args)
80
167
  update!(**args)
@@ -82,34 +169,38 @@ module Google
82
169
 
83
170
  # Update properties of this object
84
171
  def update!(**args)
85
- @project_number = args[:project_number] if args.key?(:project_number)
86
- @project_id = args[:project_id] if args.key?(:project_id)
87
- @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
88
- @name = args[:name] if args.key?(:name)
89
- @create_time = args[:create_time] if args.key?(:create_time)
90
- @labels = args[:labels] if args.key?(:labels)
91
- @parent = args[:parent] if args.key?(:parent)
172
+ @code = args[:code] if args.key?(:code)
173
+ @message = args[:message] if args.key?(:message)
174
+ @details = args[:details] if args.key?(:details)
92
175
  end
93
176
  end
94
177
 
95
- # A container to reference an id for any resource type. A `resource` in Google
96
- # Cloud Platform is a generic term for something you (a developer) may want to
97
- # interact with through one of our API's. Some examples are an AppEngine app, a
98
- # Compute Engine instance, a Cloud SQL database, and so on.
99
- class ResourceId
178
+ # The request sent to the `SearchOrganizations` method.
179
+ class SearchOrganizationsRequest
100
180
  include Google::Apis::Core::Hashable
101
181
 
102
- # Required field representing the resource type this id is for. At present, the
103
- # only valid type is "organization".
104
- # Corresponds to the JSON property `type`
105
- # @return [String]
106
- attr_accessor :type
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
107
187
 
108
- # Required field for the type-specific id. This should correspond to the id used
109
- # in the type-specific API's.
110
- # Corresponds to the JSON property `id`
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`
111
191
  # @return [String]
112
- attr_accessor :id
192
+ attr_accessor :page_token
193
+
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`
202
+ # @return [String]
203
+ attr_accessor :filter
113
204
 
114
205
  def initialize(**args)
115
206
  update!(**args)
@@ -117,28 +208,26 @@ module Google
117
208
 
118
209
  # Update properties of this object
119
210
  def update!(**args)
120
- @type = args[:type] if args.key?(:type)
121
- @id = args[:id] if args.key?(:id)
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)
122
214
  end
123
215
  end
124
216
 
125
- # A page of the response received from the ListProjects method. A paginated
126
- # response where more pages are available has `next_page_token` set. This token
127
- # can be used in a subsequent request to retrieve the next request page.
128
- class ListProjectsResponse
217
+ # The response returned from the `SearchOrganizations` method.
218
+ class SearchOrganizationsResponse
129
219
  include Google::Apis::Core::Hashable
130
220
 
131
- # The list of Projects that matched the list filter. This list can be paginated.
132
- # Corresponds to the JSON property `projects`
133
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Project>]
134
- attr_accessor :projects
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
135
225
 
136
- # Pagination token. If the result set is too large to fit in a single response,
137
- # this token is returned. It encodes the position of the current result cursor.
138
- # Feeding this value into a new list request with the `page_token` parameter
139
- # gives the next page of the results. When `next_page_token` is not filled in,
140
- # there is no next page and the list returned is the last page in the result set.
141
- # Pagination tokens have a limited lifetime.
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.
142
231
  # Corresponds to the JSON property `nextPageToken`
143
232
  # @return [String]
144
233
  attr_accessor :next_page_token
@@ -149,51 +238,111 @@ module Google
149
238
 
150
239
  # Update properties of this object
151
240
  def update!(**args)
152
- @projects = args[:projects] if args.key?(:projects)
241
+ @organizations = args[:organizations] if args.key?(:organizations)
153
242
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
154
243
  end
155
244
  end
156
245
 
157
- # A generic empty message that you can re-use to avoid defining duplicated empty
158
- # messages in your APIs. A typical example is to use it as the request or the
159
- # response type of an API method. For instance: service Foo ` rpc Bar(google.
160
- # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
161
- # `Empty` is empty JSON object ````.
162
- class Empty
246
+ # The root node in the resource hierarchy to which a particular entity's (e.g.,
247
+ # company) resources belong.
248
+ class Organization
163
249
  include Google::Apis::Core::Hashable
164
250
 
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
261
+ # Corresponds to the JSON property `displayName`
262
+ # @return [String]
263
+ attr_accessor :display_name
264
+
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
272
+
273
+ # Timestamp when the Organization was created. Assigned by the server. @
274
+ # OutputOnly
275
+ # Corresponds to the JSON property `creationTime`
276
+ # @return [String]
277
+ attr_accessor :creation_time
278
+
279
+ # The organization's current lifecycle state. Assigned by the server. @
280
+ # OutputOnly
281
+ # Corresponds to the JSON property `lifecycleState`
282
+ # @return [String]
283
+ attr_accessor :lifecycle_state
284
+
165
285
  def initialize(**args)
166
286
  update!(**args)
167
287
  end
168
288
 
169
289
  # Update properties of this object
170
290
  def update!(**args)
291
+ @name = args[:name] if args.key?(:name)
292
+ @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)
171
296
  end
172
297
  end
173
298
 
174
- # The request sent to the UndeleteProject method.
175
- class UndeleteProjectRequest
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
176
304
  include Google::Apis::Core::Hashable
177
305
 
306
+ # The Google for Work customer id used in the Directory API.
307
+ # Corresponds to the JSON property `directoryCustomerId`
308
+ # @return [String]
309
+ attr_accessor :directory_customer_id
310
+
178
311
  def initialize(**args)
179
312
  update!(**args)
180
313
  end
181
314
 
182
315
  # Update properties of this object
183
316
  def update!(**args)
317
+ @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id)
184
318
  end
185
319
  end
186
320
 
187
- # Request message for `GetIamPolicy` method.
188
- class GetIamPolicyRequest
321
+ # Request message for `SetIamPolicy` method.
322
+ class SetIamPolicyRequest
189
323
  include Google::Apis::Core::Hashable
190
324
 
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).
335
+ # Corresponds to the JSON property `policy`
336
+ # @return [Google::Apis::CloudresourcemanagerV1::Policy]
337
+ attr_accessor :policy
338
+
191
339
  def initialize(**args)
192
340
  update!(**args)
193
341
  end
194
342
 
195
343
  # Update properties of this object
196
344
  def update!(**args)
345
+ @policy = args[:policy] if args.key?(:policy)
197
346
  end
198
347
  end
199
348
 
@@ -283,31 +432,16 @@ module Google
283
432
  end
284
433
  end
285
434
 
286
- # Request message for `SetIamPolicy` method.
287
- class SetIamPolicyRequest
435
+ # Request message for `GetIamPolicy` method.
436
+ class GetIamPolicyRequest
288
437
  include Google::Apis::Core::Hashable
289
438
 
290
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
291
- # access control policies for Cloud Platform resources. A `Policy` consists of a
292
- # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
293
- # the members can be user accounts, Google groups, Google domains, and service
294
- # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
295
- # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
296
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
297
- # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
298
- # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
299
- # IAM developer's guide](https://cloud.google.com/iam).
300
- # Corresponds to the JSON property `policy`
301
- # @return [Google::Apis::CloudresourcemanagerV1::Policy]
302
- attr_accessor :policy
303
-
304
439
  def initialize(**args)
305
440
  update!(**args)
306
441
  end
307
442
 
308
443
  # Update properties of this object
309
444
  def update!(**args)
310
- @policy = args[:policy] if args.key?(:policy)
311
445
  end
312
446
  end
313
447
 
@@ -316,8 +450,8 @@ module Google
316
450
  include Google::Apis::Core::Hashable
317
451
 
318
452
  # The set of permissions to check for the `resource`. Permissions with wildcards
319
- # (such as '*' or 'storage.*') are not allowed. For more information see IAM
320
- # Overview.
453
+ # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
454
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
321
455
  # Corresponds to the JSON property `permissions`
322
456
  # @return [Array<String>]
323
457
  attr_accessor :permissions
@@ -350,6 +484,263 @@ module Google
350
484
  @permissions = args[:permissions] if args.key?(:permissions)
351
485
  end
352
486
  end
487
+
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
491
+ include Google::Apis::Core::Hashable
492
+
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
542
+
543
+ def initialize(**args)
544
+ update!(**args)
545
+ end
546
+
547
+ # Update properties of this object
548
+ 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)
556
+ end
557
+ end
558
+
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
564
+ include Google::Apis::Core::Hashable
565
+
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
571
+
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`
575
+ # @return [String]
576
+ attr_accessor :id
577
+
578
+ def initialize(**args)
579
+ update!(**args)
580
+ end
581
+
582
+ # Update properties of this object
583
+ def update!(**args)
584
+ @type = args[:type] if args.key?(:type)
585
+ @id = args[:id] if args.key?(:id)
586
+ end
587
+ end
588
+
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
593
+ include Google::Apis::Core::Hashable
594
+
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
599
+
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`
607
+ # @return [String]
608
+ attr_accessor :next_page_token
609
+
610
+ def initialize(**args)
611
+ update!(**args)
612
+ end
613
+
614
+ # Update properties of this object
615
+ 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)
618
+ end
619
+ end
620
+
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 ````.
626
+ class Empty
627
+ include Google::Apis::Core::Hashable
628
+
629
+ def initialize(**args)
630
+ update!(**args)
631
+ end
632
+
633
+ # Update properties of this object
634
+ def update!(**args)
635
+ end
636
+ end
637
+
638
+ # The request sent to the UndeleteProject method.
639
+ class UndeleteProjectRequest
640
+ include Google::Apis::Core::Hashable
641
+
642
+ def initialize(**args)
643
+ update!(**args)
644
+ end
645
+
646
+ # Update properties of this object
647
+ def update!(**args)
648
+ end
649
+ end
650
+
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
655
+ include Google::Apis::Core::Hashable
656
+
657
+ # Creation time of the project creation workflow.
658
+ # Corresponds to the JSON property `createTime`
659
+ # @return [String]
660
+ attr_accessor :create_time
661
+
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
668
+
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
674
+
675
+ def initialize(**args)
676
+ update!(**args)
677
+ end
678
+
679
+ # Update properties of this object
680
+ 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)
684
+ end
685
+ end
686
+
687
+ # Metadata describing a long running folder operation
688
+ class FolderOperation
689
+ include Google::Apis::Core::Hashable
690
+
691
+ # The display name of the folder.
692
+ # Corresponds to the JSON property `displayName`
693
+ # @return [String]
694
+ attr_accessor :display_name
695
+
696
+ # The type of this operation.
697
+ # Corresponds to the JSON property `operationType`
698
+ # @return [String]
699
+ attr_accessor :operation_type
700
+
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`
704
+ # @return [String]
705
+ attr_accessor :source_parent
706
+
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`
710
+ # @return [String]
711
+ attr_accessor :destination_parent
712
+
713
+ def initialize(**args)
714
+ update!(**args)
715
+ end
716
+
717
+ # Update properties of this object
718
+ 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)
723
+ end
724
+ end
725
+
726
+ # A classification of the Folder Operation error.
727
+ class FolderOperationError
728
+ include Google::Apis::Core::Hashable
729
+
730
+ # The type of operation error experienced.
731
+ # Corresponds to the JSON property `errorMessageId`
732
+ # @return [String]
733
+ attr_accessor :error_message_id
734
+
735
+ def initialize(**args)
736
+ update!(**args)
737
+ end
738
+
739
+ # Update properties of this object
740
+ def update!(**args)
741
+ @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
742
+ end
743
+ end
353
744
  end
354
745
  end
355
746
  end