From b42f8e3d4d283b24e0b6ba3ddbddbde3f55e9885 Mon Sep 17 00:00:00 2001
From: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Date: Thu, 2 Nov 2023 14:01:33 +0000
Subject: [PATCH] Bug 35219: Fix ERM usage endpoints to show in docs

This patch fixes the tags and also adds the tags to the swagger.yaml file to allow the endpoints to be documented correctly.

One endpoint has also been deleted as it is no longer required.

Test plan:
Check the attached files to see that all tags are now prefixed with 'erm_' and that the swagger file now includes an entry for all of these files
---
 api/v1/swagger/paths/erm_counter_files.yaml   |  6 +-
 api/v1/swagger/paths/erm_counter_logs.yaml    |  2 +-
 api/v1/swagger/paths/erm_custom_reports.yaml  |  8 +--
 .../paths/erm_default_usage_reports.yaml      |  6 +-
 .../paths/erm_usage_data_providers.yaml       | 70 +++----------------
 api/v1/swagger/paths/erm_usage_databases.yaml |  2 +-
 api/v1/swagger/paths/erm_usage_items.yaml     |  2 +-
 api/v1/swagger/paths/erm_usage_platforms.yaml |  2 +-
 api/v1/swagger/paths/erm_usage_titles.yaml    |  2 +-
 api/v1/swagger/swagger.yaml                   | 33 +++++++++
 10 files changed, 56 insertions(+), 77 deletions(-)

diff --git a/api/v1/swagger/paths/erm_counter_files.yaml b/api/v1/swagger/paths/erm_counter_files.yaml
index 17efecb84f..7e244e948f 100644
--- a/api/v1/swagger/paths/erm_counter_files.yaml
+++ b/api/v1/swagger/paths/erm_counter_files.yaml
@@ -4,7 +4,7 @@
     x-mojo-to: ERM::EUsage::CounterFiles#get
     operationId: downloadCounterFile
     tags:
-      - counter_file
+      - erm_counter_files
     summary: Download Counter file
     produces:
       - application/octet-stream
@@ -49,7 +49,7 @@
     x-mojo-to: ERM::EUsage::CounterFiles#list
     operationId: listErmCounterFiles
     tags:
-      - counter_file
+      - erm_counter_files
     summary: List counter_files
     produces:
       - application/json
@@ -133,7 +133,7 @@
     x-mojo-to: ERM::EUsage::CounterFiles#delete
     operationId: deleteERMCounterFiles
     tags:
-      - counter_file
+      - erm_counter_files
     summary: Delete counter_file
     produces:
       - application/json
diff --git a/api/v1/swagger/paths/erm_counter_logs.yaml b/api/v1/swagger/paths/erm_counter_logs.yaml
index 8ef053165d..01c18ace3f 100644
--- a/api/v1/swagger/paths/erm_counter_logs.yaml
+++ b/api/v1/swagger/paths/erm_counter_logs.yaml
@@ -3,7 +3,7 @@
     x-mojo-to: ERM::EUsage::CounterLogs#list
     operationId: listErmCounterLogs
     tags:
-      - counter_log
+      - erm_counter_logs
     summary: List counter_logs
     produces:
       - application/json
diff --git a/api/v1/swagger/paths/erm_custom_reports.yaml b/api/v1/swagger/paths/erm_custom_reports.yaml
index 0d29c025ca..d0bd51949e 100644
--- a/api/v1/swagger/paths/erm_custom_reports.yaml
+++ b/api/v1/swagger/paths/erm_custom_reports.yaml
@@ -3,7 +3,7 @@
     x-mojo-to: ERM::EUsage::CustomReports#monthly_report
     operationId: getERMUsageMonthlyReport
     tags:
-      - usage_report
+      - erm_usage_reports
     summary: get usage monthly report
     produces:
       - application/json
@@ -62,7 +62,7 @@
     x-mojo-to: ERM::EUsage::CustomReports#yearly_report
     operationId: getERMUsageYearlyReport
     tags:
-      - usage_report
+      - erm_usage_reports
     summary: get usage yearly report
     produces:
       - application/json
@@ -121,7 +121,7 @@
     x-mojo-to: ERM::EUsage::CustomReports#metric_types_report
     operationId: getERMUsageMetricTypesReport
     tags:
-      - usage_report
+      - erm_usage_reports
     summary: get usage metric_types report
     produces:
       - application/json
@@ -180,7 +180,7 @@
     x-mojo-to: ERM::EUsage::CustomReports#provider_rollup_report
     operationId: getERMUsageProviderRollupReport
     tags:
-      - usage_report
+      - erm_usage_reports
     summary: get usage provider rollup report
     produces:
       - application/json
diff --git a/api/v1/swagger/paths/erm_default_usage_reports.yaml b/api/v1/swagger/paths/erm_default_usage_reports.yaml
index 19c71fc875..aa37c409ab 100644
--- a/api/v1/swagger/paths/erm_default_usage_reports.yaml
+++ b/api/v1/swagger/paths/erm_default_usage_reports.yaml
@@ -4,7 +4,7 @@
     x-mojo-to: ERM::EUsage::DefaultUsageReports#list
     operationId: listErmDefaultUsageReports
     tags:
-      - default_usage_report
+      - erm_default_usage_reports
     summary: List default_usage_reports
     produces:
       - application/json
@@ -62,7 +62,7 @@
     x-mojo-to: ERM::EUsage::DefaultUsageReports#add
     operationId: addErmDefaultUsageReports
     tags:
-      - default_usage_report
+      - erm_default_usage_reports
     summary: Add default_usage_report
     consumes:
       - application/json
@@ -123,7 +123,7 @@
     x-mojo-to: ERM::EUsage::DefaultUsageReports#delete
     operationId: deleteERMDefaultUsageReports
     tags:
-      - default_usage_report
+      - erm_default_usage_reports
     summary: Delete default_usage_report
     produces:
       - application/json
diff --git a/api/v1/swagger/paths/erm_usage_data_providers.yaml b/api/v1/swagger/paths/erm_usage_data_providers.yaml
index f244d8b138..9fd3296bf3 100644
--- a/api/v1/swagger/paths/erm_usage_data_providers.yaml
+++ b/api/v1/swagger/paths/erm_usage_data_providers.yaml
@@ -4,7 +4,7 @@
     x-mojo-to: ERM::EUsage::UsageDataProviders#list
     operationId: listErmUsageDataProviders
     tags:
-      - usage_data_provider
+      - erm_usage_data_providers
     summary: List usage_data_providers
     produces:
       - application/json
@@ -132,7 +132,7 @@
     x-mojo-to: ERM::EUsage::UsageDataProviders#add
     operationId: addErmUsageDataProviders
     tags:
-      - usage_data_provider
+      - erm_usage_data_providers
     summary: Add usage_data_provider
     consumes:
       - application/json
@@ -193,7 +193,7 @@
     x-mojo-to: ERM::EUsage::UsageDataProviders#get
     operationId: getERMUsageDataProvider
     tags:
-      - usage_data_provider
+      - erm_usage_data_providers
     summary: get usage_data_provider
     produces:
       - application/json
@@ -245,7 +245,7 @@
     x-mojo-to: ERM::EUsage::UsageDataProviders#update
     operationId: updateERMUsageDataProviders
     tags:
-      - usage_data_provider
+      - erm_usage_data_providers
     summary: update usage_data_provider
     consumes:
       - application/json
@@ -310,7 +310,7 @@
     x-mojo-to: ERM::EUsage::UsageDataProviders#delete
     operationId: deleteERMUsageDataProviders
     tags:
-      - usage_data_provider
+      - erm_usage_data_providers
     summary: Delete usage_data_provider
     produces:
       - application/json
@@ -357,7 +357,7 @@
     x-mojo-to: ERM::EUsage::UsageDataProviders#process_SUSHI_response
     operationId: processSUSHICounterUsageDataProviderHarvester
     tags:
-      - usage data provider harvester
+      - erm_usage_data_providers
     summary: Process SUSHI COUNTER for this data provider's harvester
     produces:
       - application/json
@@ -411,7 +411,7 @@
     x-mojo-to: ERM::EUsage::UsageDataProviders#process_COUNTER_file
     operationId: processCOUNTERFileUsageDataProviderHarvester
     tags:
-      - usage data provider harvester
+      - erm_usage_data_providers
     summary: Process COUNTER file upload for this data provider's harvester
     produces:
       - application/json
@@ -459,7 +459,7 @@
     x-mojo-to: ERM::EUsage::UsageDataProviders#test_connection
     operationId: testUsageDataProviderHarvester
     tags:
-      - usage data provider harvester
+      - erm_usage_data_providers
     summary: Test this data provider's harvester
     produces:
       - application/json
@@ -489,60 +489,6 @@
         description: Under maintenance
         schema:
           $ref: "../swagger.yaml#/definitions/error"
-    x-koha-authorization:
-      permissions:
-        erm: 1
-"/erm/usage_data_providers/report":
-  get:
-    x-mojo-to: ERM::EUsage::UsageDataProviders#providers_report
-    operationId: reportUsageDataProvider
-    tags:
-      - usage data provider report
-    summary: Run a report for this data provider
-    produces:
-      - application/json
-    parameters:
-      - $ref: "../swagger.yaml#/parameters/match"
-      - $ref: "../swagger.yaml#/parameters/order_by"
-      - $ref: "../swagger.yaml#/parameters/page"
-      - $ref: "../swagger.yaml#/parameters/per_page"
-      - $ref: "../swagger.yaml#/parameters/q_param"
-      - $ref: "../swagger.yaml#/parameters/q_body"
-      - $ref: "../swagger.yaml#/parameters/q_header"
-      - name: x-koha-embed
-        in: header
-        required: false
-        description: Embed list sent as a request header
-        type: array
-        items:
-          type: string
-          enum:
-            - counter_files
-            - erm_usage_titles.erm_usage_muses
-    responses:
-      200:
-        description: Successful report run
-        schema:
-          items:
-            $ref: "../swagger.yaml#/definitions/erm_usage_data_provider"
-      400:
-        description: Bad request
-        schema:
-          $ref: "../swagger.yaml#/definitions/error"
-      403:
-        description: Access forbidden
-        schema:
-          $ref: "../swagger.yaml#/definitions/error"
-      500:
-        description: |-
-          Internal server error. Possible `error_code` attribute values:
-          * `internal_server_error`
-        schema:
-          $ref: "../swagger.yaml#/definitions/error"
-      503:
-        description: Under maintenance
-        schema:
-          $ref: "../swagger.yaml#/definitions/error"
     x-koha-authorization:
       permissions:
         erm: 1
\ No newline at end of file
diff --git a/api/v1/swagger/paths/erm_usage_databases.yaml b/api/v1/swagger/paths/erm_usage_databases.yaml
index 4b74531302..adef38cd7c 100644
--- a/api/v1/swagger/paths/erm_usage_databases.yaml
+++ b/api/v1/swagger/paths/erm_usage_databases.yaml
@@ -4,7 +4,7 @@
     x-mojo-to: ERM::EUsage::UsageDatabases#list
     operationId: listErmUsageDatabases
     tags:
-      - usage_database
+      - erm_usage_databases
     summary: List usage_databases
     produces:
       - application/json
diff --git a/api/v1/swagger/paths/erm_usage_items.yaml b/api/v1/swagger/paths/erm_usage_items.yaml
index ee9abacc19..78a0fddb6f 100644
--- a/api/v1/swagger/paths/erm_usage_items.yaml
+++ b/api/v1/swagger/paths/erm_usage_items.yaml
@@ -4,7 +4,7 @@
     x-mojo-to: ERM::EUsage::UsageItems#list
     operationId: listErmUsageItems
     tags:
-      - usage_item
+      - erm_usage_items
     summary: List usage_items
     produces:
       - application/json
diff --git a/api/v1/swagger/paths/erm_usage_platforms.yaml b/api/v1/swagger/paths/erm_usage_platforms.yaml
index 08682a82d2..ad7f81dc70 100644
--- a/api/v1/swagger/paths/erm_usage_platforms.yaml
+++ b/api/v1/swagger/paths/erm_usage_platforms.yaml
@@ -4,7 +4,7 @@
     x-mojo-to: ERM::EUsage::UsagePlatforms#list
     operationId: listErmUsagePlatforms
     tags:
-      - usage_platform
+      - erm_usage_platforms
     summary: List usage_platforms
     produces:
       - application/json
diff --git a/api/v1/swagger/paths/erm_usage_titles.yaml b/api/v1/swagger/paths/erm_usage_titles.yaml
index 734f39abc7..246c6147d4 100644
--- a/api/v1/swagger/paths/erm_usage_titles.yaml
+++ b/api/v1/swagger/paths/erm_usage_titles.yaml
@@ -4,7 +4,7 @@
     x-mojo-to: ERM::EUsage::UsageTitles#list
     operationId: listErmUsageTitles
     tags:
-      - usage_title
+      - erm_usage_titles
     summary: List usage_titles
     produces:
       - application/json
diff --git a/api/v1/swagger/swagger.yaml b/api/v1/swagger/swagger.yaml
index 3d056e2700..e59635f197 100644
--- a/api/v1/swagger/swagger.yaml
+++ b/api/v1/swagger/swagger.yaml
@@ -1018,6 +1018,18 @@ tags:
   - description: "Manage ERM configuration\n"
     name: erm_config
     x-displayName: ERM configuration
+  - description: "Manage ERM counter files\n"
+    name: erm_counter_files
+    x-displayName: ERM counter files
+  - description: "Manage ERM counter logs\n"
+    name: erm_counter_logs
+    x-displayName: ERM counter logs
+  - description: "Retrieve counter registry data\n"
+    name: erm_counter_registry
+    x-displayName: ERM counter registry
+  - description: "Manage ERM saved reports\n"
+    name: erm_default_usage_reports
+    x-displayName: ERM saved reports
   - description: "Manage ERM docuemnts\n"
     name: erm_documents
     x-displayName: ERM documents
@@ -1033,6 +1045,27 @@ tags:
   - description: "Manage ERM licences\n"
     name: erm_licences
     x-displayName: ERM licences
+  - description: "Retrieve SUSHI service data\n"
+    name: erm_sushi_service
+    x-displayName: ERM SUSHI services
+  - description: "Manage ERM usage data providers\n"
+    name: erm_usage_data_providers
+    x-displayName: ERM usage data providers
+  - description: "Manage ERM usage databases\n"
+    name: erm_usage_databases
+    x-displayName: ERM usage databases
+  - description: "Manage ERM usage items\n"
+    name: erm_usage_items
+    x-displayName: ERM usage items
+  - description: "Manage ERM usage platforms\n"
+    name: erm_usage_platforms
+    x-displayName: ERM usage platforms
+  - description: "Manage ERM usage titles\n"
+    name: erm_usage_titles
+    x-displayName: ERM usage titles
+  - description: "Manage ERM usage reports\n"
+    name: erm_usage_reports
+    x-displayName: ERM usage reports
   - description: "Manage ERM users\n"
     name: erm_users
     x-displayName: ERM users
-- 
2.37.1 (Apple Git-137.1)