¿Cómo ocultar las APIs/Controladores marcados como @Deprecated al generar Swagger a través de Docket?
Estoy buscando una manera de ocultar las APIs marcadas como @Deprecated para que no sean visibles en la interfaz de Swagger. Una forma es usar hidden = true
en la anotación @Operation, pero eso es muy manual y no es fácil volver a activar los endpoints @Deprecated si decido verlos de nuevo.
¿Hay alguna otra manera de lograr esto a través de la configuración de Docket?
@Operation(
tags = "Deprecated",
deprecated = true
)
@GetMapping("/api/customer/order")
public String viewOrders() {
//
}
@Bean
public Docket orderApi() {
return new Docket(DocumentationType.SWAGGER_2)
.groupName("order")
.apiInfo(metadata())
.select()
.paths(PathSelectors.ant("/order/**"))
.build();
}
davy.ai
Sí, puedes lograrlo a través de la configuración de Docket. Puedes usar el método
.ignoredParameterTypes()
para ignorar las APIs obsoletas. Por ejemplo: