diff --git a/src/Tgstation.Server.Client/Components/IRepositoryClient.cs b/src/Tgstation.Server.Client/Components/IRepositoryClient.cs
index 89d6e86cdc..f950bd5ae4 100644
--- a/src/Tgstation.Server.Client/Components/IRepositoryClient.cs
+++ b/src/Tgstation.Server.Client/Components/IRepositoryClient.cs
@@ -25,6 +25,14 @@ namespace Tgstation.Server.Client.Components
/// A resulting in the updated
Task Update(Repository repository, CancellationToken cancellationToken);
+ ///
+ /// Clones a
+ ///
+ /// The to clone
+ /// The for the operation
+ /// A resulting in the updated
+ Task Clone(Repository repository, CancellationToken cancellationToken);
+
///
/// Deletes the
///
diff --git a/src/Tgstation.Server.Client/Components/RepositoryClient.cs b/src/Tgstation.Server.Client/Components/RepositoryClient.cs
index 9232a323c9..68cc82e911 100644
--- a/src/Tgstation.Server.Client/Components/RepositoryClient.cs
+++ b/src/Tgstation.Server.Client/Components/RepositoryClient.cs
@@ -29,6 +29,9 @@ namespace Tgstation.Server.Client.Components
this.instance = instance;
}
+ ///
+ public Task Clone(Repository repository, CancellationToken cancellationToken) => apiClient.Create(Routes.Repository, repository, instance.Id, cancellationToken);
+
///
public Task Delete(CancellationToken cancellationToken) => apiClient.Delete(Routes.Repository, instance.Id, cancellationToken);