diff --git a/build.sbt b/build.sbt
index 74cfc91..59d1b6a 100644
--- a/build.sbt
+++ b/build.sbt
@@ -1,6 +1,6 @@
 enablePlugins(GitVersioning)
 
-val gerritApiVersion = "2.16.8"
+val gerritApiVersion = "3.0.0"
 
 val pluginName = "analytics"
 
@@ -12,7 +12,7 @@
   .settings(
     name := pluginName,
     resolvers += Resolver.mavenLocal,
-    version := "2.16-SNAPSHOT",
+    version := gerritApiVersion,
 
     scalaVersion := "2.11.8",
 
diff --git a/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/DateConversions.scala b/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/DateConversions.scala
index 3da8249..874dc0d 100644
--- a/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/DateConversions.scala
+++ b/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/DateConversions.scala
@@ -14,7 +14,7 @@
 
 package com.googlesource.gerrit.plugins.analytics.common
 
-import com.google.gwtjsonrpc.common.JavaSqlTimestampHelper
+import com.google.gerrit.json.JavaSqlTimestampHelper
 
 object DateConversions {
 
diff --git a/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/GsonFormatter.scala b/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/GsonFormatter.scala
index cca743d..d36cfef 100644
--- a/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/GsonFormatter.scala
+++ b/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/GsonFormatter.scala
@@ -16,7 +16,7 @@
 
 import java.io.PrintWriter
 
-import com.google.gerrit.server.OutputFormat
+import com.google.gerrit.json.OutputFormat
 import com.google.gson.{Gson, GsonBuilder, JsonSerializer}
 import com.google.inject.Singleton
 import java.lang.reflect.Type
@@ -45,4 +45,4 @@
     }
   }
 
-}
\ No newline at end of file
+}
diff --git a/src/test/scala/com/googlesource/gerrit/plugins/analytics/test/GerritTestDaemon.scala b/src/test/scala/com/googlesource/gerrit/plugins/analytics/test/GerritTestDaemon.scala
index 59a6d90..0024e1e 100644
--- a/src/test/scala/com/googlesource/gerrit/plugins/analytics/test/GerritTestDaemon.scala
+++ b/src/test/scala/com/googlesource/gerrit/plugins/analytics/test/GerritTestDaemon.scala
@@ -19,6 +19,7 @@
 
 import com.google.gerrit.acceptance.{AbstractDaemonTest, GitUtil}
 import com.google.gerrit.extensions.annotations.PluginName
+import com.google.gerrit.extensions.client.SubmitType
 import com.google.gerrit.reviewdb.client.Project
 import com.google.inject.{AbstractModule, Module}
 import com.googlesource.gerrit.plugins.analytics.AnalyticsConfig
@@ -137,16 +138,17 @@
 
 object GerritTestDaemon extends AbstractDaemonTest {
   baseConfig = new Config()
+  AbstractDaemonTest.temporaryFolder.create()
 
   def newProject(nameSuffix: String) = {
     resourcePrefix = ""
-    super.createProject(nameSuffix, allProjects, false)
+    super.createProjectOverAPI(nameSuffix, allProjects, false, SubmitType.MERGE_IF_NECESSARY)
   }
 
   def getRepository(projectName: Project.NameKey): FileRepository =
     repoManager.openRepository(projectName).asInstanceOf[FileRepository]
 
-  def adminAuthor = admin.getIdent
+  def adminAuthor = admin.newIdent
 
   def getInstance[T](clazz: Class[T]): T =
     server.getTestInjector.getInstance(clazz)
