diff --git a/Octokit.Tests.Integration/Clients/Enterprise/EnterpriseOrganizationSearchIndexingClientTests.cs b/Octokit.Tests.Integration/Clients/Enterprise/EnterpriseOrganizationSearchIndexingClientTests.cs
new file mode 100644
index 0000000000..fc56492019
--- /dev/null
+++ b/Octokit.Tests.Integration/Clients/Enterprise/EnterpriseOrganizationSearchIndexingClientTests.cs
@@ -0,0 +1,106 @@
+using System;
+using System.Linq;
+using System.Threading.Tasks;
+using Octokit;
+using Octokit.Tests.Integration;
+using Octokit.Tests.Integration.Helpers;
+using Xunit;
+
+public class EnterpriseOrganizationSearchIndexingClientTests
+{
+ readonly IGitHubClient _github;
+
+ public EnterpriseOrganizationSearchIndexingClientTests()
+ {
+ _github = EnterpriseHelper.GetAuthenticatedClient();
+ }
+
+ [GitHubEnterpriseTest]
+ public async Task CanQueueOwner()
+ {
+ var response = await
+ _github.Enterprise.SearchIndexing.Queue(EnterpriseHelper.UserName);
+
+ Assert.NotNull(response);
+ Assert.NotNull(response.Message);
+ Assert.True(response.Message.All(m => m.Contains("was added to the indexing queue")));
+ }
+
+ [GitHubEnterpriseTest]
+ public async Task CanQueueRepository()
+ {
+ var newRepository = new NewRepository(Helper.MakeNameWithTimestamp("public-repo"));
+ using (var context = await _github.CreateRepositoryContext(newRepository))
+ {
+ var response = await
+ _github.Enterprise.SearchIndexing.Queue(EnterpriseHelper.UserName, context.RepositoryName);
+
+ Assert.NotNull(response);
+ Assert.NotNull(response.Message);
+ Assert.True(response.Message.All(m => m.Contains("was added to the indexing queue")));
+ }
+ }
+
+ [GitHubEnterpriseTest]
+ public async Task CanQueueAll()
+ {
+ var response = await
+ _github.Enterprise.SearchIndexing.QueueAll(EnterpriseHelper.UserName);
+
+ Assert.NotNull(response);
+ Assert.NotNull(response.Message);
+ Assert.True(response.Message.All(m => m.Contains("was added to the indexing queue")));
+ }
+
+ [GitHubEnterpriseTest]
+ public async Task CanQueueAllCodeOwner()
+ {
+ var response = await
+ _github.Enterprise.SearchIndexing.QueueAllCode(EnterpriseHelper.UserName);
+
+ Assert.NotNull(response);
+ Assert.NotNull(response.Message);
+ Assert.True(response.Message.All(m => m.Contains("was added to the indexing queue")));
+ }
+
+ [GitHubEnterpriseTest]
+ public async Task CanQueueAllCodeRepository()
+ {
+ var newRepository = new NewRepository(Helper.MakeNameWithTimestamp("public-repo"));
+ using (var context = await _github.CreateRepositoryContext(newRepository))
+ {
+ var response = await
+ _github.Enterprise.SearchIndexing.QueueAllCode(EnterpriseHelper.UserName, context.RepositoryName);
+
+ Assert.NotNull(response);
+ Assert.NotNull(response.Message);
+ Assert.True(response.Message.All(m => m.Contains("was added to the indexing queue")));
+ }
+ }
+
+ [GitHubEnterpriseTest]
+ public async Task CanQueueAllIssuesOwner()
+ {
+ var response = await
+ _github.Enterprise.SearchIndexing.QueueAllIssues(EnterpriseHelper.UserName);
+
+ Assert.NotNull(response);
+ Assert.NotNull(response.Message);
+ Assert.True(response.Message.All(m => m.Contains("were added to the indexing queue")));
+ }
+
+ [GitHubEnterpriseTest]
+ public async Task CanQueueAllIssuesRepository()
+ {
+ var newRepository = new NewRepository(Helper.MakeNameWithTimestamp("public-repo"));
+ using (var context = await _github.CreateRepositoryContext(newRepository))
+ {
+ var response = await
+ _github.Enterprise.SearchIndexing.QueueAllIssues(EnterpriseHelper.UserName, context.RepositoryName);
+
+ Assert.NotNull(response);
+ Assert.NotNull(response.Message);
+ Assert.True(response.Message.All(m => m.Contains("were added to the indexing queue")));
+ }
+ }
+}
diff --git a/Octokit.Tests.Integration/Octokit.Tests.Integration.csproj b/Octokit.Tests.Integration/Octokit.Tests.Integration.csproj
index 7781ebbcaf..0886652b5d 100644
--- a/Octokit.Tests.Integration/Octokit.Tests.Integration.csproj
+++ b/Octokit.Tests.Integration/Octokit.Tests.Integration.csproj
@@ -79,6 +79,7 @@
+
diff --git a/Octokit.Tests/Clients/Enterprise/EnterpriseSearchIndexingClientTests.cs b/Octokit.Tests/Clients/Enterprise/EnterpriseSearchIndexingClientTests.cs
new file mode 100644
index 0000000000..e347c005ed
--- /dev/null
+++ b/Octokit.Tests/Clients/Enterprise/EnterpriseSearchIndexingClientTests.cs
@@ -0,0 +1,198 @@
+using System;
+using System.Threading.Tasks;
+using NSubstitute;
+using Xunit;
+
+namespace Octokit.Tests.Clients
+{
+ public class EnterpriseSearchIndexingClientTests
+ {
+ public class TheQueueMethod
+ {
+ [Fact]
+ public void RequestsCorrectUrl()
+ {
+ var connection = Substitute.For();
+ var client = new EnterpriseSearchIndexingClient(connection);
+
+ string expectedUri = "staff/indexing_jobs";
+
+ client.Queue("org");
+ connection.Received().Post(Arg.Is(u => u.ToString() == expectedUri), Arg.Any