From e0dc23fb0cb6365480072fc356c437441a87d826 Mon Sep 17 00:00:00 2001 From: pasqualespica <36746022+pasqualespica@users.noreply.github.com> Date: Mon, 18 Mar 2024 15:53:06 +0100 Subject: [PATCH 01/11] upd helm chart --- helm/Chart.yaml | 2 +- helm/values-dev.yaml | 27 +++++++++++++++++++++++---- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/helm/Chart.yaml b/helm/Chart.yaml index d9a14f6..3cd2585 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -6,5 +6,5 @@ version: 0.24.0 appVersion: 0.2.3 dependencies: - name: microservice-chart - version: 1.21.0 + version: 2.4.0 repository: "https://pagopa.github.io/aks-microservice-chart-blueprint" diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index bc9d3cf..049f24f 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -6,6 +6,7 @@ microservice-chart: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config tag: "0.2.3" pullPolicy: Always + # https://github.com/Azure/azure-functions-host/blob/dev/src/WebJobs.Script.WebHost/Controllers/HostController.cs livenessProbe: httpGet: path: /actuator/health/liveness @@ -22,14 +23,24 @@ microservice-chart: periodSeconds: 10 deployment: create: true - service: + serviceMonitor: create: true + endpoints: + - interval: 10s #jmx-exporter + targetPort: 12345 + path: /metrics + ports: + - 8080 + service: type: ClusterIP - port: 8080 + ports: + - 8080 + - 12345 #jmx-exporter ingress: create: true host: "weudev.shared.internal.dev.platform.pagopa.it" path: /authorizer-config/(.*) + servicePort: 8080 serviceAccount: create: false annotations: {} @@ -50,7 +61,7 @@ microservice-chart: autoscaling: enable: true minReplica: 1 - maxReplica: 3 + maxReplica: 1 pollingInterval: 10 # seconds cooldownPeriod: 50 # seconds triggers: @@ -59,6 +70,12 @@ microservice-chart: # Required type: Utilization # Allowed types are 'Utilization' or 'AverageValue' value: "75" + - type: memory + metadata: + # Required + type: Utilization # Allowed types are 'Utilization' or 'AverageValue' + value: "70" + fileConfig: {} envConfig: WEBSITE_SITE_NAME: 'pagopaplatformauthorizerconfig' ENV: 'dev' @@ -77,6 +94,9 @@ microservice-chart: CLIENT_CONNECTION_TIMEOUT: "10000" APICONFIG_SELFCARE_INTEGRATION_PATH: "https://api.dev.platform.pagopa.it/apiconfig-selfcare-integration/v1" CORS_CONFIGURATION: '{"origins": ["*"], "methods": ["*"]}' + envFieldRef: + APP_NAME: "metadata.labels['app.kubernetes.io/instance']" + APP_VERSION: "metadata.labels['app.kubernetes.io/version']" envSecret: APPLICATIONINSIGHTS_CONNECTION_STRING: 'ai-d-connection-string' OTEL_EXPORTER_OTLP_HEADERS: 'elastic-otel-token-header' @@ -87,7 +107,6 @@ microservice-chart: name: "pagopa-d-shared-kv" tenantId: "7788edaf-0346-4068-9d79-c868aed15b3d" nodeSelector: {} - tolerations: [] affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: From 0e459aee5c50d8fe9ee871ddad3320e4a89e3bd8 Mon Sep 17 00:00:00 2001 From: pagopa-github-bot Date: Mon, 18 Mar 2024 14:54:45 +0000 Subject: [PATCH 02/11] Bump to version 0.2.3-1-upd-helm-chart [skip ci] --- helm/Chart.yaml | 4 ++-- helm/values-dev.yaml | 2 +- helm/values-prod.yaml | 2 +- helm/values-uat.yaml | 2 +- openapi/openapi.json | 2 +- openapi/openapi_core.json | 2 +- openapi/openapi_enrolledci.json | 2 +- pom.xml | 2 +- 8 files changed, 9 insertions(+), 9 deletions(-) diff --git a/helm/Chart.yaml b/helm/Chart.yaml index 3cd2585..b9ff079 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: pagopa-platform-authorizer-config description: Microservice that provides a set of APIs to manage authorization records for the Authorizer system. type: application -version: 0.24.0 -appVersion: 0.2.3 +version: 0.25.0 +appVersion: 0.2.3-1-upd-helm-chart dependencies: - name: microservice-chart version: 2.4.0 diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index 049f24f..5ff16b8 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3" + tag: "0.2.3-1-upd-helm-chart" pullPolicy: Always # https://github.com/Azure/azure-functions-host/blob/dev/src/WebJobs.Script.WebHost/Controllers/HostController.cs livenessProbe: diff --git a/helm/values-prod.yaml b/helm/values-prod.yaml index de03ee4..61b0784 100644 --- a/helm/values-prod.yaml +++ b/helm/values-prod.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3" + tag: "0.2.3-1-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/helm/values-uat.yaml b/helm/values-uat.yaml index b32d772..af49445 100644 --- a/helm/values-uat.yaml +++ b/helm/values-uat.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3" + tag: "0.2.3-1-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/openapi/openapi.json b/openapi/openapi.json index 4322400..d16d94f 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3" + "version": "0.2.3-1-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_core.json b/openapi/openapi_core.json index b21dd33..710cb13 100644 --- a/openapi/openapi_core.json +++ b/openapi/openapi_core.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3" + "version": "0.2.3-1-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_enrolledci.json b/openapi/openapi_enrolledci.json index 372f051..361953c 100644 --- a/openapi/openapi_enrolledci.json +++ b/openapi/openapi_enrolledci.json @@ -4,7 +4,7 @@ "title": "@project.artifactId@", "description": "@project.description@", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3" + "version": "0.2.3-1-upd-helm-chart" }, "servers": [ { diff --git a/pom.xml b/pom.xml index 3a01f1c..2d0222e 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ it.gov.pagopa platform-authorizer-config - 0.2.3 + 0.2.3-1-upd-helm-chart pagopa-platform-authorizer-config A microservice that provides a set of APIs to manage authorization records for the Authorizer system. From 2675acf0e57f229693eabbb69e412a687d36801f Mon Sep 17 00:00:00 2001 From: pagopa-github-bot Date: Mon, 18 Mar 2024 15:30:49 +0000 Subject: [PATCH 03/11] Bump to version 0.2.3-2-upd-helm-chart [skip ci] --- helm/Chart.yaml | 4 ++-- helm/values-dev.yaml | 2 +- helm/values-prod.yaml | 2 +- helm/values-uat.yaml | 2 +- openapi/openapi.json | 2 +- openapi/openapi_core.json | 2 +- openapi/openapi_enrolledci.json | 2 +- pom.xml | 2 +- 8 files changed, 9 insertions(+), 9 deletions(-) diff --git a/helm/Chart.yaml b/helm/Chart.yaml index b9ff079..220117e 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: pagopa-platform-authorizer-config description: Microservice that provides a set of APIs to manage authorization records for the Authorizer system. type: application -version: 0.25.0 -appVersion: 0.2.3-1-upd-helm-chart +version: 0.26.0 +appVersion: 0.2.3-2-upd-helm-chart dependencies: - name: microservice-chart version: 2.4.0 diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index 5ff16b8..cac5c59 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-1-upd-helm-chart" + tag: "0.2.3-2-upd-helm-chart" pullPolicy: Always # https://github.com/Azure/azure-functions-host/blob/dev/src/WebJobs.Script.WebHost/Controllers/HostController.cs livenessProbe: diff --git a/helm/values-prod.yaml b/helm/values-prod.yaml index 61b0784..6ae017c 100644 --- a/helm/values-prod.yaml +++ b/helm/values-prod.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-1-upd-helm-chart" + tag: "0.2.3-2-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/helm/values-uat.yaml b/helm/values-uat.yaml index af49445..cb6ee8f 100644 --- a/helm/values-uat.yaml +++ b/helm/values-uat.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-1-upd-helm-chart" + tag: "0.2.3-2-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/openapi/openapi.json b/openapi/openapi.json index d16d94f..d9729a9 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-1-upd-helm-chart" + "version": "0.2.3-2-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_core.json b/openapi/openapi_core.json index 710cb13..2e37d4d 100644 --- a/openapi/openapi_core.json +++ b/openapi/openapi_core.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-1-upd-helm-chart" + "version": "0.2.3-2-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_enrolledci.json b/openapi/openapi_enrolledci.json index 361953c..e412c9f 100644 --- a/openapi/openapi_enrolledci.json +++ b/openapi/openapi_enrolledci.json @@ -4,7 +4,7 @@ "title": "@project.artifactId@", "description": "@project.description@", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-1-upd-helm-chart" + "version": "0.2.3-2-upd-helm-chart" }, "servers": [ { diff --git a/pom.xml b/pom.xml index 2d0222e..93feb6f 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ it.gov.pagopa platform-authorizer-config - 0.2.3-1-upd-helm-chart + 0.2.3-2-upd-helm-chart pagopa-platform-authorizer-config A microservice that provides a set of APIs to manage authorization records for the Authorizer system. From 603df212dde0be5a0e88083b024284f993c11815 Mon Sep 17 00:00:00 2001 From: pasqualespica <36746022+pasqualespica@users.noreply.github.com> Date: Mon, 18 Mar 2024 17:10:53 +0100 Subject: [PATCH 04/11] fix --- helm/values-dev.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index 049f24f..15af844 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -30,12 +30,12 @@ microservice-chart: targetPort: 12345 path: /metrics ports: - - 8080 + - 80 #http + - 12345 #jmx-exporter service: type: ClusterIP ports: - 8080 - - 12345 #jmx-exporter ingress: create: true host: "weudev.shared.internal.dev.platform.pagopa.it" @@ -107,6 +107,7 @@ microservice-chart: name: "pagopa-d-shared-kv" tenantId: "7788edaf-0346-4068-9d79-c868aed15b3d" nodeSelector: {} + tolerations: [] affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: From 03a90a86b026d1d96217b1b291ced7cd015211e1 Mon Sep 17 00:00:00 2001 From: pagopa-github-bot Date: Mon, 18 Mar 2024 16:12:58 +0000 Subject: [PATCH 05/11] Bump to version 0.2.3-3-upd-helm-chart [skip ci] --- helm/Chart.yaml | 4 ++-- helm/values-dev.yaml | 2 +- helm/values-prod.yaml | 2 +- helm/values-uat.yaml | 2 +- openapi/openapi.json | 2 +- openapi/openapi_core.json | 2 +- openapi/openapi_enrolledci.json | 2 +- pom.xml | 2 +- 8 files changed, 9 insertions(+), 9 deletions(-) diff --git a/helm/Chart.yaml b/helm/Chart.yaml index 220117e..2509192 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: pagopa-platform-authorizer-config description: Microservice that provides a set of APIs to manage authorization records for the Authorizer system. type: application -version: 0.26.0 -appVersion: 0.2.3-2-upd-helm-chart +version: 0.27.0 +appVersion: 0.2.3-3-upd-helm-chart dependencies: - name: microservice-chart version: 2.4.0 diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index c6b8b67..b34db4a 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-2-upd-helm-chart" + tag: "0.2.3-3-upd-helm-chart" pullPolicy: Always # https://github.com/Azure/azure-functions-host/blob/dev/src/WebJobs.Script.WebHost/Controllers/HostController.cs livenessProbe: diff --git a/helm/values-prod.yaml b/helm/values-prod.yaml index 6ae017c..1d6e0c4 100644 --- a/helm/values-prod.yaml +++ b/helm/values-prod.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-2-upd-helm-chart" + tag: "0.2.3-3-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/helm/values-uat.yaml b/helm/values-uat.yaml index cb6ee8f..43905f6 100644 --- a/helm/values-uat.yaml +++ b/helm/values-uat.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-2-upd-helm-chart" + tag: "0.2.3-3-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/openapi/openapi.json b/openapi/openapi.json index d9729a9..c386930 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-2-upd-helm-chart" + "version": "0.2.3-3-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_core.json b/openapi/openapi_core.json index 2e37d4d..e54d419 100644 --- a/openapi/openapi_core.json +++ b/openapi/openapi_core.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-2-upd-helm-chart" + "version": "0.2.3-3-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_enrolledci.json b/openapi/openapi_enrolledci.json index e412c9f..07fabb5 100644 --- a/openapi/openapi_enrolledci.json +++ b/openapi/openapi_enrolledci.json @@ -4,7 +4,7 @@ "title": "@project.artifactId@", "description": "@project.description@", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-2-upd-helm-chart" + "version": "0.2.3-3-upd-helm-chart" }, "servers": [ { diff --git a/pom.xml b/pom.xml index 93feb6f..f653c1f 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ it.gov.pagopa platform-authorizer-config - 0.2.3-2-upd-helm-chart + 0.2.3-3-upd-helm-chart pagopa-platform-authorizer-config A microservice that provides a set of APIs to manage authorization records for the Authorizer system. From 3ab42364e6a86c8e7e1dc53bd3cf2f496da944fa Mon Sep 17 00:00:00 2001 From: pasqualespica <36746022+pasqualespica@users.noreply.github.com> Date: Mon, 18 Mar 2024 17:32:02 +0100 Subject: [PATCH 06/11] fix --- helm/values-dev.yaml | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index c6b8b67..88536d6 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -6,7 +6,6 @@ microservice-chart: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config tag: "0.2.3-2-upd-helm-chart" pullPolicy: Always - # https://github.com/Azure/azure-functions-host/blob/dev/src/WebJobs.Script.WebHost/Controllers/HostController.cs livenessProbe: httpGet: path: /actuator/health/liveness @@ -23,16 +22,8 @@ microservice-chart: periodSeconds: 10 deployment: create: true - serviceMonitor: - create: true - endpoints: - - interval: 10s #jmx-exporter - targetPort: 12345 - path: /metrics - ports: - - 80 #http - - 12345 #jmx-exporter service: + create: true type: ClusterIP ports: - 8080 @@ -70,12 +61,6 @@ microservice-chart: # Required type: Utilization # Allowed types are 'Utilization' or 'AverageValue' value: "75" - - type: memory - metadata: - # Required - type: Utilization # Allowed types are 'Utilization' or 'AverageValue' - value: "70" - fileConfig: {} envConfig: WEBSITE_SITE_NAME: 'pagopaplatformauthorizerconfig' ENV: 'dev' From 02acc128dbc24be4b4c9147c5eff655117316508 Mon Sep 17 00:00:00 2001 From: pagopa-github-bot Date: Mon, 18 Mar 2024 16:35:24 +0000 Subject: [PATCH 07/11] Bump to version 0.2.3-4-upd-helm-chart [skip ci] --- helm/Chart.yaml | 4 ++-- helm/values-dev.yaml | 2 +- helm/values-prod.yaml | 2 +- helm/values-uat.yaml | 2 +- openapi/openapi.json | 2 +- openapi/openapi_core.json | 2 +- openapi/openapi_enrolledci.json | 2 +- pom.xml | 2 +- 8 files changed, 9 insertions(+), 9 deletions(-) diff --git a/helm/Chart.yaml b/helm/Chart.yaml index 2509192..aad22fb 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: pagopa-platform-authorizer-config description: Microservice that provides a set of APIs to manage authorization records for the Authorizer system. type: application -version: 0.27.0 -appVersion: 0.2.3-3-upd-helm-chart +version: 0.28.0 +appVersion: 0.2.3-4-upd-helm-chart dependencies: - name: microservice-chart version: 2.4.0 diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index bcabb6f..e1770a4 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-3-upd-helm-chart" + tag: "0.2.3-4-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/helm/values-prod.yaml b/helm/values-prod.yaml index 1d6e0c4..c15cad1 100644 --- a/helm/values-prod.yaml +++ b/helm/values-prod.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-3-upd-helm-chart" + tag: "0.2.3-4-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/helm/values-uat.yaml b/helm/values-uat.yaml index 43905f6..34f380a 100644 --- a/helm/values-uat.yaml +++ b/helm/values-uat.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-3-upd-helm-chart" + tag: "0.2.3-4-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/openapi/openapi.json b/openapi/openapi.json index c386930..9d8a089 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-3-upd-helm-chart" + "version": "0.2.3-4-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_core.json b/openapi/openapi_core.json index e54d419..5450ecf 100644 --- a/openapi/openapi_core.json +++ b/openapi/openapi_core.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-3-upd-helm-chart" + "version": "0.2.3-4-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_enrolledci.json b/openapi/openapi_enrolledci.json index 07fabb5..a1f1e9a 100644 --- a/openapi/openapi_enrolledci.json +++ b/openapi/openapi_enrolledci.json @@ -4,7 +4,7 @@ "title": "@project.artifactId@", "description": "@project.description@", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-3-upd-helm-chart" + "version": "0.2.3-4-upd-helm-chart" }, "servers": [ { diff --git a/pom.xml b/pom.xml index f653c1f..2895f4a 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ it.gov.pagopa platform-authorizer-config - 0.2.3-3-upd-helm-chart + 0.2.3-4-upd-helm-chart pagopa-platform-authorizer-config A microservice that provides a set of APIs to manage authorization records for the Authorizer system. From 1983e4fec7a47c298d1fc453a68d3a40d43fff27 Mon Sep 17 00:00:00 2001 From: pasqualespica <36746022+pasqualespica@users.noreply.github.com> Date: Mon, 18 Mar 2024 17:53:04 +0100 Subject: [PATCH 08/11] fixx --- helm/Chart.yaml | 2 +- helm/values-dev.yaml | 21 +++------------------ 2 files changed, 4 insertions(+), 19 deletions(-) diff --git a/helm/Chart.yaml b/helm/Chart.yaml index aad22fb..2f4e612 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -6,5 +6,5 @@ version: 0.28.0 appVersion: 0.2.3-4-upd-helm-chart dependencies: - name: microservice-chart - version: 2.4.0 + version: 2.8.0 repository: "https://pagopa.github.io/aks-microservice-chart-blueprint" diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index e1770a4..5169551 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -10,14 +10,14 @@ microservice-chart: httpGet: path: /actuator/health/liveness port: 8080 - initialDelaySeconds: 90 + initialDelaySeconds: 120 failureThreshold: 6 periodSeconds: 10 readinessProbe: httpGet: path: /actuator/health/readiness port: 8080 - initialDelaySeconds: 90 + initialDelaySeconds: 120 failureThreshold: 6 periodSeconds: 10 deployment: @@ -103,21 +103,6 @@ microservice-chart: values: - user canaryDelivery: - create: false - ingress: - create: false - canary: - type: header - headerName: X-Canary - headerValue: canary - weightPercent: 0 - service: - create: false deployment: - create: false image: - repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.1" - pullPolicy: Always - envConfig: {} - envSecret: {} + tag: "" \ No newline at end of file From b15dbcea6d5e52337fce7311dcbedb3d61b322d4 Mon Sep 17 00:00:00 2001 From: pagopa-github-bot Date: Mon, 18 Mar 2024 16:54:52 +0000 Subject: [PATCH 09/11] Bump to version 0.2.3-5-upd-helm-chart [skip ci] --- helm/Chart.yaml | 4 ++-- helm/values-dev.yaml | 5 +++-- helm/values-prod.yaml | 2 +- helm/values-uat.yaml | 2 +- openapi/openapi.json | 2 +- openapi/openapi_core.json | 2 +- openapi/openapi_enrolledci.json | 2 +- pom.xml | 2 +- 8 files changed, 11 insertions(+), 10 deletions(-) diff --git a/helm/Chart.yaml b/helm/Chart.yaml index 2f4e612..6bad30f 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: pagopa-platform-authorizer-config description: Microservice that provides a set of APIs to manage authorization records for the Authorizer system. type: application -version: 0.28.0 -appVersion: 0.2.3-4-upd-helm-chart +version: 0.29.0 +appVersion: 0.2.3-5-upd-helm-chart dependencies: - name: microservice-chart version: 2.8.0 diff --git a/helm/values-dev.yaml b/helm/values-dev.yaml index 5169551..97675ba 100644 --- a/helm/values-dev.yaml +++ b/helm/values-dev.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-4-upd-helm-chart" + tag: "0.2.3-5-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: @@ -105,4 +105,5 @@ microservice-chart: canaryDelivery: deployment: image: - tag: "" \ No newline at end of file + tag: "" + create: false diff --git a/helm/values-prod.yaml b/helm/values-prod.yaml index c15cad1..50eca3a 100644 --- a/helm/values-prod.yaml +++ b/helm/values-prod.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-4-upd-helm-chart" + tag: "0.2.3-5-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/helm/values-uat.yaml b/helm/values-uat.yaml index 34f380a..f272e9f 100644 --- a/helm/values-uat.yaml +++ b/helm/values-uat.yaml @@ -4,7 +4,7 @@ microservice-chart: fullnameOverride: "" image: repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.3-4-upd-helm-chart" + tag: "0.2.3-5-upd-helm-chart" pullPolicy: Always livenessProbe: httpGet: diff --git a/openapi/openapi.json b/openapi/openapi.json index 9d8a089..ed5fea0 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-4-upd-helm-chart" + "version": "0.2.3-5-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_core.json b/openapi/openapi_core.json index 5450ecf..bdb2d95 100644 --- a/openapi/openapi_core.json +++ b/openapi/openapi_core.json @@ -4,7 +4,7 @@ "title": "platform-authorizer-config", "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-4-upd-helm-chart" + "version": "0.2.3-5-upd-helm-chart" }, "servers": [ { diff --git a/openapi/openapi_enrolledci.json b/openapi/openapi_enrolledci.json index a1f1e9a..271161c 100644 --- a/openapi/openapi_enrolledci.json +++ b/openapi/openapi_enrolledci.json @@ -4,7 +4,7 @@ "title": "@project.artifactId@", "description": "@project.description@", "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-4-upd-helm-chart" + "version": "0.2.3-5-upd-helm-chart" }, "servers": [ { diff --git a/pom.xml b/pom.xml index 2895f4a..6b68cf3 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ it.gov.pagopa platform-authorizer-config - 0.2.3-4-upd-helm-chart + 0.2.3-5-upd-helm-chart pagopa-platform-authorizer-config A microservice that provides a set of APIs to manage authorization records for the Authorizer system. From 5f5292586268f08ce69ec54bde3d6c3bdcb97734 Mon Sep 17 00:00:00 2001 From: pasqualespica <36746022+pasqualespica@users.noreply.github.com> Date: Wed, 20 Mar 2024 12:18:36 +0100 Subject: [PATCH 10/11] fix --- helm/values-prod.yaml | 24 +++++++----------------- helm/values-uat.yaml | 26 ++++++++------------------ pom.xml | 2 +- 3 files changed, 16 insertions(+), 36 deletions(-) diff --git a/helm/values-prod.yaml b/helm/values-prod.yaml index c15cad1..176e98b 100644 --- a/helm/values-prod.yaml +++ b/helm/values-prod.yaml @@ -25,11 +25,13 @@ microservice-chart: service: create: true type: ClusterIP - port: 8080 + ports: + - 8080 ingress: create: true host: "weuprod.shared.internal.platform.pagopa.it" path: /authorizer-config/(.*) + servicePort: 8080 serviceAccount: create: false annotations: {} @@ -77,6 +79,9 @@ microservice-chart: CLIENT_CONNECTION_TIMEOUT: "10000" APICONFIG_SELFCARE_INTEGRATION_PATH: "https://api.platform.pagopa.it/apiconfig-selfcare-integration/v1" CORS_CONFIGURATION: '{"origins": ["*"], "methods": ["*"]}' + envFieldRef: + APP_NAME: "metadata.labels['app.kubernetes.io/instance']" + APP_VERSION: "metadata.labels['app.kubernetes.io/version']" envSecret: APPLICATIONINSIGHTS_CONNECTION_STRING: 'ai-p-connection-string' OTEL_EXPORTER_OTLP_HEADERS: 'elastic-otel-token-header' @@ -98,21 +103,6 @@ microservice-chart: values: - user canaryDelivery: - create: false - ingress: - create: true - canary: - type: header - headerName: X-Canary - headerValue: canary - weightPercent: 0 - service: - create: true deployment: - create: true image: - repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.1" - pullPolicy: Always - envConfig: {} - envSecret: {} + tag: "" \ No newline at end of file diff --git a/helm/values-uat.yaml b/helm/values-uat.yaml index 34f380a..7e6441a 100644 --- a/helm/values-uat.yaml +++ b/helm/values-uat.yaml @@ -25,11 +25,13 @@ microservice-chart: service: create: true type: ClusterIP - port: 8080 + ports: + - 8080 ingress: create: true host: "weuuat.shared.internal.uat.platform.pagopa.it" path: /authorizer-config/(.*) + servicePort: 8080 serviceAccount: create: false annotations: {} @@ -50,7 +52,7 @@ microservice-chart: autoscaling: enable: true minReplica: 1 - maxReplica: 3 + maxReplica: 1 pollingInterval: 10 # seconds cooldownPeriod: 50 # seconds triggers: @@ -77,6 +79,9 @@ microservice-chart: CLIENT_CONNECTION_TIMEOUT: "10000" APICONFIG_SELFCARE_INTEGRATION_PATH: "https://api.uat.platform.pagopa.it/apiconfig-selfcare-integration/v1" CORS_CONFIGURATION: '{"origins": ["*"], "methods": ["*"]}' + envFieldRef: + APP_NAME: "metadata.labels['app.kubernetes.io/instance']" + APP_VERSION: "metadata.labels['app.kubernetes.io/version']" envSecret: APPLICATIONINSIGHTS_CONNECTION_STRING: 'ai-u-connection-string' OTEL_EXPORTER_OTLP_HEADERS: 'elastic-otel-token-header' @@ -98,21 +103,6 @@ microservice-chart: values: - user canaryDelivery: - create: false - ingress: - create: true - canary: - type: header - headerName: X-Canary - headerValue: canary - weightPercent: 0 - service: - create: true deployment: - create: true image: - repository: ghcr.io/pagopa/pagopa-platform-authorizer-config - tag: "0.2.1" - pullPolicy: Always - envConfig: {} - envSecret: {} + tag: "" \ No newline at end of file diff --git a/pom.xml b/pom.xml index 2895f4a..4f51d83 100644 --- a/pom.xml +++ b/pom.xml @@ -18,7 +18,7 @@ - 11 + 17 3.32.0 From 0461e19d28a90d19ce83c4900962e71b30ec5138 Mon Sep 17 00:00:00 2001 From: pasqualespica <36746022+pasqualespica@users.noreply.github.com> Date: Sun, 12 May 2024 16:41:00 +0200 Subject: [PATCH 11/11] fix --- .github/workflows/code_review.yml | 3 +- openapi/openapi.json | 1687 ++++++++++++++--------------- openapi/openapi_core.json | 1446 ++++++++++++------------- openapi/openapi_enrolledci.json | 418 ++++--- pom.xml | 8 +- 5 files changed, 1660 insertions(+), 1902 deletions(-) diff --git a/.github/workflows/code_review.yml b/.github/workflows/code_review.yml index e69a2de..d8321bf 100644 --- a/.github/workflows/code_review.yml +++ b/.github/workflows/code_review.yml @@ -35,13 +35,14 @@ jobs: # Steps represent a sequence of tasks that will be executed as part of the job steps: - name: Code Review - uses: pagopa/github-actions-template/maven-code-review@v1.4.2 + uses: pagopa/github-actions-template/maven-code-review@v1.10.4 with: github_token: ${{ secrets.GITHUB_TOKEN }} sonar_token: ${{ secrets.SONAR_TOKEN }} project_key: ${{env.PROJECT_KEY}} coverage_exclusions: "**/config/config/*,**/*Mock*,**/exception/**,**/model/**,**/entity/*,**/util/logging/*,**/repository/**" cpd_exclusions: "**/model/**,**/entity/*" + java_version: 17 # smoke-test: # name: Smoke Test diff --git a/openapi/openapi.json b/openapi/openapi.json index ed5fea0..0c4e544 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -1,1108 +1,989 @@ { - "openapi": "3.0.1", - "info": { - "title": "platform-authorizer-config", - "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", - "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-5-upd-helm-chart" + "openapi" : "3.0.1", + "info" : { + "title" : "platform-authorizer-config", + "description" : "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", + "termsOfService" : "https://www.pagopa.gov.it/", + "version" : "0.2.3-5-upd-helm-chart" }, - "servers": [ - { - "url": "http://localhost", - "description": "Generated server url" - } - ], - "tags": [ - { - "name": "Enrolled Orgs", - "description": "Everything about enrolled organizations" - }, - { - "name": "Cached Authorizations", - "description": "Everything about cached authorizations" - }, - { - "name": "Authorizations", - "description": "Everything about authorizations" - } - ], - "paths": { - "/authorizations/{authorizationId}": { - "get": { - "tags": [ - "Authorizations" - ], - "summary": "Get authorization by identifier", - "operationId": "getAuthorization", - "parameters": [ - { - "name": "authorizationId", - "in": "path", - "description": "The identifier of the stored authorization.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "404": { - "description": "Not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "servers" : [ { + "url" : "http://localhost", + "description" : "Generated server url" + } ], + "tags" : [ { + "name" : "Enrolled Orgs", + "description" : "Everything about enrolled organizations" + }, { + "name" : "Cached Authorizations", + "description" : "Everything about cached authorizations" + }, { + "name" : "Authorizations", + "description" : "Everything about authorizations" + } ], + "paths" : { + "/authorizations/{authorizationId}" : { + "get" : { + "tags" : [ "Authorizations" ], + "summary" : "Get authorization by identifier", + "operationId" : "getAuthorization", + "parameters" : [ { + "name" : "authorizationId", + "in" : "path", + "description" : "The identifier of the stored authorization.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "403": { - "description": "Forbidden" + "429" : { + "description" : "Too many requests" }, - "401": { - "description": "Unauthorized" - }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "404" : { + "description" : "Not found", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] }, - "put": { - "tags": [ - "Authorizations" - ], - "summary": "Update existing authorization", - "operationId": "updateAuthorization", - "parameters": [ - { - "name": "authorizationId", - "in": "path", - "description": "The identifier of the stored authorization.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Authorization" + "put" : { + "tags" : [ "Authorizations" ], + "summary" : "Update existing authorization", + "operationId" : "updateAuthorization", + "parameters" : [ { + "name" : "authorizationId", + "in" : "path", + "description" : "The identifier of the stored authorization.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Authorization" } } }, - "required": true + "required" : true }, - "responses": { - "404": { - "description": "Not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "403": { - "description": "Forbidden" + "429" : { + "description" : "Too many requests" }, - "401": { - "description": "Unauthorized" - }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "404" : { + "description" : "Not found", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] }, - "delete": { - "tags": [ - "Authorizations" - ], - "summary": "Delete existing authorization", - "operationId": "deleteAuthorization", - "parameters": [ - { - "name": "authorizationId", - "in": "path", - "description": "The identifier of the stored authorization.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "404": { - "description": "Not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "delete" : { + "tags" : [ "Authorizations" ], + "summary" : "Delete existing authorization", + "operationId" : "deleteAuthorization", + "parameters" : [ { + "name" : "authorizationId", + "in" : "path", + "description" : "The identifier of the stored authorization.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK" + }, + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "200": { - "description": "OK" - }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" - }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "404" : { + "description" : "Not found", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/cachedauthorizations/{domain}/refresh": { - "post": { - "tags": [ - "Cached Authorizations" - ], - "summary": "Refresh cached authorizations by domain and owner", - "operationId": "refreshCachedAuthorizations", - "parameters": [ - { - "name": "domain", - "in": "path", - "description": "The domain on which the authorizations will be filtered.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ownerId", - "in": "query", - "description": "The identifier of the authorizations' owner.", - "required": true, - "schema": { - "type": "string" + "/cachedauthorizations/{domain}/refresh" : { + "post" : { + "tags" : [ "Cached Authorizations" ], + "summary" : "Refresh cached authorizations by domain and owner", + "operationId" : "refreshCachedAuthorizations", + "parameters" : [ { + "name" : "domain", + "in" : "path", + "description" : "The domain on which the authorizations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "ownerId", + "in" : "query", + "description" : "The identifier of the authorizations' owner.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" + } + } } - } - ], - "responses": { - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" }, - "429": { - "description": "Too many requests" - }, - "200": { - "description": "OK", - "content": { - "application/json": {} + "200" : { + "description" : "OK", + "content" : { + "application/json" : { } } }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" - } - } - } + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/authorizations": { - "get": { - "tags": [ - "Authorizations" - ], - "summary": "Get authorization list", - "operationId": "getAuthorizations_1", - "parameters": [ - { - "name": "domain", - "in": "query", - "description": "The domain on which the authorizations will be filtered.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ownerId", - "in": "query", - "description": "The identifier of the authorizations' owner.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "limit", - "in": "query", - "description": "The number of elements to be included in the page.", - "required": true, - "schema": { - "maximum": 999, - "type": "integer", - "format": "int32", - "default": 10 - } - }, - { - "name": "page", - "in": "query", - "description": "The index of the page, starting from 0.", - "required": true, - "schema": { - "minimum": 0, - "type": "integer", - "format": "int32", - "default": 0 - } - } - ], - "responses": { - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" - }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "/authorizations" : { + "get" : { + "tags" : [ "Authorizations" ], + "summary" : "Get authorization list", + "operationId" : "getAuthorizations_1", + "parameters" : [ { + "name" : "domain", + "in" : "query", + "description" : "The domain on which the authorizations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "ownerId", + "in" : "query", + "description" : "The identifier of the authorizations' owner.", + "required" : false, + "schema" : { + "type" : "string" + } + }, { + "name" : "limit", + "in" : "query", + "description" : "The number of elements to be included in the page.", + "required" : true, + "schema" : { + "maximum" : 999, + "type" : "integer", + "format" : "int32", + "default" : 10 + } + }, { + "name" : "page", + "in" : "query", + "description" : "The index of the page, starting from 0.", + "required" : true, + "schema" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "default" : 0 + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "429": { - "description": "Too many requests" + "429" : { + "description" : "Too many requests" }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] }, - "post": { - "tags": [ - "Authorizations" - ], - "summary": "Create new authorization", - "operationId": "createAuthorization", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Authorization" + "post" : { + "tags" : [ "Authorizations" ], + "summary" : "Create new authorization", + "operationId" : "createAuthorization", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Authorization" } } }, - "required": true + "required" : true }, - "responses": { - "409": { - "description": "Conflict", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "403": { - "description": "Forbidden" + "429" : { + "description" : "Too many requests" }, - "401": { - "description": "Unauthorized" - }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" + "401" : { + "description" : "Unauthorized" }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "409" : { + "description" : "Conflict", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/organizations/{organizationfiscalcode}/domains/{domain}": { - "get": { - "tags": [ - "Enrolled Orgs" - ], - "summary": "Get list of stations associated to organizations enrolled to a specific domain", - "operationId": "getStationsForEnrolledOrganizations", - "parameters": [ - { - "name": "organizationfiscalcode", - "in": "path", - "description": "The enrolled organization on which the stations will be extracted.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "domain", - "in": "path", - "description": "The domain on which the stations will be filtered.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnrolledCreditorInstitutionList" + "/organizations/{organizationfiscalcode}/domains/{domain}" : { + "get" : { + "tags" : [ "Enrolled Orgs" ], + "summary" : "Get list of stations associated to organizations enrolled to a specific domain", + "operationId" : "getStationsForEnrolledOrganizations", + "parameters" : [ { + "name" : "organizationfiscalcode", + "in" : "path", + "description" : "The enrolled organization on which the stations will be extracted.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "domain", + "in" : "path", + "description" : "The domain on which the stations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" - }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/EnrolledCreditorInstitutionList" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/organizations/domains/{domain}": { - "get": { - "tags": [ - "Enrolled Orgs" - ], - "summary": "Get list of organizations enrolled to a specific domain", - "operationId": "getEnrolledOrganizations", - "parameters": [ - { - "name": "domain", - "in": "path", - "description": "The domain on which the organizations will be filtered.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnrolledCreditorInstitutionList" + "/organizations/domains/{domain}" : { + "get" : { + "tags" : [ "Enrolled Orgs" ], + "summary" : "Get list of organizations enrolled to a specific domain", + "operationId" : "getEnrolledOrganizations", + "parameters" : [ { + "name" : "domain", + "in" : "path", + "description" : "The domain on which the organizations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" - }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/EnrolledCreditorInstitutionList" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/info": { - "get": { - "tags": [ - "Home" - ], - "summary": "Return OK if application is started", - "operationId": "healthCheck", - "responses": { - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "/info" : { + "get" : { + "tags" : [ "Home" ], + "summary" : "Return OK if application is started", + "operationId" : "healthCheck", + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AppInfo" } } } }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AppInfo" + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" - }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "400" : { + "description" : "Bad Request", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/cachedauthorizations": { - "get": { - "tags": [ - "Cached Authorizations" - ], - "summary": "Get cached authorizations", - "operationId": "getAuthorizations", - "parameters": [ - { - "name": "domain", - "in": "query", - "description": "The domain on which the authorizations will be filtered.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ownerId", - "in": "query", - "description": "The identifier of the authorizations' owner.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "formatTTL", - "in": "query", - "description": "The identifier of the authorizations' owner.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CachedAuthorizationList" + "/cachedauthorizations" : { + "get" : { + "tags" : [ "Cached Authorizations" ], + "summary" : "Get cached authorizations", + "operationId" : "getAuthorizations", + "parameters" : [ { + "name" : "domain", + "in" : "query", + "description" : "The domain on which the authorizations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "ownerId", + "in" : "query", + "description" : "The identifier of the authorizations' owner.", + "required" : false, + "schema" : { + "type" : "string" + } + }, { + "name" : "formatTTL", + "in" : "query", + "description" : "The identifier of the authorizations' owner.", + "required" : false, + "schema" : { + "type" : "boolean", + "default" : true + } + } ], + "responses" : { + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CachedAuthorizationList" } } } }, - "403": { - "description": "Forbidden" + "403" : { + "description" : "Forbidden" }, - "401": { - "description": "Unauthorized" + "429" : { + "description" : "Too many requests" }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/authorizations/subkey/{subscriptionKey}": { - "get": { - "tags": [ - "Authorizations" - ], - "summary": "Get authorization by subscription key", - "operationId": "getAuthorizationBySubscriptionKey", - "parameters": [ - { - "name": "subscriptionKey", - "in": "path", - "description": "The subscription key related to the stored authorization.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "404": { - "description": "Not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "/authorizations/subkey/{subscriptionKey}" : { + "get" : { + "tags" : [ "Authorizations" ], + "summary" : "Get authorization by subscription key", + "operationId" : "getAuthorizationBySubscriptionKey", + "parameters" : [ { + "name" : "subscriptionKey", + "in" : "path", + "description" : "The subscription key related to the stored authorization.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" + "429" : { + "description" : "Too many requests" }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "404" : { + "description" : "Not found", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } } }, - "components": { - "schemas": { - "Authorization": { - "required": [ - "authorized_entities", - "domain", - "other_metadata", - "owner", - "subscription_key" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the saved authorization, automatically generated during creation as UUID." - }, - "domain": { - "type": "string", - "description": "The domain to which the authorization belongs, within which it has validity. Typically, it is defined by choosing from a pool of tags that already exist and are used by the various membership domains." - }, - "subscription_key": { - "type": "string", - "description": "The value of the subscription key to be associated with the stored authorization. This key is assigned to an entity that wants to interface with a pagoPA service via APIM, and is the pivotal element on which the Authorizer system will make its evaluations. No two authorizations can exist with the same domain-subscription_key value pair." - }, - "description": { - "type": "string", - "description": "An optional description useful to add more information about the scope of the authorization, defining information also impossible to include in the other tags." - }, - "owner": { - "$ref": "#/components/schemas/AuthorizationOwner" - }, - "authorized_entities": { - "type": "array", - "description": "The authorized entity list, which are the resource identifiers that the caller includes in requests that define which objects the entity is authorized to operate on. It consists of a key-value map in which the entity name and its identifier are defined, respectively, in order to make maintenance easier.", - "items": { - "$ref": "#/components/schemas/AuthorizationEntity" - } - }, - "other_metadata": { - "type": "array", - "description": "The list of authorization metadata, useful for performing other types of computation after the authorization process.", - "items": { - "$ref": "#/components/schemas/AuthorizationMetadata" - } - }, - "inserted_at": { - "type": "string", - "description": "The date of authorization entry. This value is set only in authorization creation operations.", - "readOnly": true - }, - "last_update": { - "type": "string", - "description": "The date of last authorization update. It is only visible as output in read requests.", - "readOnly": true - }, - "last_forced_refresh": { - "type": "string", - "description": "The date of last forced refresh of the authorization. It is updated only when the forced refresh API is executed.", - "readOnly": true + "components" : { + "schemas" : { + "Authorization" : { + "required" : [ "authorized_entities", "domain", "other_metadata", "owner", "subscription_key" ], + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "description" : "The identifier of the saved authorization, automatically generated during creation as UUID." + }, + "domain" : { + "type" : "string", + "description" : "The domain to which the authorization belongs, within which it has validity. Typically, it is defined by choosing from a pool of tags that already exist and are used by the various membership domains." + }, + "subscription_key" : { + "type" : "string", + "description" : "The value of the subscription key to be associated with the stored authorization. This key is assigned to an entity that wants to interface with a pagoPA service via APIM, and is the pivotal element on which the Authorizer system will make its evaluations. No two authorizations can exist with the same domain-subscription_key value pair." + }, + "description" : { + "type" : "string", + "description" : "An optional description useful to add more information about the scope of the authorization, defining information also impossible to include in the other tags." + }, + "owner" : { + "$ref" : "#/components/schemas/AuthorizationOwner" + }, + "authorized_entities" : { + "type" : "array", + "description" : "The authorized entity list, which are the resource identifiers that the caller includes in requests that define which objects the entity is authorized to operate on. It consists of a key-value map in which the entity name and its identifier are defined, respectively, in order to make maintenance easier.", + "items" : { + "$ref" : "#/components/schemas/AuthorizationEntity" + } + }, + "other_metadata" : { + "type" : "array", + "description" : "The list of authorization metadata, useful for performing other types of computation after the authorization process.", + "items" : { + "$ref" : "#/components/schemas/AuthorizationMetadata" + } + }, + "inserted_at" : { + "type" : "string", + "description" : "The date of authorization entry. This value is set only in authorization creation operations.", + "readOnly" : true + }, + "last_update" : { + "type" : "string", + "description" : "The date of last authorization update. It is only visible as output in read requests.", + "readOnly" : true + }, + "last_forced_refresh" : { + "type" : "string", + "description" : "The date of last forced refresh of the authorization. It is updated only when the forced refresh API is executed.", + "readOnly" : true } }, - "description": "The list of authorization retrieved from search." + "description" : "The list of authorization retrieved from search." }, - "AuthorizationEntity": { - "required": [ - "name", - "value", - "values" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name or the description associated to the authorization entity in order to reference it in a more human-readable mode." - }, - "value": { - "type": "string", - "description": "The single simple value related to an entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object." - }, - "values": { - "type": "array", - "description": "The multiple composite sub-values which concatenation forms a complex entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object.", - "items": { - "type": "string", - "description": "The multiple composite sub-values which concatenation forms a complex entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object." + "AuthorizationEntity" : { + "required" : [ "name", "value", "values" ], + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "description" : "The name or the description associated to the authorization entity in order to reference it in a more human-readable mode." + }, + "value" : { + "type" : "string", + "description" : "The single simple value related to an entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object." + }, + "values" : { + "type" : "array", + "description" : "The multiple composite sub-values which concatenation forms a complex entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object.", + "items" : { + "type" : "string", + "description" : "The multiple composite sub-values which concatenation forms a complex entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object." } } }, - "description": "The authorized entity list, which are the resource identifiers that the caller includes in requests that define which objects the entity is authorized to operate on. It consists of a key-value map in which the entity name and its identifier are defined, respectively, in order to make maintenance easier." + "description" : "The authorized entity list, which are the resource identifiers that the caller includes in requests that define which objects the entity is authorized to operate on. It consists of a key-value map in which the entity name and its identifier are defined, respectively, in order to make maintenance easier." }, - "AuthorizationGenericKeyValue": { - "required": [ - "key", - "value", - "values" - ], - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "The key used to reference the metadata into the related map." - }, - "value": { - "type": "string", - "description": "The single simple value related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object." - }, - "values": { - "type": "array", - "description": "The set of values related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object.", - "items": { - "type": "string", - "description": "The set of values related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object." + "AuthorizationGenericKeyValue" : { + "required" : [ "key", "value", "values" ], + "type" : "object", + "properties" : { + "key" : { + "type" : "string", + "description" : "The key used to reference the metadata into the related map." + }, + "value" : { + "type" : "string", + "description" : "The single simple value related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object." + }, + "values" : { + "type" : "array", + "description" : "The set of values related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object.", + "items" : { + "type" : "string", + "description" : "The set of values related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object." } } }, - "description": "A key-value map that defines the actual content of the metadata to be stored." + "description" : "A key-value map that defines the actual content of the metadata to be stored." }, - "AuthorizationMetadata": { - "required": [ - "content", - "name", - "short_key" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A description that defines the full name of the metadata." - }, - "short_key": { - "pattern": "_[a-zA-Z0-9]{1,3}", - "type": "string", - "description": "The key that defines an abbreviation by which it will be identified in cached maps." - }, - "content": { - "type": "array", - "description": "A key-value map that defines the actual content of the metadata to be stored.", - "items": { - "$ref": "#/components/schemas/AuthorizationGenericKeyValue" + "AuthorizationMetadata" : { + "required" : [ "content", "name", "short_key" ], + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "description" : "A description that defines the full name of the metadata." + }, + "short_key" : { + "pattern" : "_[a-zA-Z0-9]{1,3}", + "type" : "string", + "description" : "The key that defines an abbreviation by which it will be identified in cached maps." + }, + "content" : { + "type" : "array", + "description" : "A key-value map that defines the actual content of the metadata to be stored.", + "items" : { + "$ref" : "#/components/schemas/AuthorizationGenericKeyValue" } } }, - "description": "The list of authorization metadata, useful for performing other types of computation after the authorization process." + "description" : "The list of authorization metadata, useful for performing other types of computation after the authorization process." }, - "AuthorizationOwner": { - "required": [ - "id", - "name", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the authorization owner. This can be the fiscal code of the entity/intermediary or other information that uniquely identifies that entity." - }, - "name": { - "type": "string", - "description": "The name of the authorization owner, useful in order to make an authorization more human-readable. It can be the entity's business name or any other information that helps its recognition." - }, - "type": { - "type": "string", - "description": "The authorization owner type, useful both for adding an additional recognizable 'label' to the subject and for use as a search filter.", - "enum": [ - "BROKER", - "CI", - "OTHER", - "PSP" - ] + "AuthorizationOwner" : { + "required" : [ "id", "name", "type" ], + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "description" : "The identifier of the authorization owner. This can be the fiscal code of the entity/intermediary or other information that uniquely identifies that entity." + }, + "name" : { + "type" : "string", + "description" : "The name of the authorization owner, useful in order to make an authorization more human-readable. It can be the entity's business name or any other information that helps its recognition." + }, + "type" : { + "type" : "string", + "description" : "The authorization owner type, useful both for adding an additional recognizable 'label' to the subject and for use as a search filter.", + "enum" : [ "BROKER", "CI", "OTHER", "PSP" ] } }, - "description": "The information about the owner of the authorization. These information are required in order to make maintenance easier and performs some kind of search operations." + "description" : "The information about the owner of the authorization. These information are required in order to make maintenance easier and performs some kind of search operations." }, - "ProblemJson": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "A short, summary of the problem type. Written in english and readable for engineers (usually not suited for non technical stakeholders and not localized); example: Service Unavailable" - }, - "status": { - "maximum": 600, - "minimum": 100, - "type": "integer", - "description": "The HTTP status code generated by the origin server for this occurrence of the problem.", - "format": "int32", - "example": 200 - }, - "detail": { - "type": "string", - "description": "A human readable explanation specific to this occurrence of the problem.", - "example": "There was an error processing the request" - } - } - }, - "AuthorizationList": { - "required": [ - "authorizations", - "page_info" - ], - "type": "object", - "properties": { - "authorizations": { - "type": "array", - "description": "The list of authorization retrieved from search.", - "items": { - "$ref": "#/components/schemas/Authorization" + "AuthorizationList" : { + "required" : [ "authorizations", "page_info" ], + "type" : "object", + "properties" : { + "authorizations" : { + "type" : "array", + "description" : "The list of authorization retrieved from search.", + "items" : { + "$ref" : "#/components/schemas/Authorization" } }, - "page_info": { - "$ref": "#/components/schemas/PageInfo" + "page_info" : { + "$ref" : "#/components/schemas/PageInfo" } } }, - "PageInfo": { - "required": [ - "items_found", - "limit", - "page", - "total_pages" - ], - "type": "object", - "properties": { - "page": { - "type": "integer", - "description": "The page number", - "format": "int32" - }, - "limit": { - "type": "integer", - "description": "The required maximum number of items per page", - "format": "int32" - }, - "items_found": { - "type": "integer", - "description": "The number of items found. (The last page may have fewer elements than required)", - "format": "int32" - }, - "total_pages": { - "type": "integer", - "description": "The total number of pages", - "format": "int32" + "PageInfo" : { + "required" : [ "items_found", "limit", "page", "total_pages" ], + "type" : "object", + "properties" : { + "page" : { + "type" : "integer", + "description" : "The page number", + "format" : "int32" + }, + "limit" : { + "type" : "integer", + "description" : "The required maximum number of items per page", + "format" : "int32" + }, + "items_found" : { + "type" : "integer", + "description" : "The number of items found. (The last page may have fewer elements than required)", + "format" : "int32" + }, + "total_pages" : { + "type" : "integer", + "description" : "The total number of pages", + "format" : "int32" } }, - "description": "The information related to the paginated results." + "description" : "The information related to the paginated results." + }, + "ProblemJson" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string", + "description" : "A short, summary of the problem type. Written in english and readable for engineers (usually not suited for non technical stakeholders and not localized); example: Service Unavailable" + }, + "status" : { + "maximum" : 600, + "minimum" : 100, + "type" : "integer", + "description" : "The HTTP status code generated by the origin server for this occurrence of the problem.", + "format" : "int32", + "example" : 200 + }, + "detail" : { + "type" : "string", + "description" : "A human readable explanation specific to this occurrence of the problem.", + "example" : "There was an error processing the request" + } + } }, - "EnrolledCreditorInstitution": { - "required": [ - "organization_fiscal_code", - "segregation_codes" - ], - "type": "object", - "properties": { - "organization_fiscal_code": { - "type": "string", - "description": "The fiscal code related to the creditor institution." - }, - "segregation_codes": { - "type": "array", - "description": "The list of segregation codes used by the creditor institution to register a station for the required service domain.", - "items": { - "type": "string", - "description": "The list of segregation codes used by the creditor institution to register a station for the required service domain." + "EnrolledCreditorInstitution" : { + "required" : [ "organization_fiscal_code", "segregation_codes" ], + "type" : "object", + "properties" : { + "organization_fiscal_code" : { + "type" : "string", + "description" : "The fiscal code related to the creditor institution." + }, + "segregation_codes" : { + "type" : "array", + "description" : "The list of segregation codes used by the creditor institution to register a station for the required service domain.", + "items" : { + "type" : "string", + "description" : "The list of segregation codes used by the creditor institution to register a station for the required service domain." } } }, - "description": "The list of creditor institution enrolled to the Authorizer service." + "description" : "The list of creditor institution enrolled to the Authorizer service." }, - "EnrolledCreditorInstitutionList": { - "required": [ - "creditor_institutions" - ], - "type": "object", - "properties": { - "creditor_institutions": { - "type": "array", - "description": "The list of creditor institution enrolled to the Authorizer service.", - "items": { - "$ref": "#/components/schemas/EnrolledCreditorInstitution" + "EnrolledCreditorInstitutionList" : { + "required" : [ "creditor_institutions" ], + "type" : "object", + "properties" : { + "creditor_institutions" : { + "type" : "array", + "description" : "The list of creditor institution enrolled to the Authorizer service.", + "items" : { + "$ref" : "#/components/schemas/EnrolledCreditorInstitution" } } } }, - "AppInfo": { - "type": "object", - "properties": { - "name": { - "type": "string" + "AppInfo" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" }, - "version": { - "type": "string" + "version" : { + "type" : "string" }, - "environment": { - "type": "string" + "environment" : { + "type" : "string" }, - "dbConnection": { - "type": "string" + "dbConnection" : { + "type" : "string" } } }, - "CachedAuthorization": { - "required": [ - "ttl" - ], - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "The description that is associated with particular noteworthy items to be added to the list of cached information." - }, - "owner": { - "type": "string", - "description": "The identifier of the authorization owner. This can be the fiscal code of the entity/intermediary or other information that uniquely identifies that entity." - }, - "subscription_key": { - "type": "string", - "description": "The value of the subscription key associated with the cached authorization." - }, - "ttl": { - "type": "string", - "description": "The remaining Time-to-Live related to the cached authorization. This can be formatted either in seconds format or in a particular format that follows the structure 'XXh YYm ZZs'." + "CachedAuthorization" : { + "required" : [ "ttl" ], + "type" : "object", + "properties" : { + "description" : { + "type" : "string", + "description" : "The description that is associated with particular noteworthy items to be added to the list of cached information." + }, + "owner" : { + "type" : "string", + "description" : "The identifier of the authorization owner. This can be the fiscal code of the entity/intermediary or other information that uniquely identifies that entity." + }, + "subscription_key" : { + "type" : "string", + "description" : "The value of the subscription key associated with the cached authorization." + }, + "ttl" : { + "type" : "string", + "description" : "The remaining Time-to-Live related to the cached authorization. This can be formatted either in seconds format or in a particular format that follows the structure 'XXh YYm ZZs'." } }, - "description": "The list of authorization cached in Authorizer system." + "description" : "The list of authorization cached in Authorizer system." }, - "CachedAuthorizationList": { - "required": [ - "cached_authorizations" - ], - "type": "object", - "properties": { - "cached_authorizations": { - "type": "array", - "description": "The list of authorization cached in Authorizer system.", - "items": { - "$ref": "#/components/schemas/CachedAuthorization" + "CachedAuthorizationList" : { + "required" : [ "cached_authorizations" ], + "type" : "object", + "properties" : { + "cached_authorizations" : { + "type" : "array", + "description" : "The list of authorization cached in Authorizer system.", + "items" : { + "$ref" : "#/components/schemas/CachedAuthorization" } } } } }, - "securitySchemes": { - "ApiKey": { - "type": "apiKey", - "description": "The API key to access this function app.", - "name": "Ocp-Apim-Subscription-Key", - "in": "header" + "securitySchemes" : { + "ApiKey" : { + "type" : "apiKey", + "description" : "The API key to access this function app.", + "name" : "Ocp-Apim-Subscription-Key", + "in" : "header" } } } -} +} \ No newline at end of file diff --git a/openapi/openapi_core.json b/openapi/openapi_core.json index bdb2d95..479702a 100644 --- a/openapi/openapi_core.json +++ b/openapi/openapi_core.json @@ -1,946 +1,846 @@ { - "openapi": "3.0.1", - "info": { - "title": "platform-authorizer-config", - "description": "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", - "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-5-upd-helm-chart" + "openapi" : "3.0.1", + "info" : { + "title" : "platform-authorizer-config", + "description" : "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", + "termsOfService" : "https://www.pagopa.gov.it/", + "version" : "0.2.3-5-upd-helm-chart" }, - "servers": [ - { - "url": "http://localhost", - "description": "Generated server url" - } - ], - "tags": [ - { - "name": "Cached Authorizations", - "description": "Everything about cached authorizations" - }, - { - "name": "Authorizations", - "description": "Everything about authorizations" - } - ], - "paths": { - "/authorizations/{authorizationId}": { - "get": { - "tags": [ - "Authorizations" - ], - "summary": "Get authorization by identifier", - "operationId": "getAuthorization", - "parameters": [ - { - "name": "authorizationId", - "in": "path", - "description": "The identifier of the stored authorization.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "404": { - "description": "Not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "servers" : [ { + "url" : "http://localhost", + "description" : "Generated server url" + } ], + "tags" : [ { + "name" : "Cached Authorizations", + "description" : "Everything about cached authorizations" + }, { + "name" : "Authorizations", + "description" : "Everything about authorizations" + } ], + "paths" : { + "/authorizations/{authorizationId}" : { + "get" : { + "tags" : [ "Authorizations" ], + "summary" : "Get authorization by identifier", + "operationId" : "getAuthorization", + "parameters" : [ { + "name" : "authorizationId", + "in" : "path", + "description" : "The identifier of the stored authorization.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "403": { - "description": "Forbidden" + "429" : { + "description" : "Too many requests" }, - "401": { - "description": "Unauthorized" - }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "404" : { + "description" : "Not found", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] }, - "put": { - "tags": [ - "Authorizations" - ], - "summary": "Update existing authorization", - "operationId": "updateAuthorization", - "parameters": [ - { - "name": "authorizationId", - "in": "path", - "description": "The identifier of the stored authorization.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Authorization" + "put" : { + "tags" : [ "Authorizations" ], + "summary" : "Update existing authorization", + "operationId" : "updateAuthorization", + "parameters" : [ { + "name" : "authorizationId", + "in" : "path", + "description" : "The identifier of the stored authorization.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Authorization" } } }, - "required": true + "required" : true }, - "responses": { - "404": { - "description": "Not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" + "429" : { + "description" : "Too many requests" }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "404" : { + "description" : "Not found", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] }, - "delete": { - "tags": [ - "Authorizations" - ], - "summary": "Delete existing authorization", - "operationId": "deleteAuthorization", - "parameters": [ - { - "name": "authorizationId", - "in": "path", - "description": "The identifier of the stored authorization.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "404": { - "description": "Not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "delete" : { + "tags" : [ "Authorizations" ], + "summary" : "Delete existing authorization", + "operationId" : "deleteAuthorization", + "parameters" : [ { + "name" : "authorizationId", + "in" : "path", + "description" : "The identifier of the stored authorization.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK" + }, + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "200": { - "description": "OK" - }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" - }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "404" : { + "description" : "Not found", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/cachedauthorizations/{domain}/refresh": { - "post": { - "tags": [ - "Cached Authorizations" - ], - "summary": "Refresh cached authorizations by domain and owner", - "operationId": "refreshCachedAuthorizations", - "parameters": [ - { - "name": "domain", - "in": "path", - "description": "The domain on which the authorizations will be filtered.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ownerId", - "in": "query", - "description": "The identifier of the authorizations' owner.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" - }, - "429": { - "description": "Too many requests" - }, - "200": { - "description": "OK", - "content": { - "application/json": {} - } - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "/cachedauthorizations/{domain}/refresh" : { + "post" : { + "tags" : [ "Cached Authorizations" ], + "summary" : "Refresh cached authorizations by domain and owner", + "operationId" : "refreshCachedAuthorizations", + "parameters" : [ { + "name" : "domain", + "in" : "path", + "description" : "The domain on which the authorizations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "ownerId", + "in" : "query", + "description" : "The identifier of the authorizations' owner.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { } + } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/authorizations": { - "get": { - "tags": [ - "Authorizations" - ], - "summary": "Get authorization list", - "operationId": "getAuthorizations_1", - "parameters": [ - { - "name": "domain", - "in": "query", - "description": "The domain on which the authorizations will be filtered.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ownerId", - "in": "query", - "description": "The identifier of the authorizations' owner.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "limit", - "in": "query", - "description": "The number of elements to be included in the page.", - "required": true, - "schema": { - "maximum": 999, - "type": "integer", - "format": "int32", - "default": 10 - } - }, - { - "name": "page", - "in": "query", - "description": "The index of the page, starting from 0.", - "required": true, - "schema": { - "minimum": 0, - "type": "integer", - "format": "int32", - "default": 0 - } - } - ], - "responses": { - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" - }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "/authorizations" : { + "get" : { + "tags" : [ "Authorizations" ], + "summary" : "Get authorization list", + "operationId" : "getAuthorizations_1", + "parameters" : [ { + "name" : "domain", + "in" : "query", + "description" : "The domain on which the authorizations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "ownerId", + "in" : "query", + "description" : "The identifier of the authorizations' owner.", + "required" : false, + "schema" : { + "type" : "string" + } + }, { + "name" : "limit", + "in" : "query", + "description" : "The number of elements to be included in the page.", + "required" : true, + "schema" : { + "maximum" : 999, + "type" : "integer", + "format" : "int32", + "default" : 10 + } + }, { + "name" : "page", + "in" : "query", + "description" : "The index of the page, starting from 0.", + "required" : true, + "schema" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "default" : 0 + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "429": { - "description": "Too many requests" + "429" : { + "description" : "Too many requests" }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] }, - "post": { - "tags": [ - "Authorizations" - ], - "summary": "Create new authorization", - "operationId": "createAuthorization", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Authorization" + "post" : { + "tags" : [ "Authorizations" ], + "summary" : "Create new authorization", + "operationId" : "createAuthorization", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Authorization" } } }, - "required": true + "required" : true }, - "responses": { - "409": { - "description": "Conflict", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" + "429" : { + "description" : "Too many requests" }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" + "401" : { + "description" : "Unauthorized" }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "409" : { + "description" : "Conflict", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/info": { - "get": { - "tags": [ - "Home" - ], - "summary": "Return OK if application is started", - "operationId": "healthCheck", - "responses": { - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "/info" : { + "get" : { + "tags" : [ "Home" ], + "summary" : "Return OK if application is started", + "operationId" : "healthCheck", + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AppInfo" } } } }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AppInfo" + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" - }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "400" : { + "description" : "Bad Request", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/cachedauthorizations": { - "get": { - "tags": [ - "Cached Authorizations" - ], - "summary": "Get cached authorizations", - "operationId": "getAuthorizations", - "parameters": [ - { - "name": "domain", - "in": "query", - "description": "The domain on which the authorizations will be filtered.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ownerId", - "in": "query", - "description": "The identifier of the authorizations' owner.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "formatTTL", - "in": "query", - "description": "The identifier of the authorizations' owner.", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CachedAuthorizationList" + "/cachedauthorizations" : { + "get" : { + "tags" : [ "Cached Authorizations" ], + "summary" : "Get cached authorizations", + "operationId" : "getAuthorizations", + "parameters" : [ { + "name" : "domain", + "in" : "query", + "description" : "The domain on which the authorizations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "ownerId", + "in" : "query", + "description" : "The identifier of the authorizations' owner.", + "required" : false, + "schema" : { + "type" : "string" + } + }, { + "name" : "formatTTL", + "in" : "query", + "description" : "The identifier of the authorizations' owner.", + "required" : false, + "schema" : { + "type" : "boolean", + "default" : true + } + } ], + "responses" : { + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CachedAuthorizationList" } } } }, - "403": { - "description": "Forbidden" + "403" : { + "description" : "Forbidden" }, - "401": { - "description": "Unauthorized" + "429" : { + "description" : "Too many requests" }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/authorizations/subkey/{subscriptionKey}": { - "get": { - "tags": [ - "Authorizations" - ], - "summary": "Get authorization by subscription key", - "operationId": "getAuthorizationBySubscriptionKey", - "parameters": [ - { - "name": "subscriptionKey", - "in": "path", - "description": "The subscription key related to the stored authorization.", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "404": { - "description": "Not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "/authorizations/subkey/{subscriptionKey}" : { + "get" : { + "tags" : [ "Authorizations" ], + "summary" : "Get authorization by subscription key", + "operationId" : "getAuthorizationBySubscriptionKey", + "parameters" : [ { + "name" : "subscriptionKey", + "in" : "path", + "description" : "The subscription key related to the stored authorization.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AuthorizationList" } } } }, - "403": { - "description": "Forbidden" - }, - "401": { - "description": "Unauthorized" + "429" : { + "description" : "Too many requests" }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuthorizationList" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "404" : { + "description" : "Not found", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } } }, - "components": { - "schemas": { - "Authorization": { - "required": [ - "authorized_entities", - "domain", - "other_metadata", - "owner", - "subscription_key" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the saved authorization, automatically generated during creation as UUID." - }, - "domain": { - "type": "string", - "description": "The domain to which the authorization belongs, within which it has validity. Typically, it is defined by choosing from a pool of tags that already exist and are used by the various membership domains." - }, - "subscription_key": { - "type": "string", - "description": "The value of the subscription key to be associated with the stored authorization. This key is assigned to an entity that wants to interface with a pagoPA service via APIM, and is the pivotal element on which the Authorizer system will make its evaluations. No two authorizations can exist with the same domain-subscription_key value pair." - }, - "description": { - "type": "string", - "description": "An optional description useful to add more information about the scope of the authorization, defining information also impossible to include in the other tags." - }, - "owner": { - "$ref": "#/components/schemas/AuthorizationOwner" - }, - "authorized_entities": { - "type": "array", - "description": "The authorized entity list, which are the resource identifiers that the caller includes in requests that define which objects the entity is authorized to operate on. It consists of a key-value map in which the entity name and its identifier are defined, respectively, in order to make maintenance easier.", - "items": { - "$ref": "#/components/schemas/AuthorizationEntity" - } - }, - "other_metadata": { - "type": "array", - "description": "The list of authorization metadata, useful for performing other types of computation after the authorization process.", - "items": { - "$ref": "#/components/schemas/AuthorizationMetadata" - } - }, - "inserted_at": { - "type": "string", - "description": "The date of authorization entry. This value is set only in authorization creation operations.", - "readOnly": true - }, - "last_update": { - "type": "string", - "description": "The date of last authorization update. It is only visible as output in read requests.", - "readOnly": true - }, - "last_forced_refresh": { - "type": "string", - "description": "The date of last forced refresh of the authorization. It is updated only when the forced refresh API is executed.", - "readOnly": true + "components" : { + "schemas" : { + "Authorization" : { + "required" : [ "authorized_entities", "domain", "other_metadata", "owner", "subscription_key" ], + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "description" : "The identifier of the saved authorization, automatically generated during creation as UUID." + }, + "domain" : { + "type" : "string", + "description" : "The domain to which the authorization belongs, within which it has validity. Typically, it is defined by choosing from a pool of tags that already exist and are used by the various membership domains." + }, + "subscription_key" : { + "type" : "string", + "description" : "The value of the subscription key to be associated with the stored authorization. This key is assigned to an entity that wants to interface with a pagoPA service via APIM, and is the pivotal element on which the Authorizer system will make its evaluations. No two authorizations can exist with the same domain-subscription_key value pair." + }, + "description" : { + "type" : "string", + "description" : "An optional description useful to add more information about the scope of the authorization, defining information also impossible to include in the other tags." + }, + "owner" : { + "$ref" : "#/components/schemas/AuthorizationOwner" + }, + "authorized_entities" : { + "type" : "array", + "description" : "The authorized entity list, which are the resource identifiers that the caller includes in requests that define which objects the entity is authorized to operate on. It consists of a key-value map in which the entity name and its identifier are defined, respectively, in order to make maintenance easier.", + "items" : { + "$ref" : "#/components/schemas/AuthorizationEntity" + } + }, + "other_metadata" : { + "type" : "array", + "description" : "The list of authorization metadata, useful for performing other types of computation after the authorization process.", + "items" : { + "$ref" : "#/components/schemas/AuthorizationMetadata" + } + }, + "inserted_at" : { + "type" : "string", + "description" : "The date of authorization entry. This value is set only in authorization creation operations.", + "readOnly" : true + }, + "last_update" : { + "type" : "string", + "description" : "The date of last authorization update. It is only visible as output in read requests.", + "readOnly" : true + }, + "last_forced_refresh" : { + "type" : "string", + "description" : "The date of last forced refresh of the authorization. It is updated only when the forced refresh API is executed.", + "readOnly" : true } }, - "description": "The list of authorization retrieved from search." + "description" : "The list of authorization retrieved from search." }, - "AuthorizationEntity": { - "required": [ - "name", - "value", - "values" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name or the description associated to the authorization entity in order to reference it in a more human-readable mode." - }, - "value": { - "type": "string", - "description": "The single simple value related to an entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object." - }, - "values": { - "type": "array", - "description": "The multiple composite sub-values which concatenation forms a complex entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object.", - "items": { - "type": "string", - "description": "The multiple composite sub-values which concatenation forms a complex entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object." + "AuthorizationEntity" : { + "required" : [ "name", "value", "values" ], + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "description" : "The name or the description associated to the authorization entity in order to reference it in a more human-readable mode." + }, + "value" : { + "type" : "string", + "description" : "The single simple value related to an entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object." + }, + "values" : { + "type" : "array", + "description" : "The multiple composite sub-values which concatenation forms a complex entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object.", + "items" : { + "type" : "string", + "description" : "The multiple composite sub-values which concatenation forms a complex entity to be authorized to access within an authorization. Only one between 'value' and 'values' tag at a time can exists in this object." } } }, - "description": "The authorized entity list, which are the resource identifiers that the caller includes in requests that define which objects the entity is authorized to operate on. It consists of a key-value map in which the entity name and its identifier are defined, respectively, in order to make maintenance easier." + "description" : "The authorized entity list, which are the resource identifiers that the caller includes in requests that define which objects the entity is authorized to operate on. It consists of a key-value map in which the entity name and its identifier are defined, respectively, in order to make maintenance easier." }, - "AuthorizationGenericKeyValue": { - "required": [ - "key", - "value", - "values" - ], - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "The key used to reference the metadata into the related map." - }, - "value": { - "type": "string", - "description": "The single simple value related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object." - }, - "values": { - "type": "array", - "description": "The set of values related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object.", - "items": { - "type": "string", - "description": "The set of values related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object." + "AuthorizationGenericKeyValue" : { + "required" : [ "key", "value", "values" ], + "type" : "object", + "properties" : { + "key" : { + "type" : "string", + "description" : "The key used to reference the metadata into the related map." + }, + "value" : { + "type" : "string", + "description" : "The single simple value related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object." + }, + "values" : { + "type" : "array", + "description" : "The set of values related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object.", + "items" : { + "type" : "string", + "description" : "The set of values related to the metadata. Only one between 'value' and 'values' tag at a time can exists in this object." } } }, - "description": "A key-value map that defines the actual content of the metadata to be stored." + "description" : "A key-value map that defines the actual content of the metadata to be stored." }, - "AuthorizationMetadata": { - "required": [ - "content", - "name", - "short_key" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A description that defines the full name of the metadata." - }, - "short_key": { - "pattern": "_[a-zA-Z0-9]{1,3}", - "type": "string", - "description": "The key that defines an abbreviation by which it will be identified in cached maps." - }, - "content": { - "type": "array", - "description": "A key-value map that defines the actual content of the metadata to be stored.", - "items": { - "$ref": "#/components/schemas/AuthorizationGenericKeyValue" + "AuthorizationMetadata" : { + "required" : [ "content", "name", "short_key" ], + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "description" : "A description that defines the full name of the metadata." + }, + "short_key" : { + "pattern" : "_[a-zA-Z0-9]{1,3}", + "type" : "string", + "description" : "The key that defines an abbreviation by which it will be identified in cached maps." + }, + "content" : { + "type" : "array", + "description" : "A key-value map that defines the actual content of the metadata to be stored.", + "items" : { + "$ref" : "#/components/schemas/AuthorizationGenericKeyValue" } } }, - "description": "The list of authorization metadata, useful for performing other types of computation after the authorization process." + "description" : "The list of authorization metadata, useful for performing other types of computation after the authorization process." }, - "AuthorizationOwner": { - "required": [ - "id", - "name", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The identifier of the authorization owner. This can be the fiscal code of the entity/intermediary or other information that uniquely identifies that entity." - }, - "name": { - "type": "string", - "description": "The name of the authorization owner, useful in order to make an authorization more human-readable. It can be the entity's business name or any other information that helps its recognition." - }, - "type": { - "type": "string", - "description": "The authorization owner type, useful both for adding an additional recognizable 'label' to the subject and for use as a search filter.", - "enum": [ - "BROKER", - "CI", - "OTHER", - "PSP" - ] + "AuthorizationOwner" : { + "required" : [ "id", "name", "type" ], + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "description" : "The identifier of the authorization owner. This can be the fiscal code of the entity/intermediary or other information that uniquely identifies that entity." + }, + "name" : { + "type" : "string", + "description" : "The name of the authorization owner, useful in order to make an authorization more human-readable. It can be the entity's business name or any other information that helps its recognition." + }, + "type" : { + "type" : "string", + "description" : "The authorization owner type, useful both for adding an additional recognizable 'label' to the subject and for use as a search filter.", + "enum" : [ "BROKER", "CI", "OTHER", "PSP" ] } }, - "description": "The information about the owner of the authorization. These information are required in order to make maintenance easier and performs some kind of search operations." + "description" : "The information about the owner of the authorization. These information are required in order to make maintenance easier and performs some kind of search operations." }, - "ProblemJson": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "A short, summary of the problem type. Written in english and readable for engineers (usually not suited for non technical stakeholders and not localized); example: Service Unavailable" - }, - "status": { - "maximum": 600, - "minimum": 100, - "type": "integer", - "description": "The HTTP status code generated by the origin server for this occurrence of the problem.", - "format": "int32", - "example": 200 - }, - "detail": { - "type": "string", - "description": "A human readable explanation specific to this occurrence of the problem.", - "example": "There was an error processing the request" + "AuthorizationList" : { + "required" : [ "authorizations", "page_info" ], + "type" : "object", + "properties" : { + "authorizations" : { + "type" : "array", + "description" : "The list of authorization retrieved from search.", + "items" : { + "$ref" : "#/components/schemas/Authorization" + } + }, + "page_info" : { + "$ref" : "#/components/schemas/PageInfo" } } }, - "AuthorizationList": { - "required": [ - "authorizations", - "page_info" - ], - "type": "object", - "properties": { - "authorizations": { - "type": "array", - "description": "The list of authorization retrieved from search.", - "items": { - "$ref": "#/components/schemas/Authorization" - } - }, - "page_info": { - "$ref": "#/components/schemas/PageInfo" + "PageInfo" : { + "required" : [ "items_found", "limit", "page", "total_pages" ], + "type" : "object", + "properties" : { + "page" : { + "type" : "integer", + "description" : "The page number", + "format" : "int32" + }, + "limit" : { + "type" : "integer", + "description" : "The required maximum number of items per page", + "format" : "int32" + }, + "items_found" : { + "type" : "integer", + "description" : "The number of items found. (The last page may have fewer elements than required)", + "format" : "int32" + }, + "total_pages" : { + "type" : "integer", + "description" : "The total number of pages", + "format" : "int32" } - } + }, + "description" : "The information related to the paginated results." }, - "PageInfo": { - "required": [ - "items_found", - "limit", - "page", - "total_pages" - ], - "type": "object", - "properties": { - "page": { - "type": "integer", - "description": "The page number", - "format": "int32" - }, - "limit": { - "type": "integer", - "description": "The required maximum number of items per page", - "format": "int32" - }, - "items_found": { - "type": "integer", - "description": "The number of items found. (The last page may have fewer elements than required)", - "format": "int32" - }, - "total_pages": { - "type": "integer", - "description": "The total number of pages", - "format": "int32" + "ProblemJson" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string", + "description" : "A short, summary of the problem type. Written in english and readable for engineers (usually not suited for non technical stakeholders and not localized); example: Service Unavailable" + }, + "status" : { + "maximum" : 600, + "minimum" : 100, + "type" : "integer", + "description" : "The HTTP status code generated by the origin server for this occurrence of the problem.", + "format" : "int32", + "example" : 200 + }, + "detail" : { + "type" : "string", + "description" : "A human readable explanation specific to this occurrence of the problem.", + "example" : "There was an error processing the request" } - }, - "description": "The information related to the paginated results." + } }, - "AppInfo": { - "type": "object", - "properties": { - "name": { - "type": "string" + "AppInfo" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" }, - "version": { - "type": "string" + "version" : { + "type" : "string" }, - "environment": { - "type": "string" + "environment" : { + "type" : "string" }, - "dbConnection": { - "type": "string" + "dbConnection" : { + "type" : "string" } } }, - "CachedAuthorization": { - "required": [ - "ttl" - ], - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "The description that is associated with particular noteworthy items to be added to the list of cached information." - }, - "owner": { - "type": "string", - "description": "The identifier of the authorization owner. This can be the fiscal code of the entity/intermediary or other information that uniquely identifies that entity." - }, - "subscription_key": { - "type": "string", - "description": "The value of the subscription key associated with the cached authorization." - }, - "ttl": { - "type": "string", - "description": "The remaining Time-to-Live related to the cached authorization. This can be formatted either in seconds format or in a particular format that follows the structure 'XXh YYm ZZs'." + "CachedAuthorization" : { + "required" : [ "ttl" ], + "type" : "object", + "properties" : { + "description" : { + "type" : "string", + "description" : "The description that is associated with particular noteworthy items to be added to the list of cached information." + }, + "owner" : { + "type" : "string", + "description" : "The identifier of the authorization owner. This can be the fiscal code of the entity/intermediary or other information that uniquely identifies that entity." + }, + "subscription_key" : { + "type" : "string", + "description" : "The value of the subscription key associated with the cached authorization." + }, + "ttl" : { + "type" : "string", + "description" : "The remaining Time-to-Live related to the cached authorization. This can be formatted either in seconds format or in a particular format that follows the structure 'XXh YYm ZZs'." } }, - "description": "The list of authorization cached in Authorizer system." + "description" : "The list of authorization cached in Authorizer system." }, - "CachedAuthorizationList": { - "required": [ - "cached_authorizations" - ], - "type": "object", - "properties": { - "cached_authorizations": { - "type": "array", - "description": "The list of authorization cached in Authorizer system.", - "items": { - "$ref": "#/components/schemas/CachedAuthorization" + "CachedAuthorizationList" : { + "required" : [ "cached_authorizations" ], + "type" : "object", + "properties" : { + "cached_authorizations" : { + "type" : "array", + "description" : "The list of authorization cached in Authorizer system.", + "items" : { + "$ref" : "#/components/schemas/CachedAuthorization" } } } } }, - "securitySchemes": { - "ApiKey": { - "type": "apiKey", - "description": "The API key to access this function app.", - "name": "Ocp-Apim-Subscription-Key", - "in": "header" + "securitySchemes" : { + "ApiKey" : { + "type" : "apiKey", + "description" : "The API key to access this function app.", + "name" : "Ocp-Apim-Subscription-Key", + "in" : "header" } } } -} +} \ No newline at end of file diff --git a/openapi/openapi_enrolledci.json b/openapi/openapi_enrolledci.json index 271161c..1c0c877 100644 --- a/openapi/openapi_enrolledci.json +++ b/openapi/openapi_enrolledci.json @@ -1,287 +1,261 @@ { - "openapi": "3.0.1", - "info": { - "title": "@project.artifactId@", - "description": "@project.description@", - "termsOfService": "https://www.pagopa.gov.it/", - "version": "0.2.3-5-upd-helm-chart" + "openapi" : "3.0.1", + "info" : { + "title" : "platform-authorizer-config", + "description" : "A microservice that provides a set of APIs to manage authorization records for the Authorizer system.", + "termsOfService" : "https://www.pagopa.gov.it/", + "version" : "0.2.3-5-upd-helm-chart" }, - "servers": [ - { - "url": "http://localhost", - "description": "Generated server url" - } - ], - "tags": [ - { - "name": "Enrolled Orgs", - "description": "Everything about enrolled organizations" - } - ], - "paths": { - "/organizations/{organizationfiscalcode}/domains/{domain}": { - "get": { - "tags": [ - "Enrolled Orgs" - ], - "summary": "Get list of stations associated to organizations enrolled to a specific domain", - "operationId": "getStationsForEnrolledOrganizations", - "parameters": [ - { - "name": "organizationfiscalcode", - "in": "path", - "description": "The enrolled organization on which the stations will be extracted.", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "domain", - "in": "path", - "description": "The domain on which the stations will be filtered.", - "required": true, - "schema": { - "type": "string" - } + "servers" : [ { + "url" : "http://localhost", + "description" : "Generated server url" + } ], + "tags" : [ { + "name" : "Enrolled Orgs", + "description" : "Everything about enrolled organizations" + } ], + "paths" : { + "/organizations/{organizationfiscalcode}/domains/{domain}" : { + "get" : { + "tags" : [ "Enrolled Orgs" ], + "summary" : "Get list of stations associated to organizations enrolled to a specific domain", + "operationId" : "getStationsForEnrolledOrganizations", + "parameters" : [ { + "name" : "organizationfiscalcode", + "in" : "path", + "description" : "The enrolled organization on which the stations will be extracted.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "domain", + "in" : "path", + "description" : "The domain on which the stations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnrolledCreditorInstitutionList" + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/EnrolledCreditorInstitutionList" } } } }, - "401": { - "description": "Unauthorized" - }, - "403": { - "description": "Forbidden" + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/organizations/domains/{domain}": { - "get": { - "tags": [ - "Enrolled Orgs" - ], - "summary": "Get list of organizations enrolled to a specific domain", - "operationId": "getEnrolledOrganizations", - "parameters": [ - { - "name": "domain", - "in": "path", - "description": "The domain on which the organizations will be filtered.", - "required": true, - "schema": { - "type": "string" - } + "/organizations/domains/{domain}" : { + "get" : { + "tags" : [ "Enrolled Orgs" ], + "summary" : "Get list of organizations enrolled to a specific domain", + "operationId" : "getEnrolledOrganizations", + "parameters" : [ { + "name" : "domain", + "in" : "path", + "description" : "The domain on which the organizations will be filtered.", + "required" : true, + "schema" : { + "type" : "string" } - ], - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnrolledCreditorInstitutionList" + } ], + "responses" : { + "403" : { + "description" : "Forbidden" + }, + "429" : { + "description" : "Too many requests" + }, + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "429": { - "description": "Too many requests" - }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/EnrolledCreditorInstitutionList" } } } }, - "401": { - "description": "Unauthorized" - }, - "403": { - "description": "Forbidden" + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } }, - "/info": { - "get": { - "tags": [ - "Home" - ], - "summary": "Return OK if application is started", - "operationId": "healthCheck", - "responses": { - "429": { - "description": "Too many requests" + "/info" : { + "get" : { + "tags" : [ "Home" ], + "summary" : "Return OK if application is started", + "operationId" : "healthCheck", + "responses" : { + "403" : { + "description" : "Forbidden" }, - "500": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "200" : { + "description" : "OK", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AppInfo" } } } }, - "401": { - "description": "Unauthorized" + "429" : { + "description" : "Too many requests" }, - "403": { - "description": "Forbidden" - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemJson" + "500" : { + "description" : "Service unavailable", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AppInfo" + "400" : { + "description" : "Bad Request", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ProblemJson" } } } + }, + "401" : { + "description" : "Unauthorized" } }, - "security": [ - { - "ApiKey": [] - } - ] + "security" : [ { + "ApiKey" : [ ] + } ] } } }, - "components": { - "schemas": { - "EnrolledCreditorInstitution": { - "required": [ - "organization_fiscal_code", - "segregation_codes" - ], - "type": "object", - "properties": { - "organization_fiscal_code": { - "type": "string", - "description": "The fiscal code related to the creditor institution." + "components" : { + "schemas" : { + "ProblemJson" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string", + "description" : "A short, summary of the problem type. Written in english and readable for engineers (usually not suited for non technical stakeholders and not localized); example: Service Unavailable" }, - "segregation_codes": { - "type": "array", - "description": "The list of segregation codes used by the creditor institution to register a station for the required service domain.", - "items": { - "type": "string", - "description": "The list of segregation codes used by the creditor institution to register a station for the required service domain." - } + "status" : { + "maximum" : 600, + "minimum" : 100, + "type" : "integer", + "description" : "The HTTP status code generated by the origin server for this occurrence of the problem.", + "format" : "int32", + "example" : 200 + }, + "detail" : { + "type" : "string", + "description" : "A human readable explanation specific to this occurrence of the problem.", + "example" : "There was an error processing the request" } - }, - "description": "The list of creditor institution enrolled to the Authorizer service." + } }, - "EnrolledCreditorInstitutionList": { - "required": [ - "creditor_institutions" - ], - "type": "object", - "properties": { - "creditor_institutions": { - "type": "array", - "description": "The list of creditor institution enrolled to the Authorizer service.", - "items": { - "$ref": "#/components/schemas/EnrolledCreditorInstitution" + "EnrolledCreditorInstitution" : { + "required" : [ "organization_fiscal_code", "segregation_codes" ], + "type" : "object", + "properties" : { + "organization_fiscal_code" : { + "type" : "string", + "description" : "The fiscal code related to the creditor institution." + }, + "segregation_codes" : { + "type" : "array", + "description" : "The list of segregation codes used by the creditor institution to register a station for the required service domain.", + "items" : { + "type" : "string", + "description" : "The list of segregation codes used by the creditor institution to register a station for the required service domain." } } - } + }, + "description" : "The list of creditor institution enrolled to the Authorizer service." }, - "ProblemJson": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "A short, summary of the problem type. Written in english and readable for engineers (usually not suited for non technical stakeholders and not localized); example: Service Unavailable" - }, - "status": { - "maximum": 600, - "minimum": 100, - "type": "integer", - "description": "The HTTP status code generated by the origin server for this occurrence of the problem.", - "format": "int32", - "example": 200 - }, - "detail": { - "type": "string", - "description": "A human readable explanation specific to this occurrence of the problem.", - "example": "There was an error processing the request" + "EnrolledCreditorInstitutionList" : { + "required" : [ "creditor_institutions" ], + "type" : "object", + "properties" : { + "creditor_institutions" : { + "type" : "array", + "description" : "The list of creditor institution enrolled to the Authorizer service.", + "items" : { + "$ref" : "#/components/schemas/EnrolledCreditorInstitution" + } } } }, - "AppInfo": { - "type": "object", - "properties": { - "name": { - "type": "string" + "AppInfo" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" }, - "version": { - "type": "string" + "version" : { + "type" : "string" }, - "environment": { - "type": "string" + "environment" : { + "type" : "string" }, - "dbConnection": { - "type": "string" + "dbConnection" : { + "type" : "string" } } } }, - "securitySchemes": { - "ApiKey": { - "type": "apiKey", - "description": "The API key to access this function app.", - "name": "Ocp-Apim-Subscription-Key", - "in": "header" + "securitySchemes" : { + "ApiKey" : { + "type" : "apiKey", + "description" : "The API key to access this function app.", + "name" : "Ocp-Apim-Subscription-Key", + "in" : "header" } } } -} +} \ No newline at end of file diff --git a/pom.xml b/pom.xml index c5300d2..342715e 100644 --- a/pom.xml +++ b/pom.xml @@ -14,11 +14,13 @@ org.springframework.boot spring-boot-starter-parent - 2.7.3 + 2.7.7 17 + 1.6.15 + 3.1.1 3.32.0 @@ -98,7 +100,7 @@ org.springdoc springdoc-openapi-ui - 1.6.15 + ${springdoc-version} @@ -117,7 +119,7 @@ org.modelmapper modelmapper - 3.1.1 + ${modelmapper-version} org.projectlombok