blob: 4d9383eac93ba89c3e0a8bdd96fed6af6c8d12e0 [file] [log] [blame]
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070075<h1><a href="cloudresourcemanager_v1beta1.html">Cloud Resource Manager API</a> . <a href="cloudresourcemanager_v1beta1.projects.html">projects</a></h1>
Nathaniel Manista4f877e52015-06-15 16:44:50 +000076<h2>Instance Methods</h2>
77<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070078 <code><a href="#create">create(body=None, useLegacyStack=None, x__xgafv=None)</a></code></p>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -080079<p class="firstline">Creates a Project resource.</p>
Nathaniel Manista4f877e52015-06-15 16:44:50 +000080<p class="toc_element">
Thomas Coffee2f245372017-03-27 10:39:26 -070081 <code><a href="#delete">delete(projectId, x__xgafv=None)</a></code></p>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -080082<p class="firstline">Marks the Project identified by the specified</p>
Nathaniel Manista4f877e52015-06-15 16:44:50 +000083<p class="toc_element">
Thomas Coffee2f245372017-03-27 10:39:26 -070084 <code><a href="#get">get(projectId, x__xgafv=None)</a></code></p>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -080085<p class="firstline">Retrieves the Project identified by the specified</p>
Nathaniel Manista4f877e52015-06-15 16:44:50 +000086<p class="toc_element">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070087 <code><a href="#getAncestry">getAncestry(projectId, body=None, x__xgafv=None)</a></code></p>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -080088<p class="firstline">Gets a list of ancestors in the resource hierarchy for the Project</p>
Sai Cheemalapatidf613972016-10-21 13:59:49 -070089<p class="toc_element">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070090 <code><a href="#getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</a></code></p>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -080091<p class="firstline">Returns the IAM access control policy for the specified Project.</p>
Takashi Matsuo06694102015-09-11 13:55:40 -070092<p class="toc_element">
Bu Sun Kim65020912020-05-20 12:08:20 -070093 <code><a href="#list">list(filter=None, pageToken=None, pageSize=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070094<p class="firstline">Lists Projects that the caller has the `resourcemanager.projects.get`</p>
Nathaniel Manista4f877e52015-06-15 16:44:50 +000095<p class="toc_element">
96 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
97<p class="firstline">Retrieves the next page of results.</p>
98<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070099 <code><a href="#setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700100<p class="firstline">Sets the IAM access control policy for the specified Project. Overwrites</p>
Takashi Matsuo06694102015-09-11 13:55:40 -0700101<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700102 <code><a href="#testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</a></code></p>
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -0800103<p class="firstline">Returns permissions that a caller has on the specified Project.</p>
Takashi Matsuo06694102015-09-11 13:55:40 -0700104<p class="toc_element">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700105 <code><a href="#undelete">undelete(projectId, body=None, x__xgafv=None)</a></code></p>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800106<p class="firstline">Restores the Project identified by the specified</p>
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000107<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700108 <code><a href="#update">update(projectId, body=None, x__xgafv=None)</a></code></p>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800109<p class="firstline">Updates the attributes of the Project identified by the specified</p>
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000110<h3>Method Details</h3>
111<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700112 <code class="details" id="create">create(body=None, useLegacyStack=None, x__xgafv=None)</code>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800113 <pre>Creates a Project resource.
114
115Initially, the Project resource is owned by its creator exclusively.
116The creator can later grant permission to others to read or update the
117Project.
118
119Several APIs are activated automatically for the Project, including
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700120Google Cloud Storage. The parent is identified by a specified
121ResourceId, which must include both an ID and a type, such as
122project, folder, or organization.
123
124This method does not associate the new project with a billing account.
125You can set or update the billing account associated with a project using
126the [`projects.updateBillingInfo`]
127(/billing/reference/rest/v1/projects/updateBillingInfo) method.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000128
129Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700130 body: object, The request body.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000131 The object takes the form of:
132
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800133{ # A Project is a high-level Google Cloud Platform entity. It is a
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400134 # container for ACLs, APIs, App Engine Apps, VMs, and other
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800135 # Google Cloud Platform resources.
Bu Sun Kim65020912020-05-20 12:08:20 -0700136 &quot;lifecycleState&quot;: &quot;A String&quot;, # The Project lifecycle state.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800137 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700138 # Read-only.
139 &quot;projectNumber&quot;: &quot;A String&quot;, # The number uniquely identifying the project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800140 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700141 # Example: &lt;code&gt;415104041262&lt;/code&gt;
142 # Read-only.
143 &quot;parent&quot;: { # A container to reference an id for any resource type. A `resource` in Google # An optional reference to a parent Resource.
144 #
145 # Supported parent types include &quot;organization&quot; and &quot;folder&quot;. Once set, the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700146 # parent cannot be cleared. The `parent` can be set on creation or using the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800147 # `UpdateProject` method; the end user must have the
148 # `resourcemanager.projects.create` permission on the parent.
149 #
150 # Read-write.
151 # Cloud Platform is a generic term for something you (a developer) may want to
Bu Sun Kim65020912020-05-20 12:08:20 -0700152 # interact with through one of our API&#x27;s. Some examples are an App Engine app,
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800153 # a Compute Engine instance, a Cloud SQL database, and so on.
Bu Sun Kim65020912020-05-20 12:08:20 -0700154 &quot;type&quot;: &quot;A String&quot;, # Required field representing the resource type this id is for.
155 # At present, the valid types are &quot;project&quot;, &quot;folder&quot;, and &quot;organization&quot;.
156 &quot;id&quot;: &quot;A String&quot;, # Required field for the type-specific id. This should correspond to the id
157 # used in the type-specific API&#x27;s.
Takashi Matsuo06694102015-09-11 13:55:40 -0700158 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700159 &quot;labels&quot;: { # The labels associated with this Project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800160 #
161 # Label keys must be between 1 and 63 characters long and must conform
162 # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
163 #
164 # Label values must be between 0 and 63 characters long and must conform
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700165 # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. A label
166 # value can be empty.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800167 #
168 # No more than 256 labels can be associated with a given resource.
169 #
170 # Clients should store labels in a representation such as JSON that does not
171 # depend on specific characters being disallowed.
172 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700173 # Example: &lt;code&gt;&quot;environment&quot; : &quot;dev&quot;&lt;/code&gt;
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800174 # Read-write.
Bu Sun Kim65020912020-05-20 12:08:20 -0700175 &quot;a_key&quot;: &quot;A String&quot;,
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000176 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700177 &quot;createTime&quot;: &quot;A String&quot;, # Creation time.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800178 #
179 # Read-only.
Bu Sun Kim65020912020-05-20 12:08:20 -0700180 &quot;name&quot;: &quot;A String&quot;, # The optional user-assigned display name of the Project.
181 # When present it must be between 4 to 30 characters.
182 # Allowed characters are: lowercase and uppercase letters, numbers,
183 # hyphen, single-quote, double-quote, space, and exclamation point.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800184 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700185 # Example: &lt;code&gt;My Project&lt;/code&gt;
186 # Read-write.
187 &quot;projectId&quot;: &quot;A String&quot;, # The unique, user-assigned ID of the Project.
188 # It must be 6 to 30 lowercase letters, digits, or hyphens.
189 # It must start with a letter.
190 # Trailing hyphens are prohibited.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800191 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700192 # Example: &lt;code&gt;tokyo-rain-123&lt;/code&gt;
193 # Read-only after creation.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000194}
195
Dan O'Mearadd494642020-05-01 07:42:23 -0700196 useLegacyStack: boolean, A now unused experiment opt-out option.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000197 x__xgafv: string, V1 error format.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800198 Allowed values
199 1 - v1 error format
200 2 - v2 error format
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000201
202Returns:
203 An object of the form:
204
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800205 { # A Project is a high-level Google Cloud Platform entity. It is a
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400206 # container for ACLs, APIs, App Engine Apps, VMs, and other
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800207 # Google Cloud Platform resources.
Bu Sun Kim65020912020-05-20 12:08:20 -0700208 &quot;lifecycleState&quot;: &quot;A String&quot;, # The Project lifecycle state.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800209 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700210 # Read-only.
211 &quot;projectNumber&quot;: &quot;A String&quot;, # The number uniquely identifying the project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800212 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700213 # Example: &lt;code&gt;415104041262&lt;/code&gt;
214 # Read-only.
215 &quot;parent&quot;: { # A container to reference an id for any resource type. A `resource` in Google # An optional reference to a parent Resource.
216 #
217 # Supported parent types include &quot;organization&quot; and &quot;folder&quot;. Once set, the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700218 # parent cannot be cleared. The `parent` can be set on creation or using the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800219 # `UpdateProject` method; the end user must have the
220 # `resourcemanager.projects.create` permission on the parent.
221 #
222 # Read-write.
223 # Cloud Platform is a generic term for something you (a developer) may want to
Bu Sun Kim65020912020-05-20 12:08:20 -0700224 # interact with through one of our API&#x27;s. Some examples are an App Engine app,
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800225 # a Compute Engine instance, a Cloud SQL database, and so on.
Bu Sun Kim65020912020-05-20 12:08:20 -0700226 &quot;type&quot;: &quot;A String&quot;, # Required field representing the resource type this id is for.
227 # At present, the valid types are &quot;project&quot;, &quot;folder&quot;, and &quot;organization&quot;.
228 &quot;id&quot;: &quot;A String&quot;, # Required field for the type-specific id. This should correspond to the id
229 # used in the type-specific API&#x27;s.
Takashi Matsuo06694102015-09-11 13:55:40 -0700230 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700231 &quot;labels&quot;: { # The labels associated with this Project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800232 #
233 # Label keys must be between 1 and 63 characters long and must conform
234 # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
235 #
236 # Label values must be between 0 and 63 characters long and must conform
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700237 # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. A label
238 # value can be empty.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800239 #
240 # No more than 256 labels can be associated with a given resource.
241 #
242 # Clients should store labels in a representation such as JSON that does not
243 # depend on specific characters being disallowed.
244 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700245 # Example: &lt;code&gt;&quot;environment&quot; : &quot;dev&quot;&lt;/code&gt;
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800246 # Read-write.
Bu Sun Kim65020912020-05-20 12:08:20 -0700247 &quot;a_key&quot;: &quot;A String&quot;,
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000248 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700249 &quot;createTime&quot;: &quot;A String&quot;, # Creation time.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800250 #
251 # Read-only.
Bu Sun Kim65020912020-05-20 12:08:20 -0700252 &quot;name&quot;: &quot;A String&quot;, # The optional user-assigned display name of the Project.
253 # When present it must be between 4 to 30 characters.
254 # Allowed characters are: lowercase and uppercase letters, numbers,
255 # hyphen, single-quote, double-quote, space, and exclamation point.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800256 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700257 # Example: &lt;code&gt;My Project&lt;/code&gt;
258 # Read-write.
259 &quot;projectId&quot;: &quot;A String&quot;, # The unique, user-assigned ID of the Project.
260 # It must be 6 to 30 lowercase letters, digits, or hyphens.
261 # It must start with a letter.
262 # Trailing hyphens are prohibited.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800263 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700264 # Example: &lt;code&gt;tokyo-rain-123&lt;/code&gt;
265 # Read-only after creation.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000266 }</pre>
267</div>
268
269<div class="method">
Thomas Coffee2f245372017-03-27 10:39:26 -0700270 <code class="details" id="delete">delete(projectId, x__xgafv=None)</code>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800271 <pre>Marks the Project identified by the specified
272`project_id` (for example, `my-project-123`) for deletion.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700273This method will only affect the Project if it has a lifecycle state of
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800274ACTIVE.
275
Bu Sun Kim65020912020-05-20 12:08:20 -0700276This method changes the Project&#x27;s lifecycle state from
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800277ACTIVE
278to DELETE_REQUESTED.
279The deletion starts at an unspecified time, at which point the project is
280no longer accessible.
281
282Until the deletion completes, you can check the lifecycle state
283checked by retrieving the Project with GetProject,
284and the Project remains visible to ListProjects.
285However, you cannot update the project.
286
287After the deletion completes, the Project is not retrievable by
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700288the GetProject
289and ListProjects
290methods.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800291
292The caller must have modify permissions for this Project.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000293
294Args:
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800295 projectId: string, The Project ID (for example, `foo-bar-123`).
296
297Required. (required)
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000298 x__xgafv: string, V1 error format.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800299 Allowed values
300 1 - v1 error format
301 2 - v2 error format
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000302
303Returns:
304 An object of the form:
305
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800306 { # A generic empty message that you can re-use to avoid defining duplicated
307 # empty messages in your APIs. A typical example is to use it as the request
308 # or the response type of an API method. For instance:
309 #
310 # service Foo {
311 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
312 # }
313 #
314 # The JSON representation for `Empty` is empty JSON object `{}`.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000315 }</pre>
316</div>
317
318<div class="method">
Thomas Coffee2f245372017-03-27 10:39:26 -0700319 <code class="details" id="get">get(projectId, x__xgafv=None)</code>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800320 <pre>Retrieves the Project identified by the specified
321`project_id` (for example, `my-project-123`).
322
323The caller must have read permissions for this Project.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000324
325Args:
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800326 projectId: string, The Project ID (for example, `my-project-123`).
327
328Required. (required)
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000329 x__xgafv: string, V1 error format.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800330 Allowed values
331 1 - v1 error format
332 2 - v2 error format
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000333
334Returns:
335 An object of the form:
336
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800337 { # A Project is a high-level Google Cloud Platform entity. It is a
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400338 # container for ACLs, APIs, App Engine Apps, VMs, and other
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800339 # Google Cloud Platform resources.
Bu Sun Kim65020912020-05-20 12:08:20 -0700340 &quot;lifecycleState&quot;: &quot;A String&quot;, # The Project lifecycle state.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800341 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700342 # Read-only.
343 &quot;projectNumber&quot;: &quot;A String&quot;, # The number uniquely identifying the project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800344 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700345 # Example: &lt;code&gt;415104041262&lt;/code&gt;
346 # Read-only.
347 &quot;parent&quot;: { # A container to reference an id for any resource type. A `resource` in Google # An optional reference to a parent Resource.
348 #
349 # Supported parent types include &quot;organization&quot; and &quot;folder&quot;. Once set, the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700350 # parent cannot be cleared. The `parent` can be set on creation or using the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800351 # `UpdateProject` method; the end user must have the
352 # `resourcemanager.projects.create` permission on the parent.
353 #
354 # Read-write.
355 # Cloud Platform is a generic term for something you (a developer) may want to
Bu Sun Kim65020912020-05-20 12:08:20 -0700356 # interact with through one of our API&#x27;s. Some examples are an App Engine app,
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800357 # a Compute Engine instance, a Cloud SQL database, and so on.
Bu Sun Kim65020912020-05-20 12:08:20 -0700358 &quot;type&quot;: &quot;A String&quot;, # Required field representing the resource type this id is for.
359 # At present, the valid types are &quot;project&quot;, &quot;folder&quot;, and &quot;organization&quot;.
360 &quot;id&quot;: &quot;A String&quot;, # Required field for the type-specific id. This should correspond to the id
361 # used in the type-specific API&#x27;s.
Takashi Matsuo06694102015-09-11 13:55:40 -0700362 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700363 &quot;labels&quot;: { # The labels associated with this Project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800364 #
365 # Label keys must be between 1 and 63 characters long and must conform
366 # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
367 #
368 # Label values must be between 0 and 63 characters long and must conform
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700369 # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. A label
370 # value can be empty.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800371 #
372 # No more than 256 labels can be associated with a given resource.
373 #
374 # Clients should store labels in a representation such as JSON that does not
375 # depend on specific characters being disallowed.
376 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700377 # Example: &lt;code&gt;&quot;environment&quot; : &quot;dev&quot;&lt;/code&gt;
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800378 # Read-write.
Bu Sun Kim65020912020-05-20 12:08:20 -0700379 &quot;a_key&quot;: &quot;A String&quot;,
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000380 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700381 &quot;createTime&quot;: &quot;A String&quot;, # Creation time.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800382 #
383 # Read-only.
Bu Sun Kim65020912020-05-20 12:08:20 -0700384 &quot;name&quot;: &quot;A String&quot;, # The optional user-assigned display name of the Project.
385 # When present it must be between 4 to 30 characters.
386 # Allowed characters are: lowercase and uppercase letters, numbers,
387 # hyphen, single-quote, double-quote, space, and exclamation point.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800388 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700389 # Example: &lt;code&gt;My Project&lt;/code&gt;
390 # Read-write.
391 &quot;projectId&quot;: &quot;A String&quot;, # The unique, user-assigned ID of the Project.
392 # It must be 6 to 30 lowercase letters, digits, or hyphens.
393 # It must start with a letter.
394 # Trailing hyphens are prohibited.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800395 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700396 # Example: &lt;code&gt;tokyo-rain-123&lt;/code&gt;
397 # Read-only after creation.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000398 }</pre>
399</div>
400
401<div class="method">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700402 <code class="details" id="getAncestry">getAncestry(projectId, body=None, x__xgafv=None)</code>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800403 <pre>Gets a list of ancestors in the resource hierarchy for the Project
404identified by the specified `project_id` (for example, `my-project-123`).
405
406The caller must have read permissions for this Project.
Sai Cheemalapatidf613972016-10-21 13:59:49 -0700407
408Args:
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800409 projectId: string, The Project ID (for example, `my-project-123`).
410
411Required. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700412 body: object, The request body.
Sai Cheemalapatidf613972016-10-21 13:59:49 -0700413 The object takes the form of:
414
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800415{ # The request sent to the
416 # GetAncestry
417 # method.
Sai Cheemalapatidf613972016-10-21 13:59:49 -0700418 }
419
420 x__xgafv: string, V1 error format.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800421 Allowed values
422 1 - v1 error format
423 2 - v2 error format
Sai Cheemalapatidf613972016-10-21 13:59:49 -0700424
425Returns:
426 An object of the form:
427
428 { # Response from the GetAncestry method.
Bu Sun Kim65020912020-05-20 12:08:20 -0700429 &quot;ancestor&quot;: [ # Ancestors are ordered from bottom to top of the resource hierarchy. The
430 # first ancestor is the project itself, followed by the project&#x27;s parent,
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800431 # etc.
Sai Cheemalapatidf613972016-10-21 13:59:49 -0700432 { # Identifying information for a single ancestor of a project.
Bu Sun Kim65020912020-05-20 12:08:20 -0700433 &quot;resourceId&quot;: { # A container to reference an id for any resource type. A `resource` in Google # Resource id of the ancestor.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800434 # Cloud Platform is a generic term for something you (a developer) may want to
Bu Sun Kim65020912020-05-20 12:08:20 -0700435 # interact with through one of our API&#x27;s. Some examples are an App Engine app,
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800436 # a Compute Engine instance, a Cloud SQL database, and so on.
Bu Sun Kim65020912020-05-20 12:08:20 -0700437 &quot;type&quot;: &quot;A String&quot;, # Required field representing the resource type this id is for.
438 # At present, the valid types are &quot;project&quot;, &quot;folder&quot;, and &quot;organization&quot;.
439 &quot;id&quot;: &quot;A String&quot;, # Required field for the type-specific id. This should correspond to the id
440 # used in the type-specific API&#x27;s.
Sai Cheemalapatidf613972016-10-21 13:59:49 -0700441 },
442 },
443 ],
444 }</pre>
445</div>
446
447<div class="method">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700448 <code class="details" id="getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</code>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800449 <pre>Returns the IAM access control policy for the specified Project.
450Permission is denied if the policy or the resource does not exist.
Takashi Matsuo06694102015-09-11 13:55:40 -0700451
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700452For additional information about resource structure and identification,
453see [Resource Names](/apis/design/resource_names).
454
Takashi Matsuo06694102015-09-11 13:55:40 -0700455Args:
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800456 resource: string, REQUIRED: The resource for which the policy is being requested.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400457See the operation documentation for the appropriate value for this field. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700458 body: object, The request body.
Takashi Matsuo06694102015-09-11 13:55:40 -0700459 The object takes the form of:
460
461{ # Request message for `GetIamPolicy` method.
Bu Sun Kim65020912020-05-20 12:08:20 -0700462 &quot;options&quot;: { # Encapsulates settings provided to GetIamPolicy. # OPTIONAL: A `GetPolicyOptions` object for specifying options to
Dan O'Mearadd494642020-05-01 07:42:23 -0700463 # `GetIamPolicy`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700464 &quot;requestedPolicyVersion&quot;: 42, # Optional. The policy format version to be returned.
Dan O'Mearadd494642020-05-01 07:42:23 -0700465 #
466 # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
467 # rejected.
468 #
469 # Requests for policies with any conditional bindings must specify version 3.
470 # Policies without any conditional bindings may specify any valid value or
471 # leave the field unset.
Bu Sun Kim65020912020-05-20 12:08:20 -0700472 #
473 # To learn which resources support conditions in their IAM policies, see the
474 # [IAM
475 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -0700476 },
Takashi Matsuo06694102015-09-11 13:55:40 -0700477 }
478
479 x__xgafv: string, V1 error format.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800480 Allowed values
481 1 - v1 error format
482 2 - v2 error format
Takashi Matsuo06694102015-09-11 13:55:40 -0700483
484Returns:
485 An object of the form:
486
Dan O'Mearadd494642020-05-01 07:42:23 -0700487 { # An Identity and Access Management (IAM) policy, which specifies access
488 # controls for Google Cloud resources.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800489 #
490 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700491 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
492 # `members` to a single `role`. Members can be user accounts, service accounts,
493 # Google groups, and domains (such as G Suite). A `role` is a named list of
494 # permissions; each `role` can be an IAM predefined role or a user-created
495 # custom role.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800496 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700497 # For some types of Google Cloud resources, a `binding` can also specify a
498 # `condition`, which is a logical expression that allows access to a resource
499 # only if the expression evaluates to `true`. A condition can add constraints
500 # based on attributes of the request, the resource, or both. To learn which
501 # resources support conditions in their IAM policies, see the
502 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -0700503 #
504 # **JSON example:**
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800505 #
506 # {
Bu Sun Kim65020912020-05-20 12:08:20 -0700507 # &quot;bindings&quot;: [
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800508 # {
Bu Sun Kim65020912020-05-20 12:08:20 -0700509 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
510 # &quot;members&quot;: [
511 # &quot;user:mike@example.com&quot;,
512 # &quot;group:admins@example.com&quot;,
513 # &quot;domain:google.com&quot;,
514 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800515 # ]
516 # },
517 # {
Bu Sun Kim65020912020-05-20 12:08:20 -0700518 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
519 # &quot;members&quot;: [
520 # &quot;user:eve@example.com&quot;
521 # ],
522 # &quot;condition&quot;: {
523 # &quot;title&quot;: &quot;expirable access&quot;,
524 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
525 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
Dan O'Mearadd494642020-05-01 07:42:23 -0700526 # }
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800527 # }
Dan O'Mearadd494642020-05-01 07:42:23 -0700528 # ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700529 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
530 # &quot;version&quot;: 3
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800531 # }
532 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700533 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700534 #
535 # bindings:
536 # - members:
537 # - user:mike@example.com
538 # - group:admins@example.com
539 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -0700540 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
541 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700542 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -0700543 # - user:eve@example.com
544 # role: roles/resourcemanager.organizationViewer
545 # condition:
546 # title: expirable access
547 # description: Does not grant access after Sep 2020
Bu Sun Kim65020912020-05-20 12:08:20 -0700548 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
Dan O'Mearadd494642020-05-01 07:42:23 -0700549 # - etag: BwWWja0YfJA=
550 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700551 #
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800552 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -0700553 # [IAM documentation](https://cloud.google.com/iam/docs/).
Bu Sun Kim65020912020-05-20 12:08:20 -0700554 &quot;auditConfigs&quot;: [ # Specifies cloud audit logging configuration for this policy.
555 { # Specifies the audit configuration for a service.
556 # The configuration determines which permission types are logged, and what
557 # identities, if any, are exempted from logging.
558 # An AuditConfig must have one or more AuditLogConfigs.
559 #
560 # If there are AuditConfigs for both `allServices` and a specific service,
561 # the union of the two AuditConfigs is used for that service: the log_types
562 # specified in each AuditConfig are enabled, and the exempted_members in each
563 # AuditLogConfig are exempted.
564 #
565 # Example Policy with multiple AuditConfigs:
566 #
567 # {
568 # &quot;audit_configs&quot;: [
569 # {
570 # &quot;service&quot;: &quot;allServices&quot;
571 # &quot;audit_log_configs&quot;: [
572 # {
573 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
574 # &quot;exempted_members&quot;: [
575 # &quot;user:jose@example.com&quot;
576 # ]
577 # },
578 # {
579 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
580 # },
581 # {
582 # &quot;log_type&quot;: &quot;ADMIN_READ&quot;,
583 # }
584 # ]
585 # },
586 # {
587 # &quot;service&quot;: &quot;sampleservice.googleapis.com&quot;
588 # &quot;audit_log_configs&quot;: [
589 # {
590 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
591 # },
592 # {
593 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
594 # &quot;exempted_members&quot;: [
595 # &quot;user:aliya@example.com&quot;
596 # ]
597 # }
598 # ]
599 # }
600 # ]
601 # }
602 #
603 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
604 # logging. It also exempts jose@example.com from DATA_READ logging, and
605 # aliya@example.com from DATA_WRITE logging.
606 &quot;service&quot;: &quot;A String&quot;, # Specifies a service that will be enabled for audit logging.
607 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
608 # `allServices` is a special value that covers all services.
609 &quot;auditLogConfigs&quot;: [ # The configuration for logging of each type of permission.
610 { # Provides the configuration for logging a type of permissions.
611 # Example:
612 #
613 # {
614 # &quot;audit_log_configs&quot;: [
615 # {
616 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
617 # &quot;exempted_members&quot;: [
618 # &quot;user:jose@example.com&quot;
619 # ]
620 # },
621 # {
622 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
623 # }
624 # ]
625 # }
626 #
627 # This enables &#x27;DATA_READ&#x27; and &#x27;DATA_WRITE&#x27; logging, while exempting
628 # jose@example.com from DATA_READ logging.
629 &quot;exemptedMembers&quot;: [ # Specifies the identities that do not cause logging for this type of
630 # permission.
631 # Follows the same format of Binding.members.
632 &quot;A String&quot;,
633 ],
634 &quot;logType&quot;: &quot;A String&quot;, # The log type that this config enables.
635 },
636 ],
637 },
638 ],
639 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
Dan O'Mearadd494642020-05-01 07:42:23 -0700640 # `condition` that determines how and when the `bindings` are applied. Each
641 # of the `bindings` must contain at least one member.
Takashi Matsuo06694102015-09-11 13:55:40 -0700642 { # Associates `members` with a `role`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700643 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800644 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700645 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
646 #
647 # If the condition evaluates to `true`, then this binding applies to the
648 # current request.
649 #
650 # If the condition evaluates to `false`, then this binding does not apply to
651 # the current request. However, a different role binding might grant the same
652 # role to one or more of the members in this binding.
653 #
654 # To learn which resources support conditions in their IAM policies, see the
655 # [IAM
656 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -0700657 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
658 # are documented at https://github.com/google/cel-spec.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700659 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700660 # Example (Comparison):
661 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700662 # title: &quot;Summary size limit&quot;
663 # description: &quot;Determines if a summary is less than 100 chars&quot;
664 # expression: &quot;document.summary.size() &lt; 100&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -0700665 #
666 # Example (Equality):
667 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700668 # title: &quot;Requestor is owner&quot;
669 # description: &quot;Determines if requestor is the document owner&quot;
670 # expression: &quot;document.owner == request.auth.claims.email&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -0700671 #
672 # Example (Logic):
673 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700674 # title: &quot;Public documents&quot;
675 # description: &quot;Determine whether the document should be publicly visible&quot;
676 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -0700677 #
678 # Example (Data Manipulation):
679 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700680 # title: &quot;Notification string&quot;
681 # description: &quot;Create a notification string with a timestamp.&quot;
682 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -0700683 #
684 # The exact variables and functions that may be referenced within an expression
685 # are determined by the service that evaluates it. See the service
686 # documentation for additional information.
Bu Sun Kim65020912020-05-20 12:08:20 -0700687 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700688 # its purpose. This can be used e.g. in UIs which allow to enter the
689 # expression.
Bu Sun Kim65020912020-05-20 12:08:20 -0700690 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
691 # reporting, e.g. a file name and a position in the file.
692 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
693 # describes the expression, e.g. when hovered over it in a UI.
694 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
695 # syntax.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700696 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700697 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800698 # `members` can have the following values:
699 #
700 # * `allUsers`: A special identifier that represents anyone who is
701 # on the internet; with or without a Google account.
702 #
703 # * `allAuthenticatedUsers`: A special identifier that represents anyone
704 # who is authenticated with a Google account or a service account.
705 #
706 # * `user:{emailid}`: An email address that represents a specific Google
Dan O'Mearadd494642020-05-01 07:42:23 -0700707 # account. For example, `alice@example.com` .
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800708 #
709 #
710 # * `serviceAccount:{emailid}`: An email address that represents a service
711 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
712 #
713 # * `group:{emailid}`: An email address that represents a Google group.
714 # For example, `admins@example.com`.
715 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700716 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
717 # identifier) representing a user that has been recently deleted. For
718 # example, `alice@example.com?uid=123456789012345678901`. If the user is
719 # recovered, this value reverts to `user:{emailid}` and the recovered user
720 # retains the role in the binding.
721 #
722 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
723 # unique identifier) representing a service account that has been recently
724 # deleted. For example,
725 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
726 # If the service account is undeleted, this value reverts to
727 # `serviceAccount:{emailid}` and the undeleted service account retains the
728 # role in the binding.
729 #
730 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
731 # identifier) representing a Google group that has been recently
732 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
733 # the group is recovered, this value reverts to `group:{emailid}` and the
734 # recovered group retains the role in the binding.
735 #
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400736 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700737 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800738 # users of that domain. For example, `google.com` or `example.com`.
739 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700740 &quot;A String&quot;,
Takashi Matsuo06694102015-09-11 13:55:40 -0700741 ],
742 },
743 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700744 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400745 # prevent simultaneous updates of a policy from overwriting each other.
746 # It is strongly suggested that systems make use of the `etag` in the
747 # read-modify-write cycle to perform policy updates in order to avoid race
748 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
749 # systems are expected to put that etag in the request to `setIamPolicy` to
750 # ensure that their change will be applied to the same version of the policy.
751 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700752 # **Important:** If you use IAM Conditions, you must include the `etag` field
753 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
754 # you to overwrite a version `3` policy with a version `1` policy, and all of
755 # the conditions in the version `3` policy are lost.
Bu Sun Kim65020912020-05-20 12:08:20 -0700756 &quot;version&quot;: 42, # Specifies the format of the policy.
Dan O'Mearadd494642020-05-01 07:42:23 -0700757 #
758 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
759 # are rejected.
760 #
761 # Any operation that affects conditional role bindings must specify version
762 # `3`. This requirement applies to the following operations:
763 #
764 # * Getting a policy that includes a conditional role binding
765 # * Adding a conditional role binding to a policy
766 # * Changing a conditional role binding in a policy
767 # * Removing any role binding, with or without a condition, from a policy
768 # that includes conditions
769 #
770 # **Important:** If you use IAM Conditions, you must include the `etag` field
771 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
772 # you to overwrite a version `3` policy with a version `1` policy, and all of
773 # the conditions in the version `3` policy are lost.
774 #
775 # If a policy does not include any conditions, operations on that policy may
776 # specify any valid version or leave the field unset.
Bu Sun Kim65020912020-05-20 12:08:20 -0700777 #
778 # To learn which resources support conditions in their IAM policies, see the
779 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Takashi Matsuo06694102015-09-11 13:55:40 -0700780 }</pre>
781</div>
782
783<div class="method">
Bu Sun Kim65020912020-05-20 12:08:20 -0700784 <code class="details" id="list">list(filter=None, pageToken=None, pageSize=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700785 <pre>Lists Projects that the caller has the `resourcemanager.projects.get`
786permission on and satisfy the specified filter.
787
788This method returns Projects in an unspecified order.
789This method is eventually consistent with project mutations; this means
790that a newly created project may not appear in the results or recent
791updates to an existing project may not be reflected in the results. To
792retrieve the latest state of a project, use the
793GetProject method.
794
795NOTE: If the request filter contains a `parent.type` and `parent.id` and
796the caller has the `resourcemanager.projects.list` permission on the
797parent, the results will be drawn from an alternate index which provides
798more consistent results. In future versions of this API, this List method
799will be split into List and Search to properly capture the behavorial
800difference.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000801
802Args:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700803 filter: string, An expression for filtering the results of the request. Filter rules are
804case insensitive. The fields eligible for filtering are:
805
806+ `name`
807+ `id`
Dan O'Mearadd494642020-05-01 07:42:23 -0700808+ `labels.&lt;key&gt;` (where *key* is the name of a label)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700809+ `parent.type`
810+ `parent.id`
811
812Some examples of using labels as filters:
813
814| Filter | Description |
815|------------------|-----------------------------------------------------|
Bu Sun Kim65020912020-05-20 12:08:20 -0700816| name:how* | The project&#x27;s name starts with &quot;how&quot;. |
817| name:Howl | The project&#x27;s name is `Howl` or `howl`. |
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700818| name:HOWL | Equivalent to above. |
819| NAME:howl | Equivalent to above. |
820| labels.color:* | The project has the label `color`. |
Bu Sun Kim65020912020-05-20 12:08:20 -0700821| labels.color:red | The project&#x27;s label `color` has the value `red`. |
822| labels.color:red&amp;nbsp;labels.size:big |The project&#x27;s label `color` has
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700823 the value `red` and its label `size` has the value `big`. |
824
825If no filter is specified, the call will return projects for which the user
826has the `resourcemanager.projects.get` permission.
827
828NOTE: To perform a by-parent query (eg., what projects are directly in a
829Folder), the caller must have the `resourcemanager.projects.list`
830permission on the parent and the filter must contain both a `parent.type`
831and a `parent.id` restriction
Bu Sun Kim65020912020-05-20 12:08:20 -0700832(example: &quot;parent.type:folder parent.id:123&quot;). In this case an alternate
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700833search index is used which provides more consistent results.
834
835Optional.
Bu Sun Kim65020912020-05-20 12:08:20 -0700836 pageToken: string, A pagination token returned from a previous call to ListProjects
837that indicates from where listing should continue.
838
839Optional.
840 pageSize: integer, The maximum number of Projects to return in the response.
841The server can return fewer Projects than requested.
842If unspecified, server picks an appropriate default.
843
844Optional.
845 x__xgafv: string, V1 error format.
846 Allowed values
847 1 - v1 error format
848 2 - v2 error format
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000849
850Returns:
851 An object of the form:
852
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800853 { # A page of the response received from the
854 # ListProjects
855 # method.
856 #
857 # A paginated response where more pages are available has
858 # `next_page_token` set. This token can be used in a subsequent request to
859 # retrieve the next request page.
Bu Sun Kim65020912020-05-20 12:08:20 -0700860 &quot;projects&quot;: [ # The list of Projects that matched the list filter. This list can
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800861 # be paginated.
862 { # A Project is a high-level Google Cloud Platform entity. It is a
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400863 # container for ACLs, APIs, App Engine Apps, VMs, and other
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800864 # Google Cloud Platform resources.
Bu Sun Kim65020912020-05-20 12:08:20 -0700865 &quot;lifecycleState&quot;: &quot;A String&quot;, # The Project lifecycle state.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800866 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700867 # Read-only.
868 &quot;projectNumber&quot;: &quot;A String&quot;, # The number uniquely identifying the project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800869 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700870 # Example: &lt;code&gt;415104041262&lt;/code&gt;
871 # Read-only.
872 &quot;parent&quot;: { # A container to reference an id for any resource type. A `resource` in Google # An optional reference to a parent Resource.
873 #
874 # Supported parent types include &quot;organization&quot; and &quot;folder&quot;. Once set, the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700875 # parent cannot be cleared. The `parent` can be set on creation or using the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800876 # `UpdateProject` method; the end user must have the
877 # `resourcemanager.projects.create` permission on the parent.
878 #
879 # Read-write.
880 # Cloud Platform is a generic term for something you (a developer) may want to
Bu Sun Kim65020912020-05-20 12:08:20 -0700881 # interact with through one of our API&#x27;s. Some examples are an App Engine app,
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800882 # a Compute Engine instance, a Cloud SQL database, and so on.
Bu Sun Kim65020912020-05-20 12:08:20 -0700883 &quot;type&quot;: &quot;A String&quot;, # Required field representing the resource type this id is for.
884 # At present, the valid types are &quot;project&quot;, &quot;folder&quot;, and &quot;organization&quot;.
885 &quot;id&quot;: &quot;A String&quot;, # Required field for the type-specific id. This should correspond to the id
886 # used in the type-specific API&#x27;s.
Takashi Matsuo06694102015-09-11 13:55:40 -0700887 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700888 &quot;labels&quot;: { # The labels associated with this Project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800889 #
890 # Label keys must be between 1 and 63 characters long and must conform
891 # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
892 #
893 # Label values must be between 0 and 63 characters long and must conform
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700894 # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. A label
895 # value can be empty.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800896 #
897 # No more than 256 labels can be associated with a given resource.
898 #
899 # Clients should store labels in a representation such as JSON that does not
900 # depend on specific characters being disallowed.
901 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700902 # Example: &lt;code&gt;&quot;environment&quot; : &quot;dev&quot;&lt;/code&gt;
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800903 # Read-write.
Bu Sun Kim65020912020-05-20 12:08:20 -0700904 &quot;a_key&quot;: &quot;A String&quot;,
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000905 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700906 &quot;createTime&quot;: &quot;A String&quot;, # Creation time.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800907 #
908 # Read-only.
Bu Sun Kim65020912020-05-20 12:08:20 -0700909 &quot;name&quot;: &quot;A String&quot;, # The optional user-assigned display name of the Project.
910 # When present it must be between 4 to 30 characters.
911 # Allowed characters are: lowercase and uppercase letters, numbers,
912 # hyphen, single-quote, double-quote, space, and exclamation point.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800913 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700914 # Example: &lt;code&gt;My Project&lt;/code&gt;
915 # Read-write.
916 &quot;projectId&quot;: &quot;A String&quot;, # The unique, user-assigned ID of the Project.
917 # It must be 6 to 30 lowercase letters, digits, or hyphens.
918 # It must start with a letter.
919 # Trailing hyphens are prohibited.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800920 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700921 # Example: &lt;code&gt;tokyo-rain-123&lt;/code&gt;
922 # Read-only after creation.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000923 },
924 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700925 &quot;nextPageToken&quot;: &quot;A String&quot;, # Pagination token.
926 #
927 # If the result set is too large to fit in a single response, this token
928 # is returned. It encodes the position of the current result cursor.
929 # Feeding this value into a new list request with the `page_token` parameter
930 # gives the next page of the results.
931 #
932 # When `next_page_token` is not filled in, there is no next page and
933 # the list returned is the last page in the result set.
934 #
935 # Pagination tokens have a limited lifetime.
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000936 }</pre>
937</div>
938
939<div class="method">
940 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
941 <pre>Retrieves the next page of results.
942
943Args:
944 previous_request: The request for the previous page. (required)
945 previous_response: The response from the request for the previous page. (required)
946
947Returns:
Bu Sun Kim65020912020-05-20 12:08:20 -0700948 A request object that you can call &#x27;execute()&#x27; on to request the next
Nathaniel Manista4f877e52015-06-15 16:44:50 +0000949 page. Returns None if there are no more items in the collection.
950 </pre>
951</div>
952
953<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700954 <code class="details" id="setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700955 <pre>Sets the IAM access control policy for the specified Project. Overwrites
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800956any existing policy.
957
958The following constraints apply when using `setIamPolicy()`:
959
960+ Project does not support `allUsers` and `allAuthenticatedUsers` as
961`members` in a `Binding` of a `Policy`.
962
Dan O'Mearadd494642020-05-01 07:42:23 -0700963+ The owner role can be granted to a `user`, `serviceAccount`, or a group
964that is part of an organization. For example,
965group@myownpersonaldomain.com could be added as an owner to a project in
966the myownpersonaldomain.com organization, but not the examplepetstore.com
967organization.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800968
969+ Service accounts can be made owners of a project directly
970without any restrictions. However, to be added as an owner, a user must be
971invited via Cloud Platform console and must accept the invitation.
972
973+ A user cannot be granted the owner role using `setIamPolicy()`. The user
974must be granted the owner role using the Cloud Platform Console and must
975explicitly accept the invitation.
976
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700977+ Invitations to grant the owner role cannot be sent using
978`setIamPolicy()`; they must be sent only using the Cloud Platform Console.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800979
980+ Membership changes that leave the project without any owners that have
981accepted the Terms of Service (ToS) will be rejected.
982
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700983+ If the project is not part of an organization, there must be at least
984one owner who has accepted the Terms of Service (ToS) agreement in the
985policy. Calling `setIamPolicy()` to remove the last ToS-accepted owner
986from the policy will fail. This restriction also applies to legacy
987projects that no longer have owners who have accepted the ToS. Edits to
988IAM policies will be rejected until the lack of a ToS-accepting owner is
989rectified.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800990
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700991+ This method will replace the existing policy, and cannot be used to
992append additional IAM settings.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -0800993
994Note: Removing service accounts from policies or changing their roles
995can render services completely inoperable. It is important to understand
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700996how the service account is being used before removing or updating its
997roles.
Takashi Matsuo06694102015-09-11 13:55:40 -0700998
999Args:
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001000 resource: string, REQUIRED: The resource for which the policy is being specified.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001001See the operation documentation for the appropriate value for this field. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001002 body: object, The request body.
Takashi Matsuo06694102015-09-11 13:55:40 -07001003 The object takes the form of:
1004
1005{ # Request message for `SetIamPolicy` method.
Bu Sun Kim65020912020-05-20 12:08:20 -07001006 &quot;policy&quot;: { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the `resource`. The size of
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001007 # the policy is limited to a few 10s of KB. An empty policy is a
1008 # valid policy but certain Cloud Platform services (such as Projects)
1009 # might reject them.
Dan O'Mearadd494642020-05-01 07:42:23 -07001010 # controls for Google Cloud resources.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001011 #
1012 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001013 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1014 # `members` to a single `role`. Members can be user accounts, service accounts,
1015 # Google groups, and domains (such as G Suite). A `role` is a named list of
1016 # permissions; each `role` can be an IAM predefined role or a user-created
1017 # custom role.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001018 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001019 # For some types of Google Cloud resources, a `binding` can also specify a
1020 # `condition`, which is a logical expression that allows access to a resource
1021 # only if the expression evaluates to `true`. A condition can add constraints
1022 # based on attributes of the request, the resource, or both. To learn which
1023 # resources support conditions in their IAM policies, see the
1024 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -07001025 #
1026 # **JSON example:**
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001027 #
1028 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07001029 # &quot;bindings&quot;: [
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001030 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07001031 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
1032 # &quot;members&quot;: [
1033 # &quot;user:mike@example.com&quot;,
1034 # &quot;group:admins@example.com&quot;,
1035 # &quot;domain:google.com&quot;,
1036 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001037 # ]
1038 # },
1039 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07001040 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
1041 # &quot;members&quot;: [
1042 # &quot;user:eve@example.com&quot;
1043 # ],
1044 # &quot;condition&quot;: {
1045 # &quot;title&quot;: &quot;expirable access&quot;,
1046 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
1047 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
Dan O'Mearadd494642020-05-01 07:42:23 -07001048 # }
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001049 # }
Dan O'Mearadd494642020-05-01 07:42:23 -07001050 # ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001051 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
1052 # &quot;version&quot;: 3
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001053 # }
1054 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001055 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001056 #
1057 # bindings:
1058 # - members:
1059 # - user:mike@example.com
1060 # - group:admins@example.com
1061 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -07001062 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1063 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001064 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -07001065 # - user:eve@example.com
1066 # role: roles/resourcemanager.organizationViewer
1067 # condition:
1068 # title: expirable access
1069 # description: Does not grant access after Sep 2020
Bu Sun Kim65020912020-05-20 12:08:20 -07001070 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
Dan O'Mearadd494642020-05-01 07:42:23 -07001071 # - etag: BwWWja0YfJA=
1072 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001073 #
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001074 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -07001075 # [IAM documentation](https://cloud.google.com/iam/docs/).
Bu Sun Kim65020912020-05-20 12:08:20 -07001076 &quot;auditConfigs&quot;: [ # Specifies cloud audit logging configuration for this policy.
1077 { # Specifies the audit configuration for a service.
1078 # The configuration determines which permission types are logged, and what
1079 # identities, if any, are exempted from logging.
1080 # An AuditConfig must have one or more AuditLogConfigs.
1081 #
1082 # If there are AuditConfigs for both `allServices` and a specific service,
1083 # the union of the two AuditConfigs is used for that service: the log_types
1084 # specified in each AuditConfig are enabled, and the exempted_members in each
1085 # AuditLogConfig are exempted.
1086 #
1087 # Example Policy with multiple AuditConfigs:
1088 #
1089 # {
1090 # &quot;audit_configs&quot;: [
1091 # {
1092 # &quot;service&quot;: &quot;allServices&quot;
1093 # &quot;audit_log_configs&quot;: [
1094 # {
1095 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1096 # &quot;exempted_members&quot;: [
1097 # &quot;user:jose@example.com&quot;
1098 # ]
1099 # },
1100 # {
1101 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1102 # },
1103 # {
1104 # &quot;log_type&quot;: &quot;ADMIN_READ&quot;,
1105 # }
1106 # ]
1107 # },
1108 # {
1109 # &quot;service&quot;: &quot;sampleservice.googleapis.com&quot;
1110 # &quot;audit_log_configs&quot;: [
1111 # {
1112 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1113 # },
1114 # {
1115 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1116 # &quot;exempted_members&quot;: [
1117 # &quot;user:aliya@example.com&quot;
1118 # ]
1119 # }
1120 # ]
1121 # }
1122 # ]
1123 # }
1124 #
1125 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1126 # logging. It also exempts jose@example.com from DATA_READ logging, and
1127 # aliya@example.com from DATA_WRITE logging.
1128 &quot;service&quot;: &quot;A String&quot;, # Specifies a service that will be enabled for audit logging.
1129 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1130 # `allServices` is a special value that covers all services.
1131 &quot;auditLogConfigs&quot;: [ # The configuration for logging of each type of permission.
1132 { # Provides the configuration for logging a type of permissions.
1133 # Example:
1134 #
1135 # {
1136 # &quot;audit_log_configs&quot;: [
1137 # {
1138 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1139 # &quot;exempted_members&quot;: [
1140 # &quot;user:jose@example.com&quot;
1141 # ]
1142 # },
1143 # {
1144 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1145 # }
1146 # ]
1147 # }
1148 #
1149 # This enables &#x27;DATA_READ&#x27; and &#x27;DATA_WRITE&#x27; logging, while exempting
1150 # jose@example.com from DATA_READ logging.
1151 &quot;exemptedMembers&quot;: [ # Specifies the identities that do not cause logging for this type of
1152 # permission.
1153 # Follows the same format of Binding.members.
1154 &quot;A String&quot;,
1155 ],
1156 &quot;logType&quot;: &quot;A String&quot;, # The log type that this config enables.
1157 },
1158 ],
1159 },
1160 ],
1161 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
Dan O'Mearadd494642020-05-01 07:42:23 -07001162 # `condition` that determines how and when the `bindings` are applied. Each
1163 # of the `bindings` must contain at least one member.
Takashi Matsuo06694102015-09-11 13:55:40 -07001164 { # Associates `members` with a `role`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001165 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001166 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001167 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
1168 #
1169 # If the condition evaluates to `true`, then this binding applies to the
1170 # current request.
1171 #
1172 # If the condition evaluates to `false`, then this binding does not apply to
1173 # the current request. However, a different role binding might grant the same
1174 # role to one or more of the members in this binding.
1175 #
1176 # To learn which resources support conditions in their IAM policies, see the
1177 # [IAM
1178 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -07001179 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
1180 # are documented at https://github.com/google/cel-spec.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001181 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001182 # Example (Comparison):
1183 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001184 # title: &quot;Summary size limit&quot;
1185 # description: &quot;Determines if a summary is less than 100 chars&quot;
1186 # expression: &quot;document.summary.size() &lt; 100&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -07001187 #
1188 # Example (Equality):
1189 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001190 # title: &quot;Requestor is owner&quot;
1191 # description: &quot;Determines if requestor is the document owner&quot;
1192 # expression: &quot;document.owner == request.auth.claims.email&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -07001193 #
1194 # Example (Logic):
1195 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001196 # title: &quot;Public documents&quot;
1197 # description: &quot;Determine whether the document should be publicly visible&quot;
1198 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -07001199 #
1200 # Example (Data Manipulation):
1201 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001202 # title: &quot;Notification string&quot;
1203 # description: &quot;Create a notification string with a timestamp.&quot;
1204 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -07001205 #
1206 # The exact variables and functions that may be referenced within an expression
1207 # are determined by the service that evaluates it. See the service
1208 # documentation for additional information.
Bu Sun Kim65020912020-05-20 12:08:20 -07001209 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001210 # its purpose. This can be used e.g. in UIs which allow to enter the
1211 # expression.
Bu Sun Kim65020912020-05-20 12:08:20 -07001212 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
1213 # reporting, e.g. a file name and a position in the file.
1214 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
1215 # describes the expression, e.g. when hovered over it in a UI.
1216 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
1217 # syntax.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001218 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001219 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001220 # `members` can have the following values:
1221 #
1222 # * `allUsers`: A special identifier that represents anyone who is
1223 # on the internet; with or without a Google account.
1224 #
1225 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1226 # who is authenticated with a Google account or a service account.
1227 #
1228 # * `user:{emailid}`: An email address that represents a specific Google
Dan O'Mearadd494642020-05-01 07:42:23 -07001229 # account. For example, `alice@example.com` .
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001230 #
1231 #
1232 # * `serviceAccount:{emailid}`: An email address that represents a service
1233 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1234 #
1235 # * `group:{emailid}`: An email address that represents a Google group.
1236 # For example, `admins@example.com`.
1237 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001238 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
1239 # identifier) representing a user that has been recently deleted. For
1240 # example, `alice@example.com?uid=123456789012345678901`. If the user is
1241 # recovered, this value reverts to `user:{emailid}` and the recovered user
1242 # retains the role in the binding.
1243 #
1244 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
1245 # unique identifier) representing a service account that has been recently
1246 # deleted. For example,
1247 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
1248 # If the service account is undeleted, this value reverts to
1249 # `serviceAccount:{emailid}` and the undeleted service account retains the
1250 # role in the binding.
1251 #
1252 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
1253 # identifier) representing a Google group that has been recently
1254 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
1255 # the group is recovered, this value reverts to `group:{emailid}` and the
1256 # recovered group retains the role in the binding.
1257 #
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001258 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001259 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001260 # users of that domain. For example, `google.com` or `example.com`.
1261 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001262 &quot;A String&quot;,
Takashi Matsuo06694102015-09-11 13:55:40 -07001263 ],
1264 },
1265 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001266 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001267 # prevent simultaneous updates of a policy from overwriting each other.
1268 # It is strongly suggested that systems make use of the `etag` in the
1269 # read-modify-write cycle to perform policy updates in order to avoid race
1270 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1271 # systems are expected to put that etag in the request to `setIamPolicy` to
1272 # ensure that their change will be applied to the same version of the policy.
1273 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001274 # **Important:** If you use IAM Conditions, you must include the `etag` field
1275 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1276 # you to overwrite a version `3` policy with a version `1` policy, and all of
1277 # the conditions in the version `3` policy are lost.
Bu Sun Kim65020912020-05-20 12:08:20 -07001278 &quot;version&quot;: 42, # Specifies the format of the policy.
Dan O'Mearadd494642020-05-01 07:42:23 -07001279 #
1280 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1281 # are rejected.
1282 #
1283 # Any operation that affects conditional role bindings must specify version
1284 # `3`. This requirement applies to the following operations:
1285 #
1286 # * Getting a policy that includes a conditional role binding
1287 # * Adding a conditional role binding to a policy
1288 # * Changing a conditional role binding in a policy
1289 # * Removing any role binding, with or without a condition, from a policy
1290 # that includes conditions
1291 #
1292 # **Important:** If you use IAM Conditions, you must include the `etag` field
1293 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1294 # you to overwrite a version `3` policy with a version `1` policy, and all of
1295 # the conditions in the version `3` policy are lost.
1296 #
1297 # If a policy does not include any conditions, operations on that policy may
1298 # specify any valid version or leave the field unset.
Bu Sun Kim65020912020-05-20 12:08:20 -07001299 #
1300 # To learn which resources support conditions in their IAM policies, see the
1301 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Takashi Matsuo06694102015-09-11 13:55:40 -07001302 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001303 &quot;updateMask&quot;: &quot;A String&quot;, # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
Sai Cheemalapatie833b792017-03-24 15:06:46 -07001304 # the fields in the mask will be modified. If no mask is provided, the
1305 # following default mask is used:
Dan O'Mearadd494642020-05-01 07:42:23 -07001306 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001307 # `paths: &quot;bindings, etag&quot;`
Takashi Matsuo06694102015-09-11 13:55:40 -07001308 }
1309
1310 x__xgafv: string, V1 error format.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001311 Allowed values
1312 1 - v1 error format
1313 2 - v2 error format
Takashi Matsuo06694102015-09-11 13:55:40 -07001314
1315Returns:
1316 An object of the form:
1317
Dan O'Mearadd494642020-05-01 07:42:23 -07001318 { # An Identity and Access Management (IAM) policy, which specifies access
1319 # controls for Google Cloud resources.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001320 #
1321 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001322 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1323 # `members` to a single `role`. Members can be user accounts, service accounts,
1324 # Google groups, and domains (such as G Suite). A `role` is a named list of
1325 # permissions; each `role` can be an IAM predefined role or a user-created
1326 # custom role.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001327 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001328 # For some types of Google Cloud resources, a `binding` can also specify a
1329 # `condition`, which is a logical expression that allows access to a resource
1330 # only if the expression evaluates to `true`. A condition can add constraints
1331 # based on attributes of the request, the resource, or both. To learn which
1332 # resources support conditions in their IAM policies, see the
1333 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -07001334 #
1335 # **JSON example:**
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001336 #
1337 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07001338 # &quot;bindings&quot;: [
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001339 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07001340 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
1341 # &quot;members&quot;: [
1342 # &quot;user:mike@example.com&quot;,
1343 # &quot;group:admins@example.com&quot;,
1344 # &quot;domain:google.com&quot;,
1345 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001346 # ]
1347 # },
1348 # {
Bu Sun Kim65020912020-05-20 12:08:20 -07001349 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
1350 # &quot;members&quot;: [
1351 # &quot;user:eve@example.com&quot;
1352 # ],
1353 # &quot;condition&quot;: {
1354 # &quot;title&quot;: &quot;expirable access&quot;,
1355 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
1356 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
Dan O'Mearadd494642020-05-01 07:42:23 -07001357 # }
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001358 # }
Dan O'Mearadd494642020-05-01 07:42:23 -07001359 # ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001360 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
1361 # &quot;version&quot;: 3
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001362 # }
1363 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001364 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001365 #
1366 # bindings:
1367 # - members:
1368 # - user:mike@example.com
1369 # - group:admins@example.com
1370 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -07001371 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1372 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001373 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -07001374 # - user:eve@example.com
1375 # role: roles/resourcemanager.organizationViewer
1376 # condition:
1377 # title: expirable access
1378 # description: Does not grant access after Sep 2020
Bu Sun Kim65020912020-05-20 12:08:20 -07001379 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
Dan O'Mearadd494642020-05-01 07:42:23 -07001380 # - etag: BwWWja0YfJA=
1381 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001382 #
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001383 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -07001384 # [IAM documentation](https://cloud.google.com/iam/docs/).
Bu Sun Kim65020912020-05-20 12:08:20 -07001385 &quot;auditConfigs&quot;: [ # Specifies cloud audit logging configuration for this policy.
1386 { # Specifies the audit configuration for a service.
1387 # The configuration determines which permission types are logged, and what
1388 # identities, if any, are exempted from logging.
1389 # An AuditConfig must have one or more AuditLogConfigs.
1390 #
1391 # If there are AuditConfigs for both `allServices` and a specific service,
1392 # the union of the two AuditConfigs is used for that service: the log_types
1393 # specified in each AuditConfig are enabled, and the exempted_members in each
1394 # AuditLogConfig are exempted.
1395 #
1396 # Example Policy with multiple AuditConfigs:
1397 #
1398 # {
1399 # &quot;audit_configs&quot;: [
1400 # {
1401 # &quot;service&quot;: &quot;allServices&quot;
1402 # &quot;audit_log_configs&quot;: [
1403 # {
1404 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1405 # &quot;exempted_members&quot;: [
1406 # &quot;user:jose@example.com&quot;
1407 # ]
1408 # },
1409 # {
1410 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1411 # },
1412 # {
1413 # &quot;log_type&quot;: &quot;ADMIN_READ&quot;,
1414 # }
1415 # ]
1416 # },
1417 # {
1418 # &quot;service&quot;: &quot;sampleservice.googleapis.com&quot;
1419 # &quot;audit_log_configs&quot;: [
1420 # {
1421 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1422 # },
1423 # {
1424 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1425 # &quot;exempted_members&quot;: [
1426 # &quot;user:aliya@example.com&quot;
1427 # ]
1428 # }
1429 # ]
1430 # }
1431 # ]
1432 # }
1433 #
1434 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1435 # logging. It also exempts jose@example.com from DATA_READ logging, and
1436 # aliya@example.com from DATA_WRITE logging.
1437 &quot;service&quot;: &quot;A String&quot;, # Specifies a service that will be enabled for audit logging.
1438 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1439 # `allServices` is a special value that covers all services.
1440 &quot;auditLogConfigs&quot;: [ # The configuration for logging of each type of permission.
1441 { # Provides the configuration for logging a type of permissions.
1442 # Example:
1443 #
1444 # {
1445 # &quot;audit_log_configs&quot;: [
1446 # {
1447 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
1448 # &quot;exempted_members&quot;: [
1449 # &quot;user:jose@example.com&quot;
1450 # ]
1451 # },
1452 # {
1453 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
1454 # }
1455 # ]
1456 # }
1457 #
1458 # This enables &#x27;DATA_READ&#x27; and &#x27;DATA_WRITE&#x27; logging, while exempting
1459 # jose@example.com from DATA_READ logging.
1460 &quot;exemptedMembers&quot;: [ # Specifies the identities that do not cause logging for this type of
1461 # permission.
1462 # Follows the same format of Binding.members.
1463 &quot;A String&quot;,
1464 ],
1465 &quot;logType&quot;: &quot;A String&quot;, # The log type that this config enables.
1466 },
1467 ],
1468 },
1469 ],
1470 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
Dan O'Mearadd494642020-05-01 07:42:23 -07001471 # `condition` that determines how and when the `bindings` are applied. Each
1472 # of the `bindings` must contain at least one member.
Takashi Matsuo06694102015-09-11 13:55:40 -07001473 { # Associates `members` with a `role`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001474 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001475 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001476 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
1477 #
1478 # If the condition evaluates to `true`, then this binding applies to the
1479 # current request.
1480 #
1481 # If the condition evaluates to `false`, then this binding does not apply to
1482 # the current request. However, a different role binding might grant the same
1483 # role to one or more of the members in this binding.
1484 #
1485 # To learn which resources support conditions in their IAM policies, see the
1486 # [IAM
1487 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Dan O'Mearadd494642020-05-01 07:42:23 -07001488 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
1489 # are documented at https://github.com/google/cel-spec.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001490 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001491 # Example (Comparison):
1492 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001493 # title: &quot;Summary size limit&quot;
1494 # description: &quot;Determines if a summary is less than 100 chars&quot;
1495 # expression: &quot;document.summary.size() &lt; 100&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -07001496 #
1497 # Example (Equality):
1498 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001499 # title: &quot;Requestor is owner&quot;
1500 # description: &quot;Determines if requestor is the document owner&quot;
1501 # expression: &quot;document.owner == request.auth.claims.email&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -07001502 #
1503 # Example (Logic):
1504 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001505 # title: &quot;Public documents&quot;
1506 # description: &quot;Determine whether the document should be publicly visible&quot;
1507 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -07001508 #
1509 # Example (Data Manipulation):
1510 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001511 # title: &quot;Notification string&quot;
1512 # description: &quot;Create a notification string with a timestamp.&quot;
1513 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
Dan O'Mearadd494642020-05-01 07:42:23 -07001514 #
1515 # The exact variables and functions that may be referenced within an expression
1516 # are determined by the service that evaluates it. See the service
1517 # documentation for additional information.
Bu Sun Kim65020912020-05-20 12:08:20 -07001518 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001519 # its purpose. This can be used e.g. in UIs which allow to enter the
1520 # expression.
Bu Sun Kim65020912020-05-20 12:08:20 -07001521 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
1522 # reporting, e.g. a file name and a position in the file.
1523 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
1524 # describes the expression, e.g. when hovered over it in a UI.
1525 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
1526 # syntax.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001527 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001528 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001529 # `members` can have the following values:
1530 #
1531 # * `allUsers`: A special identifier that represents anyone who is
1532 # on the internet; with or without a Google account.
1533 #
1534 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1535 # who is authenticated with a Google account or a service account.
1536 #
1537 # * `user:{emailid}`: An email address that represents a specific Google
Dan O'Mearadd494642020-05-01 07:42:23 -07001538 # account. For example, `alice@example.com` .
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001539 #
1540 #
1541 # * `serviceAccount:{emailid}`: An email address that represents a service
1542 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1543 #
1544 # * `group:{emailid}`: An email address that represents a Google group.
1545 # For example, `admins@example.com`.
1546 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001547 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
1548 # identifier) representing a user that has been recently deleted. For
1549 # example, `alice@example.com?uid=123456789012345678901`. If the user is
1550 # recovered, this value reverts to `user:{emailid}` and the recovered user
1551 # retains the role in the binding.
1552 #
1553 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
1554 # unique identifier) representing a service account that has been recently
1555 # deleted. For example,
1556 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
1557 # If the service account is undeleted, this value reverts to
1558 # `serviceAccount:{emailid}` and the undeleted service account retains the
1559 # role in the binding.
1560 #
1561 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
1562 # identifier) representing a Google group that has been recently
1563 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
1564 # the group is recovered, this value reverts to `group:{emailid}` and the
1565 # recovered group retains the role in the binding.
1566 #
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001567 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001568 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001569 # users of that domain. For example, `google.com` or `example.com`.
1570 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001571 &quot;A String&quot;,
Takashi Matsuo06694102015-09-11 13:55:40 -07001572 ],
1573 },
1574 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001575 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001576 # prevent simultaneous updates of a policy from overwriting each other.
1577 # It is strongly suggested that systems make use of the `etag` in the
1578 # read-modify-write cycle to perform policy updates in order to avoid race
1579 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1580 # systems are expected to put that etag in the request to `setIamPolicy` to
1581 # ensure that their change will be applied to the same version of the policy.
1582 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001583 # **Important:** If you use IAM Conditions, you must include the `etag` field
1584 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1585 # you to overwrite a version `3` policy with a version `1` policy, and all of
1586 # the conditions in the version `3` policy are lost.
Bu Sun Kim65020912020-05-20 12:08:20 -07001587 &quot;version&quot;: 42, # Specifies the format of the policy.
Dan O'Mearadd494642020-05-01 07:42:23 -07001588 #
1589 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1590 # are rejected.
1591 #
1592 # Any operation that affects conditional role bindings must specify version
1593 # `3`. This requirement applies to the following operations:
1594 #
1595 # * Getting a policy that includes a conditional role binding
1596 # * Adding a conditional role binding to a policy
1597 # * Changing a conditional role binding in a policy
1598 # * Removing any role binding, with or without a condition, from a policy
1599 # that includes conditions
1600 #
1601 # **Important:** If you use IAM Conditions, you must include the `etag` field
1602 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1603 # you to overwrite a version `3` policy with a version `1` policy, and all of
1604 # the conditions in the version `3` policy are lost.
1605 #
1606 # If a policy does not include any conditions, operations on that policy may
1607 # specify any valid version or leave the field unset.
Bu Sun Kim65020912020-05-20 12:08:20 -07001608 #
1609 # To learn which resources support conditions in their IAM policies, see the
1610 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Takashi Matsuo06694102015-09-11 13:55:40 -07001611 }</pre>
1612</div>
1613
1614<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07001615 <code class="details" id="testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</code>
Jon Wayne Parrott36e41bc2016-02-19 16:02:29 -08001616 <pre>Returns permissions that a caller has on the specified Project.
Takashi Matsuo06694102015-09-11 13:55:40 -07001617
1618Args:
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001619 resource: string, REQUIRED: The resource for which the policy detail is being requested.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001620See the operation documentation for the appropriate value for this field. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001621 body: object, The request body.
Takashi Matsuo06694102015-09-11 13:55:40 -07001622 The object takes the form of:
1623
1624{ # Request message for `TestIamPermissions` method.
Bu Sun Kim65020912020-05-20 12:08:20 -07001625 &quot;permissions&quot;: [ # The set of permissions to check for the `resource`. Permissions with
1626 # wildcards (such as &#x27;*&#x27; or &#x27;storage.*&#x27;) are not allowed. For more
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001627 # information see
1628 # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
Bu Sun Kim65020912020-05-20 12:08:20 -07001629 &quot;A String&quot;,
Takashi Matsuo06694102015-09-11 13:55:40 -07001630 ],
1631 }
1632
1633 x__xgafv: string, V1 error format.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001634 Allowed values
1635 1 - v1 error format
1636 2 - v2 error format
Takashi Matsuo06694102015-09-11 13:55:40 -07001637
1638Returns:
1639 An object of the form:
1640
1641 { # Response message for `TestIamPermissions` method.
Bu Sun Kim65020912020-05-20 12:08:20 -07001642 &quot;permissions&quot;: [ # A subset of `TestPermissionsRequest.permissions` that the caller is
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001643 # allowed.
Bu Sun Kim65020912020-05-20 12:08:20 -07001644 &quot;A String&quot;,
Takashi Matsuo06694102015-09-11 13:55:40 -07001645 ],
1646 }</pre>
1647</div>
1648
1649<div class="method">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001650 <code class="details" id="undelete">undelete(projectId, body=None, x__xgafv=None)</code>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001651 <pre>Restores the Project identified by the specified
1652`project_id` (for example, `my-project-123`).
1653You can only use this method for a Project that has a lifecycle state of
1654DELETE_REQUESTED.
1655After deletion starts, the Project cannot be restored.
1656
1657The caller must have modify permissions for this Project.
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001658
1659Args:
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001660 projectId: string, The project ID (for example, `foo-bar-123`).
1661
1662Required. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001663 body: object, The request body.
Sai Cheemalapatidf613972016-10-21 13:59:49 -07001664 The object takes the form of:
1665
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001666{ # The request sent to the UndeleteProject
1667 # method.
Sai Cheemalapatidf613972016-10-21 13:59:49 -07001668 }
1669
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001670 x__xgafv: string, V1 error format.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001671 Allowed values
1672 1 - v1 error format
1673 2 - v2 error format
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001674
1675Returns:
1676 An object of the form:
1677
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001678 { # A generic empty message that you can re-use to avoid defining duplicated
1679 # empty messages in your APIs. A typical example is to use it as the request
1680 # or the response type of an API method. For instance:
1681 #
1682 # service Foo {
1683 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
1684 # }
1685 #
1686 # The JSON representation for `Empty` is empty JSON object `{}`.
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001687 }</pre>
1688</div>
1689
1690<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07001691 <code class="details" id="update">update(projectId, body=None, x__xgafv=None)</code>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001692 <pre>Updates the attributes of the Project identified by the specified
1693`project_id` (for example, `my-project-123`).
1694
1695The caller must have modify permissions for this Project.
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001696
1697Args:
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001698 projectId: string, The project ID (for example, `my-project-123`).
1699
1700Required. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001701 body: object, The request body.
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001702 The object takes the form of:
1703
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001704{ # A Project is a high-level Google Cloud Platform entity. It is a
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001705 # container for ACLs, APIs, App Engine Apps, VMs, and other
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001706 # Google Cloud Platform resources.
Bu Sun Kim65020912020-05-20 12:08:20 -07001707 &quot;lifecycleState&quot;: &quot;A String&quot;, # The Project lifecycle state.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001708 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001709 # Read-only.
1710 &quot;projectNumber&quot;: &quot;A String&quot;, # The number uniquely identifying the project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001711 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001712 # Example: &lt;code&gt;415104041262&lt;/code&gt;
1713 # Read-only.
1714 &quot;parent&quot;: { # A container to reference an id for any resource type. A `resource` in Google # An optional reference to a parent Resource.
1715 #
1716 # Supported parent types include &quot;organization&quot; and &quot;folder&quot;. Once set, the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001717 # parent cannot be cleared. The `parent` can be set on creation or using the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001718 # `UpdateProject` method; the end user must have the
1719 # `resourcemanager.projects.create` permission on the parent.
1720 #
1721 # Read-write.
1722 # Cloud Platform is a generic term for something you (a developer) may want to
Bu Sun Kim65020912020-05-20 12:08:20 -07001723 # interact with through one of our API&#x27;s. Some examples are an App Engine app,
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001724 # a Compute Engine instance, a Cloud SQL database, and so on.
Bu Sun Kim65020912020-05-20 12:08:20 -07001725 &quot;type&quot;: &quot;A String&quot;, # Required field representing the resource type this id is for.
1726 # At present, the valid types are &quot;project&quot;, &quot;folder&quot;, and &quot;organization&quot;.
1727 &quot;id&quot;: &quot;A String&quot;, # Required field for the type-specific id. This should correspond to the id
1728 # used in the type-specific API&#x27;s.
Takashi Matsuo06694102015-09-11 13:55:40 -07001729 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001730 &quot;labels&quot;: { # The labels associated with this Project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001731 #
1732 # Label keys must be between 1 and 63 characters long and must conform
1733 # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
1734 #
1735 # Label values must be between 0 and 63 characters long and must conform
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001736 # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. A label
1737 # value can be empty.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001738 #
1739 # No more than 256 labels can be associated with a given resource.
1740 #
1741 # Clients should store labels in a representation such as JSON that does not
1742 # depend on specific characters being disallowed.
1743 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001744 # Example: &lt;code&gt;&quot;environment&quot; : &quot;dev&quot;&lt;/code&gt;
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001745 # Read-write.
Bu Sun Kim65020912020-05-20 12:08:20 -07001746 &quot;a_key&quot;: &quot;A String&quot;,
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001747 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001748 &quot;createTime&quot;: &quot;A String&quot;, # Creation time.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001749 #
1750 # Read-only.
Bu Sun Kim65020912020-05-20 12:08:20 -07001751 &quot;name&quot;: &quot;A String&quot;, # The optional user-assigned display name of the Project.
1752 # When present it must be between 4 to 30 characters.
1753 # Allowed characters are: lowercase and uppercase letters, numbers,
1754 # hyphen, single-quote, double-quote, space, and exclamation point.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001755 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001756 # Example: &lt;code&gt;My Project&lt;/code&gt;
1757 # Read-write.
1758 &quot;projectId&quot;: &quot;A String&quot;, # The unique, user-assigned ID of the Project.
1759 # It must be 6 to 30 lowercase letters, digits, or hyphens.
1760 # It must start with a letter.
1761 # Trailing hyphens are prohibited.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001762 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001763 # Example: &lt;code&gt;tokyo-rain-123&lt;/code&gt;
1764 # Read-only after creation.
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001765}
1766
1767 x__xgafv: string, V1 error format.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001768 Allowed values
1769 1 - v1 error format
1770 2 - v2 error format
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001771
1772Returns:
1773 An object of the form:
1774
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001775 { # A Project is a high-level Google Cloud Platform entity. It is a
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001776 # container for ACLs, APIs, App Engine Apps, VMs, and other
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001777 # Google Cloud Platform resources.
Bu Sun Kim65020912020-05-20 12:08:20 -07001778 &quot;lifecycleState&quot;: &quot;A String&quot;, # The Project lifecycle state.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001779 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001780 # Read-only.
1781 &quot;projectNumber&quot;: &quot;A String&quot;, # The number uniquely identifying the project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001782 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001783 # Example: &lt;code&gt;415104041262&lt;/code&gt;
1784 # Read-only.
1785 &quot;parent&quot;: { # A container to reference an id for any resource type. A `resource` in Google # An optional reference to a parent Resource.
1786 #
1787 # Supported parent types include &quot;organization&quot; and &quot;folder&quot;. Once set, the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001788 # parent cannot be cleared. The `parent` can be set on creation or using the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001789 # `UpdateProject` method; the end user must have the
1790 # `resourcemanager.projects.create` permission on the parent.
1791 #
1792 # Read-write.
1793 # Cloud Platform is a generic term for something you (a developer) may want to
Bu Sun Kim65020912020-05-20 12:08:20 -07001794 # interact with through one of our API&#x27;s. Some examples are an App Engine app,
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001795 # a Compute Engine instance, a Cloud SQL database, and so on.
Bu Sun Kim65020912020-05-20 12:08:20 -07001796 &quot;type&quot;: &quot;A String&quot;, # Required field representing the resource type this id is for.
1797 # At present, the valid types are &quot;project&quot;, &quot;folder&quot;, and &quot;organization&quot;.
1798 &quot;id&quot;: &quot;A String&quot;, # Required field for the type-specific id. This should correspond to the id
1799 # used in the type-specific API&#x27;s.
Takashi Matsuo06694102015-09-11 13:55:40 -07001800 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001801 &quot;labels&quot;: { # The labels associated with this Project.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001802 #
1803 # Label keys must be between 1 and 63 characters long and must conform
1804 # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
1805 #
1806 # Label values must be between 0 and 63 characters long and must conform
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001807 # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. A label
1808 # value can be empty.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001809 #
1810 # No more than 256 labels can be associated with a given resource.
1811 #
1812 # Clients should store labels in a representation such as JSON that does not
1813 # depend on specific characters being disallowed.
1814 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001815 # Example: &lt;code&gt;&quot;environment&quot; : &quot;dev&quot;&lt;/code&gt;
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001816 # Read-write.
Bu Sun Kim65020912020-05-20 12:08:20 -07001817 &quot;a_key&quot;: &quot;A String&quot;,
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001818 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001819 &quot;createTime&quot;: &quot;A String&quot;, # Creation time.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001820 #
1821 # Read-only.
Bu Sun Kim65020912020-05-20 12:08:20 -07001822 &quot;name&quot;: &quot;A String&quot;, # The optional user-assigned display name of the Project.
1823 # When present it must be between 4 to 30 characters.
1824 # Allowed characters are: lowercase and uppercase letters, numbers,
1825 # hyphen, single-quote, double-quote, space, and exclamation point.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001826 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001827 # Example: &lt;code&gt;My Project&lt;/code&gt;
1828 # Read-write.
1829 &quot;projectId&quot;: &quot;A String&quot;, # The unique, user-assigned ID of the Project.
1830 # It must be 6 to 30 lowercase letters, digits, or hyphens.
1831 # It must start with a letter.
1832 # Trailing hyphens are prohibited.
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001833 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001834 # Example: &lt;code&gt;tokyo-rain-123&lt;/code&gt;
1835 # Read-only after creation.
Nathaniel Manista4f877e52015-06-15 16:44:50 +00001836 }</pre>
1837</div>
1838
1839</body></html>