diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 14caac84..8be22ddd 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -26,6 +26,7 @@ jobs:
           TEST_TCP_PORT: 10667
           TEST_UDP_PORT: 10668
           SPLUNK_HOME: "/opt/splunk"
+          SPLUNK_APPS_URL: https://github.com/splunk/sdk-app-collection/releases/download/v1.1.0/sdkappcollection.tgz
         ports:
           - 8000:8000
           - 8089:8089
@@ -58,7 +59,7 @@ jobs:
           echo version=${{ matrix.splunk }} >> .splunkrc
 
       - name: Test using maven
-        run: make test
+        run: mvn test -fae
         env:
           SPLUNK_HOME: "/opt/splunk"
           TEST_TCP_PORT: 10667
diff --git a/.idea/misc.xml b/.idea/misc.xml
deleted file mode 100644
index 7ffb7835..00000000
--- a/.idea/misc.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="EntryPointsManager">
-    <entry_points version="2.0" />
-  </component>
-  <component name="JavadocGenerationManager">
-    <option name="OUTPUT_DIRECTORY" value="$PROJECT_DIR$/out/docs" />
-    <option name="OPTION_SCOPE" value="protected" />
-    <option name="OPTION_HIERARCHY" value="true" />
-    <option name="OPTION_NAVIGATOR" value="true" />
-    <option name="OPTION_INDEX" value="true" />
-    <option name="OPTION_SEPARATE_INDEX" value="true" />
-    <option name="OPTION_DOCUMENT_TAG_USE" value="false" />
-    <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
-    <option name="OPTION_DOCUMENT_TAG_VERSION" value="false" />
-    <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" />
-    <option name="OPTION_DEPRECATED_LIST" value="true" />
-    <option name="OTHER_OPTIONS" />
-    <option name="HEAP_SIZE" />
-    <option name="LOCALE" />
-    <option name="OPEN_IN_BROWSER" value="true" />
-  </component>
-  <component name="ProjectResources">
-    <default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype>
-  </component>
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_5" assert-keyword="true" jdk-15="true" project-jdk-name="1.6" project-jdk-type="JavaSDK">
-    <output url="file://$PROJECT_DIR$/out" />
-  </component>
-</project>
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index bfee5176..1e3f76b9 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -8,7 +8,7 @@ services:
             - SPLUNK_START_ARGS=--accept-license
             - SPLUNK_HEC_TOKEN=11111111-1111-1111-1111-1111111111113
             - SPLUNK_PASSWORD=changed!
-            - SPLUNK_APPS_URL=https://github.com/splunk/sdk-app-collection/releases/download/v1.0.0/sdk-app-collection.tgz
+            - SPLUNK_APPS_URL=https://github.com/splunk/sdk-app-collection/releases/download/v1.1.0/sdkappcollection.tgz
         ports:
             - 8000:8000
             - 8088:8088
diff --git a/splunk/src/test/java/com/splunk/ApplicationTest.java b/splunk/src/test/java/com/splunk/ApplicationTest.java
index 7637c0b2..df8afe2a 100644
--- a/splunk/src/test/java/com/splunk/ApplicationTest.java
+++ b/splunk/src/test/java/com/splunk/ApplicationTest.java
@@ -76,7 +76,6 @@ public void testForEmptySetup() {
         Assert.assertTrue(setupXml.contains("stub"));
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testForSetupPresent() throws Exception {
         if (!hasTestData()) {
diff --git a/splunk/src/test/java/com/splunk/IndexTest.java b/splunk/src/test/java/com/splunk/IndexTest.java
index 01baac66..a98dd56a 100644
--- a/splunk/src/test/java/com/splunk/IndexTest.java
+++ b/splunk/src/test/java/com/splunk/IndexTest.java
@@ -688,7 +688,6 @@ public boolean predicate() {
         });
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testUploadArgs() throws Exception {
         if (!hasTestData()) {
@@ -732,7 +731,6 @@ public boolean predicate() {
         });
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testUploadArgsFailure() throws Exception{
         if (!hasTestData()) {
@@ -764,7 +762,6 @@ public void testUploadArgsFailure() throws Exception{
 
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testUpload() throws Exception {
         if (!hasTestData()) {
diff --git a/splunk/src/test/java/com/splunk/InputCrudTest.java b/splunk/src/test/java/com/splunk/InputCrudTest.java
index 656e2fcb..d0d3a1f7 100644
--- a/splunk/src/test/java/com/splunk/InputCrudTest.java
+++ b/splunk/src/test/java/com/splunk/InputCrudTest.java
@@ -248,7 +248,6 @@ public boolean predicate() {
         });
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testScriptInputCrud() {
         if (!hasTestData()) {
@@ -256,16 +255,16 @@ public void testScriptInputCrud() {
             return;
         }
 
-        installApplicationFromTestData("modular-inputs");
+        installApplicationFromTestData("modular_inputs");
 
         // Determine what script to use for the input
         String filename;
         if (service.getInfo().getOsName().equals("Windows")) {
             // Windows
-            filename = "etc\\apps\\modular-inputs\\bin\\echo.bat";
+            filename = "etc\\apps\\modular_inputs\\bin\\echo.bat";
         } else {
             // Linux or Mac OS X
-            filename = "etc/apps/modular-inputs/bin/echo.sh";
+            filename = "etc/apps/modular_inputs/bin/echo.sh";
         }
 
         // Create
diff --git a/splunk/src/test/java/com/splunk/ModularInputKindsTest.java b/splunk/src/test/java/com/splunk/ModularInputKindsTest.java
index 8b07de0a..8c7d7fff 100644
--- a/splunk/src/test/java/com/splunk/ModularInputKindsTest.java
+++ b/splunk/src/test/java/com/splunk/ModularInputKindsTest.java
@@ -29,7 +29,7 @@ public void checkModularInputKind(ModularInputKind m) {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
 
@@ -43,28 +43,25 @@ public void checkModularInputKind(ModularInputKind m) {
 
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testListInputKinds() {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
-
         for (ModularInputKind kind : inputKinds.values()) {
             checkModularInputKind(kind);
         }
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testInputByName() {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
         ModularInputKind m;
@@ -74,13 +71,12 @@ public void testInputByName() {
         checkModularInputKind(m);
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testNonexistantArg() {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
         ModularInputKind test1 = inputKinds.get("test1");
@@ -88,13 +84,12 @@ public void testNonexistantArg() {
         Assert.assertNull(test1.getArgument("nonexistant_argument"));
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testInputKindDescriptionAndTitle() {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
         ModularInputKind test1 = inputKinds.get("test1");
@@ -107,13 +102,12 @@ public void testInputKindDescriptionAndTitle() {
         Assert.assertEquals("test2", test2.getTitle());
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testArgDescription() {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
 
@@ -135,13 +129,12 @@ public void testArgDescription() {
         }
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testArgDataType() {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
 
@@ -162,13 +155,12 @@ public void testArgDataType() {
         }
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testRequiredOnCreate() {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
 
@@ -187,13 +179,12 @@ public void testRequiredOnCreate() {
         }
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testRequiredOnEdit() {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
 
@@ -212,13 +203,12 @@ public void testRequiredOnEdit() {
         }
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testGetArguments() {
         if (service.versionIsEarlierThan("5.0") || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             inputKinds = service.getModularInputKinds();
         }
 
diff --git a/splunk/src/test/java/com/splunk/ModularInputTest.java b/splunk/src/test/java/com/splunk/ModularInputTest.java
index 17dd8b4d..7e3ca981 100644
--- a/splunk/src/test/java/com/splunk/ModularInputTest.java
+++ b/splunk/src/test/java/com/splunk/ModularInputTest.java
@@ -21,13 +21,12 @@
 import org.junit.Test;
 
 public class ModularInputTest extends InputTest {
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testModularInputKinds() {
         if (service.versionCompare("5.0") < 0 || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             // Will not pick up the new inputs unless a restart is done.
             // Nevertheless Splunk does not request a restart after app installation.
             uncheckedSplunkRestart();
@@ -43,13 +42,12 @@ public void testModularInputKinds() {
         Assert.assertTrue(hasTest2);
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testListModularInputs() {
         if (service.versionCompare("5.0") < 0 || !hasTestData()) {
             return;
         } else {
-            installApplicationFromTestData("modular-inputs");
+            installApplicationFromTestData("modular_inputs");
             // Will not pick up the new inputs unless a restart is done.
             // Nevertheless Splunk does not request a restart after app installation.
             uncheckedSplunkRestart();
diff --git a/splunk/src/test/java/com/splunk/SDKTestCase.java b/splunk/src/test/java/com/splunk/SDKTestCase.java
index 100899af..2f15dc80 100644
--- a/splunk/src/test/java/com/splunk/SDKTestCase.java
+++ b/splunk/src/test/java/com/splunk/SDKTestCase.java
@@ -213,13 +213,13 @@ public static boolean assertEventuallyTrue(EventuallyTrueBehavior behavior) {
     // === Test Data Installation ===
 
     public boolean hasTestData() {
-        String collectionName = "sdk-app-collection";
-        return service.getApplications().containsKey("sdk-app-collection");
+        String collectionName = "sdkappcollection";
+        return service.getApplications().containsKey("sdkappcollection");
     }
 
     public void installApplicationFromTestData(String applicationName) {
-        String collectionName = "sdk-app-collection";
-        if (!service.getApplications().containsKey("sdk-app-collection")) {
+        String collectionName = "sdkappcollection";
+        if (!service.getApplications().containsKey("sdkappcollection")) {
             throw new TestDataNotInstalledException();
         }
 
@@ -248,10 +248,13 @@ public void installApplicationFromTestData(String applicationName) {
         String appPath = Util.join(separator, pathComponents);
 
         Args args = new Args();
+
         args.put("name", appPath);
-        args.put("update", "1");
-        service.post("apps/appinstall", args);
-        
+        args.put("filename", true);
+        args.put("update", true);
+
+        service.post("apps/local", args);
+
         installedApps.add(applicationName);
     }
     
diff --git a/splunk/src/test/java/com/splunk/SearchJobTest.java b/splunk/src/test/java/com/splunk/SearchJobTest.java
index 6afc6c70..5993417d 100644
--- a/splunk/src/test/java/com/splunk/SearchJobTest.java
+++ b/splunk/src/test/java/com/splunk/SearchJobTest.java
@@ -656,7 +656,6 @@ public void testAttributes() {
         job.cancel();
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testEnablePreview() throws InterruptedException {
         if (!hasTestData()) {
@@ -709,7 +708,6 @@ public boolean predicate() {
         waitForSleepingJobToDie(job);
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testDisablePreview() throws InterruptedException {
         if (!hasTestData()) {
@@ -782,7 +780,6 @@ public boolean predicate() {
         } catch (InterruptedException e) {}
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testSetPriority() throws InterruptedException {
         if (!hasTestData()) {
@@ -833,7 +830,6 @@ public boolean predicate() {
         job.cancel();
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testPause() throws InterruptedException {
         if (!hasTestData()) {
@@ -867,7 +863,6 @@ public boolean predicate() {
         job.cancel();
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testUnpause() throws InterruptedException {
         if (!hasTestData()) {
@@ -901,7 +896,6 @@ public boolean predicate() {
         job.cancel();
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testFinalize() throws InterruptedException {
         if (!hasTestData()) {
@@ -932,7 +926,6 @@ public boolean predicate() {
         job.cancel();
     }
 
-    @Ignore("apps/appinstall endpoint is removed in version 8.1.0")
     @Test
     public void testDone() throws InterruptedException {
         if (!hasTestData()) {
