blob: f1f586eea6ed1bc092021c2f445124f81293797e [file] [log] [blame]
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001<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
75<h1><a href="sourcerepo_v1.html">Cloud Source Repositories API</a> . <a href="sourcerepo_v1.projects.html">projects</a> . <a href="sourcerepo_v1.projects.repos.html">repos</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070078 <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -040079<p class="firstline">Creates a repo in the given project with the given name.</p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040080<p class="toc_element">
Thomas Coffee2f245372017-03-27 10:39:26 -070081 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040082<p class="firstline">Deletes a repo.</p>
83<p class="toc_element">
Thomas Coffee2f245372017-03-27 10:39:26 -070084 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040085<p class="firstline">Returns information about a repo.</p>
86<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070087 <code><a href="#getIamPolicy">getIamPolicy(resource, options_requestedPolicyVersion=None, x__xgafv=None)</a></code></p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040088<p class="firstline">Gets the access control policy for a resource.</p>
89<p class="toc_element">
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -040090 <code><a href="#list">list(name, pageToken=None, x__xgafv=None, pageSize=None)</a></code></p>
91<p class="firstline">Returns all repos belonging to a project. The sizes of the repos are</p>
92<p class="toc_element">
93 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
94<p class="firstline">Retrieves the next page of results.</p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040095<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070096 <code><a href="#patch">patch(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070097<p class="firstline">Updates information about a repo.</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>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400100<p class="firstline">Sets the access control policy on the specified resource. Replaces any</p>
101<p class="toc_element">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700102 <code><a href="#sync">sync(name, body=None, x__xgafv=None)</a></code></p>
103<p class="firstline">Synchronize a connected repo.</p>
104<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700105 <code><a href="#testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</a></code></p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400106<p class="firstline">Returns permissions that a caller has on the specified resource.</p>
107<h3>Method Details</h3>
108<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700109 <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400110 <pre>Creates a repo in the given project with the given name.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400111
112If the named repository already exists, `CreateRepo` returns
113`ALREADY_EXISTS`.
114
115Args:
116 parent: string, The project in which to create the repo. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700117`projects/&lt;project&gt;`. (required)
118 body: object, The request body.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400119 The object takes the form of:
120
121{ # A repository (or repo) is a Git repository storing versioned source content.
122 "url": "A String", # URL to clone the repository from Google Cloud Source Repositories.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700123 # Read-only field.
124 "pubsubConfigs": { # How this repository publishes a change in the repository through Cloud
125 # Pub/Sub. Keyed by the topic names.
126 "a_key": { # Configuration to publish a Cloud Pub/Sub message.
127 "topic": "A String", # A topic of Cloud Pub/Sub. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700128 # `projects/&lt;project&gt;/topics/&lt;topic&gt;`. The project needs to be the same
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700129 # project as this config is in.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700130 "serviceAccountEmail": "A String", # Email address of the service account used for publishing Cloud Pub/Sub
131 # messages. This service account needs to be in the same project as the
132 # PubsubConfig. When added, the caller needs to have
133 # iam.serviceAccounts.actAs permission on this service account. If
134 # unspecified, it defaults to the compute engine default service account.
Dan O'Mearadd494642020-05-01 07:42:23 -0700135 "messageFormat": "A String", # The format of the Cloud Pub/Sub messages.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700136 },
137 },
138 "size": "A String", # The disk usage of the repo, in bytes. Read-only field. Size is only
139 # returned by GetRepo.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400140 "name": "A String", # Resource name of the repository, of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700141 # `projects/&lt;project&gt;/repos/&lt;repo&gt;`. The repo name may contain slashes.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400142 # eg, `projects/myproject/repos/name/with/slash`
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400143 "mirrorConfig": { # Configuration to automatically mirror a repository from another # How this repository mirrors a repository managed by another service.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700144 # Read-only field.
145 # hosting service, for example GitHub or Bitbucket.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400146 "url": "A String", # URL of the main repository at the other hosting service.
147 "webhookId": "A String", # ID of the webhook listening to updates to trigger mirroring.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700148 # Removing this webhook from the other hosting service will stop
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400149 # Google Cloud Source Repositories from receiving notifications,
150 # and thereby disabling mirroring.
151 "deployKeyId": "A String", # ID of the SSH deploy key at the other hosting service.
152 # Removing this key from the other service would deauthorize
153 # Google Cloud Source Repositories from mirroring.
154 },
155}
156
157 x__xgafv: string, V1 error format.
158 Allowed values
159 1 - v1 error format
160 2 - v2 error format
161
162Returns:
163 An object of the form:
164
165 { # A repository (or repo) is a Git repository storing versioned source content.
166 "url": "A String", # URL to clone the repository from Google Cloud Source Repositories.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700167 # Read-only field.
168 "pubsubConfigs": { # How this repository publishes a change in the repository through Cloud
169 # Pub/Sub. Keyed by the topic names.
170 "a_key": { # Configuration to publish a Cloud Pub/Sub message.
171 "topic": "A String", # A topic of Cloud Pub/Sub. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700172 # `projects/&lt;project&gt;/topics/&lt;topic&gt;`. The project needs to be the same
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700173 # project as this config is in.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700174 "serviceAccountEmail": "A String", # Email address of the service account used for publishing Cloud Pub/Sub
175 # messages. This service account needs to be in the same project as the
176 # PubsubConfig. When added, the caller needs to have
177 # iam.serviceAccounts.actAs permission on this service account. If
178 # unspecified, it defaults to the compute engine default service account.
Dan O'Mearadd494642020-05-01 07:42:23 -0700179 "messageFormat": "A String", # The format of the Cloud Pub/Sub messages.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700180 },
181 },
182 "size": "A String", # The disk usage of the repo, in bytes. Read-only field. Size is only
183 # returned by GetRepo.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400184 "name": "A String", # Resource name of the repository, of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700185 # `projects/&lt;project&gt;/repos/&lt;repo&gt;`. The repo name may contain slashes.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400186 # eg, `projects/myproject/repos/name/with/slash`
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400187 "mirrorConfig": { # Configuration to automatically mirror a repository from another # How this repository mirrors a repository managed by another service.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700188 # Read-only field.
189 # hosting service, for example GitHub or Bitbucket.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400190 "url": "A String", # URL of the main repository at the other hosting service.
191 "webhookId": "A String", # ID of the webhook listening to updates to trigger mirroring.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700192 # Removing this webhook from the other hosting service will stop
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400193 # Google Cloud Source Repositories from receiving notifications,
194 # and thereby disabling mirroring.
195 "deployKeyId": "A String", # ID of the SSH deploy key at the other hosting service.
196 # Removing this key from the other service would deauthorize
197 # Google Cloud Source Repositories from mirroring.
198 },
199 }</pre>
200</div>
201
202<div class="method">
Thomas Coffee2f245372017-03-27 10:39:26 -0700203 <code class="details" id="delete">delete(name, x__xgafv=None)</code>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400204 <pre>Deletes a repo.
205
206Args:
207 name: string, The name of the repo to delete. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700208`projects/&lt;project&gt;/repos/&lt;repo&gt;`. (required)
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400209 x__xgafv: string, V1 error format.
210 Allowed values
211 1 - v1 error format
212 2 - v2 error format
213
214Returns:
215 An object of the form:
216
217 { # A generic empty message that you can re-use to avoid defining duplicated
218 # empty messages in your APIs. A typical example is to use it as the request
219 # or the response type of an API method. For instance:
220 #
221 # service Foo {
222 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
223 # }
224 #
225 # The JSON representation for `Empty` is empty JSON object `{}`.
226 }</pre>
227</div>
228
229<div class="method">
Thomas Coffee2f245372017-03-27 10:39:26 -0700230 <code class="details" id="get">get(name, x__xgafv=None)</code>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400231 <pre>Returns information about a repo.
232
233Args:
234 name: string, The name of the requested repository. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700235`projects/&lt;project&gt;/repos/&lt;repo&gt;`. (required)
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400236 x__xgafv: string, V1 error format.
237 Allowed values
238 1 - v1 error format
239 2 - v2 error format
240
241Returns:
242 An object of the form:
243
244 { # A repository (or repo) is a Git repository storing versioned source content.
245 "url": "A String", # URL to clone the repository from Google Cloud Source Repositories.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700246 # Read-only field.
247 "pubsubConfigs": { # How this repository publishes a change in the repository through Cloud
248 # Pub/Sub. Keyed by the topic names.
249 "a_key": { # Configuration to publish a Cloud Pub/Sub message.
250 "topic": "A String", # A topic of Cloud Pub/Sub. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700251 # `projects/&lt;project&gt;/topics/&lt;topic&gt;`. The project needs to be the same
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700252 # project as this config is in.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700253 "serviceAccountEmail": "A String", # Email address of the service account used for publishing Cloud Pub/Sub
254 # messages. This service account needs to be in the same project as the
255 # PubsubConfig. When added, the caller needs to have
256 # iam.serviceAccounts.actAs permission on this service account. If
257 # unspecified, it defaults to the compute engine default service account.
Dan O'Mearadd494642020-05-01 07:42:23 -0700258 "messageFormat": "A String", # The format of the Cloud Pub/Sub messages.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700259 },
260 },
261 "size": "A String", # The disk usage of the repo, in bytes. Read-only field. Size is only
262 # returned by GetRepo.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400263 "name": "A String", # Resource name of the repository, of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700264 # `projects/&lt;project&gt;/repos/&lt;repo&gt;`. The repo name may contain slashes.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400265 # eg, `projects/myproject/repos/name/with/slash`
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400266 "mirrorConfig": { # Configuration to automatically mirror a repository from another # How this repository mirrors a repository managed by another service.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700267 # Read-only field.
268 # hosting service, for example GitHub or Bitbucket.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400269 "url": "A String", # URL of the main repository at the other hosting service.
270 "webhookId": "A String", # ID of the webhook listening to updates to trigger mirroring.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700271 # Removing this webhook from the other hosting service will stop
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400272 # Google Cloud Source Repositories from receiving notifications,
273 # and thereby disabling mirroring.
274 "deployKeyId": "A String", # ID of the SSH deploy key at the other hosting service.
275 # Removing this key from the other service would deauthorize
276 # Google Cloud Source Repositories from mirroring.
277 },
278 }</pre>
279</div>
280
281<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700282 <code class="details" id="getIamPolicy">getIamPolicy(resource, options_requestedPolicyVersion=None, x__xgafv=None)</code>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400283 <pre>Gets the access control policy for a resource.
284Returns an empty policy if the resource exists and does not have a policy
285set.
286
287Args:
288 resource: string, REQUIRED: The resource for which the policy is being requested.
289See the operation documentation for the appropriate value for this field. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700290 options_requestedPolicyVersion: integer, Optional. The policy format version to be returned.
291
292Valid values are 0, 1, and 3. Requests specifying an invalid value will be
293rejected.
294
295Requests for policies with any conditional bindings must specify version 3.
296Policies without any conditional bindings may specify any valid value or
297leave the field unset.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400298 x__xgafv: string, V1 error format.
299 Allowed values
300 1 - v1 error format
301 2 - v2 error format
302
303Returns:
304 An object of the form:
305
Dan O'Mearadd494642020-05-01 07:42:23 -0700306 { # An Identity and Access Management (IAM) policy, which specifies access
307 # controls for Google Cloud resources.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400308 #
309 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700310 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
311 # `members` to a single `role`. Members can be user accounts, service accounts,
312 # Google groups, and domains (such as G Suite). A `role` is a named list of
313 # permissions; each `role` can be an IAM predefined role or a user-created
314 # custom role.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400315 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700316 # Optionally, a `binding` can specify a `condition`, which is a logical
317 # expression that allows access to a resource only if the expression evaluates
318 # to `true`. A condition can add constraints based on attributes of the
319 # request, the resource, or both.
320 #
321 # **JSON example:**
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400322 #
323 # {
324 # "bindings": [
325 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700326 # "role": "roles/resourcemanager.organizationAdmin",
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400327 # "members": [
328 # "user:mike@example.com",
329 # "group:admins@example.com",
330 # "domain:google.com",
Dan O'Mearadd494642020-05-01 07:42:23 -0700331 # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400332 # ]
333 # },
334 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700335 # "role": "roles/resourcemanager.organizationViewer",
336 # "members": ["user:eve@example.com"],
337 # "condition": {
338 # "title": "expirable access",
339 # "description": "Does not grant access after Sep 2020",
340 # "expression": "request.time &lt; timestamp('2020-10-01T00:00:00.000Z')",
341 # }
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400342 # }
Dan O'Mearadd494642020-05-01 07:42:23 -0700343 # ],
344 # "etag": "BwWWja0YfJA=",
345 # "version": 3
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400346 # }
347 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700348 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700349 #
350 # bindings:
351 # - members:
352 # - user:mike@example.com
353 # - group:admins@example.com
354 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -0700355 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
356 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700357 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -0700358 # - user:eve@example.com
359 # role: roles/resourcemanager.organizationViewer
360 # condition:
361 # title: expirable access
362 # description: Does not grant access after Sep 2020
363 # expression: request.time &lt; timestamp('2020-10-01T00:00:00.000Z')
364 # - etag: BwWWja0YfJA=
365 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700366 #
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400367 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -0700368 # [IAM documentation](https://cloud.google.com/iam/docs/).
369 "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a
370 # `condition` that determines how and when the `bindings` are applied. Each
371 # of the `bindings` must contain at least one member.
372 { # Associates `members` with a `role`.
373 "role": "A String", # Role that is assigned to `members`.
374 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
375 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
376 # `members` can have the following values:
377 #
378 # * `allUsers`: A special identifier that represents anyone who is
379 # on the internet; with or without a Google account.
380 #
381 # * `allAuthenticatedUsers`: A special identifier that represents anyone
382 # who is authenticated with a Google account or a service account.
383 #
384 # * `user:{emailid}`: An email address that represents a specific Google
385 # account. For example, `alice@example.com` .
386 #
387 #
388 # * `serviceAccount:{emailid}`: An email address that represents a service
389 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
390 #
391 # * `group:{emailid}`: An email address that represents a Google group.
392 # For example, `admins@example.com`.
393 #
394 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
395 # identifier) representing a user that has been recently deleted. For
396 # example, `alice@example.com?uid=123456789012345678901`. If the user is
397 # recovered, this value reverts to `user:{emailid}` and the recovered user
398 # retains the role in the binding.
399 #
400 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
401 # unique identifier) representing a service account that has been recently
402 # deleted. For example,
403 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
404 # If the service account is undeleted, this value reverts to
405 # `serviceAccount:{emailid}` and the undeleted service account retains the
406 # role in the binding.
407 #
408 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
409 # identifier) representing a Google group that has been recently
410 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
411 # the group is recovered, this value reverts to `group:{emailid}` and the
412 # recovered group retains the role in the binding.
413 #
414 #
415 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
416 # users of that domain. For example, `google.com` or `example.com`.
417 #
418 "A String",
419 ],
420 "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
421 # NOTE: An unsatisfied condition will not allow user access via current
422 # binding. Different bindings, including their conditions, are examined
423 # independently.
424 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
425 # are documented at https://github.com/google/cel-spec.
426 #
427 # Example (Comparison):
428 #
429 # title: "Summary size limit"
430 # description: "Determines if a summary is less than 100 chars"
431 # expression: "document.summary.size() &lt; 100"
432 #
433 # Example (Equality):
434 #
435 # title: "Requestor is owner"
436 # description: "Determines if requestor is the document owner"
437 # expression: "document.owner == request.auth.claims.email"
438 #
439 # Example (Logic):
440 #
441 # title: "Public documents"
442 # description: "Determine whether the document should be publicly visible"
443 # expression: "document.type != 'private' &amp;&amp; document.type != 'internal'"
444 #
445 # Example (Data Manipulation):
446 #
447 # title: "Notification string"
448 # description: "Create a notification string with a timestamp."
449 # expression: "'New message received at ' + string(document.create_time)"
450 #
451 # The exact variables and functions that may be referenced within an expression
452 # are determined by the service that evaluates it. See the service
453 # documentation for additional information.
454 "description": "A String", # Optional. Description of the expression. This is a longer text which
455 # describes the expression, e.g. when hovered over it in a UI.
456 "expression": "A String", # Textual representation of an expression in Common Expression Language
457 # syntax.
458 "location": "A String", # Optional. String indicating the location of the expression for error
459 # reporting, e.g. a file name and a position in the file.
460 "title": "A String", # Optional. Title for the expression, i.e. a short string describing
461 # its purpose. This can be used e.g. in UIs which allow to enter the
462 # expression.
463 },
464 },
465 ],
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400466 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
467 { # Specifies the audit configuration for a service.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700468 # The configuration determines which permission types are logged, and what
469 # identities, if any, are exempted from logging.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400470 # An AuditConfig must have one or more AuditLogConfigs.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400471 #
472 # If there are AuditConfigs for both `allServices` and a specific service,
473 # the union of the two AuditConfigs is used for that service: the log_types
474 # specified in each AuditConfig are enabled, and the exempted_members in each
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700475 # AuditLogConfig are exempted.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400476 #
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400477 # Example Policy with multiple AuditConfigs:
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400478 #
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400479 # {
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400480 # "audit_configs": [
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400481 # {
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400482 # "service": "allServices"
483 # "audit_log_configs": [
484 # {
485 # "log_type": "DATA_READ",
486 # "exempted_members": [
Dan O'Mearadd494642020-05-01 07:42:23 -0700487 # "user:jose@example.com"
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400488 # ]
489 # },
490 # {
491 # "log_type": "DATA_WRITE",
492 # },
493 # {
494 # "log_type": "ADMIN_READ",
495 # }
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400496 # ]
497 # },
498 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700499 # "service": "sampleservice.googleapis.com"
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400500 # "audit_log_configs": [
501 # {
502 # "log_type": "DATA_READ",
503 # },
504 # {
505 # "log_type": "DATA_WRITE",
506 # "exempted_members": [
Dan O'Mearadd494642020-05-01 07:42:23 -0700507 # "user:aliya@example.com"
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400508 # ]
509 # }
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400510 # ]
511 # }
512 # ]
513 # }
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400514 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700515 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
516 # logging. It also exempts jose@example.com from DATA_READ logging, and
517 # aliya@example.com from DATA_WRITE logging.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400518 "auditLogConfigs": [ # The configuration for logging of each type of permission.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400519 { # Provides the configuration for logging a type of permissions.
520 # Example:
521 #
522 # {
523 # "audit_log_configs": [
524 # {
525 # "log_type": "DATA_READ",
526 # "exempted_members": [
Dan O'Mearadd494642020-05-01 07:42:23 -0700527 # "user:jose@example.com"
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400528 # ]
529 # },
530 # {
531 # "log_type": "DATA_WRITE",
532 # }
533 # ]
534 # }
535 #
536 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
Dan O'Mearadd494642020-05-01 07:42:23 -0700537 # jose@example.com from DATA_READ logging.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400538 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
539 # permission.
540 # Follows the same format of Binding.members.
541 "A String",
542 ],
543 "logType": "A String", # The log type that this config enables.
544 },
545 ],
546 "service": "A String", # Specifies a service that will be enabled for audit logging.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700547 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400548 # `allServices` is a special value that covers all services.
549 },
550 ],
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400551 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
552 # prevent simultaneous updates of a policy from overwriting each other.
553 # It is strongly suggested that systems make use of the `etag` in the
554 # read-modify-write cycle to perform policy updates in order to avoid race
555 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
556 # systems are expected to put that etag in the request to `setIamPolicy` to
557 # ensure that their change will be applied to the same version of the policy.
558 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700559 # **Important:** If you use IAM Conditions, you must include the `etag` field
560 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
561 # you to overwrite a version `3` policy with a version `1` policy, and all of
562 # the conditions in the version `3` policy are lost.
563 "version": 42, # Specifies the format of the policy.
564 #
565 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
566 # are rejected.
567 #
568 # Any operation that affects conditional role bindings must specify version
569 # `3`. This requirement applies to the following operations:
570 #
571 # * Getting a policy that includes a conditional role binding
572 # * Adding a conditional role binding to a policy
573 # * Changing a conditional role binding in a policy
574 # * Removing any role binding, with or without a condition, from a policy
575 # that includes conditions
576 #
577 # **Important:** If you use IAM Conditions, you must include the `etag` field
578 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
579 # you to overwrite a version `3` policy with a version `1` policy, and all of
580 # the conditions in the version `3` policy are lost.
581 #
582 # If a policy does not include any conditions, operations on that policy may
583 # specify any valid version or leave the field unset.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400584 }</pre>
585</div>
586
587<div class="method">
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400588 <code class="details" id="list">list(name, pageToken=None, x__xgafv=None, pageSize=None)</code>
589 <pre>Returns all repos belonging to a project. The sizes of the repos are
590not set by ListRepos. To get the size of a repo, use GetRepo.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400591
592Args:
593 name: string, The project ID whose repos should be listed. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700594`projects/&lt;project&gt;`. (required)
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400595 pageToken: string, Resume listing repositories where a prior ListReposResponse
596left off. This is an opaque token that must be obtained from
597a recent, prior ListReposResponse's next_page_token field.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400598 x__xgafv: string, V1 error format.
599 Allowed values
600 1 - v1 error format
601 2 - v2 error format
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400602 pageSize: integer, Maximum number of repositories to return; between 1 and 500.
603If not set or zero, defaults to 100 at the server.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400604
605Returns:
606 An object of the form:
607
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400608 { # Response for ListRepos. The size is not set in the returned repositories.
609 "nextPageToken": "A String", # If non-empty, additional repositories exist within the project. These
610 # can be retrieved by including this value in the next ListReposRequest's
611 # page_token field.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400612 "repos": [ # The listed repos.
613 { # A repository (or repo) is a Git repository storing versioned source content.
614 "url": "A String", # URL to clone the repository from Google Cloud Source Repositories.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700615 # Read-only field.
616 "pubsubConfigs": { # How this repository publishes a change in the repository through Cloud
617 # Pub/Sub. Keyed by the topic names.
618 "a_key": { # Configuration to publish a Cloud Pub/Sub message.
619 "topic": "A String", # A topic of Cloud Pub/Sub. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700620 # `projects/&lt;project&gt;/topics/&lt;topic&gt;`. The project needs to be the same
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700621 # project as this config is in.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700622 "serviceAccountEmail": "A String", # Email address of the service account used for publishing Cloud Pub/Sub
623 # messages. This service account needs to be in the same project as the
624 # PubsubConfig. When added, the caller needs to have
625 # iam.serviceAccounts.actAs permission on this service account. If
626 # unspecified, it defaults to the compute engine default service account.
Dan O'Mearadd494642020-05-01 07:42:23 -0700627 "messageFormat": "A String", # The format of the Cloud Pub/Sub messages.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700628 },
629 },
630 "size": "A String", # The disk usage of the repo, in bytes. Read-only field. Size is only
631 # returned by GetRepo.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400632 "name": "A String", # Resource name of the repository, of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700633 # `projects/&lt;project&gt;/repos/&lt;repo&gt;`. The repo name may contain slashes.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400634 # eg, `projects/myproject/repos/name/with/slash`
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400635 "mirrorConfig": { # Configuration to automatically mirror a repository from another # How this repository mirrors a repository managed by another service.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700636 # Read-only field.
637 # hosting service, for example GitHub or Bitbucket.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400638 "url": "A String", # URL of the main repository at the other hosting service.
639 "webhookId": "A String", # ID of the webhook listening to updates to trigger mirroring.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700640 # Removing this webhook from the other hosting service will stop
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400641 # Google Cloud Source Repositories from receiving notifications,
642 # and thereby disabling mirroring.
643 "deployKeyId": "A String", # ID of the SSH deploy key at the other hosting service.
644 # Removing this key from the other service would deauthorize
645 # Google Cloud Source Repositories from mirroring.
646 },
647 },
648 ],
649 }</pre>
650</div>
651
652<div class="method">
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400653 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
654 <pre>Retrieves the next page of results.
655
656Args:
657 previous_request: The request for the previous page. (required)
658 previous_response: The response from the request for the previous page. (required)
659
660Returns:
661 A request object that you can call 'execute()' on to request the next
662 page. Returns None if there are no more items in the collection.
663 </pre>
664</div>
665
666<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700667 <code class="details" id="patch">patch(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700668 <pre>Updates information about a repo.
669
670Args:
671 name: string, The name of the requested repository. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700672`projects/&lt;project&gt;/repos/&lt;repo&gt;`. (required)
673 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700674 The object takes the form of:
675
676{ # Request for UpdateRepo.
677 "repo": { # A repository (or repo) is a Git repository storing versioned source content. # The new configuration for the repository.
678 "url": "A String", # URL to clone the repository from Google Cloud Source Repositories.
679 # Read-only field.
680 "pubsubConfigs": { # How this repository publishes a change in the repository through Cloud
681 # Pub/Sub. Keyed by the topic names.
682 "a_key": { # Configuration to publish a Cloud Pub/Sub message.
683 "topic": "A String", # A topic of Cloud Pub/Sub. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700684 # `projects/&lt;project&gt;/topics/&lt;topic&gt;`. The project needs to be the same
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700685 # project as this config is in.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700686 "serviceAccountEmail": "A String", # Email address of the service account used for publishing Cloud Pub/Sub
687 # messages. This service account needs to be in the same project as the
688 # PubsubConfig. When added, the caller needs to have
689 # iam.serviceAccounts.actAs permission on this service account. If
690 # unspecified, it defaults to the compute engine default service account.
Dan O'Mearadd494642020-05-01 07:42:23 -0700691 "messageFormat": "A String", # The format of the Cloud Pub/Sub messages.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700692 },
693 },
694 "size": "A String", # The disk usage of the repo, in bytes. Read-only field. Size is only
695 # returned by GetRepo.
696 "name": "A String", # Resource name of the repository, of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700697 # `projects/&lt;project&gt;/repos/&lt;repo&gt;`. The repo name may contain slashes.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700698 # eg, `projects/myproject/repos/name/with/slash`
699 "mirrorConfig": { # Configuration to automatically mirror a repository from another # How this repository mirrors a repository managed by another service.
700 # Read-only field.
701 # hosting service, for example GitHub or Bitbucket.
702 "url": "A String", # URL of the main repository at the other hosting service.
703 "webhookId": "A String", # ID of the webhook listening to updates to trigger mirroring.
704 # Removing this webhook from the other hosting service will stop
705 # Google Cloud Source Repositories from receiving notifications,
706 # and thereby disabling mirroring.
707 "deployKeyId": "A String", # ID of the SSH deploy key at the other hosting service.
708 # Removing this key from the other service would deauthorize
709 # Google Cloud Source Repositories from mirroring.
710 },
711 },
712 "updateMask": "A String", # A FieldMask specifying which fields of the repo to modify. Only the fields
713 # in the mask will be modified. If no mask is provided, this request is
714 # no-op.
715 }
716
717 x__xgafv: string, V1 error format.
718 Allowed values
719 1 - v1 error format
720 2 - v2 error format
721
722Returns:
723 An object of the form:
724
725 { # A repository (or repo) is a Git repository storing versioned source content.
726 "url": "A String", # URL to clone the repository from Google Cloud Source Repositories.
727 # Read-only field.
728 "pubsubConfigs": { # How this repository publishes a change in the repository through Cloud
729 # Pub/Sub. Keyed by the topic names.
730 "a_key": { # Configuration to publish a Cloud Pub/Sub message.
731 "topic": "A String", # A topic of Cloud Pub/Sub. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700732 # `projects/&lt;project&gt;/topics/&lt;topic&gt;`. The project needs to be the same
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700733 # project as this config is in.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700734 "serviceAccountEmail": "A String", # Email address of the service account used for publishing Cloud Pub/Sub
735 # messages. This service account needs to be in the same project as the
736 # PubsubConfig. When added, the caller needs to have
737 # iam.serviceAccounts.actAs permission on this service account. If
738 # unspecified, it defaults to the compute engine default service account.
Dan O'Mearadd494642020-05-01 07:42:23 -0700739 "messageFormat": "A String", # The format of the Cloud Pub/Sub messages.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700740 },
741 },
742 "size": "A String", # The disk usage of the repo, in bytes. Read-only field. Size is only
743 # returned by GetRepo.
744 "name": "A String", # Resource name of the repository, of the form
Dan O'Mearadd494642020-05-01 07:42:23 -0700745 # `projects/&lt;project&gt;/repos/&lt;repo&gt;`. The repo name may contain slashes.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700746 # eg, `projects/myproject/repos/name/with/slash`
747 "mirrorConfig": { # Configuration to automatically mirror a repository from another # How this repository mirrors a repository managed by another service.
748 # Read-only field.
749 # hosting service, for example GitHub or Bitbucket.
750 "url": "A String", # URL of the main repository at the other hosting service.
751 "webhookId": "A String", # ID of the webhook listening to updates to trigger mirroring.
752 # Removing this webhook from the other hosting service will stop
753 # Google Cloud Source Repositories from receiving notifications,
754 # and thereby disabling mirroring.
755 "deployKeyId": "A String", # ID of the SSH deploy key at the other hosting service.
756 # Removing this key from the other service would deauthorize
757 # Google Cloud Source Repositories from mirroring.
758 },
759 }</pre>
760</div>
761
762<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700763 <code class="details" id="setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</code>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400764 <pre>Sets the access control policy on the specified resource. Replaces any
765existing policy.
766
767Args:
768 resource: string, REQUIRED: The resource for which the policy is being specified.
769See the operation documentation for the appropriate value for this field. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700770 body: object, The request body.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400771 The object takes the form of:
772
773{ # Request message for `SetIamPolicy` method.
Dan O'Mearadd494642020-05-01 07:42:23 -0700774 "policy": { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the `resource`. The size of
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400775 # the policy is limited to a few 10s of KB. An empty policy is a
776 # valid policy but certain Cloud Platform services (such as Projects)
777 # might reject them.
Dan O'Mearadd494642020-05-01 07:42:23 -0700778 # controls for Google Cloud resources.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400779 #
780 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700781 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
782 # `members` to a single `role`. Members can be user accounts, service accounts,
783 # Google groups, and domains (such as G Suite). A `role` is a named list of
784 # permissions; each `role` can be an IAM predefined role or a user-created
785 # custom role.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400786 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700787 # Optionally, a `binding` can specify a `condition`, which is a logical
788 # expression that allows access to a resource only if the expression evaluates
789 # to `true`. A condition can add constraints based on attributes of the
790 # request, the resource, or both.
791 #
792 # **JSON example:**
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400793 #
794 # {
795 # "bindings": [
796 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700797 # "role": "roles/resourcemanager.organizationAdmin",
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400798 # "members": [
799 # "user:mike@example.com",
800 # "group:admins@example.com",
801 # "domain:google.com",
Dan O'Mearadd494642020-05-01 07:42:23 -0700802 # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400803 # ]
804 # },
805 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700806 # "role": "roles/resourcemanager.organizationViewer",
807 # "members": ["user:eve@example.com"],
808 # "condition": {
809 # "title": "expirable access",
810 # "description": "Does not grant access after Sep 2020",
811 # "expression": "request.time &lt; timestamp('2020-10-01T00:00:00.000Z')",
812 # }
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400813 # }
Dan O'Mearadd494642020-05-01 07:42:23 -0700814 # ],
815 # "etag": "BwWWja0YfJA=",
816 # "version": 3
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400817 # }
818 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700819 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700820 #
821 # bindings:
822 # - members:
823 # - user:mike@example.com
824 # - group:admins@example.com
825 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -0700826 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
827 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700828 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -0700829 # - user:eve@example.com
830 # role: roles/resourcemanager.organizationViewer
831 # condition:
832 # title: expirable access
833 # description: Does not grant access after Sep 2020
834 # expression: request.time &lt; timestamp('2020-10-01T00:00:00.000Z')
835 # - etag: BwWWja0YfJA=
836 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700837 #
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400838 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -0700839 # [IAM documentation](https://cloud.google.com/iam/docs/).
840 "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a
841 # `condition` that determines how and when the `bindings` are applied. Each
842 # of the `bindings` must contain at least one member.
843 { # Associates `members` with a `role`.
844 "role": "A String", # Role that is assigned to `members`.
845 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
846 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
847 # `members` can have the following values:
848 #
849 # * `allUsers`: A special identifier that represents anyone who is
850 # on the internet; with or without a Google account.
851 #
852 # * `allAuthenticatedUsers`: A special identifier that represents anyone
853 # who is authenticated with a Google account or a service account.
854 #
855 # * `user:{emailid}`: An email address that represents a specific Google
856 # account. For example, `alice@example.com` .
857 #
858 #
859 # * `serviceAccount:{emailid}`: An email address that represents a service
860 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
861 #
862 # * `group:{emailid}`: An email address that represents a Google group.
863 # For example, `admins@example.com`.
864 #
865 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
866 # identifier) representing a user that has been recently deleted. For
867 # example, `alice@example.com?uid=123456789012345678901`. If the user is
868 # recovered, this value reverts to `user:{emailid}` and the recovered user
869 # retains the role in the binding.
870 #
871 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
872 # unique identifier) representing a service account that has been recently
873 # deleted. For example,
874 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
875 # If the service account is undeleted, this value reverts to
876 # `serviceAccount:{emailid}` and the undeleted service account retains the
877 # role in the binding.
878 #
879 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
880 # identifier) representing a Google group that has been recently
881 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
882 # the group is recovered, this value reverts to `group:{emailid}` and the
883 # recovered group retains the role in the binding.
884 #
885 #
886 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
887 # users of that domain. For example, `google.com` or `example.com`.
888 #
889 "A String",
890 ],
891 "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
892 # NOTE: An unsatisfied condition will not allow user access via current
893 # binding. Different bindings, including their conditions, are examined
894 # independently.
895 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
896 # are documented at https://github.com/google/cel-spec.
897 #
898 # Example (Comparison):
899 #
900 # title: "Summary size limit"
901 # description: "Determines if a summary is less than 100 chars"
902 # expression: "document.summary.size() &lt; 100"
903 #
904 # Example (Equality):
905 #
906 # title: "Requestor is owner"
907 # description: "Determines if requestor is the document owner"
908 # expression: "document.owner == request.auth.claims.email"
909 #
910 # Example (Logic):
911 #
912 # title: "Public documents"
913 # description: "Determine whether the document should be publicly visible"
914 # expression: "document.type != 'private' &amp;&amp; document.type != 'internal'"
915 #
916 # Example (Data Manipulation):
917 #
918 # title: "Notification string"
919 # description: "Create a notification string with a timestamp."
920 # expression: "'New message received at ' + string(document.create_time)"
921 #
922 # The exact variables and functions that may be referenced within an expression
923 # are determined by the service that evaluates it. See the service
924 # documentation for additional information.
925 "description": "A String", # Optional. Description of the expression. This is a longer text which
926 # describes the expression, e.g. when hovered over it in a UI.
927 "expression": "A String", # Textual representation of an expression in Common Expression Language
928 # syntax.
929 "location": "A String", # Optional. String indicating the location of the expression for error
930 # reporting, e.g. a file name and a position in the file.
931 "title": "A String", # Optional. Title for the expression, i.e. a short string describing
932 # its purpose. This can be used e.g. in UIs which allow to enter the
933 # expression.
934 },
935 },
936 ],
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400937 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
938 { # Specifies the audit configuration for a service.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700939 # The configuration determines which permission types are logged, and what
940 # identities, if any, are exempted from logging.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400941 # An AuditConfig must have one or more AuditLogConfigs.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400942 #
943 # If there are AuditConfigs for both `allServices` and a specific service,
944 # the union of the two AuditConfigs is used for that service: the log_types
945 # specified in each AuditConfig are enabled, and the exempted_members in each
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700946 # AuditLogConfig are exempted.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400947 #
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400948 # Example Policy with multiple AuditConfigs:
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400949 #
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400950 # {
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400951 # "audit_configs": [
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400952 # {
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400953 # "service": "allServices"
954 # "audit_log_configs": [
955 # {
956 # "log_type": "DATA_READ",
957 # "exempted_members": [
Dan O'Mearadd494642020-05-01 07:42:23 -0700958 # "user:jose@example.com"
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400959 # ]
960 # },
961 # {
962 # "log_type": "DATA_WRITE",
963 # },
964 # {
965 # "log_type": "ADMIN_READ",
966 # }
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400967 # ]
968 # },
969 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700970 # "service": "sampleservice.googleapis.com"
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400971 # "audit_log_configs": [
972 # {
973 # "log_type": "DATA_READ",
974 # },
975 # {
976 # "log_type": "DATA_WRITE",
977 # "exempted_members": [
Dan O'Mearadd494642020-05-01 07:42:23 -0700978 # "user:aliya@example.com"
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400979 # ]
980 # }
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400981 # ]
982 # }
983 # ]
984 # }
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -0400985 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700986 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
987 # logging. It also exempts jose@example.com from DATA_READ logging, and
988 # aliya@example.com from DATA_WRITE logging.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400989 "auditLogConfigs": [ # The configuration for logging of each type of permission.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400990 { # Provides the configuration for logging a type of permissions.
991 # Example:
992 #
993 # {
994 # "audit_log_configs": [
995 # {
996 # "log_type": "DATA_READ",
997 # "exempted_members": [
Dan O'Mearadd494642020-05-01 07:42:23 -0700998 # "user:jose@example.com"
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400999 # ]
1000 # },
1001 # {
1002 # "log_type": "DATA_WRITE",
1003 # }
1004 # ]
1005 # }
1006 #
1007 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
Dan O'Mearadd494642020-05-01 07:42:23 -07001008 # jose@example.com from DATA_READ logging.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001009 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
1010 # permission.
1011 # Follows the same format of Binding.members.
1012 "A String",
1013 ],
1014 "logType": "A String", # The log type that this config enables.
1015 },
1016 ],
1017 "service": "A String", # Specifies a service that will be enabled for audit logging.
Sai Cheemalapatie833b792017-03-24 15:06:46 -07001018 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001019 # `allServices` is a special value that covers all services.
1020 },
1021 ],
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001022 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
1023 # prevent simultaneous updates of a policy from overwriting each other.
1024 # It is strongly suggested that systems make use of the `etag` in the
1025 # read-modify-write cycle to perform policy updates in order to avoid race
1026 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1027 # systems are expected to put that etag in the request to `setIamPolicy` to
1028 # ensure that their change will be applied to the same version of the policy.
1029 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001030 # **Important:** If you use IAM Conditions, you must include the `etag` field
1031 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1032 # you to overwrite a version `3` policy with a version `1` policy, and all of
1033 # the conditions in the version `3` policy are lost.
1034 "version": 42, # Specifies the format of the policy.
1035 #
1036 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1037 # are rejected.
1038 #
1039 # Any operation that affects conditional role bindings must specify version
1040 # `3`. This requirement applies to the following operations:
1041 #
1042 # * Getting a policy that includes a conditional role binding
1043 # * Adding a conditional role binding to a policy
1044 # * Changing a conditional role binding in a policy
1045 # * Removing any role binding, with or without a condition, from a policy
1046 # that includes conditions
1047 #
1048 # **Important:** If you use IAM Conditions, you must include the `etag` field
1049 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1050 # you to overwrite a version `3` policy with a version `1` policy, and all of
1051 # the conditions in the version `3` policy are lost.
1052 #
1053 # If a policy does not include any conditions, operations on that policy may
1054 # specify any valid version or leave the field unset.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001055 },
1056 "updateMask": "A String", # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
Sai Cheemalapatie833b792017-03-24 15:06:46 -07001057 # the fields in the mask will be modified. If no mask is provided, the
1058 # following default mask is used:
Dan O'Mearadd494642020-05-01 07:42:23 -07001059 #
1060 # `paths: "bindings, etag"`
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001061 }
1062
1063 x__xgafv: string, V1 error format.
1064 Allowed values
1065 1 - v1 error format
1066 2 - v2 error format
1067
1068Returns:
1069 An object of the form:
1070
Dan O'Mearadd494642020-05-01 07:42:23 -07001071 { # An Identity and Access Management (IAM) policy, which specifies access
1072 # controls for Google Cloud resources.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001073 #
1074 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001075 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1076 # `members` to a single `role`. Members can be user accounts, service accounts,
1077 # Google groups, and domains (such as G Suite). A `role` is a named list of
1078 # permissions; each `role` can be an IAM predefined role or a user-created
1079 # custom role.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001080 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001081 # Optionally, a `binding` can specify a `condition`, which is a logical
1082 # expression that allows access to a resource only if the expression evaluates
1083 # to `true`. A condition can add constraints based on attributes of the
1084 # request, the resource, or both.
1085 #
1086 # **JSON example:**
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001087 #
1088 # {
1089 # "bindings": [
1090 # {
Dan O'Mearadd494642020-05-01 07:42:23 -07001091 # "role": "roles/resourcemanager.organizationAdmin",
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001092 # "members": [
1093 # "user:mike@example.com",
1094 # "group:admins@example.com",
1095 # "domain:google.com",
Dan O'Mearadd494642020-05-01 07:42:23 -07001096 # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001097 # ]
1098 # },
1099 # {
Dan O'Mearadd494642020-05-01 07:42:23 -07001100 # "role": "roles/resourcemanager.organizationViewer",
1101 # "members": ["user:eve@example.com"],
1102 # "condition": {
1103 # "title": "expirable access",
1104 # "description": "Does not grant access after Sep 2020",
1105 # "expression": "request.time &lt; timestamp('2020-10-01T00:00:00.000Z')",
1106 # }
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001107 # }
Dan O'Mearadd494642020-05-01 07:42:23 -07001108 # ],
1109 # "etag": "BwWWja0YfJA=",
1110 # "version": 3
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001111 # }
1112 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001113 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001114 #
1115 # bindings:
1116 # - members:
1117 # - user:mike@example.com
1118 # - group:admins@example.com
1119 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -07001120 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1121 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001122 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -07001123 # - user:eve@example.com
1124 # role: roles/resourcemanager.organizationViewer
1125 # condition:
1126 # title: expirable access
1127 # description: Does not grant access after Sep 2020
1128 # expression: request.time &lt; timestamp('2020-10-01T00:00:00.000Z')
1129 # - etag: BwWWja0YfJA=
1130 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001131 #
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001132 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -07001133 # [IAM documentation](https://cloud.google.com/iam/docs/).
1134 "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a
1135 # `condition` that determines how and when the `bindings` are applied. Each
1136 # of the `bindings` must contain at least one member.
1137 { # Associates `members` with a `role`.
1138 "role": "A String", # Role that is assigned to `members`.
1139 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1140 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
1141 # `members` can have the following values:
1142 #
1143 # * `allUsers`: A special identifier that represents anyone who is
1144 # on the internet; with or without a Google account.
1145 #
1146 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1147 # who is authenticated with a Google account or a service account.
1148 #
1149 # * `user:{emailid}`: An email address that represents a specific Google
1150 # account. For example, `alice@example.com` .
1151 #
1152 #
1153 # * `serviceAccount:{emailid}`: An email address that represents a service
1154 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1155 #
1156 # * `group:{emailid}`: An email address that represents a Google group.
1157 # For example, `admins@example.com`.
1158 #
1159 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
1160 # identifier) representing a user that has been recently deleted. For
1161 # example, `alice@example.com?uid=123456789012345678901`. If the user is
1162 # recovered, this value reverts to `user:{emailid}` and the recovered user
1163 # retains the role in the binding.
1164 #
1165 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
1166 # unique identifier) representing a service account that has been recently
1167 # deleted. For example,
1168 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
1169 # If the service account is undeleted, this value reverts to
1170 # `serviceAccount:{emailid}` and the undeleted service account retains the
1171 # role in the binding.
1172 #
1173 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
1174 # identifier) representing a Google group that has been recently
1175 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
1176 # the group is recovered, this value reverts to `group:{emailid}` and the
1177 # recovered group retains the role in the binding.
1178 #
1179 #
1180 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
1181 # users of that domain. For example, `google.com` or `example.com`.
1182 #
1183 "A String",
1184 ],
1185 "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
1186 # NOTE: An unsatisfied condition will not allow user access via current
1187 # binding. Different bindings, including their conditions, are examined
1188 # independently.
1189 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
1190 # are documented at https://github.com/google/cel-spec.
1191 #
1192 # Example (Comparison):
1193 #
1194 # title: "Summary size limit"
1195 # description: "Determines if a summary is less than 100 chars"
1196 # expression: "document.summary.size() &lt; 100"
1197 #
1198 # Example (Equality):
1199 #
1200 # title: "Requestor is owner"
1201 # description: "Determines if requestor is the document owner"
1202 # expression: "document.owner == request.auth.claims.email"
1203 #
1204 # Example (Logic):
1205 #
1206 # title: "Public documents"
1207 # description: "Determine whether the document should be publicly visible"
1208 # expression: "document.type != 'private' &amp;&amp; document.type != 'internal'"
1209 #
1210 # Example (Data Manipulation):
1211 #
1212 # title: "Notification string"
1213 # description: "Create a notification string with a timestamp."
1214 # expression: "'New message received at ' + string(document.create_time)"
1215 #
1216 # The exact variables and functions that may be referenced within an expression
1217 # are determined by the service that evaluates it. See the service
1218 # documentation for additional information.
1219 "description": "A String", # Optional. Description of the expression. This is a longer text which
1220 # describes the expression, e.g. when hovered over it in a UI.
1221 "expression": "A String", # Textual representation of an expression in Common Expression Language
1222 # syntax.
1223 "location": "A String", # Optional. String indicating the location of the expression for error
1224 # reporting, e.g. a file name and a position in the file.
1225 "title": "A String", # Optional. Title for the expression, i.e. a short string describing
1226 # its purpose. This can be used e.g. in UIs which allow to enter the
1227 # expression.
1228 },
1229 },
1230 ],
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001231 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
1232 { # Specifies the audit configuration for a service.
Sai Cheemalapatie833b792017-03-24 15:06:46 -07001233 # The configuration determines which permission types are logged, and what
1234 # identities, if any, are exempted from logging.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001235 # An AuditConfig must have one or more AuditLogConfigs.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001236 #
1237 # If there are AuditConfigs for both `allServices` and a specific service,
1238 # the union of the two AuditConfigs is used for that service: the log_types
1239 # specified in each AuditConfig are enabled, and the exempted_members in each
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001240 # AuditLogConfig are exempted.
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001241 #
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001242 # Example Policy with multiple AuditConfigs:
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001243 #
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001244 # {
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001245 # "audit_configs": [
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001246 # {
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001247 # "service": "allServices"
1248 # "audit_log_configs": [
1249 # {
1250 # "log_type": "DATA_READ",
1251 # "exempted_members": [
Dan O'Mearadd494642020-05-01 07:42:23 -07001252 # "user:jose@example.com"
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001253 # ]
1254 # },
1255 # {
1256 # "log_type": "DATA_WRITE",
1257 # },
1258 # {
1259 # "log_type": "ADMIN_READ",
1260 # }
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001261 # ]
1262 # },
1263 # {
Dan O'Mearadd494642020-05-01 07:42:23 -07001264 # "service": "sampleservice.googleapis.com"
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001265 # "audit_log_configs": [
1266 # {
1267 # "log_type": "DATA_READ",
1268 # },
1269 # {
1270 # "log_type": "DATA_WRITE",
1271 # "exempted_members": [
Dan O'Mearadd494642020-05-01 07:42:23 -07001272 # "user:aliya@example.com"
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001273 # ]
1274 # }
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001275 # ]
1276 # }
1277 # ]
1278 # }
Sai Cheemalapati4ba8c232017-06-06 18:46:08 -04001279 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001280 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1281 # logging. It also exempts jose@example.com from DATA_READ logging, and
1282 # aliya@example.com from DATA_WRITE logging.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001283 "auditLogConfigs": [ # The configuration for logging of each type of permission.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001284 { # Provides the configuration for logging a type of permissions.
1285 # Example:
1286 #
1287 # {
1288 # "audit_log_configs": [
1289 # {
1290 # "log_type": "DATA_READ",
1291 # "exempted_members": [
Dan O'Mearadd494642020-05-01 07:42:23 -07001292 # "user:jose@example.com"
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001293 # ]
1294 # },
1295 # {
1296 # "log_type": "DATA_WRITE",
1297 # }
1298 # ]
1299 # }
1300 #
1301 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
Dan O'Mearadd494642020-05-01 07:42:23 -07001302 # jose@example.com from DATA_READ logging.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001303 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
1304 # permission.
1305 # Follows the same format of Binding.members.
1306 "A String",
1307 ],
1308 "logType": "A String", # The log type that this config enables.
1309 },
1310 ],
1311 "service": "A String", # Specifies a service that will be enabled for audit logging.
Sai Cheemalapatie833b792017-03-24 15:06:46 -07001312 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001313 # `allServices` is a special value that covers all services.
1314 },
1315 ],
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001316 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
1317 # prevent simultaneous updates of a policy from overwriting each other.
1318 # It is strongly suggested that systems make use of the `etag` in the
1319 # read-modify-write cycle to perform policy updates in order to avoid race
1320 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1321 # systems are expected to put that etag in the request to `setIamPolicy` to
1322 # ensure that their change will be applied to the same version of the policy.
1323 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001324 # **Important:** If you use IAM Conditions, you must include the `etag` field
1325 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1326 # you to overwrite a version `3` policy with a version `1` policy, and all of
1327 # the conditions in the version `3` policy are lost.
1328 "version": 42, # Specifies the format of the policy.
1329 #
1330 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1331 # are rejected.
1332 #
1333 # Any operation that affects conditional role bindings must specify version
1334 # `3`. This requirement applies to the following operations:
1335 #
1336 # * Getting a policy that includes a conditional role binding
1337 # * Adding a conditional role binding to a policy
1338 # * Changing a conditional role binding in a policy
1339 # * Removing any role binding, with or without a condition, from a policy
1340 # that includes conditions
1341 #
1342 # **Important:** If you use IAM Conditions, you must include the `etag` field
1343 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1344 # you to overwrite a version `3` policy with a version `1` policy, and all of
1345 # the conditions in the version `3` policy are lost.
1346 #
1347 # If a policy does not include any conditions, operations on that policy may
1348 # specify any valid version or leave the field unset.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001349 }</pre>
1350</div>
1351
1352<div class="method">
1353 <code class="details" id="sync">sync(name, body=None, x__xgafv=None)</code>
1354 <pre>Synchronize a connected repo.
1355
1356The response contains SyncRepoMetadata in the metadata field.
1357
1358Args:
1359 name: string, The name of the repo to synchronize. Values are of the form
Dan O'Mearadd494642020-05-01 07:42:23 -07001360`projects/&lt;project&gt;/repos/&lt;repo&gt;`. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001361 body: object, The request body.
1362 The object takes the form of:
1363
1364{ # Request for SyncRepo.
1365 }
1366
1367 x__xgafv: string, V1 error format.
1368 Allowed values
1369 1 - v1 error format
1370 2 - v2 error format
1371
1372Returns:
1373 An object of the form:
1374
1375 { # This resource represents a long-running operation that is the result of a
1376 # network API call.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001377 "metadata": { # Service-specific metadata associated with the operation. It typically
1378 # contains progress information and common metadata such as create time.
1379 # Some services might not provide such metadata. Any method that returns a
1380 # long-running operation should document the metadata type, if any.
1381 "a_key": "", # Properties of the object. Contains field @type with type URL.
1382 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001383 "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
1384 # different programming environments, including REST APIs and RPC APIs. It is
Dan O'Mearadd494642020-05-01 07:42:23 -07001385 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1386 # three pieces of data: error code, error message, and error details.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001387 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001388 # You can find out more about this error model and how to work with it in the
1389 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001390 "message": "A String", # A developer-facing error message, which should be in English. Any
1391 # user-facing error message should be localized and sent in the
1392 # google.rpc.Status.details field, or localized by the client.
1393 "code": 42, # The status code, which should be an enum value of google.rpc.Code.
1394 "details": [ # A list of messages that carry the error details. There is a common set of
1395 # message types for APIs to use.
1396 {
1397 "a_key": "", # Properties of the object. Contains field @type with type URL.
1398 },
1399 ],
1400 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001401 "done": True or False, # If the value is `false`, it means the operation is still in progress.
1402 # If `true`, the operation is completed, and either `error` or `response` is
1403 # available.
1404 "response": { # The normal response of the operation in case of success. If the original
1405 # method returns no data on success, such as `Delete`, the response is
1406 # `google.protobuf.Empty`. If the original method is standard
1407 # `Get`/`Create`/`Update`, the response should be the resource. For other
1408 # methods, the response should have the type `XxxResponse`, where `Xxx`
1409 # is the original method name. For example, if the original method name
1410 # is `TakeSnapshot()`, the inferred response type is
1411 # `TakeSnapshotResponse`.
1412 "a_key": "", # Properties of the object. Contains field @type with type URL.
1413 },
1414 "name": "A String", # The server-assigned name, which is only unique within the same service that
1415 # originally returns it. If you use the default HTTP mapping, the
1416 # `name` should be a resource name ending with `operations/{unique_id}`.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001417 }</pre>
1418</div>
1419
1420<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07001421 <code class="details" id="testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</code>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001422 <pre>Returns permissions that a caller has on the specified resource.
1423If the resource does not exist, this will return an empty set of
1424permissions, not a NOT_FOUND error.
1425
1426Args:
1427 resource: string, REQUIRED: The resource for which the policy detail is being requested.
1428See the operation documentation for the appropriate value for this field. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001429 body: object, The request body.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001430 The object takes the form of:
1431
1432{ # Request message for `TestIamPermissions` method.
1433 "permissions": [ # The set of permissions to check for the `resource`. Permissions with
1434 # wildcards (such as '*' or 'storage.*') are not allowed. For more
1435 # information see
1436 # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
1437 "A String",
1438 ],
1439 }
1440
1441 x__xgafv: string, V1 error format.
1442 Allowed values
1443 1 - v1 error format
1444 2 - v2 error format
1445
1446Returns:
1447 An object of the form:
1448
1449 { # Response message for `TestIamPermissions` method.
1450 "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is
1451 # allowed.
1452 "A String",
1453 ],
1454 }</pre>
1455</div>
1456
1457</body></html>