diff --git a/Octokit.Reactive/Clients/IObservableRepoCollaboratorsClient.cs b/Octokit.Reactive/Clients/IObservableRepoCollaboratorsClient.cs
new file mode 100644
index 00000000..610c872d
--- /dev/null
+++ b/Octokit.Reactive/Clients/IObservableRepoCollaboratorsClient.cs
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.Reactive;
+
+namespace Octokit.Reactive
+{
+ public interface IObservableRepoCollaboratorsClient
+ {
+ ///
+ /// Gets all the available collaborators on this repo.
+ ///
+ /// The owner of the repository
+ /// The name of the repository
+ ///
+ IObservable GetAll(string owner, string name);
+
+ ///
+ /// Checks to see if a user is an assignee for a repository.
+ ///
+ /// The owner of the repository
+ /// The name of the repository
+ /// Username of the prospective collaborator
+ ///
+ IObservable IsCollaborator(string owner, string name, string user);
+
+ ///
+ /// Adds a user as a collaborator to a repository.
+ ///
+ /// The owner of the repository
+ /// The name of the repository
+ /// Username of the prospective collaborator
+ ///
+ IObservable Add(string owner, string name, string user);
+
+ ///
+ /// Removes a user as a collaborator for a repository.
+ ///
+ /// The owner of the repository
+ /// The name of the repository
+ /// Username of the prospective collaborator
+ ///
+ IObservable Delete(string owner, string name, string user);
+ }
+}