diff --git a/app/controllers/BaseController.scala b/app/controllers/BaseController.scala index fa2be5e2..98a440a7 100644 --- a/app/controllers/BaseController.scala +++ b/app/controllers/BaseController.scala @@ -77,9 +77,16 @@ abstract class ApiKeyBaseController( authenticator ) andThen new ErrorHandlerActionFunction[ConsumerRequest]() + private def disabledActionFilter = new ActionFilter[Request] { + override protected def executionContext = ec + override protected def filter[A](request: Request[A]): Future[Option[Result]] = + Future.successful(Some(Gone)) + } + trait ActDslApiKey { val securedbyApiKey = securedByApiKeyAction - + // we disable some endpoints that seem completely unused. + val disabled = Action.andThen(disabledActionFilter) } val Act = new ActDslApiKey {} } diff --git a/app/controllers/ReportToExternalController.scala b/app/controllers/ReportToExternalController.scala index 2b3bd71a..17b8748e 100644 --- a/app/controllers/ReportToExternalController.scala +++ b/app/controllers/ReportToExternalController.scala @@ -82,7 +82,7 @@ class ReportToExternalController( ) } - def searchReportsToExternalV2() = Act.securedbyApiKey.async { implicit request => + def searchReportsToExternalV2() = Act.disabled.async { implicit request => val qs = new QueryStringMapper(request.queryString) val filter = ReportFilter( siretSirenList = qs.string("siret").map(List(_)).getOrElse(List()), @@ -113,21 +113,19 @@ class ReportToExternalController( ) } - /** @deprecated - * Keep it for retro-compatibility purpose but searchReportsToExternal() is the good one. - */ - def searchReportsToExternalBySiret(siret: String) = Act.securedbyApiKey.async { implicit request => - val qs = new QueryStringMapper(request.queryString) - val filter = ReportFilter( - siretSirenList = List(siret), - start = qs.timeWithLocalDateRetrocompatStartOfDay("start"), - end = qs.timeWithLocalDateRetrocompatEndOfDay("end") - ) - for { - reportsWithMetadata <- reportRepository.getReports(None, filter, Some(0), Some(1000000), None, None) - reports = reportsWithMetadata.entities.map(_.report) - reportsExternal = reports.map(ReportToExternal.fromReport) - } yield Ok(Json.toJson(reportsExternal)) - } + def searchReportsToExternalBySiret(siret: String) = + Act.disabled.async { implicit request => + val qs = new QueryStringMapper(request.queryString) + val filter = ReportFilter( + siretSirenList = List(siret), + start = qs.timeWithLocalDateRetrocompatStartOfDay("start"), + end = qs.timeWithLocalDateRetrocompatEndOfDay("end") + ) + for { + reportsWithMetadata <- reportRepository.getReports(None, filter, Some(0), Some(1000000), None, None) + reports = reportsWithMetadata.entities.map(_.report) + reportsExternal = reports.map(ReportToExternal.fromReport) + } yield Ok(Json.toJson(reportsExternal)) + } } diff --git a/conf/routes b/conf/routes index a3001f02..15d3ac9e 100644 --- a/conf/routes +++ b/conf/routes @@ -331,16 +331,10 @@ GET /api/mobileapp/requirements controller ########## FOR EXTERNAL SIs ############ ######################################## -# celui-ci est marqué deprecated dans le code, qui dit d'utiliser /api/ext/reports (lui même remplacé par V2 ?) -# pas utilisé dans les 30 derniers jours d'après New Relic -GET /api/ext/reports/siret/:siret controllers.ReportToExternalController.searchReportsToExternalBySiret(siret: String) # très utilisé. Principalement pour filtrer sur le tag ReponseConso, donc ça doit être RéponseConso qui l'utilise ? GET /api/ext/reports controllers.ReportToExternalController.searchReportsToExternal() -# pas utilisé dans les 30 derniers jours d'après New Relic -# curieux, alors que c'est censé être une V2 par rapport au précédent ? -GET /api/ext/v2/reports controllers.ReportToExternalController.searchReportsToExternalV2() # utilisé une fois par jour vers minuit GET /api/ext/reports/extract controllers.DataEconomieController.reportDataEcomonie() @@ -348,6 +342,13 @@ GET /api/ext/reports/extract controllers.DataEconomieController.reportDataE # très utilisé GET /api/ext/reports/:uuid controllers.ReportToExternalController.getReportToExternal(uuid) + +# Ces deux endpoints semblaient inutilisés +# Nous les avons maintenant (2025-02) désactivés dans le code (ils renvoient un code d'erreur) +# A terme, si personne ne se plaint on pourra les supprimer entièrement +GET /api/ext/v2/reports controllers.ReportToExternalController.searchReportsToExternalV2() +GET /api/ext/reports/siret/:siret controllers.ReportToExternalController.searchReportsToExternalBySiret(siret: String) + ############################################################## ######## AUTRES ENDPOINTS SANS FRONTEND CORRESPONDANT ######## ##############################################################