--- swagger: "2.0" info: x-ibm-name: approvals title: Security/Approvals version: 1.2.3 description: API safeguarding monetrary Transactions, implementing a 2FA mechanism using sms and/or token devices termsOfService: Privacy Policy contact: name: Rapidlink Support Team email: rapidlink@piraeusbank.gr url: https://rapidlink.piraeusbank.gr license: name: Terms and Conditions of Use url: https://rapidlink.piraeusbank.gr/terms schemes: - https basePath: /v1.2/security/approvals securityDefinitions: MSIS OAuth: type: oauth2 description: "" flow: accessCode authorizationUrl: https://openbank.piraeusbank.gr/identityserver/connect/authorize scopes: winbankAccess winbankAccess.info winbankAccess.monetaryTransactions: "" tokenUrl: https://openbank.piraeusbank.gr/identityserver/connect/token x-tokenIntrospect: url: https://$(api.endpoint.address)/$(api.org.name)/$(env.path)/v1.2/oauth/external/introspect Sandbox OAuth: type: oauth2 description: Resource Owner Implicit Grant Type flow: accessCode authorizationUrl: https://api.rapidlink.piraeusbank.gr/piraeusbank/production/v1.2.1/oauth/oauth2/authorize scopes: /sandboxapi: Access to all security resources in sandbox tokenUrl: https://api.rapidlink.piraeusbank.gr/piraeusbank/production/v1.2.1/oauth/oauth2/token x-tokenIntrospect: url: https://$(api.endpoint.address)/$(api.org.name)/$(env.path)/v1.2.1/oauth/internal/introspect clientIdHeader: type: apiKey description: "" in: header name: X-IBM-Client-Id security: - clientIdHeader: [] MSIS OAuth: - winbankAccess winbankAccess.info winbankAccess.monetaryTransactions - clientIdHeader: [] Sandbox OAuth: - /sandboxapi paths: /: get: responses: 200: description: 200 OK schema: $ref: '#/definitions/GetApprovals_Output' operationId: GetApprovals summary: Get pending transactions for approval description: Get pending transactions for approval tags: - Security - Approvals parameters: - $ref: '#/parameters/Authorization' /list: get: responses: 200: description: 200 OK schema: $ref: '#/definitions/GetAprrovalsList_Output' operationId: GetAprrovalsList summary: Get the pending transactions currently listed for approval description: Get the pending transactions currently listed for approval tags: - Security - Approvals delete: responses: 200: description: 200 OK schema: $ref: '#/definitions/ClearApprovalsList_Output' operationId: ClearApprovalsList summary: Clear the list of pending transactions for approval description: Clear the list of pending transactions for approval tags: - Approvals - Security parameters: - $ref: '#/parameters/Authorization' /list/{approvalKey}: parameters: - $ref: '#/parameters/Authorization' - $ref: '#/parameters/approvalKey' delete: responses: 200: description: 200 OK schema: $ref: '#/definitions/DeleteFromList_Output' summary: Remove a pending transaction from the list for approval operationId: DeleteFromList description: Remove a pending transaction from the list for approval tags: - Security - Approvals post: responses: 200: description: 200 OK schema: $ref: '#/definitions/InsertToList_Output' operationId: InsertToList summary: Add a pending transaction into the list for approval description: Add a pending transaction into the list for approval tags: - Security - Approvals /validate: post: responses: 200: description: 200 OK schema: $ref: '#/definitions/ApproveValidate_Output' operationId: ApproveValidate summary: Validates and stages the transactions for approval description: Validates and stages the transactions for approval tags: - Security - Approvals delete: responses: 200: description: 200 OK schema: $ref: '#/definitions/RejectValidate_Output' operationId: RejectValidate summary: Validates and stages the transactions for rejection description: Validates and stages the transactions for rejection tags: - Security - Approvals parameters: - $ref: '#/parameters/Authorization' /execute: post: responses: 200: description: 200 OK schema: $ref: '#/definitions/Execute_Output' operationId: Execute summary: Executes the approval/rejection of pending transactions description: Executes the approval/rejection of pending transactions tags: - Security - Approvals parameters: - $ref: '#/parameters/Authorization' - name: body required: true in: body schema: $ref: '#/definitions/Execute_Input' description: Input required to execute approval/rejection of pending transactions x-ibm-configuration: testable: true enforced: true phase: realized consumes: - application/json produces: - application/json parameters: Authorization: name: Authorization type: string required: true in: header description: This header should be in the form "Bearer Token", where Token is returned from the call to OAuth2 approvalKey: name: approvalKey type: integer required: true in: path format: int64 description: Unique key of the approval that needs to be added to or deleted from the approvals' list definitions: Error_Output: description: Standard error object type: object properties: httpCode: type: string description: Http code of error httpMessage: type: string description: Http message of error errorCode: type: string description: Error code errorMessage: type: string description: Error message example: "{\n\t\"httpCode\": \"412\",\n\t\"httpMessage\": \"Precondition Failed\",\n\t\"errorCode\": \"API-987\",\n\t\"errorMessage\": \"sample error message\"\n}" Approvals_ApprovalDetails: type: array items: $ref: '#/definitions/ApprovalDetails_Definition' description: Array of pending approvals ApprovalDetails_Definition: properties: ApprovalKey: type: string example: MF80ODM0NTNfOTI4N183NTQ2MzMxNw description: Generated key for each record KeyType: type: integer example: "1" format: int64 description: 0 = Other, 1 = Own PendingOperationiD: type: integer format: int64 example: "9287" description: Unique identifier of the pending operation. PaymentOrderId: type: integer format: int64 example: "75463317" description: Unique identifier of the payment order waiting for approval UserName: type: string example: ΟΝΟΜΑ ΕΠΩΝΥΜΟ description: Name of the user that has requested the operation UserAlias: type: string example: UserE description: User alias that has requested the operation TransactionDescription: type: string example: BILL PAYMENT description: Localized description of the requested operation PostDate: type: string example: "2023-01-04T00:00:00" description: Date of request creation Amount: type: number format: double example: 40 description: Amount of the pending operation, if it is a monetary transaction Currency: type: string example: EUR description: Currency of the pending operation, if it is a monetary transaction AssetNumber: type: string example: GR28 0171 8220 0070 6113 3122 113 description: Source asset of the operation under approval Destination: type: string example: "1234567" description: Destination asset of the operation under approval ApprovalStarted: type: boolean example: "false" description: Flag indicating whether the approval process has started additionalProperties: false description: Object containing information about the details of a specific approval Approvals_GetList_ApprovalListEntry: properties: TimeStamp: type: string example: "2023-02-08T11:29:23.5533333" description: Timestamp of the entry in the approvals list UserID: type: string example: "483453" description: Unique identifier of the user requesting the entry into the approvals list ClientID: type: string description: Client Id of the application used to make the entry into the approvals list ApprovalKey: type: string example: MV80ODM0NTNfOTI4NF83NTQ2MzMxNA description: Generated key for each approval entrly KeyType: type: integer format: int64 example: "1" description: 0 = Other, 1 = Own savedUserId: type: string example: "483453" description: Unique identifier of the user requesting the entry into the approvals list PendingOperationiD: type: integer format: int64 example: "9284" description: Unique identifier of the pending operation. PaymentOrderId: type: integer format: int64 example: "75463314" description: Unique identifier of the payment order waiting for approval errorCode: type: integer format: int32 description: Code of possible error returned during the insertion into the approvals' list errorMessage: type: string description: Message of possible error returned during the insertion into the approvals' list additionalProperties: false description: Object containing information about a specific entry of the approval list Approvals_ApprovalResults: type: array items: $ref: '#/definitions/ApprovalResults_Definition' description: Array of multiple ApprovalResults objects ApprovalResults_Definition: type: object properties: approvalKey: type: string description: Generated key for each approvals list element example: MF80ODM0NTBfMzAyOF83NTQ2NDExMg status: type: integer format: int32 example: "1" description: 0 = NA, 1 = Success, 2 = Warning, 3 = Failure statusDescription: type: string example: Completed description: Description of status comment: type: string example: EB17061900626009 additionalProperties: false description: Object containing information about a specific approval result GetApprovals_Output: type: object properties: Own: description: User's own pending transactions $ref: '#/definitions/Approvals_ApprovalDetails' type: object Other: description: Other users' pending transactions $ref: '#/definitions/Approvals_ApprovalDetails' type: array items: type: string GetAprrovalsList_Output: description: Array of ApprovalListEntry elements type: array example: "{\n\t\"OwnPending\": [\n\t\t{\n\t\t\t\"PendingOperationId\": 1,\n\t\t\t\"PaymentOrderId\": 1,\n\t\t\t\"UserName\": \"sample string 2\",\n\t\t\t\"UserAlias\": \"sample string 3\",\n\t\t\t\"TransactionDescription\": \"sample string 9\",\n\t\t\t\"PostDate\": \"2017-10-05T15:14:36.1784204+03:00\",\n\t\t\t\"Amount\": 1.0,\n\t\t\t\"Currency\": \"sample string 2\",\n\t\t\t\"AssetNumber\": \"sample string 6\",\n\t\t\t\"Destination\": \"sample string 7\",\n\t\t\t\"PendingType\": 0,\n\t\t\t\"HasApprovals\": true\n\t\t}\n\t],\n\t\"OtherPending\": [\n\t\t{\n\t\t\t\"PendingOperationId\": 1,\n\t\t\t\"PaymentOrderId\": 1,\n\t\t\t\"UserName\": \"sample string 2\",\n\t\t\t\"UserAlias\": \"sample string 3\",\n\t\t\t\"TransactionDescription\": \"sample string 9\",\n\t\t\t\"PostDate\": \"2017-10-05T15:14:36.1784204+03:00\",\n\t\t\t\"Amount\": 1.0,\n\t\t\t\"Currency\": \"sample string 2\",\n\t\t\t\"AssetNumber\": \"sample string 6\",\n\t\t\t\"Destination\": \"sample string 7\",\n\t\t\t\"PendingType\": 0,\n\t\t\t\"HasApprovals\": true\n\t\t}\n\t]\n}\n" items: $ref: '#/definitions/Approvals_GetList_ApprovalListEntry' ClearApprovalsList_Output: properties: message: type: string example: List successfully cleared description: Generic success message additionalProperties: false description: Object containing the output of the request to clear the approvals list InsertToList_Output: properties: message: type: string description: Generic success message example: Successfully added additionalProperties: false description: Object containing the output of the request to insert a record into the approvals list DeleteFromList_Output: properties: message: type: string description: Generic success message example: Entry {approvalKey} successfully deleted from list additionalProperties: false description: Object containing the output of the request to delete a record from the approvals list ApproveValidate_Output: properties: SessionKey: type: string approvalKeys: type: array items: type: string description: Array of approval keys (strings) additionalProperties: false description: Object containing the response of the request to validate one or more approvals RejectValidate_Output: properties: SessionKey: type: string approvalKeys: type: array description: Array of approval keys (strings) items: type: string additionalProperties: false description: Object containing the response of the request to validate one or more rejections Execute_Input: properties: SessionKey: type: string ExtraPin: type: string example: "3288000" additionalProperties: false required: - SessionKey description: Request object for execution of one or more approvals/rejections based on the session key of the respective validation Execute_Output: properties: SessionKey: type: string ApprovalResults: description: Array of approval keys (strings) items: type: string $ref: '#/definitions/Approvals_ApprovalResults' additionalProperties: false description: Object containing the response of the request to execute one or more approvals/rejections based on the session key of the respective validation externalDocs: description: Getting Started url: https://rapidlink.piraeusbank.gr/start x-ibm-endpoints: - endpointUrl: https://api.rapidlink.piraeusbank.gr/piraeusbank/production description: Base Gateway API Endpoint type: - production - development ...