Azure / apiops

APIOps applies the concepts of GitOps and DevOps to API deployment. By using practices from these two methodologies, APIOps can enable everyone involved in the lifecycle of API design, development, and deployment with self-service and automated tools to ensure the quality of the specifications and APIs that they’re building.
https://azure.github.io/apiops
MIT License
328 stars 193 forks source link

[BUG] V6.0 pushes API with empty serviceUrl #670

Open fabienmazieres opened 2 months ago

fabienmazieres commented 2 months ago

Release version

v6.0.11

Describe the bug

APIOps removes the serviceUrl (also known as HTTP(s) Endpoint) configuration for some of our APIs. the serviceUrl is overwritten for every environment in a configuration and a couple (that we have seen) of our APIs had the serviceUrl changed to null by APIOps after upgrading to v6.0.11

I just rolled back to v5 and the few API have got their serviceUrl back

Expected behavior

API consistently deployed with serviceUrl if it is overwritten from configuration file

Actual behavior

few API deploy with serviceUrl as null

Reproduction Steps

The apiInformation, specs and config file did not change since v5 for those API so I am unsure why it would fail here.

apiInformation.json:

{
  "properties": {
    "apiRevision": "1",
    "authenticationSettings": {},
    "displayName": "rp-sis",
    "isCurrent": true,
    "path": "rp/scheme-integration-service",
    "protocols": ["https"],
    "serviceUrl": "https://sis.example.net",
    "subscriptionRequired": false
  }
}

configuration.d1.yml:

---
apimServiceName: apimxxxxx
[...]
apis:
[...]
  - name: rp-sis
    properties:
      serviceUrl: "https://sis.dev-example.net"
[...]
github-actions[bot] commented 2 months ago
  Thank you for opening this issue! Please be patient while we will look into it and get back to you as this is an open source project. In the meantime make sure you take a look at the [closed issues](https://github.com/Azure/apiops/issues?q=is%3Aissue+is%3Aclosed) in case your question has already been answered. Don't forget to provide any additional information if needed (e.g. scrubbed logs, detailed feature requests,etc.).
  Whenever it's feasible, please don't hesitate to send a Pull Request (PR) our way. We'd greatly appreciate it, and we'll gladly assess and incorporate your changes.
fabienmazieres commented 2 months ago

trace log from github action:

2024-09-18T15:18:24.6794126Z ##[group]Run Set-StrictMode -Version Latest
2024-09-18T15:18:24.6794962Z Set-StrictMode -Version Latest
2024-09-18T15:18:24.6795501Z $ErrorActionPreference = "Stop"
2024-09-18T15:18:24.6796009Z $VerbosePreference = "Continue"
2024-09-18T15:18:24.6796569Z $InformationPreference = "Continue"
2024-09-18T15:18:24.6797017Z 
2024-09-18T15:18:24.6797449Z Write-Information "Setting name variables..."
2024-09-18T15:18:24.6798088Z $releaseFileName = "publisher-linux-x64.zip"
2024-09-18T15:18:24.6798661Z $executableFileName = "publisher"
2024-09-18T15:18:24.6799191Z 
2024-09-18T15:18:24.6799538Z if ("Linux" -like "*win*") {
2024-09-18T15:18:24.6800073Z   $releaseFileName = "publisher-win-x64.zip"
2024-09-18T15:18:24.6800690Z   $executableFileName = "publisher.exe"
2024-09-18T15:18:24.6801192Z }
2024-09-18T15:18:24.6801776Z elseif ("Linux" -like "*mac*" -and "X64" -like "*arm*") {
2024-09-18T15:18:24.6802420Z   $releaseFileName = "publisher-osx-arm64.zip"
2024-09-18T15:18:24.6802922Z }
2024-09-18T15:18:24.6803372Z elseif ("Linux" -like "*mac*" -and "X64" -like "*x86_64*") {
2024-09-18T15:18:24.6803994Z   $releaseFileName = "publisher-osx-x64.zip"
2024-09-18T15:18:24.6804714Z }
2024-09-18T15:18:24.6805060Z 
2024-09-18T15:18:24.6805499Z Write-Information "Downloading release..."
2024-09-18T15:18:24.6806316Z $uri = "https://github.com/Azure/apiops/releases/download/v6.0.1.1/$releaseFileName"
2024-09-18T15:18:24.6807508Z $downloadFilePath = Join-Path "/actions-runner/_work/_temp" $releaseFileName
2024-09-18T15:18:24.6808350Z Invoke-WebRequest -Uri "$uri" -OutFile "$downloadFilePath"
2024-09-18T15:18:24.6808892Z 
2024-09-18T15:18:24.6809290Z Write-Information "Extracting release..."
2024-09-18T15:18:24.6810072Z $executableFolderPath = Join-Path "/actions-runner/_work/_temp" "publisher"
2024-09-18T15:18:24.6810933Z Expand-Archive -Path "$downloadFilePath" -DestinationPath "$executableFolderPath"
2024-09-18T15:18:24.6811840Z $executableFilePath = Join-Path "$executableFolderPath" $executableFileName
2024-09-18T15:18:24.6812643Z 
2024-09-18T15:18:24.6813074Z Write-Information "Setting file permissions..."
2024-09-18T15:18:24.6813673Z if ("Linux" -like "*linux*")
2024-09-18T15:18:24.6814094Z {
2024-09-18T15:18:24.6814563Z   & chmod +x "$executableFilePath"
2024-09-18T15:18:24.6815324Z   if ($LASTEXITCODE -ne 0) { throw "Setting file permissions failed."}
2024-09-18T15:18:24.6815930Z }
2024-09-18T15:18:24.6816293Z 
2024-09-18T15:18:24.6816698Z Write-Information "Running publisher..."
2024-09-18T15:18:24.6817278Z & "$executableFilePath"              
2024-09-18T15:18:24.6818217Z if ($LASTEXITCODE -ne 0) { throw "Running publisher failed."}
2024-09-18T15:18:24.6818842Z 
2024-09-18T15:18:24.6819299Z Write-Information "Execution complete."
2024-09-18T15:18:24.6848316Z shell: /usr/bin/pwsh -command ". '{0}'"
2024-09-18T15:18:24.6848852Z env:
2024-09-18T15:18:24.6849266Z   apiops_release_version: v6.0.1.1
2024-09-18T15:18:24.6849829Z   Logging__LogLevel__Default: Trace
2024-09-18T15:18:24.6850440Z   AZURE_CLIENT_ID: ***
2024-09-18T15:18:24.6850864Z   AZURE_CLIENT_SECRET: 
2024-09-18T15:18:24.6851357Z   AZURE_TENANT_ID: ***
2024-09-18T15:18:24.6851862Z   AZURE_SUBSCRIPTION_ID: ***
2024-09-18T15:18:24.6853453Z   AZURE_RESOURCE_GROUP_NAME: ***
2024-09-18T15:18:24.6853978Z   API_MANAGEMENT_SERVICE_NAME: ***
2024-09-18T15:18:24.6854701Z   API_MANAGEMENT_SERVICE_OUTPUT_FOLDER_PATH: /actions-runner/_work/apiops/apiops/apimartifacts
2024-09-18T15:18:24.6855558Z   CONFIGURATION_YAML_PATH: /actions-runner/_work/apiops/apiops/configuration.d1.yaml
2024-09-18T15:18:24.6856521Z   COMMIT_ID: 55007ad4a4a72e550e94e163612f12e790b399a8
2024-09-18T15:18:24.6857112Z ##[endgroup]
2024-09-18T15:18:26.7925227Z Setting name variables...
2024-09-18T15:18:26.7929047Z Downloading release...
2024-09-18T15:18:26.8541258Z VERBOSE: Requested HTTP/1.1 GET with 0-byte payload
2024-09-18T15:18:27.6885706Z VERBOSE: Received HTTP/1.1 47806372-byte response of content type application/octet-stream
2024-09-18T15:18:27.6888257Z VERBOSE: File Name: publisher-linux-x64.zip
2024-09-18T15:18:28.4494348Z Extracting release...
2024-09-18T15:18:28.6565598Z VERBOSE: Preparing to expand...
2024-09-18T15:18:28.7725189Z VERBOSE: Created '/actions-runner/_work/_temp/publisher/common.pdb'.
2024-09-18T15:18:28.7857087Z VERBOSE: Created '/actions-runner/_work/_temp/publisher/libgit2-a418d9d.so'.
2024-09-18T15:18:29.9693534Z VERBOSE: Created '/actions-runner/_work/_temp/publisher/publisher'.
2024-09-18T15:18:29.9718479Z VERBOSE: Created '/actions-runner/_work/_temp/publisher/publisher.pdb'.
2024-09-18T15:18:29.9776640Z Setting file permissions...
2024-09-18T15:18:29.9836978Z Running publisher...
2024-09-18T15:18:30.7605399Z dbug: Microsoft.Extensions.Hosting.Internal.Host[1]
2024-09-18T15:18:30.7606922Z       Hosting starting
2024-09-18T15:18:30.9509555Z info: Microsoft.Hosting.Lifetime[0]
2024-09-18T15:18:30.9514945Z       Application started. Press Ctrl+C to shut down.
2024-09-18T15:18:30.9519239Z info: Microsoft.Hosting.Lifetime[0]
2024-09-18T15:18:30.9520310Z       Hosting environment: Production
2024-09-18T15:18:30.9521788Z info: Microsoft.Hosting.Lifetime[0]
2024-09-18T15:18:30.9523063Z       Content root path: /actions-runner/_work/apiops/apiops
2024-09-18T15:18:30.9525060Z dbug: Microsoft.Extensions.Hosting.Internal.Host[2]
2024-09-18T15:18:30.9525857Z       Hosting started
2024-09-18T15:18:31.3525994Z info: publisher[0]
2024-09-18T15:18:31.3526528Z       Running publisher...
2024-09-18T15:18:31.3533319Z info: publisher[0]
2024-09-18T15:18:31.3534031Z       Putting named values...
2024-09-18T15:18:31.4741743Z info: publisher[0]
2024-09-18T15:18:31.4742761Z       Putting gateways...
2024-09-18T15:18:31.4770028Z info: publisher[0]
2024-09-18T15:18:31.4770922Z       Putting tags...
2024-09-18T15:18:31.4799044Z info: publisher[0]
2024-09-18T15:18:31.4799987Z       Putting version sets...
2024-09-18T15:18:31.4825775Z info: publisher[0]
2024-09-18T15:18:31.4826450Z       Putting backends...
2024-09-18T15:18:31.4851335Z info: publisher[0]
2024-09-18T15:18:31.4853218Z       Putting loggers...
2024-09-18T15:18:31.5496511Z info: publisher[0]
2024-09-18T15:18:31.5497603Z       Putting diagnostics...
2024-09-18T15:18:31.5516710Z info: publisher[0]
2024-09-18T15:18:31.5517654Z       Putting policy fragments...
2024-09-18T15:18:31.5553299Z info: publisher[0]
2024-09-18T15:18:31.5555092Z       Putting service policies...
2024-09-18T15:18:31.5580765Z info: publisher[0]
2024-09-18T15:18:31.5581743Z       Putting products...
2024-09-18T15:18:31.5606172Z info: publisher[0]
2024-09-18T15:18:31.5606732Z       Putting groups...
2024-09-18T15:18:31.5634000Z info: publisher[0]
2024-09-18T15:18:31.5634711Z       Putting APIs...
2024-09-18T15:18:33.1529296Z info: publisher[0]
2024-09-18T15:18:33.1530490Z       Putting API rp-sis...
2024-09-18T15:18:35.5948879Z trce: HttpPipeline[0]
2024-09-18T15:18:35.5950011Z       Starting request
2024-09-18T15:18:35.5950747Z       Method: PUT
2024-09-18T15:18:35.5954283Z       Uri: https://management.azure.com/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis;rev=1?api-version=2023-09-01-preview
2024-09-18T15:18:35.5957660Z       Content: {"properties":{"path":"rp/scheme-integration-service","apiRevision":"1","authenticationSettings":{},"displayName":"rp-sis","protocols":["https"],"subscriptionRequired":false}}
2024-09-18T15:18:36.5612807Z trce: HttpPipeline[0]
2024-09-18T15:18:36.5613522Z       Received response
2024-09-18T15:18:36.5614111Z       Method: PUT
2024-09-18T15:18:36.5616951Z       Uri: https://management.azure.com/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis;rev=1?api-version=2023-09-01-preview
2024-09-18T15:18:36.5618254Z       Status code: 200
2024-09-18T15:18:36.5618911Z       Duration (hh:mm:ss): 00:00:00.6636213
2024-09-18T15:18:36.5619599Z       Content: {
2024-09-18T15:18:36.5621312Z         "id": "/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis",
2024-09-18T15:18:36.5622321Z         "type": "Microsoft.ApiManagement/service/apis",
2024-09-18T15:18:36.5623013Z         "name": "rp-sis",
2024-09-18T15:18:36.5623591Z         "properties": {
2024-09-18T15:18:36.5624134Z           "displayName": "rp-sis",
2024-09-18T15:18:36.5624722Z           "apiRevision": "1",
2024-09-18T15:18:36.5625453Z           "description": null,
2024-09-18T15:18:36.5626021Z           "subscriptionRequired": false,
2024-09-18T15:18:36.5626621Z           "serviceUrl": null,
2024-09-18T15:18:36.5627134Z           "backendId": null,
2024-09-18T15:18:36.5627812Z           "path": "rp/scheme-integration-service",
2024-09-18T15:18:36.5628420Z           "protocols": [
2024-09-18T15:18:36.5628875Z             "https"
2024-09-18T15:18:36.5629339Z           ],
2024-09-18T15:18:36.5629795Z           "authenticationSettings": {
2024-09-18T15:18:36.5630291Z             "oAuth2": null,
2024-09-18T15:18:36.5630800Z             "openid": null
2024-09-18T15:18:36.5631385Z           },
2024-09-18T15:18:36.5631943Z           "subscriptionKeyParameterNames": {
2024-09-18T15:18:36.5632929Z             "header": "Ocp-Apim-Subscription-Key",
2024-09-18T15:18:36.5633536Z             "query": "subscription-key"
2024-09-18T15:18:36.5634098Z           },
2024-09-18T15:18:36.5634490Z           "isCurrent": true
2024-09-18T15:18:36.5635009Z         }
2024-09-18T15:18:36.5635378Z       }
2024-09-18T15:18:36.5635768Z trce: HttpPipeline[0]
2024-09-18T15:18:36.5636237Z       Starting request
2024-09-18T15:18:36.5636657Z       Method: PUT
2024-09-18T15:18:36.5639205Z       Uri: https://management.azure.com/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis;rev=1?api-version=2023-09-01-preview
2024-09-18T15:18:36.6709557Z       Content: {"properties":{"path":"rp/scheme-integration-service","apiRevision":"1","authenticationSettings":{},"displayName":"rp-sis","format":"openapi\u002Bjson","protocols":["https"],"serviceUrl":"https://sis.dev-example.net","value":"{\n  \u0022openapi\u0022: \u00223.0.1\u0022,\n  \u0022info\u0022: {\n    \u0022title\u0022: \u0022rp-sis\u0022,\n    \u0022description\u0022: \u0022Scheme Integration Service is part of the Regular Payments pillar and its main purpose is to generate files that are sent to regular payments scheme providers such as BACS to setup/main regular payments and collect payments via the scheme providers.\u0022,\n    \u0022version\u0022: \u00221.0\u0022\n  },\n  \u0022servers\u0022: [\n    {\n      \u0022url\u0022: \u0022https://api-stg.example.net/rp/scheme-integration-service\u0022,\n      \u0022description\u0022: \u0022Staging\u0022\n    },\n    {\n      \u0022url\u0022: \u0022https://api.example.net/rp/scheme-integration-service\u0022,\n      \u0022description\u0022: \u0022Production\u0022\n    }\n  ],\n  \u0022paths\u0022: {\n    \u0022/accounts/{accountId}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Account\u0022\n        ],\n        \u0022summary\u0022: \u0022Get account\u0022,\n        \u0022operationId\u0022: \u0022get-account\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The account id\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/AccountView\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/AccountView\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/AccountView\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/accounts/{accountId}/job/{jobId}/fail\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022Account\u0022\n        ],\n        \u0022summary\u0022: \u0022Set account jobs as failed\u0022,\n        \u0022operationId\u0022: \u0022set-account-job-as-failed\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The account Id\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022jobId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The job id\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022requestBody\u0022: {\n          \u0022description\u0022: \u0022The reason to set up job as failed\u0022,\n          \u0022content\u0022: {\n            \u0022application/json-patch\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022string\u0022\n              }\n            },\n            \u0022application/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022string\u0022\n              }\n            },\n            \u0022text/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022string\u0022\n              }\n            },\n            \u0022application/*\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022string\u0022\n              }\n            }\n          }\n        },\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/AccountView\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/AccountView\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/AccountView\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/products/{productId}/configuration\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022summary\u0022: \u0022Gets the product configuration\u0022,\n        \u0022operationId\u0022: \u0022get-product-config\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022productId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The product Id\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProductConfigurationResult\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProductConfigurationResult\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProductConfigurationResult\u0022\n                }\n              }\n            }\n          },\n          \u0022400\u0022: {\n            \u0022description\u0022: \u0022Bad Request\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/products/{productId}/configuration/bacs/{date}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022summary\u0022: \u0022Check the date is a bacs holiday\u0022,\n        \u0022operationId\u0022: \u0022bacs-holiday\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022productId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The product Id\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022date\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The date\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022boolean\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022boolean\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022boolean\u0022\n                }\n              }\n            }\n          },\n          \u0022400\u0022: {\n            \u0022description\u0022: \u0022Bad Request\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/account/{accountId}/stream-events\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-stream-events\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/check-reports\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022summary\u0022: \u0022Check reports for a given report type\u0022,\n        \u0022operationId\u0022: \u0022check-reports\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022reportType\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022description\u0022: \u0022The report type\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022boolean\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022boolean\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022boolean\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/eod-mandate/{fileName}\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022summary\u0022: \u0022End of day mandate\u0022,\n        \u0022operationId\u0022: \u0022eod-mandate\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022fileName\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The file name\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022\n          },\n          \u0022400\u0022: {\n            \u0022description\u0022: \u0022Bad Request\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/filenames\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022operationId\u0022: \u0022tenant-filenames\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/BlobItem\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/BlobItem\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/BlobItem\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022400\u0022: {\n            \u0022description\u0022: \u0022Bad Request\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/account/{accountId}/run\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022operationId\u0022: \u0022run-all-account-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022requestBody\u0022: {\n          \u0022content\u0022: {\n            \u0022application/json-patch\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/JobRunArgs\u0022\n              }\n            },\n            \u0022application/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/JobRunArgs\u0022\n              }\n            },\n            \u0022text/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/JobRunArgs\u0022\n              }\n            },\n            \u0022application/*\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/JobRunArgs\u0022\n              }\n            }\n          }\n        },\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/accounts/{accountId}/jobs/pending/cancel\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022operationId\u0022: \u0022cancel-account-pending-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022requestBody\u0022: {\n          \u0022content\u0022: {\n            \u0022application/json-patch\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022string\u0022\n              }\n            },\n            \u0022application/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022string\u0022\n              }\n            },\n            \u0022text/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022string\u0022\n              }\n            },\n            \u0022application/*\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022string\u0022\n              }\n            }\n          }\n        },\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/AccountView\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/AccountView\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/AccountView\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/reference-data/calendars/{type}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-reference-data-calendars\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022type\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/ReferenceDataCalendar\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/ReferenceDataCalendar\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/ReferenceDataCalendar\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/jobs/{jobType}/open\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022operationId\u0022: \u0022open-running-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022jobType\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022requestBody\u0022: {\n          \u0022content\u0022: {\n            \u0022application/json-patch\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022array\u0022,\n                \u0022items\u0022: {\n                  \u0022type\u0022: \u0022string\u0022,\n                  \u0022format\u0022: \u0022uuid\u0022\n                }\n              }\n            },\n            \u0022application/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022array\u0022,\n                \u0022items\u0022: {\n                  \u0022type\u0022: \u0022string\u0022,\n                  \u0022format\u0022: \u0022uuid\u0022\n                }\n              }\n            },\n            \u0022text/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022array\u0022,\n                \u0022items\u0022: {\n                  \u0022type\u0022: \u0022string\u0022,\n                  \u0022format\u0022: \u0022uuid\u0022\n                }\n              }\n            },\n            \u0022application/*\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022type\u0022: \u0022array\u0022,\n                \u0022items\u0022: {\n                  \u0022type\u0022: \u0022string\u0022,\n                  \u0022format\u0022: \u0022uuid\u0022\n                }\n              }\n            }\n          }\n        },\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/jobs/{jobType}/completed/timetolive\u0022: {\n      \u0022put\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022operationId\u0022: \u0022set-ttl-completed-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022jobType\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022ttl\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022integer\u0022,\n              \u0022format\u0022: \u0022int32\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022204\u0022: {\n            \u0022description\u0022: \u0022No Content\u0022\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/externalConfiguration\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022summary\u0022: \u0022Get external configuration\u0022,\n        \u0022operationId\u0022: \u0022GetExternalConfiguration\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ExternalConfigurationResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ExternalConfigurationResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ExternalConfigurationResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/debug/externalConfiguration/remove\u0022: {\n      \u0022delete\u0022: {\n        \u0022tags\u0022: [\n          \u0022Debug\u0022\n        ],\n        \u0022summary\u0022: \u0022Get external configuration\u0022,\n        \u0022operationId\u0022: \u0022DeleteAccessPayExternalConfiguration\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/heartbeat\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022HealthCheck\u0022\n        ],\n        \u0022operationId\u0022: \u0022heartbeat\u0022,\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/HealthCheckResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/HealthCheckResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/HealthCheckResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022422\u0022: {\n            \u0022description\u0022: \u0022Unprocessable Content\u0022\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/healthcheck\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022HealthCheck\u0022\n        ],\n        \u0022operationId\u0022: \u0022healthcheck\u0022,\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/HealthCheckResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/HealthCheckResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/HealthCheckResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022422\u0022: {\n            \u0022description\u0022: \u0022Unprocessable Content\u0022\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/jobs/{jobType}/{date}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Jobs\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022jobType\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022date\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022openOnly\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022boolean\u0022,\n              \u0022default\u0022: true\n            }\n          },\n          {\n            \u0022name\u0022: \u0022status\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobStatus\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/jobs/{date}/open\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Jobs\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-all-open-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022date\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/OpenJobResponse\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/OpenJobResponse\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/OpenJobResponse\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/jobs/failed\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Jobs\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-failed-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022from\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022to\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022endDateFrom\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/jobs/{jobType}/job/{jobId}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Jobs\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-job\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022jobType\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022jobId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/jobs/{jobType}/account/{accountId}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Jobs\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-account-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022jobType\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022openOnly\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022boolean\u0022,\n              \u0022default\u0022: true\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/jobs/account/{accountId}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Jobs\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-all-account-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022openOnly\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022boolean\u0022,\n              \u0022default\u0022: true\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/jobs/{jobType}/run/{date}\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022Jobs\u0022\n        ],\n        \u0022operationId\u0022: \u0022run-jobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022jobType\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022date\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/reports/{reportsDate}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Reports\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-reports\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022reportsDate\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/DailyReportsResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/DailyReportsResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/DailyReportsResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/scheme/{scheme}/product/{productId}/configuration\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Scheme\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-scheme-configuration\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022scheme\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022productId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/SchemeConfigurationResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/SchemeConfigurationResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/SchemeConfigurationResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/scheme/{scheme}/product/{productId}/dates/{paymentDueDate}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Scheme\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-scheme-dates\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022scheme\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022productId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022paymentDueDate\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/SchemeDatesResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/SchemeDatesResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/SchemeDatesResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/scheme/{scheme}/product/{productId}/activation-date\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Scheme\u0022\n        ],\n        \u0022operationId\u0022: \u0022get-scheme-activation-date\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022scheme\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022productId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ActivationDateResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ActivationDateResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ActivationDateResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/scheme/{scheme}/collection-date/calculate\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022Scheme\u0022\n        ],\n        \u0022operationId\u0022: \u0022collection-date-calculation\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022scheme\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022requestBody\u0022: {\n          \u0022content\u0022: {\n            \u0022application/json-patch\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/CollectionDateCalculationRequest\u0022\n              }\n            },\n            \u0022application/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/CollectionDateCalculationRequest\u0022\n              }\n            },\n            \u0022text/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/CollectionDateCalculationRequest\u0022\n              }\n            },\n            \u0022application/*\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/CollectionDateCalculationRequest\u0022\n              }\n            }\n          }\n        },\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/CollectionDateCalculationResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/CollectionDateCalculationResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/CollectionDateCalculationResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/submissions/{instruction}/{dateTimeOffset}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Submission\u0022\n        ],\n        \u0022operationId\u0022: \u0022GetSubmissionsForInstruction\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022dateTimeOffset\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022instruction\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/Bacs18Instruction\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/DailySubmissionsResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/DailySubmissionsResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/DailySubmissionsResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/submissions/{dateTimeOffset}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Submission\u0022\n        ],\n        \u0022operationId\u0022: \u0022GetSubmissionsByDay\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022dateTimeOffset\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/DailySubmissionsResponse\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/DailySubmissionsResponse\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/DailySubmissionsResponse\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/submissions/{submissionId}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Submission\u0022\n        ],\n        \u0022operationId\u0022: \u0022GetSubmissionById\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022submissionId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/Submission\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/Submission\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/Submission\u0022\n                }\n              }\n            }\n          },\n          \u0022404\u0022: {\n            \u0022description\u0022: \u0022Not Found\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/ProblemDetails\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/submissions/{submissionId}/status\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022Submission\u0022\n        ],\n        \u0022operationId\u0022: \u0022GetSubmissionStatus\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022submissionId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/SubmissionStatusResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/SubmissionStatusResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/SubmissionStatusResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/support/jobs/{date}/open\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022SupportJobs\u0022\n        ],\n        \u0022summary\u0022: \u0022Get all open jobs for all accounts\u0022,\n        \u0022operationId\u0022: \u0022GetAllOpenJobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022date\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022date to get the open jobs for\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/OpenJobResponse\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/OpenJobResponse\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/OpenJobResponse\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/support/jobs/failed\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022SupportJobs\u0022\n        ],\n        \u0022summary\u0022: \u0022Get all failed jobs for all accounts based on date filters\u0022,\n        \u0022operationId\u0022: \u0022GetAllFailedJobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022startDateFrom\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022description\u0022: \u0022start date from\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022startDateTo\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022description\u0022: \u0022start date to\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022endDateFrom\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022description\u0022: \u0022end date from\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/support/jobs/{jobType}/run/{date}\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022SupportJobs\u0022\n        ],\n        \u0022summary\u0022: \u0022Run jobs of a particular type for a particular date and with a particular status\u0022,\n        \u0022operationId\u0022: \u0022RunJobs\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022jobType\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022job type\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022date\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022date\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022requestBody\u0022: {\n          \u0022description\u0022: \u0022contains list of statuses to run. Allowed : Open and Failed. If none is provided only Open runs.\u0022,\n          \u0022content\u0022: {\n            \u0022application/json-patch\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/RunJobsRequest\u0022\n              }\n            },\n            \u0022application/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/RunJobsRequest\u0022\n              }\n            },\n            \u0022text/json\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/RunJobsRequest\u0022\n              }\n            },\n            \u0022application/*\u002Bjson\u0022: {\n              \u0022schema\u0022: {\n                \u0022$ref\u0022: \u0022#/components/schemas/RunJobsRequest\u0022\n              }\n            }\n          }\n        },\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/JobRunResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/JobRunResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/JobRunResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/support/jobs/accounts/{accountId}/{jobType}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022SupportJobs\u0022\n        ],\n        \u0022summary\u0022: \u0022the status specific job type on a specific date or date range for a specific account\u0022,\n        \u0022operationId\u0022: \u0022GetAllJobsForAccountAndJobType\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The accountId\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022jobType\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The JobType\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022startDateTo\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022description\u0022: \u0022To date filter for jobs\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022startDateFrom\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022description\u0022: \u0022From date filter for jobs\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/support/jobs/accounts/{accountId}\u0022: {\n      \u0022get\u0022: {\n        \u0022tags\u0022: [\n          \u0022SupportJobs\u0022\n        ],\n        \u0022summary\u0022: \u0022the status of all job types or a specific job type on a specific date or date range for a specific account\u0022,\n        \u0022operationId\u0022: \u0022GetAllJobsForAccount\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The account Id\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022startDateTo\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022description\u0022: \u0022To date filter for jobs\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022startDateFrom\u0022,\n            \u0022in\u0022: \u0022query\u0022,\n            \u0022description\u0022: \u0022From date filter for jobs\u0022,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022type\u0022: \u0022array\u0022,\n                  \u0022items\u0022: {\n                    \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n                  }\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    },\n    \u0022/support/jobs/accounts/run/{jobType}/{accountId}/{date}\u0022: {\n      \u0022post\u0022: {\n        \u0022tags\u0022: [\n          \u0022SupportJobs\u0022\n        ],\n        \u0022summary\u0022: \u0022Run jobs for a given date , for a given account, for a given job type\u0022,\n        \u0022operationId\u0022: \u0022RunJobsForAccountAndJobType\u0022,\n        \u0022parameters\u0022: [\n          {\n            \u0022name\u0022: \u0022jobType\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022JobType\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022date\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The date for which jobs needs to run\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022accountId\u0022,\n            \u0022in\u0022: \u0022path\u0022,\n            \u0022description\u0022: \u0022The account id for which jobs needs to be run\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          },\n          {\n            \u0022name\u0022: \u0022context-tenantId\u0022,\n            \u0022in\u0022: \u0022header\u0022,\n            \u0022description\u0022: \u0022Identifier assigned to the Tenant\u0022,\n            \u0022required\u0022: true,\n            \u0022schema\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022uuid\u0022\n            }\n          }\n        ],\n        \u0022responses\u0022: {\n          \u0022200\u0022: {\n            \u0022description\u0022: \u0022OK\u0022,\n            \u0022content\u0022: {\n              \u0022text/plain\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/JobRunResponse\u0022\n                }\n              },\n              \u0022application/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/JobRunResponse\u0022\n                }\n              },\n              \u0022text/json\u0022: {\n                \u0022schema\u0022: {\n                  \u0022$ref\u0022: \u0022#/components/schemas/JobRunResponse\u0022\n                }\n              }\n            }\n          },\n          \u0022401\u0022: {\n            \u0022description\u0022: \u0022Unauthorised\u0022\n          },\n          \u0022403\u0022: {\n            \u0022description\u0022: \u0022Forbidden\u0022\n          },\n          \u0022429\u0022: {\n            \u0022description\u0022: \u0022The number of requests exceeded the maximum allowed\u0022\n          },\n          \u0022500\u0022: {\n            \u0022description\u0022: \u0022An internal server error occured\u0022\n          },\n          \u0022502\u0022: {\n            \u0022description\u0022: \u0022Bad Gateway\u0022\n          },\n          \u0022503\u0022: {\n            \u0022description\u0022: \u0022Service Unavailable\u0022\n          },\n          \u0022504\u0022: {\n            \u0022description\u0022: \u0022Gateway Timeout\u0022\n          }\n        }\n      }\n    }\n  },\n  \u0022components\u0022: {\n    \u0022schemas\u0022: {\n      \u0022AccessTier\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022AccountView\u0022: {\n        \u0022required\u0022: [\n          \u0022accountId\u0022,\n          \u0022completedJobs\u0022,\n          \u0022created\u0022,\n          \u0022id\u0022,\n          \u0022pendingJobs\u0022,\n          \u0022version\u0022,\n          \u0022viewKey\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022id\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022viewKey\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022version\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022accountId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022\n          },\n          \u0022created\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022pendingJobs\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n            }\n          },\n          \u0022completedJobs\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n            }\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ActivationDateResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022activationDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ArchiveStatus\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022Bacs18Instruction\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2,\n          3\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022BatchJobResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022success\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022error\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/Error\u0022\n          },\n          \u0022serviceUserId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022submissionId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022succeeded\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n            },\n            \u0022readOnly\u0022: true\n          },\n          \u0022failed\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobStringValueTuple\u0022\n            },\n            \u0022readOnly\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022BlobImmutabilityPolicy\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022expiresOn\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022policyMode\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/BlobImmutabilityPolicyMode\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022BlobImmutabilityPolicyMode\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022BlobItem\u0022: {\n        \u0022required\u0022: [\n          \u0022deleted\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022name\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022deleted\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022snapshot\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022versionId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022isLatestVersion\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022properties\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/BlobItemProperties\u0022\n          },\n          \u0022metadata\u0022: {\n            \u0022type\u0022: \u0022object\u0022,\n            \u0022additionalProperties\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022nullable\u0022: true\n            },\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022tags\u0022: {\n            \u0022type\u0022: \u0022object\u0022,\n            \u0022additionalProperties\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022nullable\u0022: true\n            },\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022objectReplicationSourceProperties\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/ObjectReplicationPolicy\u0022\n            },\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022hasVersionsOnly\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022BlobItemProperties\u0022: {\n        \u0022required\u0022: [\n          \u0022accessTierInferred\u0022,\n          \u0022hasLegalHold\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022lastModified\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022contentLength\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int64\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022contentType\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022contentEncoding\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022contentLanguage\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022contentHash\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022byte\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022contentDisposition\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022cacheControl\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022blobSequenceNumber\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int64\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022blobType\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/BlobType\u0022\n          },\n          \u0022leaseStatus\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/LeaseStatus\u0022\n          },\n          \u0022leaseState\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/LeaseState\u0022\n          },\n          \u0022leaseDuration\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/LeaseDurationType\u0022\n          },\n          \u0022copyId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022copyStatus\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/CopyStatus\u0022\n          },\n          \u0022copySource\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uri\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022copyProgress\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022copyStatusDescription\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022serverEncrypted\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022incrementalCopy\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022destinationSnapshot\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022remainingRetentionDays\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022accessTier\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/AccessTier\u0022\n          },\n          \u0022accessTierInferred\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022archiveStatus\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/ArchiveStatus\u0022\n          },\n          \u0022customerProvidedKeySha256\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022encryptionScope\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022tagCount\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int64\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022expiresOn\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022isSealed\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022rehydratePriority\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/RehydratePriority\u0022\n          },\n          \u0022lastAccessedOn\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022eTag\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/ETag\u0022\n          },\n          \u0022createdOn\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022copyCompletedOn\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022deletedOn\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022accessTierChangedOn\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022immutabilityPolicy\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/BlobImmutabilityPolicy\u0022\n          },\n          \u0022hasLegalHold\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022readOnly\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022BlobType\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022CollectionDateCalculationRequest\u0022: {\n        \u0022required\u0022: [\n          \u0022adjustmentDays\u0022,\n          \u0022collectionDate\u0022,\n          \u0022earliestSubmissionDate\u0022,\n          \u0022productId\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022adjustmentDays\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022collectionDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022earliestSubmissionDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022productId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022CollectionDateCalculationResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022paymentDueDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022schemeDates\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/SchemeDatesResponse\u0022\n          },\n          \u0022invalidAdjustment\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022CopyStatus\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2,\n          3\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022CreditRelease\u0022: {\n        \u0022required\u0022: [\n          \u0022type\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022type\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/CreditReleaseType\u0022\n          },\n          \u0022days\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022,\n            \u0022nullable\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022CreditReleaseType\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022DailyReportsResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022reports\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/ReportModel\u0022\n            }\n          },\n          \u0022reportDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022DailySubmissionsResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022submissionDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022instruction\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/Bacs18Instruction\u0022\n          },\n          \u0022submissions\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/Submission\u0022\n            }\n          },\n          \u0022count\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022,\n            \u0022readOnly\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ETag\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022Error\u0022: {\n        \u0022required\u0022: [\n          \u0022isFatal\u0022,\n          \u0022name\u0022,\n          \u0022statusCode\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022name\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022message\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022statusCode\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/HttpStatusCode\u0022\n          },\n          \u0022validationResult\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/ValidationResult\u0022\n          },\n          \u0022isFatal\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ExternalConfigurationResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022baseUrl\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022serviceAccountId\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022directDebitsSubmissionConfigId\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022audisSubmissionConfigId\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022referenceDataType\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022tenantId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022HealthCheckResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022status\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022totalDuration\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-span\u0022\n          },\n          \u0022includedChecks\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            }\n          },\n          \u0022serviceName\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022slotName\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022hostName\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022region\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022configName\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022serviceVersion\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022HttpStatusCode\u0022: {\n        \u0022enum\u0022: [\n          100,\n          101,\n          102,\n          103,\n          200,\n          201,\n          202,\n          203,\n          204,\n          205,\n          206,\n          207,\n          208,\n          226,\n          300,\n          301,\n          302,\n          303,\n          304,\n          305,\n          306,\n          307,\n          308,\n          400,\n          401,\n          402,\n          403,\n          404,\n          405,\n          406,\n          407,\n          408,\n          409,\n          410,\n          411,\n          412,\n          413,\n          414,\n          415,\n          416,\n          417,\n          421,\n          422,\n          423,\n          424,\n          426,\n          428,\n          429,\n          431,\n          451,\n          500,\n          501,\n          502,\n          503,\n          504,\n          505,\n          506,\n          507,\n          508,\n          510,\n          511\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022Job\u0022: {\n        \u0022required\u0022: [\n          \u0022_etag\u0022,\n          \u0022accountId\u0022,\n          \u0022createdDate\u0022,\n          \u0022id\u0022,\n          \u0022jobData\u0022,\n          \u0022jobId\u0022,\n          \u0022jobType\u0022,\n          \u0022startDate\u0022,\n          \u0022status\u0022,\n          \u0022ttl\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022jobId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022\n          },\n          \u0022id\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022jobType\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n          },\n          \u0022accountId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022\n          },\n          \u0022startDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022createdDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022status\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/JobStatus\u0022\n          },\n          \u0022jobData\u0022: {\n            \u0022type\u0022: \u0022object\u0022,\n            \u0022additionalProperties\u0022: { }\n          },\n          \u0022endDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022reason\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022submissionId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022_etag\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022ttl\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022JobRunArgs\u0022: {\n        \u0022required\u0022: [\n          \u0022runAsToday\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022runAsToday\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022JobRunResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022jobType\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n          },\n          \u0022startDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022batches\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/BatchJobResponse\u0022\n            },\n            \u0022readOnly\u0022: true\n          },\n          \u0022succeeded\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n            },\n            \u0022readOnly\u0022: true\n          },\n          \u0022failed\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobStringValueTuple\u0022\n            },\n            \u0022readOnly\u0022: true\n          },\n          \u0022schemeProcessingDay\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022JobStatus\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2,\n          3,\n          4,\n          5\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022JobStringValueTuple\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022JobType\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2,\n          3,\n          4,\n          5,\n          6\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022LeaseDurationType\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022LeaseState\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2,\n          3,\n          4\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022LeaseStatus\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022ObjectReplicationPolicy\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022policyId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022rules\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/ObjectReplicationRule\u0022\n            },\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ObjectReplicationRule\u0022: {\n        \u0022required\u0022: [\n          \u0022replicationStatus\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022ruleId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true,\n            \u0022readOnly\u0022: true\n          },\n          \u0022replicationStatus\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/ObjectReplicationStatus\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ObjectReplicationStatus\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022OpenJobResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022jobType\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/JobType\u0022\n          },\n          \u0022jobs\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/Job\u0022\n            }\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ProblemDetails\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022type\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022title\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022status\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022detail\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022instance\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: { }\n      },\n      \u0022ProductConfigurationResult\u0022: {\n        \u0022required\u0022: [\n          \u0022productId\u0022,\n          \u0022regularPaymentsConfig\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022productId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022\n          },\n          \u0022version\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022regularPaymentsConfig\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/RegularPaymentsServiceConfig\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ReferenceDataCalendar\u0022: {\n        \u0022required\u0022: [\n          \u0022calendarId\u0022,\n          \u0022endDate\u0022,\n          \u0022startDate\u0022,\n          \u0022type\u0022,\n          \u0022typeName\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022calendarId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022\n          },\n          \u0022type\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022typeName\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022nonWorkingDays\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            },\n            \u0022nullable\u0022: true\n          },\n          \u0022startDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022endDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022holidays\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022type\u0022: \u0022string\u0022,\n              \u0022format\u0022: \u0022date-time\u0022\n            },\n            \u0022nullable\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022RegularPaymentsServiceConfig\u0022: {\n        \u0022required\u0022: [\n          \u0022activationDays\u0022,\n          \u0022arrearsLevel\u0022,\n          \u0022bankChangeDelayDays\u0022,\n          \u0022clearingDays\u0022,\n          \u0022creditRelease\u0022,\n          \u0022serviceUser\u0022,\n          \u0022setUpDays\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022setUpDays\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022activationDays\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022clearingDays\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022bankChangeDelayDays\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022arrearsLevel\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022serviceUser\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/ServiceUser\u0022\n          },\n          \u0022clearingWindowCutOff\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022creditRelease\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/CreditRelease\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022RehydratePriority\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022ReportItemModel\u0022: {\n        \u0022required\u0022: [\n          \u0022accountId\u0022,\n          \u0022bankAccountNumber\u0022,\n          \u0022date\u0022,\n          \u0022itemType\u0022,\n          \u0022reason\u0022,\n          \u0022responseCode\u0022,\n          \u0022sortCode\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022accountId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022sortCode\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022bankAccountNumber\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022responseCode\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022reason\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022date\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022itemType\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/ReportItemType\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ReportItemType\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2,\n          3,\n          4,\n          5\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022ReportModel\u0022: {\n        \u0022required\u0022: [\n          \u0022allReportModels\u0022,\n          \u0022id\u0022,\n          \u0022receivedDate\u0022,\n          \u0022type\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022id\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022type\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022receivedDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022allReportModels\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/ReportItemModel\u0022\n            }\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022RunJobsRequest\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022statuses\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/JobStatus\u0022\n            },\n            \u0022nullable\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022SchemeConfigurationResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022clearingDays\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022setupDays\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022activationDays\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022SchemeDatesResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022scheme\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022lastSetupDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022lastPaymentSubmissionDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ServiceUser\u0022: {\n        \u0022required\u0022: [\n          \u0022accountNumber\u0022,\n          \u0022id\u0022,\n          \u0022name\u0022,\n          \u0022sortCode\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022id\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022name\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022sortCode\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022accountNumber\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022Severity\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022Submission\u0022: {\n        \u0022required\u0022: [\n          \u0022attempts\u0022,\n          \u0022excludedJobCount\u0022,\n          \u0022id\u0022,\n          \u0022instruction\u0022,\n          \u0022invalidJobCount\u0022,\n          \u0022runDate\u0022,\n          \u0022serviceUserNumber\u0022,\n          \u0022status\u0022,\n          \u0022submissionNumber\u0022,\n          \u0022submittedJobCount\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022id\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022uuid\u0022\n          },\n          \u0022runDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022\n          },\n          \u0022submissionDate\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022format\u0022: \u0022date-time\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022serviceUserNumber\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022status\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/SubmissionStatus\u0022\n          },\n          \u0022instruction\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/Bacs18Instruction\u0022\n          },\n          \u0022fileName\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022externalSubmissionId\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022error\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022submittedJobCount\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022invalidJobCount\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022excludedJobCount\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022submissionNumber\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          },\n          \u0022attempts\u0022: {\n            \u0022type\u0022: \u0022integer\u0022,\n            \u0022format\u0022: \u0022int32\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022SubmissionStatus\u0022: {\n        \u0022enum\u0022: [\n          0,\n          1,\n          2,\n          3,\n          4,\n          5,\n          6\n        ],\n        \u0022type\u0022: \u0022integer\u0022,\n        \u0022format\u0022: \u0022int32\u0022\n      },\n      \u0022SubmissionStatusResponse\u0022: {\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022id\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          },\n          \u0022status\u0022: {\n            \u0022type\u0022: \u0022string\u0022\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ValidationFailure\u0022: {\n        \u0022required\u0022: [\n          \u0022severity\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022propertyName\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022errorMessage\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022attemptedValue\u0022: {\n            \u0022nullable\u0022: true\n          },\n          \u0022customState\u0022: {\n            \u0022nullable\u0022: true\n          },\n          \u0022severity\u0022: {\n            \u0022$ref\u0022: \u0022#/components/schemas/Severity\u0022\n          },\n          \u0022errorCode\u0022: {\n            \u0022type\u0022: \u0022string\u0022,\n            \u0022nullable\u0022: true\n          },\n          \u0022formattedMessagePlaceholderValues\u0022: {\n            \u0022type\u0022: \u0022object\u0022,\n            \u0022additionalProperties\u0022: {\n              \u0022nullable\u0022: true\n            },\n            \u0022nullable\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      },\n      \u0022ValidationResult\u0022: {\n        \u0022required\u0022: [\n          \u0022isValid\u0022\n        ],\n        \u0022type\u0022: \u0022object\u0022,\n        \u0022properties\u0022: {\n          \u0022isValid\u0022: {\n            \u0022type\u0022: \u0022boolean\u0022,\n            \u0022readOnly\u0022: true\n          },\n          \u0022errors\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022$ref\u0022: \u0022#/components/schemas/ValidationFailure\u0022\n            },\n            \u0022nullable\u0022: true\n          },\n          \u0022ruleSetsExecuted\u0022: {\n            \u0022type\u0022: \u0022array\u0022,\n            \u0022items\u0022: {\n              \u0022type\u0022: \u0022string\u0022\n            },\n            \u0022nullable\u0022: true\n          }\n        },\n        \u0022additionalProperties\u0022: false\n      }\n    },\n    \u0022securitySchemes\u0022: {\n      \u0022apiKeyHeader\u0022: {\n        \u0022type\u0022: \u0022apiKey\u0022,\n        \u0022name\u0022: \u0022Ocp-Apim-Subscription-Key\u0022,\n        \u0022in\u0022: \u0022header\u0022\n      },\n      \u0022apiKeyQuery\u0022: {\n        \u0022type\u0022: \u0022apiKey\u0022,\n        \u0022name\u0022: \u0022Ocp-Apim-Subscription-Key\u0022,\n        \u0022in\u0022: \u0022query\u0022\n      }\n    }\n  },\n  \u0022security\u0022: [\n    {\n      \u0022apiKeyHeader\u0022: [ ]\n    },\n    {\n      \u0022apiKeyQuery\u0022: [ ]\n    }\n  ],\n  \u0022x-pub-settings\u0022: {\n    \u0022pub-ready\u0022: true,\n    \u0022team\u0022: \u0022Team 4\u0022,\n    \u0022tags\u0022: [\n      \u0022Regular Payments\u0022,\n      \u0022Internal\u0022\n    ]\n  }\n}","subscriptionRequired":false}}
2024-09-18T15:18:37.5619675Z trce: HttpPipeline[0]
2024-09-18T15:18:37.5620570Z       Received response
2024-09-18T15:18:37.5621248Z       Method: PUT
2024-09-18T15:18:37.5624472Z       Uri: https://management.azure.com/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis;rev=1?api-version=2023-09-01-preview
2024-09-18T15:18:37.5627298Z       Status code: 200
2024-09-18T15:18:37.5628080Z       Duration (hh:mm:ss): 00:00:00.6327704
2024-09-18T15:18:37.5628851Z       Content: {
2024-09-18T15:18:37.5631097Z         "id": "/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis;rev=1",
2024-09-18T15:18:37.5632621Z         "type": "Microsoft.ApiManagement/service/apis",
2024-09-18T15:18:37.5633718Z         "name": "rp-sis;rev=1",
2024-09-18T15:18:37.5634466Z         "properties": {
2024-09-18T15:18:37.5635170Z           "ProvisioningState": "InProgress"
2024-09-18T15:18:37.5636010Z         }
2024-09-18T15:18:37.5636597Z       }
2024-09-18T15:18:37.5637181Z trce: HttpPipeline[0]
2024-09-18T15:18:37.5637847Z       Starting request
2024-09-18T15:18:37.5638509Z       Method: GET
2024-09-18T15:18:37.5641437Z       Uri: https://management.azure.com/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis;rev=1?api-version=2023-09-01-preview
2024-09-18T15:18:37.5643272Z       Content: <null>
2024-09-18T15:18:37.5643899Z trce: HttpPipeline[0]
2024-09-18T15:18:37.5644506Z       Received response
2024-09-18T15:18:37.5645113Z       Method: GET
2024-09-18T15:18:37.5647930Z       Uri: https://management.azure.com/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis;rev=1?api-version=2023-09-01-preview
2024-09-18T15:18:37.5649816Z       Status code: 200
2024-09-18T15:18:37.5650530Z       Duration (hh:mm:ss): 00:00:00.4414217
2024-09-18T15:18:37.5651310Z       Content: {
2024-09-18T15:18:37.5653874Z         "id": "/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis",
2024-09-18T15:18:37.5655378Z         "type": "Microsoft.ApiManagement/service/apis",
2024-09-18T15:18:37.5656430Z         "name": "rp-sis",
2024-09-18T15:18:37.5657136Z         "properties": {
2024-09-18T15:18:37.5657950Z           "displayName": "rp-sis",
2024-09-18T15:18:37.5658756Z           "apiRevision": "1",
2024-09-18T15:18:37.5659496Z           "description": null,
2024-09-18T15:18:37.5660297Z           "subscriptionRequired": false,
2024-09-18T15:18:37.5661147Z           "serviceUrl": null,
2024-09-18T15:18:37.5661886Z           "backendId": null,
2024-09-18T15:18:37.5662798Z           "path": "rp/scheme-integration-service",
2024-09-18T15:18:37.5663662Z           "protocols": [
2024-09-18T15:18:37.5664293Z             "https"
2024-09-18T15:18:37.5664861Z           ],
2024-09-18T15:18:37.5665757Z           "authenticationSettings": {
2024-09-18T15:18:37.5666511Z             "oAuth2": null,
2024-09-18T15:18:37.5667153Z             "openid": null,
2024-09-18T15:18:37.5667838Z             "oAuth2AuthenticationSettings": [],
2024-09-18T15:18:37.5668773Z             "openidAuthenticationSettings": []
2024-09-18T15:18:37.5669637Z           },
2024-09-18T15:18:37.5670279Z           "subscriptionKeyParameterNames": {
2024-09-18T15:18:37.5671358Z             "header": "Ocp-Apim-Subscription-Key",
2024-09-18T15:18:37.5672320Z             "query": "subscription-key"
2024-09-18T15:18:37.5673044Z           },
2024-09-18T15:18:37.5673638Z           "isCurrent": true,
2024-09-18T15:18:37.5674423Z           "provisioningState": "Failed"
2024-09-18T15:18:37.5675217Z         }
2024-09-18T15:18:37.5675772Z       }
2024-09-18T15:18:37.5676343Z info: publisher[0]
2024-09-18T15:18:37.5677031Z       Putting subscriptions...
2024-09-18T15:18:37.5677708Z info: publisher[0]
2024-09-18T15:18:37.5678348Z       Putting API policies...
2024-09-18T15:18:37.5679093Z info: publisher[0]
2024-09-18T15:18:37.5679754Z       Putting API tags...
2024-09-18T15:18:37.5680471Z info: publisher[0]
2024-09-18T15:18:37.5681201Z       Putting diagnostics...
2024-09-18T15:18:37.5681943Z info: publisher[0]
2024-09-18T15:18:37.5682583Z       Putting gateway apis...
2024-09-18T15:18:37.5683302Z info: publisher[0]
2024-09-18T15:18:37.5684010Z       Putting product policies...
2024-09-18T15:18:37.5684764Z info: publisher[0]
2024-09-18T15:18:37.5685416Z       Putting product groups...
2024-09-18T15:18:37.5686500Z info: publisher[0]
2024-09-18T15:18:37.5687130Z       Putting product tags...
2024-09-18T15:18:37.5687783Z info: publisher[0]
2024-09-18T15:18:37.5688333Z       Putting product apis...
2024-09-18T15:18:37.5688956Z info: publisher[0]
2024-09-18T15:18:37.5689565Z       Putting API policies...
2024-09-18T15:18:37.5690356Z dbug: Microsoft.FeatureManagement.FeatureManager[0]
2024-09-18T15:18:37.5691633Z       The feature definition for the feature 'Workspaces' was not found.
2024-09-18T15:18:37.5692862Z info: publisher[0]
2024-09-18T15:18:37.5693548Z       Deleting API policies...
2024-09-18T15:18:37.5694265Z info: publisher[0]
2024-09-18T15:18:37.5694870Z       Deleting product apis...
2024-09-18T15:18:37.5695528Z info: publisher[0]
2024-09-18T15:18:37.5696139Z       Deleting product tags...
2024-09-18T15:18:37.5696868Z info: publisher[0]
2024-09-18T15:18:37.5697574Z       Deleting product groups...
2024-09-18T15:18:37.5698354Z info: publisher[0]
2024-09-18T15:18:37.5699003Z       Deleting product policies...
2024-09-18T15:18:37.5699716Z info: publisher[0]
2024-09-18T15:18:37.5700392Z       Deleting gateway apis...
2024-09-18T15:18:37.5701072Z info: publisher[0]
2024-09-18T15:18:37.5701677Z       Deleting diagnostics...
2024-09-18T15:18:37.5702410Z info: publisher[0]
2024-09-18T15:18:37.5703089Z       Deleting API tags...
2024-09-18T15:18:37.5703799Z info: publisher[0]
2024-09-18T15:18:37.5704451Z       Deleting API policies...
2024-09-18T15:18:37.5714388Z info: publisher[0]
2024-09-18T15:18:37.5714913Z       Deleting subscriptions...
2024-09-18T15:18:37.5730106Z info: publisher[0]
2024-09-18T15:18:37.5730717Z       Deleting APIs...
2024-09-18T15:18:37.5747418Z info: publisher[0]
2024-09-18T15:18:37.5748095Z       Deleting groups...
2024-09-18T15:18:37.5763287Z info: publisher[0]
2024-09-18T15:18:37.5763898Z       Deleting products...
2024-09-18T15:18:37.5780250Z info: publisher[0]
2024-09-18T15:18:37.5780888Z       Deleting service policies...
2024-09-18T15:18:37.5805895Z info: publisher[0]
2024-09-18T15:18:37.5806427Z       Deleting policy fragments...
2024-09-18T15:18:37.6515659Z info: publisher[0]
2024-09-18T15:18:37.6516271Z       Deleting diagnostics...
2024-09-18T15:18:37.6526520Z info: publisher[0]
2024-09-18T15:18:37.6527042Z       Deleting loggers...
2024-09-18T15:18:37.6545605Z info: publisher[0]
2024-09-18T15:18:37.6546113Z       Deleting version sets...
2024-09-18T15:18:37.6568587Z info: publisher[0]
2024-09-18T15:18:37.6569693Z       Deleting tags...
2024-09-18T15:18:37.6591329Z info: publisher[0]
2024-09-18T15:18:37.6591843Z       Deleting backends...
2024-09-18T15:18:37.6611834Z info: publisher[0]
2024-09-18T15:18:37.6612548Z       Deleting gateways...
2024-09-18T15:18:37.6628364Z info: publisher[0]
2024-09-18T15:18:37.6628870Z       Deleting named values...
2024-09-18T15:18:37.6636667Z info: publisher[0]
2024-09-18T15:18:37.6637216Z       Publisher completed.
2024-09-18T15:18:37.6639733Z info: Microsoft.Hosting.Lifetime[0]
2024-09-18T15:18:37.6640505Z       Application is shutting down...
2024-09-18T15:18:37.7530412Z Execution complete.
2024-09-18T15:18:38.0560395Z Post job cleanup.
fabienmazieres commented 2 months ago

Please note that in the trace log, the first time that we push information about the API it appears there is no serviceUrl at all:

Content: {"properties":{"path":"rp/scheme-integration-service","apiRevision":"1","authenticationSettings":{},"displayName":"rp-sis","protocols":["https"],"subscriptionRequired":false}}

but when the specs are pushed, then we can see the serviceUrl correctly filled in:

024-09-18T15:18:36.6709557Z       Content: {"properties":{"path":"rp/scheme-integration-service","apiRevision":"1","authenticationSettings":{},"displayName":"rp-sis","format":"openapi\u002Bjson","protocols":["https"],"serviceUrl":"https://sis.dev-example.net","value":"{\n  \u0022openapi\u0022: \u00223.0.1\u0022,\n  \u0022info\u0022: {\n    \u0022title\u0022: \u0022rp-sis\u0022,\n    \u0022description
[...]
fabienmazieres commented 2 months ago

Important information: When I reverted APIOps to v5.0.0, it failed to push the same configuration into our APIM. One of the affected API that lost its serviceUrl turned out to have a conflicting endpoint:

 System.Net.Http.HttpRequestException: HTTP request to URI https://management.azure.com/subscriptions/***/resourceGroups/***/providers/Microsoft.ApiManagement/service/***/apis/rp-sis?api-version=2022-04-01-preview&asyncId=66eaff93fb42680738dc82c0&asyncCode=200 failed with status code 400. Content is '{"error":{"code":"ValidationError","message":"Importing API has duplicate signature operations: 2 operations with signature 'GET /submissions/{datetimeoffset}'","details":null}}'.

Is it due to a change in the Azure API version used or is it APIOps v6 not returning an error when it fails to upload a new spec?

the endpoints related to the error message, /submissions/{dateTimeOffset} was introduced when using version 6.0.11 and the workflows returned success deployment changes into this commit only (squashed & merge into main)

    "/submissions/{instruction}/{dateTimeOffset}": {
      "get": {
        "tags": [
          "Submission"
        ],
        "operationId": "GetSubmissionsForInstruction",
        "parameters": [
          {
            "name": "dateTimeOffset",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "instruction",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Bacs18Instruction"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DailySubmissionsResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DailySubmissionsResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DailySubmissionsResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed"
          },
          "500": {
            "description": "An internal server error occured"
          },
          "502": {
            "description": "Bad Gateway"
          },
          "503": {
            "description": "Service Unavailable"
          },
          "504": {
            "description": "Gateway Timeout"
          }
        }
      }
    },
    "/submissions/{dateTimeOffset}": {
      "get": {
        "tags": [
          "Submission"
        ],
        "operationId": "GetSubmissionsByDay",
        "parameters": [
          {
            "name": "dateTimeOffset",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DailySubmissionsResponse"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DailySubmissionsResponse"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DailySubmissionsResponse"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed"
          },
          "500": {
            "description": "An internal server error occured"
          },
          "502": {
            "description": "Bad Gateway"
          },
          "503": {
            "description": "Service Unavailable"
          },
          "504": {
            "description": "Gateway Timeout"
          }
        }
      }
    },
    "/submissions/{submissionId}": {
      "get": {
        "tags": [
          "Submission"
        ],
        "operationId": "GetSubmissionById",
        "parameters": [
          {
            "name": "submissionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Submission"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Submission"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Submission"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed"
          },
          "500": {
            "description": "An internal server error occured"
          },
          "502": {
            "description": "Bad Gateway"
          },
          "503": {
            "description": "Service Unavailable"
          },
          "504": {
            "description": "Gateway Timeout"
          }
        }
      }
    },
    "/submissions/{submissionId}/status": {
      "get": {
        "tags": [
          "Submission"
        ],
        "operationId": "GetSubmissionStatus",
        "parameters": [
          {
            "name": "submissionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SubmissionStatusResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubmissionStatusResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubmissionStatusResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed"
          },
          "500": {
            "description": "An internal server error occured"
          },
          "502": {
            "description": "Bad Gateway"
          },
          "503": {
            "description": "Service Unavailable"
          },
          "504": {
            "description": "Gateway Timeout"
          }
        }
      }
    },