blob: 1e9783f13deb366ba9fa7a852d8cc403d53de51a [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001<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="cloudfunctions_v1.html">Cloud Functions API</a> . <a href="cloudfunctions_v1.projects.html">projects</a> . <a href="cloudfunctions_v1.projects.locations.html">locations</a> . <a href="cloudfunctions_v1.projects.locations.functions.html">functions</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78 <code><a href="#call">call(name, body, x__xgafv=None)</a></code></p>
79<p class="firstline">Synchronously invokes a deployed Cloud Function. To be used for testing</p>
80<p class="toc_element">
81 <code><a href="#create">create(location, body, x__xgafv=None)</a></code></p>
82<p class="firstline">Creates a new function. If a function with the given name already exists in</p>
83<p class="toc_element">
84 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
85<p class="firstline">Deletes a function with the given name from the specified project. If the</p>
86<p class="toc_element">
87 <code><a href="#generateDownloadUrl">generateDownloadUrl(name, body, x__xgafv=None)</a></code></p>
88<p class="firstline">Returns a signed URL for downloading deployed function source code.</p>
89<p class="toc_element">
90 <code><a href="#generateUploadUrl">generateUploadUrl(parent, body=None, x__xgafv=None)</a></code></p>
91<p class="firstline">Returns a signed URL for uploading a function source code.</p>
92<p class="toc_element">
93 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
94<p class="firstline">Returns a function with the given name from the requested project.</p>
95<p class="toc_element">
96 <code><a href="#getIamPolicy">getIamPolicy(resource, x__xgafv=None)</a></code></p>
97<p class="firstline">Gets the IAM access control policy for a function.</p>
98<p class="toc_element">
99 <code><a href="#list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
100<p class="firstline">Returns a list of functions that belong to the requested project.</p>
101<p class="toc_element">
102 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
103<p class="firstline">Retrieves the next page of results.</p>
104<p class="toc_element">
105 <code><a href="#patch">patch(name, body, updateMask=None, x__xgafv=None)</a></code></p>
106<p class="firstline">Updates existing function.</p>
107<p class="toc_element">
108 <code><a href="#setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</a></code></p>
109<p class="firstline">Sets the IAM access control policy on the specified function.</p>
110<p class="toc_element">
111 <code><a href="#testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</a></code></p>
112<p class="firstline">Tests the specified permissions against the IAM access control policy</p>
113<h3>Method Details</h3>
114<div class="method">
115 <code class="details" id="call">call(name, body, x__xgafv=None)</code>
116 <pre>Synchronously invokes a deployed Cloud Function. To be used for testing
117purposes as very limited traffic is allowed. For more information on
118the actual limits, refer to
119[Rate Limits](https://cloud.google.com/functions/quotas#rate_limits).
120
121Args:
122 name: string, The name of the function to be called. (required)
123 body: object, The request body. (required)
124 The object takes the form of:
125
126{ # Request for the `CallFunction` method.
127 "data": "A String", # Input to be passed to the function.
128 }
129
130 x__xgafv: string, V1 error format.
131 Allowed values
132 1 - v1 error format
133 2 - v2 error format
134
135Returns:
136 An object of the form:
137
138 { # Response of `CallFunction` method.
139 "executionId": "A String", # Execution id of function invocation.
140 "result": "A String", # Result populated for successful execution of synchronous function. Will
141 # not be populated if function does not return a result through context.
142 "error": "A String", # Either system or user-function generated error. Set if execution
143 # was not successful.
144 }</pre>
145</div>
146
147<div class="method">
148 <code class="details" id="create">create(location, body, x__xgafv=None)</code>
149 <pre>Creates a new function. If a function with the given name already exists in
150the specified project, the long running operation will return
151`ALREADY_EXISTS` error.
152
153Args:
154 location: string, The project and location in which the function should be created, specified
155in the format `projects/*/locations/*` (required)
156 body: object, The request body. (required)
157 The object takes the form of:
158
159{ # Describes a Cloud Function that contains user computation executed in
160 # response to an event. It encapsulate function and triggers configurations.
161 # LINT.IfChange
162 "status": "A String", # Output only. Status of the function deployment.
163 "eventTrigger": { # Describes EventTrigger, used to request events be sent from another # A source that fires events in response to a condition in another service.
164 # service.
165 "eventType": "A String", # Required. The type of event to observe. For example:
166 # `providers/cloud.storage/eventTypes/object.change` and
167 # `providers/cloud.pubsub/eventTypes/topic.publish`.
168 #
169 # Event types match pattern `providers/*/eventTypes/*.*`.
170 # The pattern contains:
171 #
172 # 1. namespace: For example, `cloud.storage` and
173 # `google.firebase.analytics`.
174 # 2. resource type: The type of resource on which event occurs. For
175 # example, the Google Cloud Storage API includes the type `object`.
176 # 3. action: The action that generates the event. For example, action for
177 # a Google Cloud Storage Object is 'change'.
178 # These parts are lower case.
179 "resource": "A String", # Required. The resource(s) from which to observe events, for example,
180 # `projects/_/buckets/myBucket`.
181 #
182 # Not all syntactically correct values are accepted by all services. For
183 # example:
184 #
185 # 1. The authorization model must support it. Google Cloud Functions
186 # only allows EventTriggers to be deployed that observe resources in the
187 # same project as the `CloudFunction`.
188 # 2. The resource type must match the pattern expected for an
189 # `event_type`. For example, an `EventTrigger` that has an
190 # `event_type` of "google.pubsub.topic.publish" should have a resource
191 # that matches Google Cloud Pub/Sub topics.
192 #
193 # Additionally, some services may support short names when creating an
194 # `EventTrigger`. These will always be returned in the normalized "long"
195 # format.
196 #
197 # See each *service's* documentation for supported formats.
198 "service": "A String", # The hostname of the service that should be observed.
199 #
200 # If no string is provided, the default service implementing the API will
201 # be used. For example, `storage.googleapis.com` is the default for all
202 # event types in the `google.storage` namespace.
203 "failurePolicy": { # Describes the policy in case of function's execution failure. # Specifies policy for failed executions.
204 # If empty, then defaults to ignoring failures (i.e. not retrying them).
205 "retry": { # Describes the retry policy in case of function's execution failure. # If specified, then the function will be retried in case of a failure.
206 # A function execution will be retried on any failure.
207 # A failed execution will be retried up to 7 days with an exponential backoff
208 # (capped at 10 seconds).
209 # Retried execution is charged as any other execution.
210 },
211 },
212 },
213 "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function.
214 "description": "A String", # User-provided description of a function.
215 "maxInstances": 42, # The limit on the maximum number of function instances that may coexist at a
216 # given time.
217 "sourceRepository": { # Describes SourceRepository, used to represent parameters related to # **Beta Feature**
218 #
219 # The source repository where a function is hosted.
220 # source repository where a function is hosted.
221 "url": "A String", # The URL pointing to the hosted repository where the function is defined.
222 # There are supported Cloud Source Repository URLs in the following
223 # formats:
224 #
225 # To refer to a specific commit:
226 # `https://source.developers.google.com/projects/*/repos/*/revisions/*/paths/*`
227 # To refer to a moveable alias (branch):
228 # `https://source.developers.google.com/projects/*/repos/*/moveable-aliases/*/paths/*`
229 # In particular, to refer to HEAD use `master` moveable alias.
230 # To refer to a specific fixed alias (tag):
231 # `https://source.developers.google.com/projects/*/repos/*/fixed-aliases/*/paths/*`
232 #
233 # You may omit `paths/*` if you want to use the main directory.
234 "deployedUrl": "A String", # Output only. The URL pointing to the hosted repository where the function
235 # were defined at the time of deployment. It always points to a specific
236 # commit in the format described above.
237 },
238 "sourceUploadUrl": "A String", # The Google Cloud Storage signed URL used for source uploading, generated
239 # by google.cloud.functions.v1.GenerateUploadUrl
240 "httpsTrigger": { # Describes HttpsTrigger, could be used to connect web hooks to function. # An HTTPS endpoint type of source that can be triggered via URL.
241 "url": "A String", # Output only. The deployed url for the function.
242 },
243 "sourceArchiveUrl": "A String", # The Google Cloud Storage URL, starting with gs://, pointing to the zip
244 # archive which contains the function.
245 "labels": { # Labels associated with this Cloud Function.
246 "a_key": "A String",
247 },
248 "environmentVariables": { # Environment variables that shall be available during function execution.
249 "a_key": "A String",
250 },
251 "availableMemoryMb": 42, # The amount of memory in MB available for a function.
252 # Defaults to 256MB.
253 "versionId": "A String", # Output only.
254 # The version identifier of the Cloud Function. Each deployment attempt
255 # results in a new version of a function being created.
256 "entryPoint": "A String", # The name of the function (as defined in source code) that will be
257 # executed. Defaults to the resource name suffix, if not specified. For
258 # backward compatibility, if function with given name is not found, then the
259 # system will try to use function named "function".
260 # For Node.js this is name of a function exported by the module specified
261 # in `source_location`.
262 "serviceAccountEmail": "A String", # The email of the function's service account. If empty, defaults to
263 # {project_id}@appspot.gserviceaccount.com.
264 "timeout": "A String", # The function execution timeout. Execution is considered failed and
265 # can be terminated if the function is not completed at the end of the
266 # timeout period. Defaults to 60 seconds.
267 "runtime": "A String", # Required. The runtime in which the function is going to run. Choices:
268 #
269 # * `nodejs6`: Node.js 6
270 # * `nodejs8`: Node.js 8
271 # * `nodejs10`: Node.js 10
272 # * `python37`: Python 3.7
273 # * `go111`: Go 1.11
274 "vpcConnector": "A String", # The VPC Network Connector that this cloud function can connect to. It can
275 # be either the fully-qualified URI, or the short name of the network
276 # connector resource. The format of this field is
277 # `projects/*/locations/*/connectors/*`
278 #
279 # This field is mutually exclusive with `network` field and will eventually
280 # replace it.
281 #
282 # See [the VPC documentation](https://cloud.google.com/compute/docs/vpc) for
283 # more information on connecting Cloud projects.
284 #
285 # This feature is currently in alpha, available only for whitelisted users.
286 "network": "A String", # The VPC Network that this cloud function can connect to. It can be
287 # either the fully-qualified URI, or the short name of the network resource.
288 # If the short network name is used, the network must belong to the same
289 # project. Otherwise, it must belong to a project within the same
290 # organization. The format of this field is either
291 # `projects/{project}/global/networks/{network}` or `{network}`, where
292 # {project} is a project id where the network is defined, and {network} is
293 # the short name of the network.
294 #
295 # This field is mutually exclusive with `vpc_connector` and will be replaced
296 # by it.
297 #
298 # See [the VPC documentation](https://cloud.google.com/compute/docs/vpc) for
299 # more information on connecting Cloud projects.
300 #
301 # This feature is currently in alpha, available only for whitelisted users.
302 "name": "A String", # A user-defined name of the function. Function names must be unique
303 # globally and match pattern `projects/*/locations/*/functions/*`
304 }
305
306 x__xgafv: string, V1 error format.
307 Allowed values
308 1 - v1 error format
309 2 - v2 error format
310
311Returns:
312 An object of the form:
313
314 { # This resource represents a long-running operation that is the result of a
315 # network API call.
316 "metadata": { # Service-specific metadata associated with the operation. It typically
317 # contains progress information and common metadata such as create time.
318 # Some services might not provide such metadata. Any method that returns a
319 # long-running operation should document the metadata type, if any.
320 "a_key": "", # Properties of the object. Contains field @type with type URL.
321 },
322 "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.
323 # different programming environments, including REST APIs and RPC APIs. It is
324 # used by [gRPC](https://github.com/grpc). The error model is designed to be:
325 #
326 # - Simple to use and understand for most users
327 # - Flexible enough to meet unexpected needs
328 #
329 # # Overview
330 #
331 # The `Status` message contains three pieces of data: error code, error
332 # message, and error details. The error code should be an enum value of
333 # google.rpc.Code, but it may accept additional error codes if needed. The
334 # error message should be a developer-facing English message that helps
335 # developers *understand* and *resolve* the error. If a localized user-facing
336 # error message is needed, put the localized message in the error details or
337 # localize it in the client. The optional error details may contain arbitrary
338 # information about the error. There is a predefined set of error detail types
339 # in the package `google.rpc` that can be used for common error conditions.
340 #
341 # # Language mapping
342 #
343 # The `Status` message is the logical representation of the error model, but it
344 # is not necessarily the actual wire format. When the `Status` message is
345 # exposed in different client libraries and different wire protocols, it can be
346 # mapped differently. For example, it will likely be mapped to some exceptions
347 # in Java, but more likely mapped to some error codes in C.
348 #
349 # # Other uses
350 #
351 # The error model and the `Status` message can be used in a variety of
352 # environments, either with or without APIs, to provide a
353 # consistent developer experience across different environments.
354 #
355 # Example uses of this error model include:
356 #
357 # - Partial errors. If a service needs to return partial errors to the client,
358 # it may embed the `Status` in the normal response to indicate the partial
359 # errors.
360 #
361 # - Workflow errors. A typical workflow has multiple steps. Each step may
362 # have a `Status` message for error reporting.
363 #
364 # - Batch operations. If a client uses batch request and batch response, the
365 # `Status` message should be used directly inside batch response, one for
366 # each error sub-response.
367 #
368 # - Asynchronous operations. If an API call embeds asynchronous operation
369 # results in its response, the status of those operations should be
370 # represented directly using the `Status` message.
371 #
372 # - Logging. If some API errors are stored in logs, the message `Status` could
373 # be used directly after any stripping needed for security/privacy reasons.
374 "message": "A String", # A developer-facing error message, which should be in English. Any
375 # user-facing error message should be localized and sent in the
376 # google.rpc.Status.details field, or localized by the client.
377 "code": 42, # The status code, which should be an enum value of google.rpc.Code.
378 "details": [ # A list of messages that carry the error details. There is a common set of
379 # message types for APIs to use.
380 {
381 "a_key": "", # Properties of the object. Contains field @type with type URL.
382 },
383 ],
384 },
385 "done": True or False, # If the value is `false`, it means the operation is still in progress.
386 # If `true`, the operation is completed, and either `error` or `response` is
387 # available.
388 "response": { # The normal response of the operation in case of success. If the original
389 # method returns no data on success, such as `Delete`, the response is
390 # `google.protobuf.Empty`. If the original method is standard
391 # `Get`/`Create`/`Update`, the response should be the resource. For other
392 # methods, the response should have the type `XxxResponse`, where `Xxx`
393 # is the original method name. For example, if the original method name
394 # is `TakeSnapshot()`, the inferred response type is
395 # `TakeSnapshotResponse`.
396 "a_key": "", # Properties of the object. Contains field @type with type URL.
397 },
398 "name": "A String", # The server-assigned name, which is only unique within the same service that
399 # originally returns it. If you use the default HTTP mapping, the
400 # `name` should be a resource name ending with `operations/{unique_id}`.
401 }</pre>
402</div>
403
404<div class="method">
405 <code class="details" id="delete">delete(name, x__xgafv=None)</code>
406 <pre>Deletes a function with the given name from the specified project. If the
407given function is used by some trigger, the trigger will be updated to
408remove this function.
409
410Args:
411 name: string, The name of the function which should be deleted. (required)
412 x__xgafv: string, V1 error format.
413 Allowed values
414 1 - v1 error format
415 2 - v2 error format
416
417Returns:
418 An object of the form:
419
420 { # This resource represents a long-running operation that is the result of a
421 # network API call.
422 "metadata": { # Service-specific metadata associated with the operation. It typically
423 # contains progress information and common metadata such as create time.
424 # Some services might not provide such metadata. Any method that returns a
425 # long-running operation should document the metadata type, if any.
426 "a_key": "", # Properties of the object. Contains field @type with type URL.
427 },
428 "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.
429 # different programming environments, including REST APIs and RPC APIs. It is
430 # used by [gRPC](https://github.com/grpc). The error model is designed to be:
431 #
432 # - Simple to use and understand for most users
433 # - Flexible enough to meet unexpected needs
434 #
435 # # Overview
436 #
437 # The `Status` message contains three pieces of data: error code, error
438 # message, and error details. The error code should be an enum value of
439 # google.rpc.Code, but it may accept additional error codes if needed. The
440 # error message should be a developer-facing English message that helps
441 # developers *understand* and *resolve* the error. If a localized user-facing
442 # error message is needed, put the localized message in the error details or
443 # localize it in the client. The optional error details may contain arbitrary
444 # information about the error. There is a predefined set of error detail types
445 # in the package `google.rpc` that can be used for common error conditions.
446 #
447 # # Language mapping
448 #
449 # The `Status` message is the logical representation of the error model, but it
450 # is not necessarily the actual wire format. When the `Status` message is
451 # exposed in different client libraries and different wire protocols, it can be
452 # mapped differently. For example, it will likely be mapped to some exceptions
453 # in Java, but more likely mapped to some error codes in C.
454 #
455 # # Other uses
456 #
457 # The error model and the `Status` message can be used in a variety of
458 # environments, either with or without APIs, to provide a
459 # consistent developer experience across different environments.
460 #
461 # Example uses of this error model include:
462 #
463 # - Partial errors. If a service needs to return partial errors to the client,
464 # it may embed the `Status` in the normal response to indicate the partial
465 # errors.
466 #
467 # - Workflow errors. A typical workflow has multiple steps. Each step may
468 # have a `Status` message for error reporting.
469 #
470 # - Batch operations. If a client uses batch request and batch response, the
471 # `Status` message should be used directly inside batch response, one for
472 # each error sub-response.
473 #
474 # - Asynchronous operations. If an API call embeds asynchronous operation
475 # results in its response, the status of those operations should be
476 # represented directly using the `Status` message.
477 #
478 # - Logging. If some API errors are stored in logs, the message `Status` could
479 # be used directly after any stripping needed for security/privacy reasons.
480 "message": "A String", # A developer-facing error message, which should be in English. Any
481 # user-facing error message should be localized and sent in the
482 # google.rpc.Status.details field, or localized by the client.
483 "code": 42, # The status code, which should be an enum value of google.rpc.Code.
484 "details": [ # A list of messages that carry the error details. There is a common set of
485 # message types for APIs to use.
486 {
487 "a_key": "", # Properties of the object. Contains field @type with type URL.
488 },
489 ],
490 },
491 "done": True or False, # If the value is `false`, it means the operation is still in progress.
492 # If `true`, the operation is completed, and either `error` or `response` is
493 # available.
494 "response": { # The normal response of the operation in case of success. If the original
495 # method returns no data on success, such as `Delete`, the response is
496 # `google.protobuf.Empty`. If the original method is standard
497 # `Get`/`Create`/`Update`, the response should be the resource. For other
498 # methods, the response should have the type `XxxResponse`, where `Xxx`
499 # is the original method name. For example, if the original method name
500 # is `TakeSnapshot()`, the inferred response type is
501 # `TakeSnapshotResponse`.
502 "a_key": "", # Properties of the object. Contains field @type with type URL.
503 },
504 "name": "A String", # The server-assigned name, which is only unique within the same service that
505 # originally returns it. If you use the default HTTP mapping, the
506 # `name` should be a resource name ending with `operations/{unique_id}`.
507 }</pre>
508</div>
509
510<div class="method">
511 <code class="details" id="generateDownloadUrl">generateDownloadUrl(name, body, x__xgafv=None)</code>
512 <pre>Returns a signed URL for downloading deployed function source code.
513The URL is only valid for a limited period and should be used within
514minutes after generation.
515For more information about the signed URL usage see:
516https://cloud.google.com/storage/docs/access-control/signed-urls
517
518Args:
519 name: string, The name of function for which source code Google Cloud Storage signed
520URL should be generated. (required)
521 body: object, The request body. (required)
522 The object takes the form of:
523
524{ # Request of `GenerateDownloadUrl` method.
525 "versionId": "A String", # The optional version of function. If not set, default, current version
526 # is used.
527 }
528
529 x__xgafv: string, V1 error format.
530 Allowed values
531 1 - v1 error format
532 2 - v2 error format
533
534Returns:
535 An object of the form:
536
537 { # Response of `GenerateDownloadUrl` method.
538 "downloadUrl": "A String", # The generated Google Cloud Storage signed URL that should be used for
539 # function source code download.
540 }</pre>
541</div>
542
543<div class="method">
544 <code class="details" id="generateUploadUrl">generateUploadUrl(parent, body=None, x__xgafv=None)</code>
545 <pre>Returns a signed URL for uploading a function source code.
546For more information about the signed URL usage see:
547https://cloud.google.com/storage/docs/access-control/signed-urls.
548Once the function source code upload is complete, the used signed
549URL should be provided in CreateFunction or UpdateFunction request
550as a reference to the function source code.
551
552When uploading source code to the generated signed URL, please follow
553these restrictions:
554
555* Source file type should be a zip file.
556* Source file size should not exceed 100MB limit.
557* No credentials should be attached - the signed URLs provide access to the
558 target bucket using internal service identity; if credentials were
559 attached, the identity from the credentials would be used, but that
560 identity does not have permissions to upload files to the URL.
561
562When making a HTTP PUT request, these two headers need to be specified:
563
564* `content-type: application/zip`
565* `x-goog-content-length-range: 0,104857600`
566
567And this header SHOULD NOT be specified:
568
569* `Authorization: Bearer YOUR_TOKEN`
570
571Args:
572 parent: string, The project and location in which the Google Cloud Storage signed URL
573should be generated, specified in the format `projects/*/locations/*`. (required)
574 body: object, The request body.
575 The object takes the form of:
576
577{ # Request of `GenerateSourceUploadUrl` method.
578 }
579
580 x__xgafv: string, V1 error format.
581 Allowed values
582 1 - v1 error format
583 2 - v2 error format
584
585Returns:
586 An object of the form:
587
588 { # Response of `GenerateSourceUploadUrl` method.
589 "uploadUrl": "A String", # The generated Google Cloud Storage signed URL that should be used for a
590 # function source code upload. The uploaded file should be a zip archive
591 # which contains a function.
592 }</pre>
593</div>
594
595<div class="method">
596 <code class="details" id="get">get(name, x__xgafv=None)</code>
597 <pre>Returns a function with the given name from the requested project.
598
599Args:
600 name: string, The name of the function which details should be obtained. (required)
601 x__xgafv: string, V1 error format.
602 Allowed values
603 1 - v1 error format
604 2 - v2 error format
605
606Returns:
607 An object of the form:
608
609 { # Describes a Cloud Function that contains user computation executed in
610 # response to an event. It encapsulate function and triggers configurations.
611 # LINT.IfChange
612 "status": "A String", # Output only. Status of the function deployment.
613 "eventTrigger": { # Describes EventTrigger, used to request events be sent from another # A source that fires events in response to a condition in another service.
614 # service.
615 "eventType": "A String", # Required. The type of event to observe. For example:
616 # `providers/cloud.storage/eventTypes/object.change` and
617 # `providers/cloud.pubsub/eventTypes/topic.publish`.
618 #
619 # Event types match pattern `providers/*/eventTypes/*.*`.
620 # The pattern contains:
621 #
622 # 1. namespace: For example, `cloud.storage` and
623 # `google.firebase.analytics`.
624 # 2. resource type: The type of resource on which event occurs. For
625 # example, the Google Cloud Storage API includes the type `object`.
626 # 3. action: The action that generates the event. For example, action for
627 # a Google Cloud Storage Object is 'change'.
628 # These parts are lower case.
629 "resource": "A String", # Required. The resource(s) from which to observe events, for example,
630 # `projects/_/buckets/myBucket`.
631 #
632 # Not all syntactically correct values are accepted by all services. For
633 # example:
634 #
635 # 1. The authorization model must support it. Google Cloud Functions
636 # only allows EventTriggers to be deployed that observe resources in the
637 # same project as the `CloudFunction`.
638 # 2. The resource type must match the pattern expected for an
639 # `event_type`. For example, an `EventTrigger` that has an
640 # `event_type` of "google.pubsub.topic.publish" should have a resource
641 # that matches Google Cloud Pub/Sub topics.
642 #
643 # Additionally, some services may support short names when creating an
644 # `EventTrigger`. These will always be returned in the normalized "long"
645 # format.
646 #
647 # See each *service's* documentation for supported formats.
648 "service": "A String", # The hostname of the service that should be observed.
649 #
650 # If no string is provided, the default service implementing the API will
651 # be used. For example, `storage.googleapis.com` is the default for all
652 # event types in the `google.storage` namespace.
653 "failurePolicy": { # Describes the policy in case of function's execution failure. # Specifies policy for failed executions.
654 # If empty, then defaults to ignoring failures (i.e. not retrying them).
655 "retry": { # Describes the retry policy in case of function's execution failure. # If specified, then the function will be retried in case of a failure.
656 # A function execution will be retried on any failure.
657 # A failed execution will be retried up to 7 days with an exponential backoff
658 # (capped at 10 seconds).
659 # Retried execution is charged as any other execution.
660 },
661 },
662 },
663 "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function.
664 "description": "A String", # User-provided description of a function.
665 "maxInstances": 42, # The limit on the maximum number of function instances that may coexist at a
666 # given time.
667 "sourceRepository": { # Describes SourceRepository, used to represent parameters related to # **Beta Feature**
668 #
669 # The source repository where a function is hosted.
670 # source repository where a function is hosted.
671 "url": "A String", # The URL pointing to the hosted repository where the function is defined.
672 # There are supported Cloud Source Repository URLs in the following
673 # formats:
674 #
675 # To refer to a specific commit:
676 # `https://source.developers.google.com/projects/*/repos/*/revisions/*/paths/*`
677 # To refer to a moveable alias (branch):
678 # `https://source.developers.google.com/projects/*/repos/*/moveable-aliases/*/paths/*`
679 # In particular, to refer to HEAD use `master` moveable alias.
680 # To refer to a specific fixed alias (tag):
681 # `https://source.developers.google.com/projects/*/repos/*/fixed-aliases/*/paths/*`
682 #
683 # You may omit `paths/*` if you want to use the main directory.
684 "deployedUrl": "A String", # Output only. The URL pointing to the hosted repository where the function
685 # were defined at the time of deployment. It always points to a specific
686 # commit in the format described above.
687 },
688 "sourceUploadUrl": "A String", # The Google Cloud Storage signed URL used for source uploading, generated
689 # by google.cloud.functions.v1.GenerateUploadUrl
690 "httpsTrigger": { # Describes HttpsTrigger, could be used to connect web hooks to function. # An HTTPS endpoint type of source that can be triggered via URL.
691 "url": "A String", # Output only. The deployed url for the function.
692 },
693 "sourceArchiveUrl": "A String", # The Google Cloud Storage URL, starting with gs://, pointing to the zip
694 # archive which contains the function.
695 "labels": { # Labels associated with this Cloud Function.
696 "a_key": "A String",
697 },
698 "environmentVariables": { # Environment variables that shall be available during function execution.
699 "a_key": "A String",
700 },
701 "availableMemoryMb": 42, # The amount of memory in MB available for a function.
702 # Defaults to 256MB.
703 "versionId": "A String", # Output only.
704 # The version identifier of the Cloud Function. Each deployment attempt
705 # results in a new version of a function being created.
706 "entryPoint": "A String", # The name of the function (as defined in source code) that will be
707 # executed. Defaults to the resource name suffix, if not specified. For
708 # backward compatibility, if function with given name is not found, then the
709 # system will try to use function named "function".
710 # For Node.js this is name of a function exported by the module specified
711 # in `source_location`.
712 "serviceAccountEmail": "A String", # The email of the function's service account. If empty, defaults to
713 # {project_id}@appspot.gserviceaccount.com.
714 "timeout": "A String", # The function execution timeout. Execution is considered failed and
715 # can be terminated if the function is not completed at the end of the
716 # timeout period. Defaults to 60 seconds.
717 "runtime": "A String", # Required. The runtime in which the function is going to run. Choices:
718 #
719 # * `nodejs6`: Node.js 6
720 # * `nodejs8`: Node.js 8
721 # * `nodejs10`: Node.js 10
722 # * `python37`: Python 3.7
723 # * `go111`: Go 1.11
724 "vpcConnector": "A String", # The VPC Network Connector that this cloud function can connect to. It can
725 # be either the fully-qualified URI, or the short name of the network
726 # connector resource. The format of this field is
727 # `projects/*/locations/*/connectors/*`
728 #
729 # This field is mutually exclusive with `network` field and will eventually
730 # replace it.
731 #
732 # See [the VPC documentation](https://cloud.google.com/compute/docs/vpc) for
733 # more information on connecting Cloud projects.
734 #
735 # This feature is currently in alpha, available only for whitelisted users.
736 "network": "A String", # The VPC Network that this cloud function can connect to. It can be
737 # either the fully-qualified URI, or the short name of the network resource.
738 # If the short network name is used, the network must belong to the same
739 # project. Otherwise, it must belong to a project within the same
740 # organization. The format of this field is either
741 # `projects/{project}/global/networks/{network}` or `{network}`, where
742 # {project} is a project id where the network is defined, and {network} is
743 # the short name of the network.
744 #
745 # This field is mutually exclusive with `vpc_connector` and will be replaced
746 # by it.
747 #
748 # See [the VPC documentation](https://cloud.google.com/compute/docs/vpc) for
749 # more information on connecting Cloud projects.
750 #
751 # This feature is currently in alpha, available only for whitelisted users.
752 "name": "A String", # A user-defined name of the function. Function names must be unique
753 # globally and match pattern `projects/*/locations/*/functions/*`
754 }</pre>
755</div>
756
757<div class="method">
758 <code class="details" id="getIamPolicy">getIamPolicy(resource, x__xgafv=None)</code>
759 <pre>Gets the IAM access control policy for a function.
760Returns an empty policy if the function exists and does not have a policy
761set.
762
763Args:
764 resource: string, REQUIRED: The resource for which the policy is being requested.
765See the operation documentation for the appropriate value for this field. (required)
766 x__xgafv: string, V1 error format.
767 Allowed values
768 1 - v1 error format
769 2 - v2 error format
770
771Returns:
772 An object of the form:
773
774 { # Defines an Identity and Access Management (IAM) policy. It is used to
775 # specify access control policies for Cloud Platform resources.
776 #
777 #
778 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of
779 # `members` to a `role`, where the members can be user accounts, Google groups,
780 # Google domains, and service accounts. A `role` is a named list of permissions
781 # defined by IAM.
782 #
783 # **JSON Example**
784 #
785 # {
786 # "bindings": [
787 # {
788 # "role": "roles/owner",
789 # "members": [
790 # "user:mike@example.com",
791 # "group:admins@example.com",
792 # "domain:google.com",
793 # "serviceAccount:my-other-app@appspot.gserviceaccount.com"
794 # ]
795 # },
796 # {
797 # "role": "roles/viewer",
798 # "members": ["user:sean@example.com"]
799 # }
800 # ]
801 # }
802 #
803 # **YAML Example**
804 #
805 # bindings:
806 # - members:
807 # - user:mike@example.com
808 # - group:admins@example.com
809 # - domain:google.com
810 # - serviceAccount:my-other-app@appspot.gserviceaccount.com
811 # role: roles/owner
812 # - members:
813 # - user:sean@example.com
814 # role: roles/viewer
815 #
816 #
817 # For a description of IAM and its features, see the
818 # [IAM developer's guide](https://cloud.google.com/iam/docs).
819 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
820 { # Specifies the audit configuration for a service.
821 # The configuration determines which permission types are logged, and what
822 # identities, if any, are exempted from logging.
823 # An AuditConfig must have one or more AuditLogConfigs.
824 #
825 # If there are AuditConfigs for both `allServices` and a specific service,
826 # the union of the two AuditConfigs is used for that service: the log_types
827 # specified in each AuditConfig are enabled, and the exempted_members in each
828 # AuditLogConfig are exempted.
829 #
830 # Example Policy with multiple AuditConfigs:
831 #
832 # {
833 # "audit_configs": [
834 # {
835 # "service": "allServices"
836 # "audit_log_configs": [
837 # {
838 # "log_type": "DATA_READ",
839 # "exempted_members": [
840 # "user:foo@gmail.com"
841 # ]
842 # },
843 # {
844 # "log_type": "DATA_WRITE",
845 # },
846 # {
847 # "log_type": "ADMIN_READ",
848 # }
849 # ]
850 # },
851 # {
852 # "service": "fooservice.googleapis.com"
853 # "audit_log_configs": [
854 # {
855 # "log_type": "DATA_READ",
856 # },
857 # {
858 # "log_type": "DATA_WRITE",
859 # "exempted_members": [
860 # "user:bar@gmail.com"
861 # ]
862 # }
863 # ]
864 # }
865 # ]
866 # }
867 #
868 # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
869 # logging. It also exempts foo@gmail.com from DATA_READ logging, and
870 # bar@gmail.com from DATA_WRITE logging.
871 "auditLogConfigs": [ # The configuration for logging of each type of permission.
872 { # Provides the configuration for logging a type of permissions.
873 # Example:
874 #
875 # {
876 # "audit_log_configs": [
877 # {
878 # "log_type": "DATA_READ",
879 # "exempted_members": [
880 # "user:foo@gmail.com"
881 # ]
882 # },
883 # {
884 # "log_type": "DATA_WRITE",
885 # }
886 # ]
887 # }
888 #
889 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
890 # foo@gmail.com from DATA_READ logging.
891 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
892 # permission.
893 # Follows the same format of Binding.members.
894 "A String",
895 ],
896 "logType": "A String", # The log type that this config enables.
897 },
898 ],
899 "service": "A String", # Specifies a service that will be enabled for audit logging.
900 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
901 # `allServices` is a special value that covers all services.
902 },
903 ],
904 "version": 42, # Deprecated.
905 "bindings": [ # Associates a list of `members` to a `role`.
906 # `bindings` with no members will result in an error.
907 { # Associates `members` with a `role`.
908 "role": "A String", # Role that is assigned to `members`.
909 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
910 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
911 # `members` can have the following values:
912 #
913 # * `allUsers`: A special identifier that represents anyone who is
914 # on the internet; with or without a Google account.
915 #
916 # * `allAuthenticatedUsers`: A special identifier that represents anyone
917 # who is authenticated with a Google account or a service account.
918 #
919 # * `user:{emailid}`: An email address that represents a specific Google
920 # account. For example, `alice@gmail.com` .
921 #
922 #
923 # * `serviceAccount:{emailid}`: An email address that represents a service
924 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
925 #
926 # * `group:{emailid}`: An email address that represents a Google group.
927 # For example, `admins@example.com`.
928 #
929 #
930 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
931 # users of that domain. For example, `google.com` or `example.com`.
932 #
933 "A String",
934 ],
935 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding.
936 # NOTE: An unsatisfied condition will not allow user access via current
937 # binding. Different bindings, including their conditions, are examined
938 # independently.
939 #
940 # title: "User account presence"
941 # description: "Determines whether the request has a user account"
942 # expression: "size(request.user) > 0"
943 "description": "A String", # An optional description of the expression. This is a longer text which
944 # describes the expression, e.g. when hovered over it in a UI.
945 "expression": "A String", # Textual representation of an expression in
946 # Common Expression Language syntax.
947 #
948 # The application context of the containing message determines which
949 # well-known feature set of CEL is supported.
950 "location": "A String", # An optional string indicating the location of the expression for error
951 # reporting, e.g. a file name and a position in the file.
952 "title": "A String", # An optional title for the expression, i.e. a short string describing
953 # its purpose. This can be used e.g. in UIs which allow to enter the
954 # expression.
955 },
956 },
957 ],
958 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
959 # prevent simultaneous updates of a policy from overwriting each other.
960 # It is strongly suggested that systems make use of the `etag` in the
961 # read-modify-write cycle to perform policy updates in order to avoid race
962 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
963 # systems are expected to put that etag in the request to `setIamPolicy` to
964 # ensure that their change will be applied to the same version of the policy.
965 #
966 # If no `etag` is provided in the call to `setIamPolicy`, then the existing
967 # policy is overwritten blindly.
968 }</pre>
969</div>
970
971<div class="method">
972 <code class="details" id="list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</code>
973 <pre>Returns a list of functions that belong to the requested project.
974
975Args:
976 parent: string, The project and location from which the function should be listed,
977specified in the format `projects/*/locations/*`
978If you want to list functions in all locations, use "-" in place of a
979location. (required)
980 pageSize: integer, Maximum number of functions to return per call.
981 pageToken: string, The value returned by the last
982`ListFunctionsResponse`; indicates that
983this is a continuation of a prior `ListFunctions` call, and that the
984system should return the next page of data.
985 x__xgafv: string, V1 error format.
986 Allowed values
987 1 - v1 error format
988 2 - v2 error format
989
990Returns:
991 An object of the form:
992
993 { # Response for the `ListFunctions` method.
994 "nextPageToken": "A String", # If not empty, indicates that there may be more functions that match
995 # the request; this value should be passed in a new
996 # google.cloud.functions.v1.ListFunctionsRequest
997 # to get more functions.
998 "functions": [ # The functions that match the request.
999 { # Describes a Cloud Function that contains user computation executed in
1000 # response to an event. It encapsulate function and triggers configurations.
1001 # LINT.IfChange
1002 "status": "A String", # Output only. Status of the function deployment.
1003 "eventTrigger": { # Describes EventTrigger, used to request events be sent from another # A source that fires events in response to a condition in another service.
1004 # service.
1005 "eventType": "A String", # Required. The type of event to observe. For example:
1006 # `providers/cloud.storage/eventTypes/object.change` and
1007 # `providers/cloud.pubsub/eventTypes/topic.publish`.
1008 #
1009 # Event types match pattern `providers/*/eventTypes/*.*`.
1010 # The pattern contains:
1011 #
1012 # 1. namespace: For example, `cloud.storage` and
1013 # `google.firebase.analytics`.
1014 # 2. resource type: The type of resource on which event occurs. For
1015 # example, the Google Cloud Storage API includes the type `object`.
1016 # 3. action: The action that generates the event. For example, action for
1017 # a Google Cloud Storage Object is 'change'.
1018 # These parts are lower case.
1019 "resource": "A String", # Required. The resource(s) from which to observe events, for example,
1020 # `projects/_/buckets/myBucket`.
1021 #
1022 # Not all syntactically correct values are accepted by all services. For
1023 # example:
1024 #
1025 # 1. The authorization model must support it. Google Cloud Functions
1026 # only allows EventTriggers to be deployed that observe resources in the
1027 # same project as the `CloudFunction`.
1028 # 2. The resource type must match the pattern expected for an
1029 # `event_type`. For example, an `EventTrigger` that has an
1030 # `event_type` of "google.pubsub.topic.publish" should have a resource
1031 # that matches Google Cloud Pub/Sub topics.
1032 #
1033 # Additionally, some services may support short names when creating an
1034 # `EventTrigger`. These will always be returned in the normalized "long"
1035 # format.
1036 #
1037 # See each *service's* documentation for supported formats.
1038 "service": "A String", # The hostname of the service that should be observed.
1039 #
1040 # If no string is provided, the default service implementing the API will
1041 # be used. For example, `storage.googleapis.com` is the default for all
1042 # event types in the `google.storage` namespace.
1043 "failurePolicy": { # Describes the policy in case of function's execution failure. # Specifies policy for failed executions.
1044 # If empty, then defaults to ignoring failures (i.e. not retrying them).
1045 "retry": { # Describes the retry policy in case of function's execution failure. # If specified, then the function will be retried in case of a failure.
1046 # A function execution will be retried on any failure.
1047 # A failed execution will be retried up to 7 days with an exponential backoff
1048 # (capped at 10 seconds).
1049 # Retried execution is charged as any other execution.
1050 },
1051 },
1052 },
1053 "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function.
1054 "description": "A String", # User-provided description of a function.
1055 "maxInstances": 42, # The limit on the maximum number of function instances that may coexist at a
1056 # given time.
1057 "sourceRepository": { # Describes SourceRepository, used to represent parameters related to # **Beta Feature**
1058 #
1059 # The source repository where a function is hosted.
1060 # source repository where a function is hosted.
1061 "url": "A String", # The URL pointing to the hosted repository where the function is defined.
1062 # There are supported Cloud Source Repository URLs in the following
1063 # formats:
1064 #
1065 # To refer to a specific commit:
1066 # `https://source.developers.google.com/projects/*/repos/*/revisions/*/paths/*`
1067 # To refer to a moveable alias (branch):
1068 # `https://source.developers.google.com/projects/*/repos/*/moveable-aliases/*/paths/*`
1069 # In particular, to refer to HEAD use `master` moveable alias.
1070 # To refer to a specific fixed alias (tag):
1071 # `https://source.developers.google.com/projects/*/repos/*/fixed-aliases/*/paths/*`
1072 #
1073 # You may omit `paths/*` if you want to use the main directory.
1074 "deployedUrl": "A String", # Output only. The URL pointing to the hosted repository where the function
1075 # were defined at the time of deployment. It always points to a specific
1076 # commit in the format described above.
1077 },
1078 "sourceUploadUrl": "A String", # The Google Cloud Storage signed URL used for source uploading, generated
1079 # by google.cloud.functions.v1.GenerateUploadUrl
1080 "httpsTrigger": { # Describes HttpsTrigger, could be used to connect web hooks to function. # An HTTPS endpoint type of source that can be triggered via URL.
1081 "url": "A String", # Output only. The deployed url for the function.
1082 },
1083 "sourceArchiveUrl": "A String", # The Google Cloud Storage URL, starting with gs://, pointing to the zip
1084 # archive which contains the function.
1085 "labels": { # Labels associated with this Cloud Function.
1086 "a_key": "A String",
1087 },
1088 "environmentVariables": { # Environment variables that shall be available during function execution.
1089 "a_key": "A String",
1090 },
1091 "availableMemoryMb": 42, # The amount of memory in MB available for a function.
1092 # Defaults to 256MB.
1093 "versionId": "A String", # Output only.
1094 # The version identifier of the Cloud Function. Each deployment attempt
1095 # results in a new version of a function being created.
1096 "entryPoint": "A String", # The name of the function (as defined in source code) that will be
1097 # executed. Defaults to the resource name suffix, if not specified. For
1098 # backward compatibility, if function with given name is not found, then the
1099 # system will try to use function named "function".
1100 # For Node.js this is name of a function exported by the module specified
1101 # in `source_location`.
1102 "serviceAccountEmail": "A String", # The email of the function's service account. If empty, defaults to
1103 # {project_id}@appspot.gserviceaccount.com.
1104 "timeout": "A String", # The function execution timeout. Execution is considered failed and
1105 # can be terminated if the function is not completed at the end of the
1106 # timeout period. Defaults to 60 seconds.
1107 "runtime": "A String", # Required. The runtime in which the function is going to run. Choices:
1108 #
1109 # * `nodejs6`: Node.js 6
1110 # * `nodejs8`: Node.js 8
1111 # * `nodejs10`: Node.js 10
1112 # * `python37`: Python 3.7
1113 # * `go111`: Go 1.11
1114 "vpcConnector": "A String", # The VPC Network Connector that this cloud function can connect to. It can
1115 # be either the fully-qualified URI, or the short name of the network
1116 # connector resource. The format of this field is
1117 # `projects/*/locations/*/connectors/*`
1118 #
1119 # This field is mutually exclusive with `network` field and will eventually
1120 # replace it.
1121 #
1122 # See [the VPC documentation](https://cloud.google.com/compute/docs/vpc) for
1123 # more information on connecting Cloud projects.
1124 #
1125 # This feature is currently in alpha, available only for whitelisted users.
1126 "network": "A String", # The VPC Network that this cloud function can connect to. It can be
1127 # either the fully-qualified URI, or the short name of the network resource.
1128 # If the short network name is used, the network must belong to the same
1129 # project. Otherwise, it must belong to a project within the same
1130 # organization. The format of this field is either
1131 # `projects/{project}/global/networks/{network}` or `{network}`, where
1132 # {project} is a project id where the network is defined, and {network} is
1133 # the short name of the network.
1134 #
1135 # This field is mutually exclusive with `vpc_connector` and will be replaced
1136 # by it.
1137 #
1138 # See [the VPC documentation](https://cloud.google.com/compute/docs/vpc) for
1139 # more information on connecting Cloud projects.
1140 #
1141 # This feature is currently in alpha, available only for whitelisted users.
1142 "name": "A String", # A user-defined name of the function. Function names must be unique
1143 # globally and match pattern `projects/*/locations/*/functions/*`
1144 },
1145 ],
1146 }</pre>
1147</div>
1148
1149<div class="method">
1150 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
1151 <pre>Retrieves the next page of results.
1152
1153Args:
1154 previous_request: The request for the previous page. (required)
1155 previous_response: The response from the request for the previous page. (required)
1156
1157Returns:
1158 A request object that you can call 'execute()' on to request the next
1159 page. Returns None if there are no more items in the collection.
1160 </pre>
1161</div>
1162
1163<div class="method">
1164 <code class="details" id="patch">patch(name, body, updateMask=None, x__xgafv=None)</code>
1165 <pre>Updates existing function.
1166
1167Args:
1168 name: string, A user-defined name of the function. Function names must be unique
1169globally and match pattern `projects/*/locations/*/functions/*` (required)
1170 body: object, The request body. (required)
1171 The object takes the form of:
1172
1173{ # Describes a Cloud Function that contains user computation executed in
1174 # response to an event. It encapsulate function and triggers configurations.
1175 # LINT.IfChange
1176 "status": "A String", # Output only. Status of the function deployment.
1177 "eventTrigger": { # Describes EventTrigger, used to request events be sent from another # A source that fires events in response to a condition in another service.
1178 # service.
1179 "eventType": "A String", # Required. The type of event to observe. For example:
1180 # `providers/cloud.storage/eventTypes/object.change` and
1181 # `providers/cloud.pubsub/eventTypes/topic.publish`.
1182 #
1183 # Event types match pattern `providers/*/eventTypes/*.*`.
1184 # The pattern contains:
1185 #
1186 # 1. namespace: For example, `cloud.storage` and
1187 # `google.firebase.analytics`.
1188 # 2. resource type: The type of resource on which event occurs. For
1189 # example, the Google Cloud Storage API includes the type `object`.
1190 # 3. action: The action that generates the event. For example, action for
1191 # a Google Cloud Storage Object is 'change'.
1192 # These parts are lower case.
1193 "resource": "A String", # Required. The resource(s) from which to observe events, for example,
1194 # `projects/_/buckets/myBucket`.
1195 #
1196 # Not all syntactically correct values are accepted by all services. For
1197 # example:
1198 #
1199 # 1. The authorization model must support it. Google Cloud Functions
1200 # only allows EventTriggers to be deployed that observe resources in the
1201 # same project as the `CloudFunction`.
1202 # 2. The resource type must match the pattern expected for an
1203 # `event_type`. For example, an `EventTrigger` that has an
1204 # `event_type` of "google.pubsub.topic.publish" should have a resource
1205 # that matches Google Cloud Pub/Sub topics.
1206 #
1207 # Additionally, some services may support short names when creating an
1208 # `EventTrigger`. These will always be returned in the normalized "long"
1209 # format.
1210 #
1211 # See each *service's* documentation for supported formats.
1212 "service": "A String", # The hostname of the service that should be observed.
1213 #
1214 # If no string is provided, the default service implementing the API will
1215 # be used. For example, `storage.googleapis.com` is the default for all
1216 # event types in the `google.storage` namespace.
1217 "failurePolicy": { # Describes the policy in case of function's execution failure. # Specifies policy for failed executions.
1218 # If empty, then defaults to ignoring failures (i.e. not retrying them).
1219 "retry": { # Describes the retry policy in case of function's execution failure. # If specified, then the function will be retried in case of a failure.
1220 # A function execution will be retried on any failure.
1221 # A failed execution will be retried up to 7 days with an exponential backoff
1222 # (capped at 10 seconds).
1223 # Retried execution is charged as any other execution.
1224 },
1225 },
1226 },
1227 "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function.
1228 "description": "A String", # User-provided description of a function.
1229 "maxInstances": 42, # The limit on the maximum number of function instances that may coexist at a
1230 # given time.
1231 "sourceRepository": { # Describes SourceRepository, used to represent parameters related to # **Beta Feature**
1232 #
1233 # The source repository where a function is hosted.
1234 # source repository where a function is hosted.
1235 "url": "A String", # The URL pointing to the hosted repository where the function is defined.
1236 # There are supported Cloud Source Repository URLs in the following
1237 # formats:
1238 #
1239 # To refer to a specific commit:
1240 # `https://source.developers.google.com/projects/*/repos/*/revisions/*/paths/*`
1241 # To refer to a moveable alias (branch):
1242 # `https://source.developers.google.com/projects/*/repos/*/moveable-aliases/*/paths/*`
1243 # In particular, to refer to HEAD use `master` moveable alias.
1244 # To refer to a specific fixed alias (tag):
1245 # `https://source.developers.google.com/projects/*/repos/*/fixed-aliases/*/paths/*`
1246 #
1247 # You may omit `paths/*` if you want to use the main directory.
1248 "deployedUrl": "A String", # Output only. The URL pointing to the hosted repository where the function
1249 # were defined at the time of deployment. It always points to a specific
1250 # commit in the format described above.
1251 },
1252 "sourceUploadUrl": "A String", # The Google Cloud Storage signed URL used for source uploading, generated
1253 # by google.cloud.functions.v1.GenerateUploadUrl
1254 "httpsTrigger": { # Describes HttpsTrigger, could be used to connect web hooks to function. # An HTTPS endpoint type of source that can be triggered via URL.
1255 "url": "A String", # Output only. The deployed url for the function.
1256 },
1257 "sourceArchiveUrl": "A String", # The Google Cloud Storage URL, starting with gs://, pointing to the zip
1258 # archive which contains the function.
1259 "labels": { # Labels associated with this Cloud Function.
1260 "a_key": "A String",
1261 },
1262 "environmentVariables": { # Environment variables that shall be available during function execution.
1263 "a_key": "A String",
1264 },
1265 "availableMemoryMb": 42, # The amount of memory in MB available for a function.
1266 # Defaults to 256MB.
1267 "versionId": "A String", # Output only.
1268 # The version identifier of the Cloud Function. Each deployment attempt
1269 # results in a new version of a function being created.
1270 "entryPoint": "A String", # The name of the function (as defined in source code) that will be
1271 # executed. Defaults to the resource name suffix, if not specified. For
1272 # backward compatibility, if function with given name is not found, then the
1273 # system will try to use function named "function".
1274 # For Node.js this is name of a function exported by the module specified
1275 # in `source_location`.
1276 "serviceAccountEmail": "A String", # The email of the function's service account. If empty, defaults to
1277 # {project_id}@appspot.gserviceaccount.com.
1278 "timeout": "A String", # The function execution timeout. Execution is considered failed and
1279 # can be terminated if the function is not completed at the end of the
1280 # timeout period. Defaults to 60 seconds.
1281 "runtime": "A String", # Required. The runtime in which the function is going to run. Choices:
1282 #
1283 # * `nodejs6`: Node.js 6
1284 # * `nodejs8`: Node.js 8
1285 # * `nodejs10`: Node.js 10
1286 # * `python37`: Python 3.7
1287 # * `go111`: Go 1.11
1288 "vpcConnector": "A String", # The VPC Network Connector that this cloud function can connect to. It can
1289 # be either the fully-qualified URI, or the short name of the network
1290 # connector resource. The format of this field is
1291 # `projects/*/locations/*/connectors/*`
1292 #
1293 # This field is mutually exclusive with `network` field and will eventually
1294 # replace it.
1295 #
1296 # See [the VPC documentation](https://cloud.google.com/compute/docs/vpc) for
1297 # more information on connecting Cloud projects.
1298 #
1299 # This feature is currently in alpha, available only for whitelisted users.
1300 "network": "A String", # The VPC Network that this cloud function can connect to. It can be
1301 # either the fully-qualified URI, or the short name of the network resource.
1302 # If the short network name is used, the network must belong to the same
1303 # project. Otherwise, it must belong to a project within the same
1304 # organization. The format of this field is either
1305 # `projects/{project}/global/networks/{network}` or `{network}`, where
1306 # {project} is a project id where the network is defined, and {network} is
1307 # the short name of the network.
1308 #
1309 # This field is mutually exclusive with `vpc_connector` and will be replaced
1310 # by it.
1311 #
1312 # See [the VPC documentation](https://cloud.google.com/compute/docs/vpc) for
1313 # more information on connecting Cloud projects.
1314 #
1315 # This feature is currently in alpha, available only for whitelisted users.
1316 "name": "A String", # A user-defined name of the function. Function names must be unique
1317 # globally and match pattern `projects/*/locations/*/functions/*`
1318 }
1319
1320 updateMask: string, Required list of fields to be updated in this request.
1321 x__xgafv: string, V1 error format.
1322 Allowed values
1323 1 - v1 error format
1324 2 - v2 error format
1325
1326Returns:
1327 An object of the form:
1328
1329 { # This resource represents a long-running operation that is the result of a
1330 # network API call.
1331 "metadata": { # Service-specific metadata associated with the operation. It typically
1332 # contains progress information and common metadata such as create time.
1333 # Some services might not provide such metadata. Any method that returns a
1334 # long-running operation should document the metadata type, if any.
1335 "a_key": "", # Properties of the object. Contains field @type with type URL.
1336 },
1337 "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.
1338 # different programming environments, including REST APIs and RPC APIs. It is
1339 # used by [gRPC](https://github.com/grpc). The error model is designed to be:
1340 #
1341 # - Simple to use and understand for most users
1342 # - Flexible enough to meet unexpected needs
1343 #
1344 # # Overview
1345 #
1346 # The `Status` message contains three pieces of data: error code, error
1347 # message, and error details. The error code should be an enum value of
1348 # google.rpc.Code, but it may accept additional error codes if needed. The
1349 # error message should be a developer-facing English message that helps
1350 # developers *understand* and *resolve* the error. If a localized user-facing
1351 # error message is needed, put the localized message in the error details or
1352 # localize it in the client. The optional error details may contain arbitrary
1353 # information about the error. There is a predefined set of error detail types
1354 # in the package `google.rpc` that can be used for common error conditions.
1355 #
1356 # # Language mapping
1357 #
1358 # The `Status` message is the logical representation of the error model, but it
1359 # is not necessarily the actual wire format. When the `Status` message is
1360 # exposed in different client libraries and different wire protocols, it can be
1361 # mapped differently. For example, it will likely be mapped to some exceptions
1362 # in Java, but more likely mapped to some error codes in C.
1363 #
1364 # # Other uses
1365 #
1366 # The error model and the `Status` message can be used in a variety of
1367 # environments, either with or without APIs, to provide a
1368 # consistent developer experience across different environments.
1369 #
1370 # Example uses of this error model include:
1371 #
1372 # - Partial errors. If a service needs to return partial errors to the client,
1373 # it may embed the `Status` in the normal response to indicate the partial
1374 # errors.
1375 #
1376 # - Workflow errors. A typical workflow has multiple steps. Each step may
1377 # have a `Status` message for error reporting.
1378 #
1379 # - Batch operations. If a client uses batch request and batch response, the
1380 # `Status` message should be used directly inside batch response, one for
1381 # each error sub-response.
1382 #
1383 # - Asynchronous operations. If an API call embeds asynchronous operation
1384 # results in its response, the status of those operations should be
1385 # represented directly using the `Status` message.
1386 #
1387 # - Logging. If some API errors are stored in logs, the message `Status` could
1388 # be used directly after any stripping needed for security/privacy reasons.
1389 "message": "A String", # A developer-facing error message, which should be in English. Any
1390 # user-facing error message should be localized and sent in the
1391 # google.rpc.Status.details field, or localized by the client.
1392 "code": 42, # The status code, which should be an enum value of google.rpc.Code.
1393 "details": [ # A list of messages that carry the error details. There is a common set of
1394 # message types for APIs to use.
1395 {
1396 "a_key": "", # Properties of the object. Contains field @type with type URL.
1397 },
1398 ],
1399 },
1400 "done": True or False, # If the value is `false`, it means the operation is still in progress.
1401 # If `true`, the operation is completed, and either `error` or `response` is
1402 # available.
1403 "response": { # The normal response of the operation in case of success. If the original
1404 # method returns no data on success, such as `Delete`, the response is
1405 # `google.protobuf.Empty`. If the original method is standard
1406 # `Get`/`Create`/`Update`, the response should be the resource. For other
1407 # methods, the response should have the type `XxxResponse`, where `Xxx`
1408 # is the original method name. For example, if the original method name
1409 # is `TakeSnapshot()`, the inferred response type is
1410 # `TakeSnapshotResponse`.
1411 "a_key": "", # Properties of the object. Contains field @type with type URL.
1412 },
1413 "name": "A String", # The server-assigned name, which is only unique within the same service that
1414 # originally returns it. If you use the default HTTP mapping, the
1415 # `name` should be a resource name ending with `operations/{unique_id}`.
1416 }</pre>
1417</div>
1418
1419<div class="method">
1420 <code class="details" id="setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</code>
1421 <pre>Sets the IAM access control policy on the specified function.
1422Replaces any existing policy.
1423
1424Args:
1425 resource: string, REQUIRED: The resource for which the policy is being specified.
1426See the operation documentation for the appropriate value for this field. (required)
1427 body: object, The request body. (required)
1428 The object takes the form of:
1429
1430{ # Request message for `SetIamPolicy` method.
1431 "policy": { # Defines an Identity and Access Management (IAM) policy. It is used to # REQUIRED: The complete policy to be applied to the `resource`. The size of
1432 # the policy is limited to a few 10s of KB. An empty policy is a
1433 # valid policy but certain Cloud Platform services (such as Projects)
1434 # might reject them.
1435 # specify access control policies for Cloud Platform resources.
1436 #
1437 #
1438 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of
1439 # `members` to a `role`, where the members can be user accounts, Google groups,
1440 # Google domains, and service accounts. A `role` is a named list of permissions
1441 # defined by IAM.
1442 #
1443 # **JSON Example**
1444 #
1445 # {
1446 # "bindings": [
1447 # {
1448 # "role": "roles/owner",
1449 # "members": [
1450 # "user:mike@example.com",
1451 # "group:admins@example.com",
1452 # "domain:google.com",
1453 # "serviceAccount:my-other-app@appspot.gserviceaccount.com"
1454 # ]
1455 # },
1456 # {
1457 # "role": "roles/viewer",
1458 # "members": ["user:sean@example.com"]
1459 # }
1460 # ]
1461 # }
1462 #
1463 # **YAML Example**
1464 #
1465 # bindings:
1466 # - members:
1467 # - user:mike@example.com
1468 # - group:admins@example.com
1469 # - domain:google.com
1470 # - serviceAccount:my-other-app@appspot.gserviceaccount.com
1471 # role: roles/owner
1472 # - members:
1473 # - user:sean@example.com
1474 # role: roles/viewer
1475 #
1476 #
1477 # For a description of IAM and its features, see the
1478 # [IAM developer's guide](https://cloud.google.com/iam/docs).
1479 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
1480 { # Specifies the audit configuration for a service.
1481 # The configuration determines which permission types are logged, and what
1482 # identities, if any, are exempted from logging.
1483 # An AuditConfig must have one or more AuditLogConfigs.
1484 #
1485 # If there are AuditConfigs for both `allServices` and a specific service,
1486 # the union of the two AuditConfigs is used for that service: the log_types
1487 # specified in each AuditConfig are enabled, and the exempted_members in each
1488 # AuditLogConfig are exempted.
1489 #
1490 # Example Policy with multiple AuditConfigs:
1491 #
1492 # {
1493 # "audit_configs": [
1494 # {
1495 # "service": "allServices"
1496 # "audit_log_configs": [
1497 # {
1498 # "log_type": "DATA_READ",
1499 # "exempted_members": [
1500 # "user:foo@gmail.com"
1501 # ]
1502 # },
1503 # {
1504 # "log_type": "DATA_WRITE",
1505 # },
1506 # {
1507 # "log_type": "ADMIN_READ",
1508 # }
1509 # ]
1510 # },
1511 # {
1512 # "service": "fooservice.googleapis.com"
1513 # "audit_log_configs": [
1514 # {
1515 # "log_type": "DATA_READ",
1516 # },
1517 # {
1518 # "log_type": "DATA_WRITE",
1519 # "exempted_members": [
1520 # "user:bar@gmail.com"
1521 # ]
1522 # }
1523 # ]
1524 # }
1525 # ]
1526 # }
1527 #
1528 # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1529 # logging. It also exempts foo@gmail.com from DATA_READ logging, and
1530 # bar@gmail.com from DATA_WRITE logging.
1531 "auditLogConfigs": [ # The configuration for logging of each type of permission.
1532 { # Provides the configuration for logging a type of permissions.
1533 # Example:
1534 #
1535 # {
1536 # "audit_log_configs": [
1537 # {
1538 # "log_type": "DATA_READ",
1539 # "exempted_members": [
1540 # "user:foo@gmail.com"
1541 # ]
1542 # },
1543 # {
1544 # "log_type": "DATA_WRITE",
1545 # }
1546 # ]
1547 # }
1548 #
1549 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
1550 # foo@gmail.com from DATA_READ logging.
1551 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
1552 # permission.
1553 # Follows the same format of Binding.members.
1554 "A String",
1555 ],
1556 "logType": "A String", # The log type that this config enables.
1557 },
1558 ],
1559 "service": "A String", # Specifies a service that will be enabled for audit logging.
1560 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1561 # `allServices` is a special value that covers all services.
1562 },
1563 ],
1564 "version": 42, # Deprecated.
1565 "bindings": [ # Associates a list of `members` to a `role`.
1566 # `bindings` with no members will result in an error.
1567 { # Associates `members` with a `role`.
1568 "role": "A String", # Role that is assigned to `members`.
1569 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1570 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
1571 # `members` can have the following values:
1572 #
1573 # * `allUsers`: A special identifier that represents anyone who is
1574 # on the internet; with or without a Google account.
1575 #
1576 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1577 # who is authenticated with a Google account or a service account.
1578 #
1579 # * `user:{emailid}`: An email address that represents a specific Google
1580 # account. For example, `alice@gmail.com` .
1581 #
1582 #
1583 # * `serviceAccount:{emailid}`: An email address that represents a service
1584 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1585 #
1586 # * `group:{emailid}`: An email address that represents a Google group.
1587 # For example, `admins@example.com`.
1588 #
1589 #
1590 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
1591 # users of that domain. For example, `google.com` or `example.com`.
1592 #
1593 "A String",
1594 ],
1595 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding.
1596 # NOTE: An unsatisfied condition will not allow user access via current
1597 # binding. Different bindings, including their conditions, are examined
1598 # independently.
1599 #
1600 # title: "User account presence"
1601 # description: "Determines whether the request has a user account"
1602 # expression: "size(request.user) > 0"
1603 "description": "A String", # An optional description of the expression. This is a longer text which
1604 # describes the expression, e.g. when hovered over it in a UI.
1605 "expression": "A String", # Textual representation of an expression in
1606 # Common Expression Language syntax.
1607 #
1608 # The application context of the containing message determines which
1609 # well-known feature set of CEL is supported.
1610 "location": "A String", # An optional string indicating the location of the expression for error
1611 # reporting, e.g. a file name and a position in the file.
1612 "title": "A String", # An optional title for the expression, i.e. a short string describing
1613 # its purpose. This can be used e.g. in UIs which allow to enter the
1614 # expression.
1615 },
1616 },
1617 ],
1618 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
1619 # prevent simultaneous updates of a policy from overwriting each other.
1620 # It is strongly suggested that systems make use of the `etag` in the
1621 # read-modify-write cycle to perform policy updates in order to avoid race
1622 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1623 # systems are expected to put that etag in the request to `setIamPolicy` to
1624 # ensure that their change will be applied to the same version of the policy.
1625 #
1626 # If no `etag` is provided in the call to `setIamPolicy`, then the existing
1627 # policy is overwritten blindly.
1628 },
1629 "updateMask": "A String", # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
1630 # the fields in the mask will be modified. If no mask is provided, the
1631 # following default mask is used:
1632 # paths: "bindings, etag"
1633 # This field is only used by Cloud IAM.
1634 }
1635
1636 x__xgafv: string, V1 error format.
1637 Allowed values
1638 1 - v1 error format
1639 2 - v2 error format
1640
1641Returns:
1642 An object of the form:
1643
1644 { # Defines an Identity and Access Management (IAM) policy. It is used to
1645 # specify access control policies for Cloud Platform resources.
1646 #
1647 #
1648 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of
1649 # `members` to a `role`, where the members can be user accounts, Google groups,
1650 # Google domains, and service accounts. A `role` is a named list of permissions
1651 # defined by IAM.
1652 #
1653 # **JSON Example**
1654 #
1655 # {
1656 # "bindings": [
1657 # {
1658 # "role": "roles/owner",
1659 # "members": [
1660 # "user:mike@example.com",
1661 # "group:admins@example.com",
1662 # "domain:google.com",
1663 # "serviceAccount:my-other-app@appspot.gserviceaccount.com"
1664 # ]
1665 # },
1666 # {
1667 # "role": "roles/viewer",
1668 # "members": ["user:sean@example.com"]
1669 # }
1670 # ]
1671 # }
1672 #
1673 # **YAML Example**
1674 #
1675 # bindings:
1676 # - members:
1677 # - user:mike@example.com
1678 # - group:admins@example.com
1679 # - domain:google.com
1680 # - serviceAccount:my-other-app@appspot.gserviceaccount.com
1681 # role: roles/owner
1682 # - members:
1683 # - user:sean@example.com
1684 # role: roles/viewer
1685 #
1686 #
1687 # For a description of IAM and its features, see the
1688 # [IAM developer's guide](https://cloud.google.com/iam/docs).
1689 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
1690 { # Specifies the audit configuration for a service.
1691 # The configuration determines which permission types are logged, and what
1692 # identities, if any, are exempted from logging.
1693 # An AuditConfig must have one or more AuditLogConfigs.
1694 #
1695 # If there are AuditConfigs for both `allServices` and a specific service,
1696 # the union of the two AuditConfigs is used for that service: the log_types
1697 # specified in each AuditConfig are enabled, and the exempted_members in each
1698 # AuditLogConfig are exempted.
1699 #
1700 # Example Policy with multiple AuditConfigs:
1701 #
1702 # {
1703 # "audit_configs": [
1704 # {
1705 # "service": "allServices"
1706 # "audit_log_configs": [
1707 # {
1708 # "log_type": "DATA_READ",
1709 # "exempted_members": [
1710 # "user:foo@gmail.com"
1711 # ]
1712 # },
1713 # {
1714 # "log_type": "DATA_WRITE",
1715 # },
1716 # {
1717 # "log_type": "ADMIN_READ",
1718 # }
1719 # ]
1720 # },
1721 # {
1722 # "service": "fooservice.googleapis.com"
1723 # "audit_log_configs": [
1724 # {
1725 # "log_type": "DATA_READ",
1726 # },
1727 # {
1728 # "log_type": "DATA_WRITE",
1729 # "exempted_members": [
1730 # "user:bar@gmail.com"
1731 # ]
1732 # }
1733 # ]
1734 # }
1735 # ]
1736 # }
1737 #
1738 # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1739 # logging. It also exempts foo@gmail.com from DATA_READ logging, and
1740 # bar@gmail.com from DATA_WRITE logging.
1741 "auditLogConfigs": [ # The configuration for logging of each type of permission.
1742 { # Provides the configuration for logging a type of permissions.
1743 # Example:
1744 #
1745 # {
1746 # "audit_log_configs": [
1747 # {
1748 # "log_type": "DATA_READ",
1749 # "exempted_members": [
1750 # "user:foo@gmail.com"
1751 # ]
1752 # },
1753 # {
1754 # "log_type": "DATA_WRITE",
1755 # }
1756 # ]
1757 # }
1758 #
1759 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
1760 # foo@gmail.com from DATA_READ logging.
1761 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
1762 # permission.
1763 # Follows the same format of Binding.members.
1764 "A String",
1765 ],
1766 "logType": "A String", # The log type that this config enables.
1767 },
1768 ],
1769 "service": "A String", # Specifies a service that will be enabled for audit logging.
1770 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1771 # `allServices` is a special value that covers all services.
1772 },
1773 ],
1774 "version": 42, # Deprecated.
1775 "bindings": [ # Associates a list of `members` to a `role`.
1776 # `bindings` with no members will result in an error.
1777 { # Associates `members` with a `role`.
1778 "role": "A String", # Role that is assigned to `members`.
1779 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1780 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
1781 # `members` can have the following values:
1782 #
1783 # * `allUsers`: A special identifier that represents anyone who is
1784 # on the internet; with or without a Google account.
1785 #
1786 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1787 # who is authenticated with a Google account or a service account.
1788 #
1789 # * `user:{emailid}`: An email address that represents a specific Google
1790 # account. For example, `alice@gmail.com` .
1791 #
1792 #
1793 # * `serviceAccount:{emailid}`: An email address that represents a service
1794 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1795 #
1796 # * `group:{emailid}`: An email address that represents a Google group.
1797 # For example, `admins@example.com`.
1798 #
1799 #
1800 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
1801 # users of that domain. For example, `google.com` or `example.com`.
1802 #
1803 "A String",
1804 ],
1805 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding.
1806 # NOTE: An unsatisfied condition will not allow user access via current
1807 # binding. Different bindings, including their conditions, are examined
1808 # independently.
1809 #
1810 # title: "User account presence"
1811 # description: "Determines whether the request has a user account"
1812 # expression: "size(request.user) > 0"
1813 "description": "A String", # An optional description of the expression. This is a longer text which
1814 # describes the expression, e.g. when hovered over it in a UI.
1815 "expression": "A String", # Textual representation of an expression in
1816 # Common Expression Language syntax.
1817 #
1818 # The application context of the containing message determines which
1819 # well-known feature set of CEL is supported.
1820 "location": "A String", # An optional string indicating the location of the expression for error
1821 # reporting, e.g. a file name and a position in the file.
1822 "title": "A String", # An optional title for the expression, i.e. a short string describing
1823 # its purpose. This can be used e.g. in UIs which allow to enter the
1824 # expression.
1825 },
1826 },
1827 ],
1828 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
1829 # prevent simultaneous updates of a policy from overwriting each other.
1830 # It is strongly suggested that systems make use of the `etag` in the
1831 # read-modify-write cycle to perform policy updates in order to avoid race
1832 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1833 # systems are expected to put that etag in the request to `setIamPolicy` to
1834 # ensure that their change will be applied to the same version of the policy.
1835 #
1836 # If no `etag` is provided in the call to `setIamPolicy`, then the existing
1837 # policy is overwritten blindly.
1838 }</pre>
1839</div>
1840
1841<div class="method">
1842 <code class="details" id="testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</code>
1843 <pre>Tests the specified permissions against the IAM access control policy
1844for a function.
1845If the function does not exist, this will return an empty set of
1846permissions, not a NOT_FOUND error.
1847
1848Args:
1849 resource: string, REQUIRED: The resource for which the policy detail is being requested.
1850See the operation documentation for the appropriate value for this field. (required)
1851 body: object, The request body. (required)
1852 The object takes the form of:
1853
1854{ # Request message for `TestIamPermissions` method.
1855 "permissions": [ # The set of permissions to check for the `resource`. Permissions with
1856 # wildcards (such as '*' or 'storage.*') are not allowed. For more
1857 # information see
1858 # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
1859 "A String",
1860 ],
1861 }
1862
1863 x__xgafv: string, V1 error format.
1864 Allowed values
1865 1 - v1 error format
1866 2 - v2 error format
1867
1868Returns:
1869 An object of the form:
1870
1871 { # Response message for `TestIamPermissions` method.
1872 "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is
1873 # allowed.
1874 "A String",
1875 ],
1876 }</pre>
1877</div>
1878
1879</body></html>