google_api_iam v0.1.0 GoogleApi.IAM.V1.Api.Projects View Source
API calls for all endpoints tagged Projects
.
Link to this section Summary
Functions
Creates a new Role
Soft deletes a role. The role is suspended and cannot be used to create new IAM Policy Bindings. The Role will not be included in `ListRoles()` unless `show_deleted` is set in the `ListRolesRequest`. The Role contains the deleted boolean set. Existing Bindings remains, but are inactive. The Role can be undeleted within 7 days. After 7 days the Role is deleted and all Bindings associated with the role are removed
Gets a Role definition
Lists the Roles defined on a resource
Updates a Role definition
Undelete a Role, bringing it back in its previous state
Creates a ServiceAccount and returns it
Deletes a ServiceAccount
Gets a ServiceAccount
Returns the IAM access control policy for a ServiceAccount
Creates a ServiceAccountKey and returns it
Deletes a ServiceAccountKey
Gets the ServiceAccountKey by key id
Lists ServiceAccountKeys
Lists ServiceAccounts for a project
Sets the IAM access control policy for a ServiceAccount
Signs a blob using a service account's system-managed private key
Signs a JWT using a service account's system-managed private key. If no expiry time (`exp`) is provided in the `SignJwtRequest`, IAM sets an an expiry time of one hour by default. If you request an expiry time of more than one hour, the request will fail
Tests the specified permissions against the IAM access control policy for a ServiceAccount
Updates a ServiceAccount. Currently, only the following fields are updatable: `display_name` . The `etag` is mandatory
Link to this section Functions
iam_projects_roles_create(Tesla.Env.client(), String.t(), keyword()) :: {:ok, GoogleApi.IAM.V1.Model.Role.t()} | {:error, Tesla.Env.t()}
Creates a new Role.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `parent`. The resource name of the parent resource in one of the following formats: `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}`
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :body (CreateRoleRequest):
Returns
{:ok, %GoogleApi.IAM.V1.Model.Role{}} on success {:error, info} on failure
iam_projects_roles_delete(Tesla.Env.client(), String.t(), String.t(), keyword()) :: {:ok, GoogleApi.IAM.V1.Model.Role.t()} | {:error, Tesla.Env.t()}
Soft deletes a role. The role is suspended and cannot be used to create new IAM Policy Bindings. The Role will not be included in `ListRoles()` unless `show_deleted` is set in the `ListRolesRequest`. The Role contains the deleted boolean set. Existing Bindings remains, but are inactive. The Role can be undeleted within 7 days. After 7 days the Role is deleted and all Bindings associated with the role are removed.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the role in one of the following formats: `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}`
- roles_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :etag (binary()): Used to perform a consistent read-modify-write.
Returns
{:ok, %GoogleApi.IAM.V1.Model.Role{}} on success {:error, info} on failure
iam_projects_roles_get(Tesla.Env.client(), String.t(), String.t(), keyword()) :: {:ok, GoogleApi.IAM.V1.Model.Role.t()} | {:error, Tesla.Env.t()}
Gets a Role definition.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}`
- roles_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
Returns
{:ok, %GoogleApi.IAM.V1.Model.Role{}} on success {:error, info} on failure
iam_projects_roles_list(Tesla.Env.client(), String.t(), keyword()) :: {:ok, GoogleApi.IAM.V1.Model.ListRolesResponse.t()} | {:error, Tesla.Env.t()}
Lists the Roles defined on a resource.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `parent`. The resource name of the parent resource in one of the following formats: `` (empty string) — this refers to curated roles. `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}`
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :pageSize (integer()): Optional limit on the number of roles to include in the response.
- :view (String.t): Optional view for the returned Role objects.
- :showDeleted (boolean()): Include Roles that have been deleted.
- :pageToken (String.t): Optional pagination token returned in an earlier ListRolesResponse.
Returns
{:ok, %GoogleApi.IAM.V1.Model.ListRolesResponse{}} on success {:error, info} on failure
iam_projects_roles_patch(Tesla.Env.client(), String.t(), String.t(), keyword()) :: {:ok, GoogleApi.IAM.V1.Model.Role.t()} | {:error, Tesla.Env.t()}
Updates a Role definition.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}`
- roles_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :updateMask (String.t): A mask describing which fields in the Role have changed.
- :body (Role):
Returns
{:ok, %GoogleApi.IAM.V1.Model.Role{}} on success {:error, info} on failure
iam_projects_roles_undelete( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.Role.t()} | {:error, Tesla.Env.t()}
Undelete a Role, bringing it back in its previous state.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the role in one of the following formats: `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}`
- roles_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :body (UndeleteRoleRequest):
Returns
{:ok, %GoogleApi.IAM.V1.Model.Role{}} on success {:error, info} on failure
iam_projects_service_accounts_create(Tesla.Env.client(), String.t(), keyword()) :: {:ok, GoogleApi.IAM.V1.Model.ServiceAccount.t()} | {:error, Tesla.Env.t()}
Creates a ServiceAccount and returns it.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. Required. The resource name of the project associated with the service accounts, such as `projects/my-project-123`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :body (CreateServiceAccountRequest):
Returns
{:ok, %GoogleApi.IAM.V1.Model.ServiceAccount{}} on success {:error, info} on failure
iam_projects_service_accounts_delete( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.Empty.t()} | {:error, Tesla.Env.t()}
Deletes a ServiceAccount.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the service account in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the service account.
- service_accounts_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
Returns
{:ok, %GoogleApi.IAM.V1.Model.Empty{}} on success {:error, info} on failure
iam_projects_service_accounts_get( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.ServiceAccount.t()} | {:error, Tesla.Env.t()}
Gets a ServiceAccount.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the service account in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the service account.
- service_accounts_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
Returns
{:ok, %GoogleApi.IAM.V1.Model.ServiceAccount{}} on success {:error, info} on failure
iam_projects_service_accounts_get_iam_policy( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.Policy.t()} | {:error, Tesla.Env.t()}
Returns the IAM access control policy for a ServiceAccount.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `resource`. REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.
- service_accounts_id (String.t): Part of `resource`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
Returns
{:ok, %GoogleApi.IAM.V1.Model.Policy{}} on success {:error, info} on failure
iam_projects_service_accounts_keys_create( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.ServiceAccountKey.t()} | {:error, Tesla.Env.t()}
Creates a ServiceAccountKey and returns it.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the service account in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the service account.
- service_accounts_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :body (CreateServiceAccountKeyRequest):
Returns
{:ok, %GoogleApi.IAM.V1.Model.ServiceAccountKey{}} on success {:error, info} on failure
iam_projects_service_accounts_keys_delete( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.Empty.t()} | {:error, Tesla.Env.t()}
Deletes a ServiceAccountKey.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the service account key in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the service account.
- service_accounts_id (String.t): Part of `name`. See documentation of `projectsId`.
- keys_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
Returns
{:ok, %GoogleApi.IAM.V1.Model.Empty{}} on success {:error, info} on failure
iam_projects_service_accounts_keys_get( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.ServiceAccountKey.t()} | {:error, Tesla.Env.t()}
Gets the ServiceAccountKey by key id.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the service account key in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the service account.
- service_accounts_id (String.t): Part of `name`. See documentation of `projectsId`.
- keys_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :publicKeyType (String.t): The output format of the public key requested. X509_PEM is the default output format.
Returns
{:ok, %GoogleApi.IAM.V1.Model.ServiceAccountKey{}} on success {:error, info} on failure
iam_projects_service_accounts_keys_list( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.ListServiceAccountKeysResponse.t()} | {:error, Tesla.Env.t()}
Lists ServiceAccountKeys.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the service account in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID`, will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the service account.
- service_accounts_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :keyTypes ([String.t]): Filters the types of keys the user wants to include in the list response. Duplicate key types are not allowed. If no key type is provided, all keys are returned.
Returns
{:ok, %GoogleApi.IAM.V1.Model.ListServiceAccountKeysResponse{}} on success {:error, info} on failure
iam_projects_service_accounts_list(Tesla.Env.client(), String.t(), keyword()) :: {:ok, GoogleApi.IAM.V1.Model.ListServiceAccountsResponse.t()} | {:error, Tesla.Env.t()}
Lists ServiceAccounts for a project.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. Required. The resource name of the project associated with the service accounts, such as `projects/my-project-123`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :pageSize (integer()): Optional limit on the number of service accounts to include in the response. Further accounts can subsequently be obtained by including the ListServiceAccountsResponse.next_page_token in a subsequent request.
- :pageToken (String.t): Optional pagination token returned in an earlier ListServiceAccountsResponse.next_page_token.
Returns
{:ok, %GoogleApi.IAM.V1.Model.ListServiceAccountsResponse{}} on success {:error, info} on failure
iam_projects_service_accounts_set_iam_policy( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.Policy.t()} | {:error, Tesla.Env.t()}
Sets the IAM access control policy for a ServiceAccount.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `resource`. REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.
- service_accounts_id (String.t): Part of `resource`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :body (SetIamPolicyRequest):
Returns
{:ok, %GoogleApi.IAM.V1.Model.Policy{}} on success {:error, info} on failure
iam_projects_service_accounts_sign_blob( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.SignBlobResponse.t()} | {:error, Tesla.Env.t()}
Signs a blob using a service account's system-managed private key.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the service account in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the service account.
- service_accounts_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :body (SignBlobRequest):
Returns
{:ok, %GoogleApi.IAM.V1.Model.SignBlobResponse{}} on success {:error, info} on failure
iam_projects_service_accounts_sign_jwt( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.SignJwtResponse.t()} | {:error, Tesla.Env.t()}
Signs a JWT using a service account's system-managed private key. If no expiry time (`exp`) is provided in the `SignJwtRequest`, IAM sets an an expiry time of one hour by default. If you request an expiry time of more than one hour, the request will fail.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the service account in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the service account.
- service_accounts_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :body (SignJwtRequest):
Returns
{:ok, %GoogleApi.IAM.V1.Model.SignJwtResponse{}} on success {:error, info} on failure
iam_projects_service_accounts_test_iam_permissions( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.TestIamPermissionsResponse.t()} | {:error, Tesla.Env.t()}
Tests the specified permissions against the IAM access control policy for a ServiceAccount.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `resource`. REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.
- service_accounts_id (String.t): Part of `resource`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :body (TestIamPermissionsRequest):
Returns
{:ok, %GoogleApi.IAM.V1.Model.TestIamPermissionsResponse{}} on success {:error, info} on failure
iam_projects_service_accounts_update( Tesla.Env.client(), String.t(), String.t(), keyword() ) :: {:ok, GoogleApi.IAM.V1.Model.ServiceAccount.t()} | {:error, Tesla.Env.t()}
Updates a ServiceAccount. Currently, only the following fields are updatable: `display_name` . The `etag` is mandatory.
Parameters
- connection (GoogleApi.IAM.V1.Connection): Connection to server
- projects_id (String.t): Part of `name`. The resource name of the service account in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Requests using `-` as a wildcard for the `PROJECT_ID` will infer the project from the `account` and the `ACCOUNT` value can be the `email` address or the `unique_id` of the service account. In responses the resource name will always be in the format `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`.
- service_accounts_id (String.t): Part of `name`. See documentation of `projectsId`.
opts (KeywordList): [optional] Optional parameters
- :callback (String.t): JSONP
- :oauth_token (String.t): OAuth 2.0 token for the current user.
- :$.xgafv (String.t): V1 error format.
- :alt (String.t): Data format for response.
- :access_token (String.t): OAuth access token.
- :key (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.
- :upload_protocol (String.t): Upload protocol for media (e.g. "raw", "multipart").
- :quotaUser (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.
- :prettyPrint (boolean()): Returns response with indentations and line breaks.
- :fields (String.t): Selector specifying which fields to include in a partial response.
- :uploadType (String.t): Legacy upload protocol for media (e.g. "media", "multipart").
- :body (ServiceAccount):
Returns
{:ok, %GoogleApi.IAM.V1.Model.ServiceAccount{}} on success {:error, info} on failure