add(parent=None, body=None, x__xgafv=None)
Service producers can use this method to add roles in the shared VPC host
add(parent=None, 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. "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 }, ], "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. } 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. "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. }, "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). "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. "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. }, ], }, "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. "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. }, "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}`. }