diff --git a/pom.xml b/pom.xml
index 281e2a5c62c3041beb0d424de8835a01ea589f13..ebfb320b87b9077792ae879607d27eee624fcd3c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -9,8 +9,8 @@
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<os-core-common.version>0.19.0-rc6</os-core-common.version>
 		<log4j2.version>2.17.1</log4j2.version>
-		<springfox.version>3.0.0</springfox.version>
 		<json-smart.version>2.4.7</json-smart.version>
+		<openapi.version>1.6.9</openapi.version>
 		<spring-boot-maven-plugin.version>2.7.6</spring-boot-maven-plugin.version>
 	</properties>
 
@@ -40,13 +40,13 @@
 	</dependencyManagement>
 
 	<dependencies>
-	<!--Swagger -->
-	<dependency>
-		<groupId>io.springfox</groupId>
-		<artifactId>springfox-boot-starter</artifactId>
-		<version>${springfox.version}</version>
-	</dependency>
-</dependencies>
+		<!--Swagger -->
+		<dependency>
+			<groupId>org.springdoc</groupId>
+			<artifactId>springdoc-openapi-ui</artifactId>
+			<version>${openapi.version}</version>
+		</dependency>
+	</dependencies>
 	
 	<groupId>org.opengroup.osdu</groupId>
 	<artifactId>os-schema</artifactId>
diff --git a/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBAuthorityStoreTest.java b/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBAuthorityStoreTest.java
index de421ece09ef7d4ec64c08b467dca4cd6ad6b0ef..391f7230151f903f1af42d42a0c200c4710a4daa 100644
--- a/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBAuthorityStoreTest.java
+++ b/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBAuthorityStoreTest.java
@@ -7,12 +7,15 @@ import org.opengroup.osdu.schema.exceptions.ApplicationException;
 import org.opengroup.osdu.schema.exceptions.BadRequestException;
 import org.opengroup.osdu.schema.exceptions.NotFoundException;
 import org.opengroup.osdu.schema.model.Authority;
+import org.opengroup.osdu.schema.provider.aws.SchemaAwsApplication;
 import org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.MongoDBAuthorityStore;
 import org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.models.AuthorityDto;
 import org.opengroup.osdu.schema.provider.aws.mongo.config.SchemaTestConfig;
 import org.opengroup.osdu.schema.provider.aws.mongo.util.ParentUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.autoconfigure.data.mongo.DataMongoTest;
+import org.springframework.mock.web.MockServletContext;
+import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
 import org.springframework.test.context.junit4.SpringRunner;
 import org.springframework.test.util.ReflectionTestUtils;
@@ -26,6 +29,7 @@ import static org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.
 @DataMongoTest
 @RunWith(SpringRunner.class)
 @SpringJUnitConfig(classes = {SchemaTestConfig.class})
+@ContextConfiguration(classes = {SchemaAwsApplication.class, MockServletContext.class})
 public class MongoDBAuthorityStoreTest extends ParentUtil {
 
     @Autowired
diff --git a/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBEntityTypeStoreTest.java b/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBEntityTypeStoreTest.java
index e1d9ada102eb2da35b4c18691f8af6cedb621266..e5a62e65d71ce08f82904f88e1077bc5bf151364 100644
--- a/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBEntityTypeStoreTest.java
+++ b/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBEntityTypeStoreTest.java
@@ -7,12 +7,15 @@ import org.opengroup.osdu.schema.exceptions.ApplicationException;
 import org.opengroup.osdu.schema.exceptions.BadRequestException;
 import org.opengroup.osdu.schema.exceptions.NotFoundException;
 import org.opengroup.osdu.schema.model.EntityType;
+import org.opengroup.osdu.schema.provider.aws.SchemaAwsApplication;
 import org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.MongoDBEntityTypeStore;
 import org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.models.EntityTypeDto;
 import org.opengroup.osdu.schema.provider.aws.mongo.config.SchemaTestConfig;
 import org.opengroup.osdu.schema.provider.aws.mongo.util.ParentUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.autoconfigure.data.mongo.DataMongoTest;
+import org.springframework.mock.web.MockServletContext;
+import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
 import org.springframework.test.context.junit4.SpringRunner;
 import org.springframework.test.util.ReflectionTestUtils;
@@ -25,6 +28,7 @@ import static org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.
 @DataMongoTest
 @RunWith(SpringRunner.class)
 @SpringJUnitConfig(classes = {SchemaTestConfig.class})
+@ContextConfiguration(classes = {SchemaAwsApplication.class, MockServletContext.class})
 public class MongoDBEntityTypeStoreTest extends ParentUtil {
 
     @Autowired
diff --git a/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBSchemaInfoStoreTest.java b/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBSchemaInfoStoreTest.java
index 5ece6472014c9b9c7e3a7c1e2b1158774f904a32..a1a22d4a037eb5d32ccdedc85077d106f43624cb 100644
--- a/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBSchemaInfoStoreTest.java
+++ b/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBSchemaInfoStoreTest.java
@@ -1,5 +1,14 @@
 package org.opengroup.osdu.schema.provider.aws.mongo.impl.schemainfostore;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.MongoDBSchemaInfoStore.SCHEMA_INFO_PREFIX;
+import static org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.MongoDBSchemaInfoStore.createSchemaId;
+
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Mockito;
@@ -12,6 +21,7 @@ import org.opengroup.osdu.schema.model.QueryParams;
 import org.opengroup.osdu.schema.model.SchemaIdentity;
 import org.opengroup.osdu.schema.model.SchemaInfo;
 import org.opengroup.osdu.schema.model.SchemaRequest;
+import org.opengroup.osdu.schema.provider.aws.SchemaAwsApplication;
 import org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.MongoDBSchemaInfoStore;
 import org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.models.SchemaInfoDto;
 import org.opengroup.osdu.schema.provider.aws.mongo.config.SchemaTestConfig;
@@ -19,6 +29,8 @@ import org.opengroup.osdu.schema.provider.aws.mongo.util.ParentUtil;
 import org.opengroup.osdu.schema.provider.interfaces.schemastore.ISchemaStore;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.autoconfigure.data.mongo.DataMongoTest;
+import org.springframework.mock.web.MockServletContext;
+import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
 import org.springframework.test.context.junit4.SpringRunner;
 import org.springframework.test.util.ReflectionTestUtils;
@@ -27,19 +39,10 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-import static org.mockito.ArgumentMatchers.anyString;
-import static org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.MongoDBSchemaInfoStore.SCHEMA_INFO_PREFIX;
-import static org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.MongoDBSchemaInfoStore.createSchemaId;
-
-
 @DataMongoTest
 @RunWith(SpringRunner.class)
 @SpringJUnitConfig(classes = {SchemaTestConfig.class})
+@ContextConfiguration(classes = {SchemaAwsApplication.class, MockServletContext.class})
 public class MongoDBSchemaInfoStoreTest extends ParentUtil {
 
     @Autowired
diff --git a/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBSourceStoreTest.java b/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBSourceStoreTest.java
index 76ed59195810c7451a179dca250ecfc885b0162a..6a2ca27f2549a74717202d8b3bf1e4e2d686d8f3 100644
--- a/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBSourceStoreTest.java
+++ b/provider/schema-aws/src/test/java/org/opengroup/osdu/schema/provider/aws/mongo/impl/schemainfostore/MongoDBSourceStoreTest.java
@@ -7,12 +7,15 @@ import org.opengroup.osdu.schema.exceptions.ApplicationException;
 import org.opengroup.osdu.schema.exceptions.BadRequestException;
 import org.opengroup.osdu.schema.exceptions.NotFoundException;
 import org.opengroup.osdu.schema.model.Source;
+import org.opengroup.osdu.schema.provider.aws.SchemaAwsApplication;
 import org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.MongoDBSourceStore;
 import org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.models.SourceDto;
 import org.opengroup.osdu.schema.provider.aws.mongo.config.SchemaTestConfig;
 import org.opengroup.osdu.schema.provider.aws.mongo.util.ParentUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.autoconfigure.data.mongo.DataMongoTest;
+import org.springframework.mock.web.MockServletContext;
+import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
 import org.springframework.test.context.junit4.SpringRunner;
 import org.springframework.test.util.ReflectionTestUtils;
@@ -26,6 +29,7 @@ import static org.opengroup.osdu.schema.provider.aws.impl.schemainfostore.mongo.
 @DataMongoTest
 @RunWith(SpringRunner.class)
 @SpringJUnitConfig(classes = {SchemaTestConfig.class})
+@ContextConfiguration(classes = {SchemaAwsApplication.class, MockServletContext.class})
 public class MongoDBSourceStoreTest extends ParentUtil {
 
     @Autowired
diff --git a/schema-core/pom.xml b/schema-core/pom.xml
index 1cbfcb15c1cb767fd28669451e5ad88c3a18346c..fe98fbdca19a99a42022a4ac7640d1303aa7bb4b 100644
--- a/schema-core/pom.xml
+++ b/schema-core/pom.xml
@@ -12,7 +12,6 @@
 	<packaging>jar</packaging>
 
 	<properties>
-		<springfox-version>2.7.0</springfox-version>
 		<jackson-databind.version>2.13.2.2</jackson-databind.version>
 		<jackson.version>2.13.2</jackson.version>
 	</properties>
@@ -217,21 +216,6 @@
 			<artifactId>javax.json</artifactId>
 			<version>1.1.2</version>
 		</dependency>
-		<dependency>
-			<groupId>io.springfox</groupId>
-			<artifactId>springfox-boot-starter</artifactId>
-			<version>${springfox.version}</version>
-			<exclusions>
-				<exclusion>
-					<groupId>org.springframework</groupId>
-					<artifactId>spring-beans</artifactId>
-				</exclusion>
-				<exclusion>
-					<groupId>org.springframework</groupId>
-					<artifactId>spring-core</artifactId>
-				</exclusion>
-			</exclusions>
-		</dependency>
 		<dependency>
 			<groupId>org.apache.tomcat.embed</groupId>
 			<artifactId>tomcat-embed-core</artifactId>
diff --git a/schema-core/src/main/java/org/opengroup/osdu/schema/swagger/SpringfoxSwaggerHostResolver.java b/schema-core/src/main/java/org/opengroup/osdu/schema/swagger/SpringfoxSwaggerHostResolver.java
deleted file mode 100644
index 97db6c6991e482e4fcfeef2447fba765fb3f8e3b..0000000000000000000000000000000000000000
--- a/schema-core/src/main/java/org/opengroup/osdu/schema/swagger/SpringfoxSwaggerHostResolver.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package org.opengroup.osdu.schema.swagger;
-import io.swagger.v3.oas.models.OpenAPI;
-import io.swagger.v3.oas.models.servers.Server;
-import org.springframework.core.Ordered;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-import springfox.documentation.oas.web.OpenApiTransformationContext;
-import springfox.documentation.oas.web.WebMvcOpenApiTransformationFilter;
-import springfox.documentation.spi.DocumentationType;
-
-import javax.servlet.http.HttpServletRequest;
-
-@Component
-@Order(Ordered.LOWEST_PRECEDENCE)
-public class SpringfoxSwaggerHostResolver implements WebMvcOpenApiTransformationFilter {
-
-    @Override
-    public boolean supports(DocumentationType delimiter) {
-        return delimiter == DocumentationType.OAS_30;
-    }
-
-    @Override
-    public OpenAPI transform(OpenApiTransformationContext<HttpServletRequest> context) {
-        OpenAPI swagger = context.getSpecification();
-
-        Server server = swagger.getServers().get(0);
-        if (server.getUrl().contains(":443")) {
-            // via the gateway
-            server.setUrl(server.getUrl().replace(":443",""));
-        }
-
-        return swagger;
-    }
-}
diff --git a/schema-core/src/main/java/org/opengroup/osdu/schema/swagger/SwaggerDocumentationConfig.java b/schema-core/src/main/java/org/opengroup/osdu/schema/swagger/SwaggerDocumentationConfig.java
index b6d846b664147ea3ddb6e24b70d80612d90a514d..aef1426fb359e9eb5d5e1b8354c0f6990d290dbe 100644
--- a/schema-core/src/main/java/org/opengroup/osdu/schema/swagger/SwaggerDocumentationConfig.java
+++ b/schema-core/src/main/java/org/opengroup/osdu/schema/swagger/SwaggerDocumentationConfig.java
@@ -14,58 +14,39 @@ limitations under the License.*/
 
 package org.opengroup.osdu.schema.swagger;
 
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.opengroup.osdu.core.common.model.http.DpsHeaders;
+import io.swagger.v3.oas.models.Components;
+import io.swagger.v3.oas.models.OpenAPI;
+import io.swagger.v3.oas.models.info.Info;
+import io.swagger.v3.oas.models.security.SecurityRequirement;
+import io.swagger.v3.oas.models.security.SecurityScheme;
+import io.swagger.v3.oas.models.servers.Server;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
-import springfox.documentation.builders.PathSelectors;
-import springfox.documentation.builders.RequestHandlerSelectors;
-import springfox.documentation.builders.RequestParameterBuilder;
-import springfox.documentation.oas.annotations.EnableOpenApi;
-import springfox.documentation.service.ApiKey;
-import springfox.documentation.service.AuthorizationScope;
-import springfox.documentation.service.ParameterType;
-import springfox.documentation.service.RequestParameter;
-import springfox.documentation.service.SecurityReference;
-import springfox.documentation.spi.DocumentationType;
-import springfox.documentation.spi.service.contexts.SecurityContext;
-import springfox.documentation.spring.web.plugins.Docket;
+import javax.servlet.ServletContext;
+import java.util.Collections;
 
 @Configuration
-@EnableOpenApi
 public class SwaggerDocumentationConfig {
-    public static final String AUTHORIZATION_HEADER = "Authorization";
-    public static final String DEFAULT_INCLUDE_PATTERN = "/.*";
 
     @Bean
-    public Docket api() {
-    	RequestParameterBuilder builder = new RequestParameterBuilder();
-    	List<RequestParameter> parameters = new ArrayList<>();
-        builder.name(DpsHeaders.DATA_PARTITION_ID).description("tenant").in(ParameterType.HEADER).required(true).build();
-        parameters.add(builder.build());
-        return new Docket(DocumentationType.OAS_30)
-            	.globalRequestParameters(parameters).select()
-                .apis(RequestHandlerSelectors.basePackage("org.opengroup.osdu.schema.api")).build()
-                .securityContexts(Collections.singletonList(securityContext()))
-                .securitySchemes(Collections.singletonList(apiKey()));
-    }
-
-    private ApiKey apiKey() {
-    	return new ApiKey(AUTHORIZATION_HEADER, AUTHORIZATION_HEADER, "header");
-    }
-
-    private SecurityContext securityContext() {
-        return SecurityContext.builder().securityReferences(defaultAuth())
-        		.operationSelector(o -> PathSelectors.regex(DEFAULT_INCLUDE_PATTERN).test(o.requestMappingPattern())).build();
-    }
-
-    List<SecurityReference> defaultAuth() {
-        AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything");
-        AuthorizationScope[] authorizationScopes = new AuthorizationScope[] { authorizationScope };
-        return Collections.singletonList(new SecurityReference(AUTHORIZATION_HEADER, authorizationScopes));
+    public OpenAPI openApi(ServletContext servletContext) {
+        Server server = new Server().url(servletContext.getContextPath());
+        return new OpenAPI()
+            .servers(Collections.singletonList(server))
+            .info(new Info()
+                      .title("Schema Service")
+                      .version("1.0"))
+            .components(new Components()
+                            .addSecuritySchemes("Authorization",
+                                                new SecurityScheme()
+                                                    .type(SecurityScheme.Type.HTTP)
+                                                    .scheme("bearer")
+                                                    .bearerFormat("Authorization")
+                                                    .in(SecurityScheme.In.HEADER)
+                                                    .name("Authorization")))
+            .addSecurityItem(
+                new SecurityRequirement()
+                    .addList("Authorization"));
     }
 }