--- swagger: "2.0" info: description: API for PSD2 Subscription version: "1.0" title: PSD2_Subscription_API contact: name: Bank Of Cyprus x-ibm-name: PSD2_Subscription_API host: localhost:8080 basePath: /psd2 schemes: - https paths: /v1/subscriptions: post: description: Create Subscription after user authentication operationId: createSubscription schemes: - http - https produces: - application/json parameters: - name: journeyId in: header description: Global transaction Id required: true type: string - name: app_name in: header required: true type: string - name: originSourceId in: header description: ID of the source system invoking required: false type: string - name: originChannelId in: header description: ID of the channel from which the invocation occurred required: false type: string - name: originDeptId in: header description: ID of the department from which the invocation occurred required: false type: string - name: originUserId in: header description: User ID of the requester (as per LDAP) required: true type: string - name: originEmployeeId in: header description: Employee ID of the requester (as per employee HR record) required: false type: string - name: originTerminalId in: header description: Terminal ID of the requester required: false type: string - name: timeStamp in: header description: The time stamp when the request was sent to system required: true type: string - name: correlationId in: header description: Correlation ID passed by the requesting system required: false type: string - name: tppId in: header description: Third party Provide ( TPP ) ID required: true type: string - name: client_id in: query description: Third party Provide ( TPP ) Application Id required: true type: string - name: Authorization in: header description: 'Encrypted access token ' required: true type: string - name: lang in: header description: 2-character iso code for preferred language. If empty the default will be English required: false type: string - name: client_secret in: query description: Unique ID for TPP required: true type: string - in: body name: requestBody required: true schema: $ref: '#/definitions/CreateSubscriptionRequest' responses: 200: description: OK schema: $ref: '#/definitions/CreateSubscriptionResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 201: description: Created schema: $ref: '#/definitions/CreateSubscriptionResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 202: description: Accepted headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 302: description: Found headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 400: description: Bad Request schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 401: description: Unauthorized schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 403: description: Forbidden schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 404: description: API URL Not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 405: description: Method not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 406: description: Not Acceptable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 429: description: Too many Requests schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system 500: description: Internal Server Error schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 503: description: Service Unavailable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system security: - client_secret: [] client_id: [] Application - Oauth: - TPPOAuth2Security consumes: - application/json /v1/subscriptions/accounts/{accountId}: get: description: Retrieve subscriptions for customer account based on accountId in path parameter operationId: getSubscriptionForAccount schemes: - http - https produces: - application/json parameters: - name: accountId in: path description: AccountId of account required: true type: string - name: subscriptionId in: header required: false type: string - name: journeyId in: header description: Global transaction Id required: true type: string - name: originSourceId in: header description: ID of the source system invoking required: false type: string - name: originChannelId in: header description: ID of the channel from which the invocation occurred required: false type: string - name: originDeptId in: header description: ID of the department from which the invocation occurred required: false type: string - name: originUserId in: header description: User ID of the requester (as per LDAP) required: true type: string - name: originEmployeeId in: header description: Employee ID of the requester (as per employee HR record) required: false type: string - name: originTerminalId in: header description: Terminal ID of the requester required: false type: string - name: timeStamp in: header description: The time stamp when the request was sent to system required: true type: string - name: correlationId in: header description: Correlation ID passed by the requesting system required: false type: string - name: tppId in: header description: Third party Provide ( TPP ) ID required: true type: string - name: client_id in: query description: Third party Provide ( TPP ) Application Id required: true type: string - name: Authorization in: header description: 'Encrypted access token ' required: true type: string - name: lang in: header description: 2-character iso code for preferred language. If empty the default will be English required: false type: string - name: client_secret in: query description: Unique ID for TPP required: true type: string responses: 200: description: OK schema: type: array items: $ref: '#/definitions/SubscriptionView' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 302: description: Found headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 400: description: Bad Request schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 401: description: Unauthorized schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 403: description: Forbidden schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 404: description: API URL Not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 405: description: Method not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 406: description: Not Acceptable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 429: description: Too many Requests schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system 500: description: Internal Server Error schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 503: description: Service Unavailable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system security: - client_secret: [] client_id: [] Application - Oauth: - TPPOAuth2Security /v1/subscriptions/{subscriptionId}: get: description: Get subscription for TPP based on subscriptionId in header operationId: getSubscriptionsForTPP schemes: - http - https parameters: - name: subscriptionId in: path description: 'Subscription ID of a subscriber ' required: true type: string - name: journeyId in: header description: Global transaction Id required: true type: string - name: originSourceId in: header description: ID of the source system invoking required: false type: string - name: originChannelId in: header description: ID of the channel from which the invocation occurred required: false type: string - name: originDeptId in: header description: ID of the department from which the invocation occurred required: false type: string - name: originUserId in: header description: User ID of the requester (as per LDAP) required: true type: string - name: originEmployeeId in: header description: Employee ID of the requester (as per employee HR record) required: false type: string - name: originTerminalId in: header description: Terminal ID of the requester required: false type: string - name: timeStamp in: header description: The time stamp when the request was sent to system required: true type: string - name: correlationId in: header description: Correlation ID passed by the requesting system required: false type: string - name: tppId in: header description: Third party Provide ( TPP ) ID required: true type: string - name: client_id in: query description: Third party Provide ( TPP ) Application Id required: true type: string - name: Authorization in: header description: 'Encrypted access token ' required: true type: string - name: lang in: header description: 2-character iso code for preferred language. If empty the default will be English required: false type: string - name: client_secret in: query description: Unique ID for TPP required: true type: string responses: 200: description: OK schema: type: array items: $ref: '#/definitions/SubscriptionView' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 302: description: Found headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 400: description: Bad Request schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 401: description: Unauthorized schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 403: description: Forbidden schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 404: description: API URL Not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 405: description: Method not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 406: description: Not Acceptable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 429: description: Too many Requests schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system 500: description: Internal Server Error schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 503: description: Service Unavailable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system security: - client_secret: [] client_id: [] Application - Oauth: - TPPOAuth2Security delete: description: Revoke subscription based on subscriptionId operationId: revokeSubscription schemes: - http - https produces: - application/json parameters: - name: subscriptionId in: path description: SubscriptionId for which subscription needs to be revoked required: true type: string - name: journeyId in: header description: Global transaction Id required: true type: string - name: originSourceId in: header description: ID of the source system invoking required: false type: string - name: originChannelId in: header description: ID of the channel from which the invocation occurred required: false type: string - name: originDeptId in: header description: ID of the department from which the invocation occurred required: false type: string - name: originUserId in: header description: User ID of the requester (as per LDAP) required: true type: string - name: originEmployeeId in: header description: Employee ID of the requester (as per employee HR record) required: false type: string - name: originTerminalId in: header description: Terminal ID of the requester required: false type: string - name: timeStamp in: header description: The time stamp when the request was sent to system required: true type: string - name: correlationId in: header description: Correlation ID passed by the requesting system required: false type: string - name: tppId in: header description: Third party Provide ( TPP ) ID required: true type: string - name: client_id in: query description: Third party Provide ( TPP ) Application Id required: true type: string - name: Authorization in: header description: 'Encrypted access token ' required: true type: string - name: lang in: header description: 2-character iso code for preferred language. If empty the default will be English required: false type: string - name: client_secret in: query description: Unique ID for TPP required: true type: string responses: 200: description: OK headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 202: description: Accepted headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 302: description: Found headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 400: description: Bad Request schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 401: description: Unauthorized schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 403: description: Forbidden schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 404: description: API URL Not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 405: description: Method not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 406: description: Not Acceptable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 429: description: Too many Requests schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system 500: description: Internal Server Error schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 503: description: Service Unavailable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system security: - client_secret: [] client_id: [] Application - Oauth: - TPPOAuth2Security patch: description: Update subscription details based on subscriptionId operationId: updateSubscription schemes: - http - https consumes: - application/json produces: - application/json parameters: - name: subscriptionId in: path description: SubscriptionId for which subscription needs to be updated required: true type: string - name: journeyId in: header description: Global transaction Id required: true type: string - name: originSourceId in: header description: ID of the source system invoking required: false type: string - name: originChannelId in: header description: ID of the channel from which the invocation occurred required: false type: string - name: originDeptId in: header description: ID of the department from which the invocation occurred required: false type: string - name: originUserId in: header description: User ID of the requester (as per LDAP) required: true type: string - name: originEmployeeId in: header description: Employee ID of the requester (as per employee HR record) required: false type: string - name: originTerminalId in: header description: Terminal ID of the requester required: false type: string - name: timeStamp in: header description: The time stamp when the request was sent to system required: true type: string - name: correlationId in: header description: Correlation ID passed by the requesting system required: false type: string - name: tppId in: header description: Third party Provide ( TPP ) ID required: true type: string - name: client_id in: query description: Third party Provide ( TPP ) Application Id required: true type: string - name: Authorization in: header description: 'Encrypted access token ' required: true type: string - name: lang in: header description: 2-character iso code for preferred language. If empty the default will be English required: false type: string - name: client_secret in: query description: Unique ID for TPP required: true type: string - in: body name: requestBody required: true schema: $ref: '#/definitions/UpdateSubscriptionRequest' responses: 200: description: OK schema: $ref: '#/definitions/UpdateSubscriptionResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 201: description: Created schema: $ref: '#/definitions/UpdateSubscriptionResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 202: description: Accepted headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 302: description: Found headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 400: description: Bad Request schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 401: description: Unauthorized schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 403: description: Forbidden schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 404: description: API URL Not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 405: description: Method not Found schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 406: description: Not Acceptable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 429: description: Too many Requests schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system 500: description: Internal Server Error schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system 503: description: Service Unavailable schema: $ref: '#/definitions/ErrorResponse' headers: journeyId: type: string description: Global Transaction id/Journey ID timeStamp: type: string description: The time stamp when the message was received from the system correlationId: type: string description: Correlation ID passed by the requesting system security: - client_secret: [] client_id: [] Access Code - Oauth: - UserOAuth2Security definitions: AdditionalDetails: type: object properties: errorCode: type: string severity: type: string status: type: string description: type: string UpdateSubscriptionResponse: type: object required: - duration properties: subscriptionId: type: string status: type: string example: ACTV description: type: string example: SUBSCRIPTION selectedAccounts: type: array items: $ref: '#/definitions/SelectedAccount' accounts: $ref: '#/definitions/AccountView' payments: $ref: '#/definitions/PaymentView' duration: $ref: '#/definitions/Duration' PaymentView: type: object required: - amount - currency - limit properties: limit: type: number currency: type: string amount: type: number UpdateSubscriptionRequest: type: object properties: selectedAccounts: type: array items: $ref: '#/definitions/SelectedAccount' accounts: $ref: '#/definitions/AccountView' payments: $ref: '#/definitions/PaymentView' SubscriptionView: type: object properties: subscriptionId: type: string status: type: string example: ACTV description: type: string example: SUBSCRIPTION selectedAccounts: type: array items: $ref: '#/definitions/SelectedAccount' accounts: $ref: '#/definitions/AccountView' payments: $ref: '#/definitions/PaymentView' SelectedAccount: type: object required: - accountId properties: accountId: type: string AccountView: type: object required: - balance - checkFundsAvailability - details - transactionHistory properties: transactionHistory: type: boolean balance: type: boolean details: type: boolean checkFundsAvailability: type: boolean Error: type: object properties: code: type: string severity: type: string enum: - error - warning - Info description: type: string additionalDetails: type: array items: $ref: '#/definitions/AdditionalDetails' Duration: type: object required: - endDate - startDate properties: startDate: type: string endDate: type: string CreateSubscriptionRequest: type: object properties: selectedAccounts: type: array items: $ref: '#/definitions/SelectedAccount' accounts: $ref: '#/definitions/AccountView' payments: $ref: '#/definitions/PaymentView' CreateSubscriptionResponse: type: object required: - duration properties: duration: $ref: '#/definitions/Duration' subscriptionId: type: string status: type: string example: ACTV description: type: string example: SUBSCRIPTION selectedAccounts: type: array items: $ref: '#/definitions/SelectedAccount' accounts: $ref: '#/definitions/AccountView' payments: $ref: '#/definitions/PaymentView' ErrorResponse: type: object properties: fatalError: type: boolean error: $ref: '#/definitions/Error' x-ibm-configuration: enforced: true testable: true phase: realized securityDefinitions: client_secret: type: apiKey description: "" in: query name: client_secret client_id: type: apiKey description: "" in: query name: client_id Access Code - Oauth: type: oauth2 description: "" flow: accessCode scopes: UserOAuth2Security: "" authorizationUrl: https://sandbox-apis.bankofcyprus.com/df-boc-org-sb/sb/psd2/oauth2/authorize x-tokenIntrospect: url: "" tokenUrl: https://sandbox-apis.bankofcyprus.com/df-boc-org-sb/sb/psd2/oauth2/token Application - Oauth: type: oauth2 description: "" flow: application scopes: TPPOAuth2Security: TPPOAuth2Security tokenUrl: https://sandbox-apis.bankofcyprus.com/df-boc-org-sb/sb/psd2/oauth2/token x-tokenIntrospect: url: "" security: - client_secret: [] client_id: [] Access Code - Oauth: - UserOAuth2Security Application - Oauth: - TPPOAuth2Security consumes: - application/json produces: - application/json x-ibm-endpoints: - endpointUrl: https://sandbox-apis.bankofcyprus.com/df-boc-org-sb/sb type: - production ...