View Source GoogleApi.Compute.V1.Api.ServiceAttachments (google_api_compute v0.56.0)

API calls for all endpoints tagged ServiceAttachments.

Summary

Functions

Retrieves the list of all ServiceAttachment resources, regional and global, available to the specified project. To prevent failure, Google recommends that you set the returnPartialSuccess parameter to true.

Gets the access control policy for a resource. May be empty if no such policy or resource exists.

Creates a ServiceAttachment in the specified project in the given scope using the parameters that are included in the request.

Lists the ServiceAttachments for a project in the given scope.

Patches the specified ServiceAttachment resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.

Sets the access control policy on the specified resource. Replaces any existing policy.

Functions

Link to this function

compute_service_attachments_aggregated_list(connection, project, optional_params \\ [], opts \\ [])

View Source
@spec compute_service_attachments_aggregated_list(
  Tesla.Env.client(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Compute.V1.Model.ServiceAttachmentAggregatedList.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Retrieves the list of all ServiceAttachment resources, regional and global, available to the specified project. To prevent failure, Google recommends that you set the returnPartialSuccess parameter to true.

Parameters

  • connection (type: GoogleApi.Compute.V1.Connection.t) - Connection to server
  • project (type: String.t) - Name of the project scoping this request.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :userIp (type: String.t) - Legacy name for parameter that has been superseded by quotaUser.
    • :filter (type: String.t) - A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either =, !=, >, <, <=, >= or :. For example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance. The :* comparison can be used to test whether a key has been defined. For example, to find all objects with owner label use: labels.owner:* You can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example: (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) If you want to use a regular expression, use the eq (equal) or ne (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: fieldname eq unquoted literal fieldname eq 'single quoted literal' fieldname eq "double quoted literal" (fieldname1 eq literal) (fieldname2 ne "literal") The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use name ne .*instance. You cannot combine constraints on multiple fields using regular expressions.
    • :includeAllScopes (type: boolean()) - Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.
    • :maxResults (type: integer()) - The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
    • :orderBy (type: String.t) - Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
    • :pageToken (type: String.t) - Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
    • :returnPartialSuccess (type: boolean()) - Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.
    • :serviceProjectNumber (type: String.t) - The Shared VPC service project id or service project number for which aggregated list request is invoked for subnetworks list-usable api.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Compute.V1.Model.ServiceAttachmentAggregatedList{}} on success
  • {:error, info} on failure
Link to this function

compute_service_attachments_delete(connection, project, region, service_attachment, optional_params \\ [], opts \\ [])

View Source
@spec compute_service_attachments_delete(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Compute.V1.Model.Operation.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Deletes the specified ServiceAttachment in the given scope

Parameters

  • connection (type: GoogleApi.Compute.V1.Connection.t) - Connection to server
  • project (type: String.t) - Project ID for this request.
  • region (type: String.t) - Name of the region of this request.
  • service_attachment (type: String.t) - Name of the ServiceAttachment resource to delete.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :userIp (type: String.t) - Legacy name for parameter that has been superseded by quotaUser.
    • :requestId (type: String.t) - An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Compute.V1.Model.Operation{}} on success
  • {:error, info} on failure
Link to this function

compute_service_attachments_get(connection, project, region, service_attachment, optional_params \\ [], opts \\ [])

View Source
@spec compute_service_attachments_get(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Compute.V1.Model.ServiceAttachment.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Returns the specified ServiceAttachment resource in the given scope.

Parameters

  • connection (type: GoogleApi.Compute.V1.Connection.t) - Connection to server
  • project (type: String.t) - Project ID for this request.
  • region (type: String.t) - Name of the region of this request.
  • service_attachment (type: String.t) - Name of the ServiceAttachment resource to return.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :userIp (type: String.t) - Legacy name for parameter that has been superseded by quotaUser.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Compute.V1.Model.ServiceAttachment{}} on success
  • {:error, info} on failure
Link to this function

compute_service_attachments_get_iam_policy(connection, project, region, resource, optional_params \\ [], opts \\ [])

View Source
@spec compute_service_attachments_get_iam_policy(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Compute.V1.Model.Policy.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Gets the access control policy for a resource. May be empty if no such policy or resource exists.

Parameters

  • connection (type: GoogleApi.Compute.V1.Connection.t) - Connection to server
  • project (type: String.t) - Project ID for this request.
  • region (type: String.t) - The name of the region for this request.
  • resource (type: String.t) - Name or id of the resource for this request.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :userIp (type: String.t) - Legacy name for parameter that has been superseded by quotaUser.
    • :optionsRequestedPolicyVersion (type: integer()) - Requested IAM Policy version.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Compute.V1.Model.Policy{}} on success
  • {:error, info} on failure
Link to this function

compute_service_attachments_insert(connection, project, region, optional_params \\ [], opts \\ [])

View Source
@spec compute_service_attachments_insert(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Compute.V1.Model.Operation.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Creates a ServiceAttachment in the specified project in the given scope using the parameters that are included in the request.

Parameters

  • connection (type: GoogleApi.Compute.V1.Connection.t) - Connection to server
  • project (type: String.t) - Project ID for this request.
  • region (type: String.t) - Name of the region of this request.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :userIp (type: String.t) - Legacy name for parameter that has been superseded by quotaUser.
    • :requestId (type: String.t) - An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    • :body (type: GoogleApi.Compute.V1.Model.ServiceAttachment.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Compute.V1.Model.Operation{}} on success
  • {:error, info} on failure
Link to this function

compute_service_attachments_list(connection, project, region, optional_params \\ [], opts \\ [])

View Source
@spec compute_service_attachments_list(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Compute.V1.Model.ServiceAttachmentList.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Lists the ServiceAttachments for a project in the given scope.

Parameters

  • connection (type: GoogleApi.Compute.V1.Connection.t) - Connection to server
  • project (type: String.t) - Project ID for this request.
  • region (type: String.t) - Name of the region of this request.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :userIp (type: String.t) - Legacy name for parameter that has been superseded by quotaUser.
    • :filter (type: String.t) - A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either =, !=, >, <, <=, >= or :. For example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance. The :* comparison can be used to test whether a key has been defined. For example, to find all objects with owner label use: labels.owner:* You can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example: (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) If you want to use a regular expression, use the eq (equal) or ne (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: fieldname eq unquoted literal fieldname eq 'single quoted literal' fieldname eq "double quoted literal" (fieldname1 eq literal) (fieldname2 ne "literal") The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use name ne .*instance. You cannot combine constraints on multiple fields using regular expressions.
    • :maxResults (type: integer()) - The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
    • :orderBy (type: String.t) - Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported.
    • :pageToken (type: String.t) - Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.
    • :returnPartialSuccess (type: boolean()) - Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Compute.V1.Model.ServiceAttachmentList{}} on success
  • {:error, info} on failure
Link to this function

compute_service_attachments_patch(connection, project, region, service_attachment, optional_params \\ [], opts \\ [])

View Source
@spec compute_service_attachments_patch(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Compute.V1.Model.Operation.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Patches the specified ServiceAttachment resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.

Parameters

  • connection (type: GoogleApi.Compute.V1.Connection.t) - Connection to server
  • project (type: String.t) - Project ID for this request.
  • region (type: String.t) - The region scoping this request and should conform to RFC1035.
  • service_attachment (type: String.t) - The resource id of the ServiceAttachment to patch. It should conform to RFC1035 resource name or be a string form on an unsigned long number.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :userIp (type: String.t) - Legacy name for parameter that has been superseded by quotaUser.
    • :requestId (type: String.t) - An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    • :body (type: GoogleApi.Compute.V1.Model.ServiceAttachment.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Compute.V1.Model.Operation{}} on success
  • {:error, info} on failure
Link to this function

compute_service_attachments_set_iam_policy(connection, project, region, resource, optional_params \\ [], opts \\ [])

View Source
@spec compute_service_attachments_set_iam_policy(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Compute.V1.Model.Policy.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Sets the access control policy on the specified resource. Replaces any existing policy.

Parameters

  • connection (type: GoogleApi.Compute.V1.Connection.t) - Connection to server
  • project (type: String.t) - Project ID for this request.
  • region (type: String.t) - The name of the region for this request.
  • resource (type: String.t) - Name or id of the resource for this request.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :userIp (type: String.t) - Legacy name for parameter that has been superseded by quotaUser.
    • :body (type: GoogleApi.Compute.V1.Model.RegionSetPolicyRequest.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Compute.V1.Model.Policy{}} on success
  • {:error, info} on failure
Link to this function

compute_service_attachments_test_iam_permissions(connection, project, region, resource, optional_params \\ [], opts \\ [])

View Source
@spec compute_service_attachments_test_iam_permissions(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Compute.V1.Model.TestPermissionsResponse.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Returns permissions that a caller has on the specified resource.

Parameters

  • connection (type: GoogleApi.Compute.V1.Connection.t) - Connection to server
  • project (type: String.t) - Project ID for this request.
  • region (type: String.t) - The name of the region for this request.
  • resource (type: String.t) - Name or id of the resource for this request.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :userIp (type: String.t) - Legacy name for parameter that has been superseded by quotaUser.
    • :body (type: GoogleApi.Compute.V1.Model.TestPermissionsRequest.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Compute.V1.Model.TestPermissionsResponse{}} on success
  • {:error, info} on failure