Skip to main content

AssignRolesToAPIUser

Assign roles to an existing api user within the authenticated group context.

The role assignment enables the api user to perform operations according to the permissions associated with that role within the group hierarchy.

Method Options​

Authorisation specification of the AssignRolesToAPIUser 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: AssignRolesToAPIUserRequest Message​

FieldTypeRequiredDescription
Name

string

True

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

Roles

string[]

True

Roles to assign to 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.AssignRolesToAPIUserRequest{
// FIXME: Populate service-specific request fields
}

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

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

Advanced Configuration​

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

Other Methods​