User operations

Users

MLFlowClient.createuserFunction
createuser(instance::MLFlow, username::String, password::String)

Arguments

  • instance: MLFlow configuration.
  • username: Username.
  • password: Password.

Returns

An User object.

source
MLFlowClient.updateuserpasswordFunction
updateuserpassword(instance::MLFlow, username::String, password::String;
    current_password::Union{String,Missing}=missing)

Arguments

  • instance: MLFlow configuration.
  • username: Username.
  • password: New password.
  • current_password: The user's current password. Required when a user changes their own password; admins changing another user's password may omit it.

Returns

true if successful. Otherwise, raises exception.

source
MLFlowClient.updateuseradminFunction
updateuseradmin(instance::MLFlow, username::String, is_admin::Bool)

Arguments

  • instance: MLFlow configuration.
  • username: Username.
  • is_admin: New admin status.

Returns

true if successful. Otherwise, raises exception.

source
MLFlowClient.deleteuserFunction
deleteuser(instance::MLFlow, username::String)

Arguments

  • instance: MLFlow configuration.
  • username: Username.

Returns

true if successful. Otherwise, raises exception.

source

Roles

MLFlowClient.createroleFunction
createrole(instance::MLFlow, name::String, workspace::String;
    description::Union{String,Missing}=missing)

Create a new role.

Arguments

  • instance: MLFlow configuration.
  • name: Role name.
  • workspace: Workspace the role belongs to.
  • description: Optional role description.

Returns

An instance of type Role.

source
MLFlowClient.getroleFunction
getrole(instance::MLFlow, role_id::Int64)

Get a role by ID.

Arguments

  • instance: MLFlow configuration.
  • role_id: ID of the role to retrieve.

Returns

An instance of type Role.

source
MLFlowClient.listrolesFunction
listroles(instance::MLFlow; workspace::Union{String,Missing}=missing)

List roles, optionally scoped to a workspace.

Arguments

  • instance: MLFlow configuration.
  • workspace: Optional workspace to scope the listing to.

Returns

Vector of Role entities.

source
MLFlowClient.updateroleFunction
updaterole(instance::MLFlow, role_id::Int64; name::Union{String,Missing}=missing,
    description::Union{String,Missing}=missing)

Update a role's name and/or description.

Arguments

  • instance: MLFlow configuration.
  • role_id: ID of the role to update.
  • name: Optional new name.
  • description: Optional new description.

Returns

An instance of type Role.

source
MLFlowClient.deleteroleFunction
deleterole(instance::MLFlow, role_id::Int64)

Delete a role.

Arguments

  • instance: MLFlow configuration.
  • role_id: ID of the role to delete.

Returns

true if successful. Otherwise, raises exception.

source

Role permissions

MLFlowClient.addrolepermissionFunction
addrolepermission(instance::MLFlow, role_id::Int64, resource_type::String,
    resource_pattern::String, permission::String)

Add a permission grant to a role.

Arguments

  • instance: MLFlow configuration.
  • role_id: ID of the role.
  • resource_type: Resource type (e.g. "experiment", "registered_model").
  • resource_pattern: Resource identifier the permission applies to.
  • permission: Permission to grant (e.g. "READ", "EDIT", "MANAGE", "NO_PERMISSIONS").

Returns

An instance of type RolePermission.

source
MLFlowClient.removerolepermissionFunction
removerolepermission(instance::MLFlow, role_permission_id::Int64)

Remove a permission grant from a role.

Arguments

  • instance: MLFlow configuration.
  • role_permission_id: ID of the role permission to remove.

Returns

true if successful. Otherwise, raises exception.

source
MLFlowClient.updaterolepermissionFunction
updaterolepermission(instance::MLFlow, role_permission_id::Int64, permission::String)

Update the permission level of a role permission grant.

Arguments

  • instance: MLFlow configuration.
  • role_permission_id: ID of the role permission to update.
  • permission: New permission level.

Returns

An instance of type RolePermission.

source

Role assignments

MLFlowClient.assignroleFunction
assignrole(instance::MLFlow, username::String, role_id::Int64)

Assign a role to a user.

Arguments

  • instance: MLFlow configuration.
  • username: Username to assign the role to.
  • role_id: ID of the role to assign.

Returns

An instance of type UserRoleAssignment.

source
MLFlowClient.unassignroleFunction
unassignrole(instance::MLFlow, username::String, role_id::Int64)

Unassign a role from a user.

Arguments

  • instance: MLFlow configuration.
  • username: Username to unassign the role from.
  • role_id: ID of the role to unassign.

Returns

true if successful. Otherwise, raises exception.

source
MLFlowClient.listuserrolesFunction
listuserroles(instance::MLFlow, username::String)

List the roles assigned to a user.

Arguments

  • instance: MLFlow configuration.
  • username: Username whose roles to list.

Returns

Vector of Role entities.

source

User permissions

MLFlowClient.grantuserpermissionFunction
grantuserpermission(instance::MLFlow, username::String, resource_type::String,
    resource_id::String, permission::String)

Grant a user a permission on a resource. This is the role-based replacement for the removed per-resource permission endpoints.

Arguments

  • instance: MLFlow configuration.
  • username: Username to grant the permission to.
  • resource_type: Resource type (e.g. "experiment", "registered_model").
  • resource_id: Identifier of the resource.
  • permission: Permission to grant (e.g. "READ", "EDIT", "MANAGE", "NO_PERMISSIONS").

Returns

true if successful. Otherwise, raises exception.

source
MLFlowClient.revokeuserpermissionFunction
revokeuserpermission(instance::MLFlow, username::String, resource_type::String,
    resource_id::String)

Revoke a user's permission on a resource.

Arguments

  • instance: MLFlow configuration.
  • username: Username to revoke the permission from.
  • resource_type: Resource type (e.g. "experiment", "registered_model").
  • resource_id: Identifier of the resource.

Returns

true if successful. Otherwise, raises exception.

source
MLFlowClient.getuserpermissionFunction
getuserpermission(instance::MLFlow, username::String, resource_type::String,
    resource_id::String)

Resolve a user's effective permission on a resource.

Arguments

  • instance: MLFlow configuration.
  • username: Username to check.
  • resource_type: Resource type (e.g. "experiment", "registered_model").
  • resource_id: Identifier of the resource.

Returns

A named tuple (allowed::Bool, permission::String) where allowed indicates regular access and permission is the resolved permission level.

source
MLFlowClient.listuserpermissionsFunction
listuserpermissions(instance::MLFlow, username::String)

List all permission grants a user holds across their roles.

Arguments

  • instance: MLFlow configuration.
  • username: Username whose permissions to list.

Returns

A named tuple (is_admin::Bool, permissions::Array{UserPermission}).

source
MLFlowClient.listcurrentuserpermissionsFunction
listcurrentuserpermissions(instance::MLFlow)

List all permission grants the currently authenticated user holds.

Arguments

  • instance: MLFlow configuration.

Returns

A named tuple (is_admin::Bool, permissions::Array{UserPermission}).

source