Skip to main content

RevokeRolesFromAPIUser

Revoke roles from an existing API user within the authenticated group context.

The role revocation removes the permissions associated with that role from the API user within the group hierarchy. The API user will no longer be able to perform operations that require the revoked role.

Method Options​

Authorisation specification of the RevokeRolesFromAPIUser method.

TypeMETHOD_TYPE_WRITE
Access LevelMETHOD_ACCESS_LEVEL_AUTHORISED
Roles
  • ROLE_IAM_ADMIN
  • ROLE_IAM_API_USER_ADMIN

Parameters​

Request and response parameter message overview:

Input: RevokeRolesFromAPIUserRequest Message​

FieldTypeRequiredDescription
Name

string

True

Name of the API user to revoke roles from in the format iam/api_users/{ULIDv2}.

Roles

string[]

True

Roles to revoke from the API user in the format groups/{ULIDv2}/roles/{role_id}. The role_id corresponds to a value from the meshtrade.iam.role.v1.Role enum.

Returns: APIUser Message​

Code Examples​

Select supported SDK in the language of your choice for a full example of how to invoke the this method:

package main

import (
"context"
"log"

api_userv1 "github.com/meshtrade/api/go/iam/api_user/v1"
)

func main() {
ctx := context.Background()

// Default configuration is used and credentials come from MESH_API_CREDENTIALS
// environment variable or default discovery methods. Zero config required
// unless you want custom configuration.
service, err := api_userv1.NewAPIUserService()
if err != nil {
log.Fatalf("Failed to create service: %v", err)
}
defer service.Close()

// Create request with service-specific parameters
request := &api_userv1.RevokeRolesFromAPIUserRequest{
// FIXME: Populate service-specific request fields
}

// Call the RevokeRolesFromAPIUser method
apiUser, err := service.RevokeRolesFromAPIUser(ctx, request)
if err != nil {
log.Fatalf("RevokeRolesFromAPIUser failed: %v", err)
}

// FIXME: Add relevant response object usage
log.Printf("RevokeRolesFromAPIUser successful: %+v", apiUser)
}

Advanced Configuration​

For advanced client configuration options (custom endpoints, TLS settings, timeouts), see the SDK Configuration Guide.

Other Methods​