add(parent, body=None, x__xgafv=None)
Service producers can use this method to add roles in the shared VPC host
add(parent, body=None, x__xgafv=None)
Service producers can use this method to add roles in the shared VPC host
project. Each role is bound to the provided member. Each role must be
selected from within a whitelisted set of roles. Each role is applied at
only the granularity specified in the whitelist.
Args:
parent: string, Required. This is in a form services/{service} where {service} is the name of the
private access management service. For example
'service-peering.example.com'. (required)
body: object, The request body.
The object takes the form of:
{ # Request for AddRoles to allow Service Producers to add roles in the shared
# VPC host project for them to use.
"consumerNetwork": "A String", # Required. The network that the consumer is using to connect with services. Must be in
# the form of projects/{project}/global/networks/{network}
# {project} is a project number, as in '12345'
# {network} is a network name.
"policyBinding": [ # Required. List of policy bindings to add to shared VPC host project.
{ # Grouping of IAM role and IAM member.
"member": "A String", # Required. Member to bind the role with. See
# /iam/docs/reference/rest/v1/Policy#Binding for how to format each member.
# Eg.
# - user:myuser@mydomain.com
# - serviceAccount:my-service-account@app.gserviceaccount.com
"role": "A String", # Required. Role to apply. Only whitelisted roles can be used at the specified
# granularity. The role must be one of the following:
# - 'roles/container.hostServiceAgentUser' applied on the shared VPC host
# project
},
],
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This resource represents a long-running operation that is the result of a
# network API call.
"response": { # The normal response of the operation in case of success. If the original
# method returns no data on success, such as `Delete`, the response is
# `google.protobuf.Empty`. If the original method is standard
# `Get`/`Create`/`Update`, the response should be the resource. For other
# methods, the response should have the type `XxxResponse`, where `Xxx`
# is the original method name. For example, if the original method name
# is `TakeSnapshot()`, the inferred response type is
# `TakeSnapshotResponse`.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
"done": True or False, # If the value is `false`, it means the operation is still in progress.
# If `true`, the operation is completed, and either `error` or `response` is
# available.
"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.
# different programming environments, including REST APIs and RPC APIs. It is
# used by [gRPC](https://github.com/grpc). Each `Status` message contains
# three pieces of data: error code, error message, and error details.
#
# You can find out more about this error model and how to work with it in the
# [API Design Guide](https://cloud.google.com/apis/design/errors).
"code": 42, # The status code, which should be an enum value of google.rpc.Code.
"details": [ # A list of messages that carry the error details. There is a common set of
# message types for APIs to use.
{
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
],
"message": "A String", # A developer-facing error message, which should be in English. Any
# user-facing error message should be localized and sent in the
# google.rpc.Status.details field, or localized by the client.
},
"name": "A String", # The server-assigned name, which is only unique within the same service that
# originally returns it. If you use the default HTTP mapping, the
# `name` should be a resource name ending with `operations/{unique_id}`.
"metadata": { # Service-specific metadata associated with the operation. It typically
# contains progress information and common metadata such as create time.
# Some services might not provide such metadata. Any method that returns a
# long-running operation should document the metadata type, if any.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
}