diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/swagger/SpringfoxSwaggerHostResolver.java b/notification-core/src/main/java/org/opengroup/osdu/notification/swagger/SpringfoxSwaggerHostResolver.java
deleted file mode 100644
index 28a63a922ce37928977d02b8c26e8324a0fe08e7..0000000000000000000000000000000000000000
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/swagger/SpringfoxSwaggerHostResolver.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.opengroup.osdu.notification.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;
-    }
-}
\ No newline at end of file
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/swagger/SwaggerConfiguration.java b/notification-core/src/main/java/org/opengroup/osdu/notification/swagger/SwaggerConfiguration.java
new file mode 100644
index 0000000000000000000000000000000000000000..fce04e61ec9901c8937e38f98b6d02acea478e7d
--- /dev/null
+++ b/notification-core/src/main/java/org/opengroup/osdu/notification/swagger/SwaggerConfiguration.java
@@ -0,0 +1,42 @@
+package org.opengroup.osdu.notification.swagger;
+
+import java.util.Collections;
+
+import javax.servlet.ServletContext;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Profile;
+
+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;
+
+@Configuration
+@Profile("!noswagger")
+public class SwaggerConfiguration {
+
+    @Bean
+    public OpenAPI openApi(ServletContext servletContext) {
+        Server server = new Server().url(servletContext.getContextPath());
+        return new OpenAPI()
+            .servers(Collections.singletonList(server))
+            .info(new Info()
+                      .title("Notification 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"));
+    }
+}
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/swagger/SwaggerDocumentationConfig.java b/notification-core/src/main/java/org/opengroup/osdu/notification/swagger/SwaggerDocumentationConfig.java
deleted file mode 100644
index ef0645c9663802605c4d0203c9f30233b46a8f56..0000000000000000000000000000000000000000
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/swagger/SwaggerDocumentationConfig.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package org.opengroup.osdu.notification.swagger;
-
-import org.opengroup.osdu.core.common.model.http.DpsHeaders;
-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 java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-@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.notification.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));
-    }
-}
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 7f60ee97d07aeaa4cd1424aaec580431710392b3..29ee7e79c9727ea01a67e4b0058ed9f97881f1fa 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,8 +27,8 @@
 		<maven.compiler.source>${java.version}</maven.compiler.source>
 		<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>
 	</properties>
 
 	<licenses>
@@ -109,19 +109,9 @@
 		</dependency>
 	<!-- swagger dependency -->
 	<dependency>
-		<groupId>io.springfox</groupId>
-		<artifactId>springfox-boot-starter</artifactId>
-		<version>${springfox.version}</version>
-		<exclusions>
-			<exclusion>
-				<groupId>org.springframework.plugin</groupId>
-				<artifactId>spring-plugin-core</artifactId>
-			</exclusion>
-			<exclusion>
-				<groupId>org.springframework.plugin</groupId>
-				<artifactId>spring-plugin-metadata</artifactId>
-			</exclusion>
-		</exclusions>
+		<groupId>org.springdoc</groupId>
+		<artifactId>springdoc-openapi-ui</artifactId>
+		<version>${openapi.version}</version>
 	</dependency>
 	<dependency>
 		<groupId>org.springframework.plugin</groupId>
diff --git a/provider/notification-aws/src/main/resources/application.properties b/provider/notification-aws/src/main/resources/application.properties
index 60f09776db15a1c9281bfd1d7ab2995d94e50b26..476714e0d2e4c37fee01a61125079f30fdcf454b 100644
--- a/provider/notification-aws/src/main/resources/application.properties
+++ b/provider/notification-aws/src/main/resources/application.properties
@@ -49,6 +49,4 @@ server.ssl.key-alias=${SSL_KEY_ALIAS:osduonaws}
 server.ssl.key-password=${SSL_KEY_PASSWORD:}
 server.ssl.key-store-password=${SSL_KEY_STORE_PASSWORD:}
 
-spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration
-
-spring.mvc.pathmatch.matching-strategy=ant-path-matcher
\ No newline at end of file
+spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration
\ No newline at end of file
diff --git a/provider/notification-azure/src/main/resources/application.properties b/provider/notification-azure/src/main/resources/application.properties
index 6e77d23fde6050097442fe3425d55ef85995abf2..3b9369bf9080e3f1d95ac20d696a460ccc1708f9 100644
--- a/provider/notification-azure/src/main/resources/application.properties
+++ b/provider/notification-azure/src/main/resources/application.properties
@@ -89,6 +89,4 @@ management.server.port=8081
 management.health.azure-key-vault.enabled=false
 
 management.endpoints.web.exposure.include=${web_exposure_endpoints:health,info}
-management.metrics.enable.all=${enable_metrics:false}
-
-spring.mvc.pathmatch.matching-strategy = ANT_PATH_MATCHER
\ No newline at end of file
+management.metrics.enable.all=${enable_metrics:false}
\ No newline at end of file