diff --git a/src/Auth0.ManagementApi/Clients/IRefreshTokenClient.cs b/src/Auth0.ManagementApi/Clients/IRefreshTokenClient.cs
new file mode 100644
index 00000000..1f6393c7
--- /dev/null
+++ b/src/Auth0.ManagementApi/Clients/IRefreshTokenClient.cs
@@ -0,0 +1,26 @@
+using System.Threading;
+using System.Threading.Tasks;
+
+using Auth0.ManagementApi.Models.RefreshTokens;
+
+namespace Auth0.ManagementApi.Clients
+{
+ public interface IRefreshTokenClient
+ {
+ ///
+ /// Retrieve refresh token information.
+ ///
+ ///
+ ///
+ ///
+ Task GetAsync(RefreshTokenGetRequest request, CancellationToken cancellationToken = default);
+
+ ///
+ /// Delete a refresh token by its Id.
+ ///
+ /// Id of the refresh token to delete.
+ ///
+ ///
+ Task DeleteAsync(string id, CancellationToken cancellationToken = default);
+ }
+}
\ No newline at end of file
diff --git a/src/Auth0.ManagementApi/Clients/ISessionsClient.cs b/src/Auth0.ManagementApi/Clients/ISessionsClient.cs
new file mode 100644
index 00000000..5dee5159
--- /dev/null
+++ b/src/Auth0.ManagementApi/Clients/ISessionsClient.cs
@@ -0,0 +1,33 @@
+using System.Threading;
+using System.Threading.Tasks;
+using Auth0.ManagementApi.Models.Sessions;
+
+namespace Auth0.ManagementApi.Clients
+{
+ public interface ISessionsClient
+ {
+ ///
+ /// Retrieve session information.
+ ///
+ ///
+ ///
+ ///
+ Task GetAsync(SessionsGetRequest request, CancellationToken cancellationToken = default);
+
+ ///
+ /// Delete a session by Id.
+ ///
+ /// Id of the session to delete.
+ ///
+ ///
+ Task DeleteAsync(string id, CancellationToken cancellationToken = default);
+
+ ///
+ /// Revokes a session by Id and all associated refresh tokens.
+ ///
+ /// Id of the session to revoke
+ ///
+ ///
+ Task RevokeAsync(string id, CancellationToken cancellationToken = default);
+ }
+}
\ No newline at end of file
diff --git a/src/Auth0.ManagementApi/Clients/RefreshTokenClient.cs b/src/Auth0.ManagementApi/Clients/RefreshTokenClient.cs
new file mode 100644
index 00000000..9c56ce8e
--- /dev/null
+++ b/src/Auth0.ManagementApi/Clients/RefreshTokenClient.cs
@@ -0,0 +1,50 @@
+using System;
+using System.Collections.Generic;
+using System.Net.Http;
+using System.Threading;
+using System.Threading.Tasks;
+using Auth0.ManagementApi.Models.RefreshTokens;
+
+namespace Auth0.ManagementApi.Clients
+{
+
+ ///
+ public class RefreshTokenClient : BaseClient, IRefreshTokenClient
+ {
+ private const string RefreshTokensBasePath = "refresh-tokens";
+
+ ///
+ /// Initializes a new instance on
+ ///
+ /// used to make all API calls.
+ /// of the endpoint to use in making API calls.
+ /// Dictionary containing default headers included with every request this client makes.
+ public RefreshTokenClient(IManagementConnection connection, Uri baseUri, IDictionary defaultHeaders)
+ : base(connection, baseUri, defaultHeaders)
+ {
+ }
+
+ ///
+ public Task GetAsync(RefreshTokenGetRequest request, CancellationToken cancellationToken = default)
+ {
+ if (request == null)
+ throw new ArgumentNullException(nameof(request));
+
+ if(string.IsNullOrEmpty(request.Id))
+ throw new ArgumentException("Value cannot be null or empty.", nameof(request.Id));
+
+ return Connection.GetAsync(
+ BuildUri($"{RefreshTokensBasePath}/{EncodePath(request.Id)}"),
+ DefaultHeaders, cancellationToken: cancellationToken);
+ }
+
+ ///
+ public Task DeleteAsync(string id, CancellationToken cancellationToken = default)
+ {
+ return Connection.SendAsync