{"swagger":"2.0","info":{"title":"Open Bank Project API","description":"An Open Source API for Banks. (c) TESOBE GmbH. 2011 - 2024. Licensed under the AGPL and commercial licences.","contact":{"name":"TESOBE GmbH. / Open Bank Project","url":"https://openbankproject.com","email":"contact@tesobe.com"},"version":"v4.0.0"},"host":"apisandbox.openbankproject.com","basePath":"/","schemes":["http","https"],"securityDefinitions":{"directLogin":{"type":"apiKey","description":"https://github.com/OpenBankProject/OBP-API/wiki/Direct-Login","in":"header","name":"Authorization"},"gatewayLogin":{"type":"apiKey","description":"https://github.com/OpenBankProject/OBP-API/wiki/Gateway-Login","in":"header","name":"Authorization"}},"security":[{"directLogin":[],"gatewayLogin":[]}],"paths":{"/obp/v4.0.0/banks":{"get":{"tags":["Bank","Account Information Service (AIS)","PSD2"],"summary":"Get Banks","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"
Get banks on this API instance
Returns a list of banks supported on this server:
Authentication is Optional
","operationId":"getBanks","parameters":[],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/BanksJson400"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUnknownError"}}}},"post":{"tags":["Bank"],"summary":"Create Bank","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Create a new bank (Authenticated access).
The user creating this will be automatically assigned the Role CanCreateEntitlementAtOneBank.
Thus the User can manage the bank they create and assign Roles to other Users.
Only SANDBOX mode
The settlement accounts are created specified by the bank in the POST body.
Name and account id are created in accordance to the next rules:
- Incoming account (name: Default incoming settlement account, Account ID: OBP_DEFAULT_INCOMING_ACCOUNT_ID, currency: EUR)
- Outgoing account (name: Default outgoing settlement account, Account ID: OBP_DEFAULT_OUTGOING_ACCOUNT_ID, currency: EUR)
Authentication is Mandatory
","operationId":"createBank","parameters":[{"in":"body","name":"body","description":"PostBankJson400 object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/PostBankJson400"}}],"responses":{"201":{"description":"Success","schema":{"$ref":"#/definitions/BankJson400"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorInvalidJsonFormat"}}}}},"/obp/v4.0.0/banks/{BANK_ID}":{"get":{"tags":["Bank","Account Information Service (AIS)","PSD2"],"summary":"Get Bank","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Get the bank specified by BANK_ID
Returns information about a single bank specified by BANK_ID including:
Authentication is Optional
","operationId":"getBank","parameters":[{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/BankJson400"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUnknownError"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/account-web-hooks":{"post":{"tags":["Webhook","Bank"],"summary":"Create an Account Webhook","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Create an Account Webhook
Webhooks are used to call external URLs when certain events happen.
Account Webhooks focus on events around accounts.
For instance, a webhook could be used to notify an external service if a balance changes on an account.
This functionality is work in progress! Please note that only implemented trigger is: OnBalanceChange
Authentication is Mandatory
","operationId":"createAccountWebhook","parameters":[{"in":"body","name":"body","description":"AccountWebhookPostJson object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/AccountWebhookPostJson"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"201":{"description":"Success","schema":{"$ref":"#/definitions/AccountWebhookJson"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUnknownError"}}}},"put":{"tags":["Webhook","Bank"],"summary":"Enable/Disable an Account Webhook","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Enable/Disable an Account Webhook
Webhooks are used to call external URLs when certain events happen.
Account Webhooks focus on events around accounts.
For instance, a webhook could be used to notify an external service if a balance changes on an account.
This functionality is work in progress! Please note that only implemented trigger is: OnBalanceChange
Authentication is Mandatory
","operationId":"enableDisableAccountWebhook","parameters":[{"in":"body","name":"body","description":"AccountWebhookPutJson object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/AccountWebhookPutJson"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/AccountWebhookJson"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUnknownError"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/attribute":{"post":{"tags":["Bank"],"summary":"Create Bank Attribute","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Create Bank Attribute
Typical product attributes might be:
ISIN (for International bonds)
VKN (for German bonds)
REDCODE (markit short code for credit derivative)
LOAN_ID (e.g. used for Anacredit reporting)
ISSUE_DATE (When the bond was issued in the market)
MATURITY_DATE (End of life time of a product)
TRADABLE
See FPML for more examples.
The type field must be one of "STRING", "INTEGER", "DOUBLE" or DATE_WITH_DAY"
Authentication is Mandatory
","operationId":"createBankAttribute","parameters":[{"in":"body","name":"body","description":"BankAttributeJsonV400 object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/BankAttributeJsonV400"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"201":{"description":"Success","schema":{"$ref":"#/definitions/BankAttributeResponseJsonV400"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorInvalidJsonFormat"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/attribute-definitions/bank":{"put":{"tags":["Bank"],"summary":"Create or Update Bank Attribute Definition","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Create or Update Bank Attribute Definition
The category field must be Bank
The type field must be one of; DOUBLE, STRING, INTEGER and DATE_WITH_DAY
Authentication is Mandatory
","operationId":"createOrUpdateBankAttributeDefinition","parameters":[{"in":"body","name":"body","description":"AttributeDefinitionJsonV400 object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/AttributeDefinitionJsonV400"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/AttributeDefinitionResponseJsonV400"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUserNotLoggedIn"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/attributes":{"get":{"tags":["Bank"],"summary":"Get Bank Attributes","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Get Bank Attributes
Authentication is Mandatory
","operationId":"getBankAttributes","parameters":[{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/BankAttributesResponseJsonV400"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUserNotLoggedIn"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/attributes/BANK_ATTRIBUTE_ID":{"delete":{"tags":["Bank"],"summary":"Delete Bank Attribute","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Delete Bank Attribute
Delete a Bank Attribute by its id.
Authentication is Mandatory
","operationId":"deleteBankAttribute","parameters":[{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"204":{"description":"Success"},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorBankNotFound"}}}},"get":{"tags":["Bank"],"summary":"Get Bank Attribute By BANK_ATTRIBUTE_ID","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Get Bank Attribute By BANK_ATTRIBUTE_ID
Authentication is Mandatory
","operationId":"getBankAttribute","parameters":[{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/BankAttributeResponseJsonV400"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUserNotLoggedIn"}}}},"put":{"tags":["Bank"],"summary":"Update Bank Attribute","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Update Bank Attribute.
Update one Bak Attribute by its id.
Authentication is Mandatory
","operationId":"updateBankAttribute","parameters":[{"in":"body","name":"body","description":"BankAttributeJsonV400 object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/BankAttributeJsonV400"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/AttributeDefinitionJsonV400"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUnknownError"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/branches":{"get":{"tags":["Branch","Bank"],"summary":"Get Branches for a Bank","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Returns information about branches for a single bank specified by BANK_ID including:
Pagination:
By default, 50 records are returned.
You can use the url query parameters limit and offset for pagination
You can also use the follow url query parameters:
city - string, find Branches those in this city, optional
withinMetersOf - number, find Branches within given meters distance, optional
note: withinMetersOf, nearLatitude and nearLongitude either all empty or all have value.
Authentication is Optional
","operationId":"getBranches","parameters":[{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/BranchesJsonV300"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorBankNotFound"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/branches/{BRANCH_ID}":{"get":{"tags":["Branch","Bank"],"summary":"Get Branch","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Returns information about a single Branch specified by BANK_ID and BRANCH_ID including:
Authentication is Optional
","operationId":"getBranch","parameters":[{"in":"path","name":"BRANCH_ID","description":"The branch id","required":true,"type":"string"},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/BranchJsonV300"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorBranchNotFoundByBranchId"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/settlement-accounts":{"get":{"tags":["Bank","PSD2"],"summary":"Get Settlement accounts at Bank","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Get settlement accounts on this API instance
Returns a list of settlement accounts at this Bank
Note: a settlement account is considered as a bank account.
So you can update it and add account attributes to it using the regular account endpoints
Authentication is Mandatory
","operationId":"getSettlementAccounts","parameters":[{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/SettlementAccountsJson"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUserNotLoggedIn"}}}},"post":{"tags":["Bank"],"summary":"Create Settlement Account","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Create a new settlement account at a bank.
The created settlement account id will be the concatenation of the payment system and the account currency.
For examples: SEPA_SETTLEMENT_ACCOUNT_EUR, CARD_SETTLEMENT_ACCOUNT_USD
By default, when you create a new bank, two settlements accounts are created automatically: OBP_DEFAULT_INCOMING_ACCOUNT_ID and OBP_DEFAULT_OUTGOING_ACCOUNT_ID
Those two accounts have EUR as default currency.
If you want to create default settlement account for a specific currency, you can fill the payment_system
field with the DEFAULT
value.
When a transaction is saved in OBP through the mapped connector, OBP-API look for the account to save the double-entry transaction.
If no OBP account can be found from the counterparty, the double-entry transaction will be saved on a bank settlement account.
- First, the mapped connector looks for a settlement account specific to the payment system and currency. E.g SEPA_SETTLEMENT_ACCOUNT_EUR.
- If we don't find any specific settlement account with the payment system, we look for a default settlement account for the counterparty currency. E.g DEFAULT_SETTLEMENT_ACCOUNT_EUR.
- Else, we select one of the two OBP default settlement accounts (OBP_DEFAULT_INCOMING_ACCOUNT_ID/OBP_DEFAULT_OUTGOING_ACCOUNT_ID) according to the transaction direction.
If the POST body USER_ID is specified, the logged in user must have the Role CanCreateAccount. Once created, the Account will be owned by the User specified by USER_ID.
If the POST body USER_ID is not specified, the account will be owned by the logged in User.
Note: The Amount MUST be zero.
Authentication is Mandatory
","operationId":"createSettlementAccount","parameters":[{"in":"body","name":"body","description":"SettlementAccountRequestJson object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/SettlementAccountRequestJson"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"201":{"description":"Success","schema":{"$ref":"#/definitions/SettlementAccountResponseJson"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorInvalidJsonFormat"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/transaction-request-types":{"get":{"tags":["Transaction-Request","Bank"],"summary":"Get Transaction Request Types at Bank","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Get the list of the Transaction Request Types supported by the bank.
Authentication is Optional
","operationId":"getTransactionRequestTypesSupportedByBank","parameters":[{"in":"body","name":"body","description":"EmptyClassJson object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/EmptyClassJson"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/TransactionRequestTypesJSON"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUnknownError"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/transaction-types":{"get":{"tags":["Bank","Account Information Service (AIS)","PSD2"],"summary":"Get Transaction Types at Bank","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Get Transaction Types for the bank specified by BANK_ID:
Lists the possible Transaction Types available at the bank (as opposed to Transaction Request Types which are the possible ways Transactions can be created by this API Server).
Authentication is Optional
","operationId":"getTransactionTypes","parameters":[{"in":"body","name":"body","description":"EmptyClassJson object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/EmptyClassJson"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/TransactionTypesJsonV200"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorBankNotFound"}}}},"put":{"tags":["Bank"],"summary":"Create Transaction Type at bank","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Create Transaction Types for the bank specified by BANK_ID:
Authentication is Mandatory
","operationId":"createTransactionType","parameters":[{"in":"body","name":"body","description":"TransactionTypeJsonV200 object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/TransactionTypeJsonV200"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/TransactionType"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUserNotLoggedIn"}}}}},"/obp/v4.0.0/banks/{BANK_ID}/web-hooks/account/notifications/on-create-transaction":{"post":{"tags":["Webhook","Bank"],"summary":"Create bank level Account Notification Webhook","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Create a notification Webhook that will fire for all accounts on the specified Bank.
Webhooks are used to call external web services when certain events happen.
For instance, a webhook can be used to notify an external service if a transaction is created on an account.
When an account notification webhook fires it will POST to the URL you specify during the creation of the webhook.
Inside the payload you will find account_id and transaction_id and also user_ids and customer_ids of the Users / Customers linked to the Account.
The webhook will POST the following structure to your service:
{
"event_name": "OnCreateTransaction",
"event_id": "9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"bank_id": "gh.29.uk",
"account_id": "8ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"transaction_id": "7ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"related_entities": [
{
"user_id": "8ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"customer_ids": ["3ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"]
}
]
}
Thus, your service should accept the above POST body structure.
In this way, your web service can be informed about an event on an account and act accordingly.
Further information about the account, transaction or related entities can then be retrieved using the standard REST APIs.
Authentication is Mandatory
","operationId":"createBankAccountNotificationWebhook","parameters":[{"in":"body","name":"body","description":"AccountNotificationWebhookPostJson object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/AccountNotificationWebhookPostJson"}},{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"201":{"description":"Success","schema":{"$ref":"#/definitions/BankAccountNotificationWebhookJson"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUserNotLoggedIn"}}}}},"/obp/v4.0.0/management/banks/{BANK_ID}/account-web-hooks":{"get":{"tags":["Webhook","Bank"],"summary":"Get Account Webhooks","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Get Account Webhooks.
Possible custom URL parameters for pagination:
Possible custom url parameters for pagination:
eg1:?limit=100&offset=0
eg2:?limit=100&offset=0&sort_direction=ASC
Authentication is Mandatory
","operationId":"getAccountWebhooks","parameters":[{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"200":{"description":"Success","schema":{"$ref":"#/definitions/AccountWebhooksJson"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUserNotLoggedIn"}}}}},"/obp/v4.0.0/management/cascading/banks/{BANK_ID}":{"delete":{"tags":["Bank"],"summary":"Delete Bank Cascade","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Delete a Bank Cascade specified by BANK_ID.
Authentication is Mandatory
","operationId":"deleteBankCascade","parameters":[{"in":"path","name":"BANK_ID","description":"The bank id","required":true,"type":"string"}],"responses":{"204":{"description":"Success"},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUserNotLoggedIn"}}}}},"/obp/v4.0.0/web-hooks/account/notifications/on-create-transaction":{"post":{"tags":["Webhook","Bank"],"summary":"Create system level Account Notification Webhook","security":[{"directLogin":[],"gatewayLogin":[]}],"description":"Create a notification Webhook that will fire for all accounts on the system.
Webhooks are used to call external web services when certain events happen.
For instance, a webhook can be used to notify an external service if a transaction is created on an account.
When an account notification webhook fires it will POST to the URL you specify during the creation of the webhook.
Inside the payload you will find account_id and transaction_id and also user_ids and customer_ids of the Users / Customers linked to the Account.
The webhook will POST the following structure to your service:
{
"event_name": "OnCreateTransaction",
"event_id": "9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"bank_id": "gh.29.uk",
"account_id": "8ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"transaction_id": "7ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"related_entities": [
{
"user_id": "8ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"customer_ids": ["3ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"]
}
]
}
Thus, your service should accept the above POST body structure.
In this way, your web service can be informed about an event on an account and act accordingly.
Further information about the account, transaction or related entities can then be retrieved using the standard REST APIs.
Authentication is Mandatory
","operationId":"createSystemAccountNotificationWebhook","parameters":[{"in":"body","name":"body","description":"AccountNotificationWebhookPostJson object that needs to be added.","required":true,"schema":{"$ref":"#/definitions/AccountNotificationWebhookPostJson"}}],"responses":{"201":{"description":"Success","schema":{"$ref":"#/definitions/SystemAccountNotificationWebhookJson"}},"400":{"description":"Error","schema":{"$ref":"#/definitions/ErrorUnknownError"}}}}}},"definitions":{"ErrorInvalidJsonFormat":{"properties":{"message":{"type":"string","example":"OBP-10001: Incorrect json format."}}},"ErrorUserNotLoggedIn":{"properties":{"message":{"type":"string","example":"OBP-20001: User not logged in. Authentication is required!"}}},"ErrorBankNotFound":{"properties":{"message":{"type":"string","example":"OBP-30001: Bank not found. Please specify a valid value for BANK_ID."}}},"ErrorBranchNotFoundByBranchId":{"properties":{"message":{"type":"string","example":"OBP-300010: Branch not found. Please specify a valid value for BRANCH_ID. Or License may not be set. meta.license.id and meta.license.name can not be empty"}}},"ErrorUnknownError":{"properties":{"message":{"type":"string","example":"OBP-50000: Unknown Error."}}},"BankAccountNotificationWebhookJson":{"required":["created_by_user_id","url","trigger_name","http_protocol","http_method","bank_id","webhook_id"],"properties":{"created_by_user_id":{"type":"string","example":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"},"url":{"type":"string","example":"https://localhost.openbankproject.com"},"trigger_name":{"type":"string","example":"OnCreateTransaction"},"http_protocol":{"type":"string","example":"HTTP/1.1"},"http_method":{"type":"string","example":"POST"},"bank_id":{"type":"string","example":"gh.29.uk"},"webhook_id":{"type":"string","example":"fc23a7e2-7dd2-4bdf-a0b4-ae31232a4762"}}},"AttributeDefinitionResponseJsonV400":{"required":["name","is_active","description","attribute_definition_id","alias","bank_id","can_be_seen_on_views","category","type"],"properties":{"name":{"type":"string","example":"SPECIAL_TAX_NUMBER"},"is_active":{"type":"boolean","example":"true"},"description":{"type":"string","example":"description"},"attribute_definition_id":{"type":"string","example":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"},"alias":{"type":"string","example":"STRING"},"bank_id":{"type":"string","example":"gh.29.uk"},"can_be_seen_on_views":{"type":"array","items":{"type":"string"}},"category":{"type":"string","example":"Card"},"type":{"type":"string","example":"STRING"}}},"AmountOfMoneyJsonV121":{"required":["currency","amount"],"properties":{"currency":{"type":"string","example":"EUR"},"amount":{"type":"string","example":"0"}}},"LicenseJsonV140":{"required":["id","name"],"properties":{"id":{"type":"string","example":"ODbL-1.0"},"name":{"type":"string","example":"Open Database License"}}},"AccountWebhookJson":{"required":["created_by_user_id","is_active","url","trigger_name","http_protocol","account_webhook_id","http_method","bank_id","account_id"],"properties":{"created_by_user_id":{"type":"string","example":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"},"is_active":{"type":"boolean","example":"true"},"url":{"type":"string","example":"https://localhost.openbankproject.com"},"trigger_name":{"type":"string","example":"OnBalanceChange"},"http_protocol":{"type":"string","example":"HTTP/1.1"},"account_webhook_id":{"type":"string","example":"613c83ea-80f9-4560-8404-b9cd4ec42a7f"},"http_method":{"type":"string","example":"POST"},"bank_id":{"type":"string","example":"gh.29.uk"},"account_id":{"type":"string","example":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0"}}},"PostBankJson400":{"required":["bank_routings","website","full_name","logo","id","short_name"],"properties":{"bank_routings":{"type":"array","items":{"$ref":"#/definitions/BankRoutingJsonV121"}},"website":{"type":"string","example":"www.openbankproject.com"},"full_name":{"type":"string","example":"full_name"},"logo":{"type":"string","example":"logo"},"id":{"type":"string","example":"gh.29.uk"},"short_name":{"type":"string","example":"short_name "}}},"AttributeDefinitionJsonV400":{"required":["name","is_active","description","alias","can_be_seen_on_views","category","type"],"properties":{"name":{"type":"string","example":"SPECIAL_TAX_NUMBER"},"is_active":{"type":"boolean","example":"true"},"description":{"type":"string","example":"description"},"alias":{"type":"string","example":"STRING"},"can_be_seen_on_views":{"type":"array","items":{"type":"string"}},"category":{"type":"string","example":"TransactionRequest"},"type":{"type":"string","example":"STRING"}}},"AccountNotificationWebhookPostJson":{"required":["url","http_method","http_protocol"],"properties":{"url":{"type":"string","example":"https://localhost.openbankproject.com"},"http_method":{"type":"string","example":"POST"},"http_protocol":{"type":"string","example":"HTTP/1.1"}}},"AccountWebhookPutJson":{"required":["account_webhook_id","is_active"],"properties":{"account_webhook_id":{"type":"string","example":"fc23a7e2-7dd2-4bdf-a0b4-ae31232a4762"},"is_active":{"type":"string","example":"true"}}},"AccountWebhookPostJson":{"required":["is_active","url","trigger_name","http_protocol","http_method","account_id"],"properties":{"is_active":{"type":"string","example":"true"},"url":{"type":"string","example":"https://localhost.openbankproject.com"},"trigger_name":{"type":"string","example":"OnBalanceChange"},"http_protocol":{"type":"string","example":"HTTP/1.1"},"http_method":{"type":"string","example":"POST"},"account_id":{"type":"string","example":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0"}}},"BranchJsonV300":{"required":["name","phone_number","location","branch_type","branch_routing","drive_up","more_info","bank_id","id","meta","lobby","accessibleFeatures","address","is_accessible"],"properties":{"name":{"type":"string","example":"Branch by the Lake"},"phone_number":{"type":"string","example":"+381631954907"},"location":{"$ref":"#/definitions/LocationJsonV140"},"branch_type":{"type":"string","example":"Full service store"},"branch_routing":{"$ref":"#/definitions/BranchRoutingJsonV141"},"drive_up":{"$ref":"#/definitions/DriveUpJsonV330"},"more_info":{"type":"string","example":"short walk to the lake from here"},"bank_id":{"type":"string","example":"bank-id-123"},"id":{"type":"string","example":"branch-id-123"},"meta":{"$ref":"#/definitions/MetaJsonV140"},"lobby":{"$ref":"#/definitions/LobbyJsonV330"},"accessibleFeatures":{"type":"string","example":"wheelchair, atm usuable by the visually impaired"},"address":{"$ref":"#/definitions/AddressJsonV300"},"is_accessible":{"type":"string","example":"true"}}},"AmountOfMoney":{"required":["currency","amount"],"properties":{"currency":{"type":"string","example":"EUR"},"amount":{"type":"string","example":"100"}}},"TransactionTypesJsonV200":{"required":["transaction_types"],"properties":{"transaction_types":{"type":"array","items":{"$ref":"#/definitions/TransactionTypeJsonV200"}}}},"TransactionTypeJsonV200":{"required":["description","short_code","bank_id","id","charge","summary"],"properties":{"description":{"type":"string","example":"PlaceholderString"},"short_code":{"type":"string","example":"PlaceholderString"},"bank_id":{"type":"string","example":"gh.29.uk"},"id":{"$ref":"#/definitions/TransactionTypeId"},"charge":{"$ref":"#/definitions/AmountOfMoneyJsonV121"},"summary":{"type":"string","example":"PlaceholderString"}}},"SettlementAccountRequestJson":{"required":["branch_id","account_routings","label","balance","payment_system","user_id"],"properties":{"branch_id":{"type":"string","example":"DERBY6"},"account_routings":{"type":"array","items":{"$ref":"#/definitions/AccountRoutingJsonV121"}},"label":{"type":"string","example":"My Account"},"balance":{"$ref":"#/definitions/AmountOfMoneyJsonV121"},"payment_system":{"type":"string","example":"SEPA"},"user_id":{"type":"string","example":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"}}},"AccountRoutingJsonV121":{"required":["scheme","address"],"properties":{"scheme":{"type":"string","example":"AccountNumber"},"address":{"type":"string","example":"4930396"}}},"TransactionRequestTypeJSONV210":{"required":["transaction_request_type"],"properties":{"transaction_request_type":{"type":"string","example":"SandboxTan"}}},"LobbyJsonV330":{"required":["sunday","tuesday","wednesday","monday","friday","thursday","saturday"],"properties":{"sunday":{"type":"array","items":{"$ref":"#/definitions/OpeningTimesV300"}},"tuesday":{"type":"array","items":{"$ref":"#/definitions/OpeningTimesV300"}},"wednesday":{"type":"array","items":{"$ref":"#/definitions/OpeningTimesV300"}},"monday":{"type":"array","items":{"$ref":"#/definitions/OpeningTimesV300"}},"friday":{"type":"array","items":{"$ref":"#/definitions/OpeningTimesV300"}},"thursday":{"type":"array","items":{"$ref":"#/definitions/OpeningTimesV300"}},"saturday":{"type":"array","items":{"$ref":"#/definitions/OpeningTimesV300"}}}},"SettlementAccountsJson":{"required":["settlement_accounts"],"properties":{"settlement_accounts":{"type":"array","items":{"$ref":"#/definitions/SettlementAccountJson"}}}},"MetaJsonV140":{"required":["license"],"properties":{"license":{"$ref":"#/definitions/LicenseJsonV140"}}},"AccountAttributeResponseJson":{"required":["name","account_attribute_id","product_code","type","value"],"properties":{"name":{"type":"string","example":"OVERDRAFT_START_DATE"},"account_attribute_id":{"type":"string","example":"613c83ea-80f9-4560-8404-b9cd4ec42a7f"},"product_code":{"type":"string","example":"1234BW"},"type":{"type":"string","example":"DATE_WITH_DAY"},"product_instance_code":{"type":"string","example":"LKJL98769F"},"value":{"type":"string","example":"2012-04-23"}}},"TransactionType":{"required":["shortCode","description","id","charge","bankId","summary"],"properties":{"shortCode":{"type":"string","example":"80080"},"description":{"type":"string","example":"This is the sandbox mode, charging litter money."},"id":{"$ref":"#/definitions/TransactionTypeId"},"charge":{"$ref":"#/definitions/AmountOfMoney"},"bankId":{"$ref":"#/definitions/BankId"},"summary":{"type":"string","example":"SANDBOX_TAN"}}},"BranchesJsonV300":{"required":["branches"],"properties":{"branches":{"type":"array","items":{"$ref":"#/definitions/BranchJsonV300"}}}},"DriveUpJsonV330":{"required":["sunday","tuesday","wednesday","monday","friday","thursday","saturday"],"properties":{"sunday":{"$ref":"#/definitions/OpeningTimesV300"},"tuesday":{"$ref":"#/definitions/OpeningTimesV300"},"wednesday":{"$ref":"#/definitions/OpeningTimesV300"},"monday":{"$ref":"#/definitions/OpeningTimesV300"},"friday":{"$ref":"#/definitions/OpeningTimesV300"},"thursday":{"$ref":"#/definitions/OpeningTimesV300"},"saturday":{"$ref":"#/definitions/OpeningTimesV300"}}},"LocationJsonV140":{"required":["latitude","longitude"],"properties":{"latitude":{"type":"number","format":"double","example":"11.45"},"longitude":{"type":"number","format":"double","example":"11.45"}}},"SettlementAccountJson":{"required":["account_attributes","branch_id","account_routings","label","balance","payment_system","account_id"],"properties":{"account_attributes":{"type":"array","items":{"$ref":"#/definitions/AccountAttributeResponseJson"}},"branch_id":{"type":"string","example":"DERBY6"},"account_routings":{"type":"array","items":{"$ref":"#/definitions/AccountRoutingJsonV121"}},"label":{"type":"string","example":"My Account"},"balance":{"$ref":"#/definitions/AmountOfMoneyJsonV121"},"payment_system":{"type":"string","example":"SEPA"},"account_id":{"type":"string","example":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0"}}},"AccountWebhooksJson":{"required":["web_hooks"],"properties":{"web_hooks":{"type":"array","items":{"$ref":"#/definitions/AccountWebhookJson"}}}},"BankAttributeJsonV400":{"required":["name","type","value"],"properties":{"name":{"type":"string","example":"TAX_ID"},"type":{"type":"string","example":"INTEGER"},"value":{"type":"string","example":"12345678"},"is_active":{"type":"boolean","example":"true"}}},"BankId":{"required":["value"],"properties":{"value":{"type":"string","example":"gh.uk.9j"}}},"BankRoutingJsonV121":{"required":["scheme","address"],"properties":{"scheme":{"type":"string","example":"scheme value"},"address":{"type":"string","example":""}}},"TransactionTypeId":{"required":["value"],"properties":{"value":{"type":"string","example":"123"}}},"SettlementAccountResponseJson":{"required":["account_attributes","branch_id","account_routings","label","balance","payment_system","user_id","account_id"],"properties":{"account_attributes":{"type":"array","items":{"$ref":"#/definitions/AccountAttributeResponseJson"}},"branch_id":{"type":"string","example":"DERBY6"},"account_routings":{"type":"array","items":{"$ref":"#/definitions/AccountRoutingJsonV121"}},"label":{"type":"string","example":"My Account"},"balance":{"$ref":"#/definitions/AmountOfMoneyJsonV121"},"payment_system":{"type":"string","example":"SEPA"},"user_id":{"type":"string","example":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"},"account_id":{"type":"string","example":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0"}}},"AddressJsonV300":{"required":["city","line_2","state","postcode","county","country_code","line_3","line_1"],"properties":{"city":{"type":"string","example":"Berlin"},"line_2":{"type":"string","example":"The Place"},"state":{"type":"string","example":"Brandenburg"},"postcode":{"type":"string","example":"13359"},"county":{"type":"string","example":""},"country_code":{"type":"string","example":"DE"},"line_3":{"type":"string","example":"The Hill"},"line_1":{"type":"string","example":"No 1 the Road"}}},"BankAttributeBankResponseJsonV400":{"required":["name","value"],"properties":{"name":{"type":"string","example":"ACCOUNT_MANAGEMENT_FEE"},"value":{"type":"string","example":"5987953"}}},"SystemAccountNotificationWebhookJson":{"required":["created_by_user_id","url","trigger_name","http_protocol","http_method","webhook_id"],"properties":{"created_by_user_id":{"type":"string","example":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"},"url":{"type":"string","example":"https://localhost.openbankproject.com"},"trigger_name":{"type":"string","example":"OnCreateTransaction"},"http_protocol":{"type":"string","example":"HTTP/1.1"},"http_method":{"type":"string","example":"POST"},"webhook_id":{"type":"string","example":"fc23a7e2-7dd2-4bdf-a0b4-ae31232a4762"}}},"BankAttributeResponseJsonV400":{"required":["name","bank_attribute_id","bank_id","type","value"],"properties":{"name":{"type":"string","example":"OVERDRAFT_START_DATE"},"is_active":{"type":"boolean","example":"true"},"bank_attribute_id":{"type":"string","example":"613c83ea-80f9-4560-8404-b9cd4ec42a7f"},"bank_id":{"type":"string","example":"gh.29.uk"},"type":{"type":"string","example":"DATE_WITH_DAY"},"value":{"type":"string","example":"2012-04-23"}}},"BankJson400":{"required":["bank_routings","website","full_name","logo","id","short_name"],"properties":{"bank_routings":{"type":"array","items":{"$ref":"#/definitions/BankRoutingJsonV121"}},"website":{"type":"string","example":"www.openbankproject.com"},"full_name":{"type":"string","example":"full_name"},"attributes":{"type":"array","items":{"$ref":"#/definitions/BankAttributeBankResponseJsonV400"}},"logo":{"type":"string","example":"logo"},"id":{"type":"string","example":"gh.29.uk"},"short_name":{"type":"string","example":"short_name "}}},"BranchRoutingJsonV141":{"required":["scheme","address"],"properties":{"scheme":{"type":"string","example":"BranchNumber"},"address":{"type":"string","example":"678"}}},"BanksJson400":{"required":["banks"],"properties":{"banks":{"type":"array","items":{"$ref":"#/definitions/BankJson400"}}}},"TransactionRequestTypesJSON":{"required":["transaction_request_types"],"properties":{"transaction_request_types":{"type":"array","items":{"$ref":"#/definitions/TransactionRequestTypeJSONV210"}}}},"BankAttributesResponseJsonV400":{"required":["bank_attributes"],"properties":{"bank_attributes":{"type":"array","items":{"$ref":"#/definitions/BankAttributeResponseJsonV400"}}}},"OpeningTimesV300":{"required":["opening_time","closing_time"],"properties":{"opening_time":{"type":"string","example":"10:00"},"closing_time":{"type":"string","example":"18:00"}}},"EmptyClassJson":{"required":["jsonString"],"properties":{"jsonString":{"type":"string","example":"{}"}}}}}