diff --git a/src/Tgstation.Server.Client/IUsersClient.cs b/src/Tgstation.Server.Client/IUsersClient.cs
index 6ea5e5fe31..b0260c3174 100644
--- a/src/Tgstation.Server.Client/IUsersClient.cs
+++ b/src/Tgstation.Server.Client/IUsersClient.cs
@@ -1,4 +1,5 @@
-using System.Threading;
+using System.Collections.Generic;
+using System.Threading;
using System.Threading.Tasks;
using Tgstation.Server.Api.Models;
@@ -13,9 +14,24 @@ namespace Tgstation.Server.Client
/// Read the current user's information and general rights
///
/// The for the operation
- ///
+ /// A resulting in the current
Task Read(CancellationToken cancellationToken);
+ ///
+ /// Get a specific
+ ///
+ /// The to get
+ /// The for the operation
+ /// A resulting in the requested
+ Task GetId(User user, CancellationToken cancellationToken);
+
+ ///
+ /// List all s
+ ///
+ /// The for the operation
+ /// A resulting in a of all s
+ Task> List(CancellationToken cancellationToken);
+
///
/// Create a new
///
diff --git a/src/Tgstation.Server.Client/UsersClient.cs b/src/Tgstation.Server.Client/UsersClient.cs
index 39d1b68646..3578731509 100644
--- a/src/Tgstation.Server.Client/UsersClient.cs
+++ b/src/Tgstation.Server.Client/UsersClient.cs
@@ -1,4 +1,5 @@
using System;
+using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using Tgstation.Server.Api;
@@ -26,6 +27,12 @@ namespace Tgstation.Server.Client
///
public Task Create(UserUpdate user, CancellationToken cancellationToken) => apiClient.Create(Routes.User, user, cancellationToken);
+ ///
+ public Task GetId(User user, CancellationToken cancellationToken) => apiClient.Read(Routes.SetID(Routes.User, user.Id), cancellationToken);
+
+ ///
+ public Task> List(CancellationToken cancellationToken) => apiClient.Read>(Routes.List(Routes.User), cancellationToken);
+
///
public Task Read(CancellationToken cancellationToken) => apiClient.Read(Routes.User, cancellationToken);