diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/OpenMetadataApplication.java b/openmetadata-service/src/main/java/org/openmetadata/service/OpenMetadataApplication.java index a8ceb344dec..5f6076ab8b5 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/OpenMetadataApplication.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/OpenMetadataApplication.java @@ -125,6 +125,9 @@ public class OpenMetadataApplication extends Application jsonDataFiles = EntityUtil.getJsonDataResources(".*json/data/settings/settingsData.json$"); if (jsonDataFiles.size() != 1) { LOG.warn("Invalid number of jsonDataFiles {}. Only one expected.", jsonDataFiles.size()); @@ -184,6 +187,30 @@ public class SystemResource { return systemRepository.patchSetting(settingName, patch); } + @PUT + @Path("/restore/default/email") + @Operation( + operationId = "restoreEmailSettingToDefault", + summary = "Restore Email to Default setting", + description = "Restore Email to Default settings", + responses = { + @ApiResponse( + responseCode = "200", + description = "Settings", + content = @Content(mediaType = "application/json", schema = @Schema(implementation = Settings.class))) + }) + public Response restoreDefaultEmailSetting( + @Context UriInfo uriInfo, + @Context SecurityContext securityContext, + @Parameter(description = "Name of the setting", schema = @Schema(type = "string")) @PathParam("settingName") + String name) { + authorizer.authorizeAdmin(securityContext); + return systemRepository.createOrUpdate( + new Settings() + .withConfigType(SettingsType.EMAIL_CONFIGURATION) + .withConfigValue(applicationConfig.getSmtpSettings())); + } + @GET @Path("/entities/count") @Operation(