Struct luckperms_rs::LuckClient
source · pub struct LuckClient { /* private fields */ }
Expand description
A client for interacting with a LuckPerms instance.
Implementations§
source§impl LuckClient
impl LuckClient
sourcepub async fn users(&self) -> Result<Vec<Uuid>, RequestError>
pub async fn users(&self) -> Result<Vec<Uuid>, RequestError>
Get a list of all users on the LuckPerms instance.
sourcepub async fn create_user(
&self,
user: UserIdentifier
) -> Result<User, RequestError>
pub async fn create_user( &self, user: UserIdentifier ) -> Result<User, RequestError>
Create a new user on the LuckPerms instance.
sourcepub async fn username_lookup(
&self,
username: String
) -> Result<UserIdentifier, RequestError>
pub async fn username_lookup( &self, username: String ) -> Result<UserIdentifier, RequestError>
Lookup a user based on a username from the LuckPerms instance.
sourcepub async fn uuid_lookup(
&self,
uuid: Uuid
) -> Result<UserIdentifier, RequestError>
pub async fn uuid_lookup( &self, uuid: Uuid ) -> Result<UserIdentifier, RequestError>
Lookup a user based on a UUID from the LuckPerms instance.
sourcepub async fn user_search(
&self,
search: SearchRequest
) -> Result<Vec<UserSearchResult>, RequestError>
pub async fn user_search( &self, search: SearchRequest ) -> Result<Vec<UserSearchResult>, RequestError>
Search for users matching certain nodes.
sourcepub async fn get_user(&self, uuid: Uuid) -> Result<Option<User>, RequestError>
pub async fn get_user(&self, uuid: Uuid) -> Result<Option<User>, RequestError>
Get a user based on their UUID.
sourcepub async fn update_username(
&self,
uuid: Uuid,
username: String
) -> Result<(), RequestError>
pub async fn update_username( &self, uuid: Uuid, username: String ) -> Result<(), RequestError>
Update a user’s username.
sourcepub async fn delete_user(&self, uuid: Uuid) -> Result<(), RequestError>
pub async fn delete_user(&self, uuid: Uuid) -> Result<(), RequestError>
Delete a user from the LuckPerms instance.
sourcepub async fn get_user_nodes(
&self,
uuid: Uuid
) -> Result<Vec<Node>, RequestError>
pub async fn get_user_nodes( &self, uuid: Uuid ) -> Result<Vec<Node>, RequestError>
Get all nodes for a user.
sourcepub async fn add_user_node(
&self,
uuid: Uuid,
node: Node
) -> Result<(), RequestError>
pub async fn add_user_node( &self, uuid: Uuid, node: Node ) -> Result<(), RequestError>
Add a node to a user.
sourcepub async fn add_user_nodes(
&self,
uuid: Uuid,
nodes: Vec<Node>
) -> Result<(), RequestError>
pub async fn add_user_nodes( &self, uuid: Uuid, nodes: Vec<Node> ) -> Result<(), RequestError>
Add multiple nodes to a user.
sourcepub async fn set_user_nodes(
&self,
uuid: Uuid,
nodes: Vec<Node>
) -> Result<(), RequestError>
pub async fn set_user_nodes( &self, uuid: Uuid, nodes: Vec<Node> ) -> Result<(), RequestError>
Set a user’s nodes.
sourcepub async fn delete_user_nodes(
&self,
uuid: Uuid,
nodes: Vec<Node>
) -> Result<(), RequestError>
pub async fn delete_user_nodes( &self, uuid: Uuid, nodes: Vec<Node> ) -> Result<(), RequestError>
Delete nodes from a user.
sourcepub async fn get_user_metadata(
&self,
uuid: Uuid
) -> Result<Vec<Metadata>, RequestError>
pub async fn get_user_metadata( &self, uuid: Uuid ) -> Result<Vec<Metadata>, RequestError>
Get a user’s meta data.
sourcepub async fn check_user_permission(
&self,
uuid: Uuid,
permission: String
) -> Result<PermissionCheckResult, RequestError>
pub async fn check_user_permission( &self, uuid: Uuid, permission: String ) -> Result<PermissionCheckResult, RequestError>
Check if a user has a permission.
sourcepub async fn check_user_permission_query(
&self,
uuid: Uuid,
request: PermissionCheckRequest
) -> Result<PermissionCheckResult, RequestError>
pub async fn check_user_permission_query( &self, uuid: Uuid, request: PermissionCheckRequest ) -> Result<PermissionCheckResult, RequestError>
Check if a user has a permission with more specific query options.
sourcepub async fn promote_user(
&self,
uuid: Uuid,
track: String
) -> Result<TrackMoveResponse, RequestError>
pub async fn promote_user( &self, uuid: Uuid, track: String ) -> Result<TrackMoveResponse, RequestError>
Promote a user along a track.
sourcepub async fn demote_user(
&self,
uuid: Uuid,
track: String
) -> Result<TrackMoveResponse, RequestError>
pub async fn demote_user( &self, uuid: Uuid, track: String ) -> Result<TrackMoveResponse, RequestError>
Demote a user along a track.
source§impl LuckClient
impl LuckClient
sourcepub async fn get_groups(&self) -> Result<Vec<String>, RequestError>
pub async fn get_groups(&self) -> Result<Vec<String>, RequestError>
Get all group names.
sourcepub async fn create_group(&self, name: String) -> Result<Group, RequestError>
pub async fn create_group(&self, name: String) -> Result<Group, RequestError>
Create a new group.
sourcepub async fn search_group(
&self,
search_request: SearchRequest
) -> Result<Vec<GroupSearchResult>, RequestError>
pub async fn search_group( &self, search_request: SearchRequest ) -> Result<Vec<GroupSearchResult>, RequestError>
Search for a group matching nodes.
sourcepub async fn get_group(
&self,
name: String
) -> Result<Option<Group>, RequestError>
pub async fn get_group( &self, name: String ) -> Result<Option<Group>, RequestError>
Get a group based on its name.
sourcepub async fn delete_group(&self, name: String) -> Result<(), RequestError>
pub async fn delete_group(&self, name: String) -> Result<(), RequestError>
Delete a group based on its name.
sourcepub async fn get_group_nodes(
&self,
name: String
) -> Result<Vec<Node>, RequestError>
pub async fn get_group_nodes( &self, name: String ) -> Result<Vec<Node>, RequestError>
Get a group’s notes.
sourcepub async fn add_group_node(
&self,
name: String,
node: Node
) -> Result<Vec<Node>, RequestError>
pub async fn add_group_node( &self, name: String, node: Node ) -> Result<Vec<Node>, RequestError>
Add a node to a group.
sourcepub async fn add_group_nodes(
&self,
name: String,
nodes: Vec<Node>
) -> Result<Vec<Node>, RequestError>
pub async fn add_group_nodes( &self, name: String, nodes: Vec<Node> ) -> Result<Vec<Node>, RequestError>
Add multiple nodes to a group.
sourcepub async fn set_group_nodes(
&self,
name: String,
nodes: Vec<Node>
) -> Result<(), RequestError>
pub async fn set_group_nodes( &self, name: String, nodes: Vec<Node> ) -> Result<(), RequestError>
Set nodes for a group.
sourcepub async fn delete_group_node(
&self,
name: String,
nodes: Vec<Node>
) -> Result<(), RequestError>
pub async fn delete_group_node( &self, name: String, nodes: Vec<Node> ) -> Result<(), RequestError>
Delete nodes from a group.
sourcepub async fn get_group_metadata(
&self,
name: String
) -> Result<Metadata, RequestError>
pub async fn get_group_metadata( &self, name: String ) -> Result<Metadata, RequestError>
Get a group’s metadata.
sourcepub async fn check_group_permission(
&self,
name: String,
permission: String
) -> Result<PermissionCheckResult, RequestError>
pub async fn check_group_permission( &self, name: String, permission: String ) -> Result<PermissionCheckResult, RequestError>
Check if a group has a permission.
sourcepub async fn check_group_permission_query(
&self,
name: String,
request: PermissionCheckRequest
) -> Result<PermissionCheckResult, RequestError>
pub async fn check_group_permission_query( &self, name: String, request: PermissionCheckRequest ) -> Result<PermissionCheckResult, RequestError>
Check if a group has a permission with advanced query settings.
source§impl LuckClient
impl LuckClient
sourcepub async fn submit_action(&self, action: Action) -> Result<(), RequestError>
pub async fn submit_action(&self, action: Action) -> Result<(), RequestError>
Submit an action to the server.