openapi-directory
Version:
Building & bundling https://github.com/APIs-guru/openapi-directory for easy use from JS
1 lines • 131 kB
JSON
{"openapi":"3.0.3","servers":[{"url":"https://ob.nordigen.com"}],"info":{"title":"Nordigen Account Information Services API","version":"2.0 (v2)","x-apisguru-categories":["financial"],"x-logo":{"url":"https://assets.nordigen.com/static/assets/img/nordigen/favicon/favicon-196x196.png"},"x-origin":[{"format":"openapi","url":"https://ob.nordigen.com/api/swagger.json","version":"3.0"}],"x-providerName":"nordigen.com"},"security":[{"jwtAuth":[]}],"paths":{"/api/v2/accounts/premium/{id}/transactions/":{"get":{"description":"Access account premium transactions.","operationId":"retrieve account transactions v2","parameters":[{"description":"ISO 3166 two-character country code","examples":{"Austria":{"description":"ISO 3166 two-character code for Austria","summary":"Austria","value":"AT"},"Belgium":{"description":"ISO 3166 two-character code for Belgium","summary":"Belgium","value":"BE"},"Bulgaria":{"description":"ISO 3166 two-character code for Bulgaria","summary":"Bulgaria","value":"BG"},"Croatia":{"description":"ISO 3166 two-character code for Croatia","summary":"Croatia","value":"HR"},"Cyprus":{"description":"ISO 3166 two-character code for Cyprus","summary":"Cyprus","value":"CY"},"Czechia":{"description":"ISO 3166 two-character code for Czechia","summary":"Czechia","value":"CZ"},"Denmark":{"description":"ISO 3166 two-character code for Denmark","summary":"Denmark","value":"DK"},"Estonia":{"description":"ISO 3166 two-character code for Estonia","summary":"Estonia","value":"EE"},"Finland":{"description":"ISO 3166 two-character code for Finland","summary":"Finland","value":"FI"},"France":{"description":"ISO 3166 two-character code for France","summary":"France","value":"FR"},"Germany":{"description":"ISO 3166 two-character code for Germany","summary":"Germany","value":"DE"},"Greece":{"description":"ISO 3166 two-character code for Greece","summary":"Greece","value":"GR"},"Hungary":{"description":"ISO 3166 two-character code for Hungary","summary":"Hungary","value":"HU"},"Iceland":{"description":"ISO 3166 two-character code for Iceland","summary":"Iceland","value":"IS"},"Ireland":{"description":"ISO 3166 two-character code for Ireland","summary":"Ireland","value":"IE"},"Italy":{"description":"ISO 3166 two-character code for Italy","summary":"Italy","value":"IT"},"Latvia":{"description":"ISO 3166 two-character code for Latvia","summary":"Latvia","value":"LV"},"Liechtenstein":{"description":"ISO 3166 two-character code for Liechtenstein","summary":"Liechtenstein","value":"LI"},"Lithuania":{"description":"ISO 3166 two-character code for Lithuania","summary":"Lithuania","value":"LT"},"Luxembourg":{"description":"ISO 3166 two-character code for Luxembourg","summary":"Luxembourg","value":"LU"},"Malta":{"description":"ISO 3166 two-character code for Malta","summary":"Malta","value":"MT"},"Netherlands":{"description":"ISO 3166 two-character code for Netherlands","summary":"Netherlands","value":"NL"},"Norway":{"description":"ISO 3166 two-character code for Norway","summary":"Norway","value":"NO"},"Poland":{"description":"ISO 3166 two-character code for Poland","summary":"Poland","value":"PL"},"Portugal":{"description":"ISO 3166 two-character code for Portugal","summary":"Portugal","value":"PT"},"Romania":{"description":"ISO 3166 two-character code for Romania","summary":"Romania","value":"RO"},"Slovakia":{"description":"ISO 3166 two-character code for Slovakia","summary":"Slovakia","value":"SK"},"Slovenia":{"description":"ISO 3166 two-character code for Slovenia","summary":"Slovenia","value":"SI"},"Spain":{"description":"ISO 3166 two-character code for Spain","summary":"Spain","value":"ES"},"Sweden":{"description":"ISO 3166 two-character code for Sweden","summary":"Sweden","value":"SE"},"UnitedKingdom":{"description":"ISO 3166 two-character code for United Kingdom","summary":"United Kingdom","value":"GB"},"UnitedStatesOfAmerica":{"description":"ISO 3166 two-character code for United States of America","summary":"United States of America","value":"US"}},"in":"query","name":"country","schema":{"type":"string"}},{"examples":{"Sat Jan 21 2023 00:00:00 GMT+0000 (Coordinated Universal Time)":{"description":"ISO 8601 format date","summary":"2025-06-15T13:47:56.490Z","value":"2025-06-15T13:47:56.490Z"}},"in":"query","name":"date_from","schema":{"format":"date","type":"string"}},{"examples":{"Fri Apr 21 2023 00:00:00 GMT+0000 (Coordinated Universal Time)":{"description":"ISO 8601 format date","summary":"2025-06-15T13:47:56.490Z","value":"2025-06-15T13:47:56.490Z"}},"in":"query","name":"date_to","schema":{"format":"date","type":"string"}},{"in":"path","name":"id","required":true,"schema":{"description":"A UUID string identifying this account.","format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"examples":{"RetrieveAccountTransactions":{"description":"Sample account transactions","summary":"Account transactions","value":{"transactions":{"booked":[{"bankTransactionCode":"string","bookingDate":"date","debtorAccount":{"iban":"string"},"debtorName":"string","remittanceInformationUnstructured":"string","transactionAmount":{"amount":"328.18","currency":"string"},"transactionId":"string","valueDate":"date"},{"bankTransactionCode":"string","bookingDate":"date","remittanceInformationUnstructured":"string","transactionAmount":{"amount":"947.26","currency":"string"},"transactionId":"string","valueDate":"date"}],"pending":[{"remittanceInformationUnstructured":"string","transactionAmount":{"amount":"float","currency":"string"},"valueDate":"date"}]}}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Retrieve account transactions"},"400":{"content":{"application/json":{"examples":{"DateRangeError":{"description":"Incorrect date range in query parameters","summary":"Date range error","value":{"detail":"Starting date '2023-05-01' is greater than end date '2023-04-21'. When specifying date range, starting date must precede the end date","status_code":400,"summary":"Incorrect date range"}},"InvalidID":{"description":"Invalid Account ID","summary":"Invalid ID","value":{"detail":"$ACCOUNT_ID is not a valid Account UUID. ","status_code":400,"summary":"Invalid Account ID"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Date range error"},"401":{"content":{"application/json":{"examples":{"AccessExpiredError":{"description":"Couldn't update account transactions","summary":"Access Expired Error","value":{"detail":"Access has expired or it has been revoked. To restore access reconnect the account.","status_code":401,"summary":"Couldn't update account transactions","type":"AccessExpiredError"}},"AccountInactiveError":{"description":"Couldn't update account transactions","summary":"Account Inactive Error","value":{"detail":"Account has been deactivated or it no longer exists.","status_code":401,"summary":"Couldn't update account transactions","type":"AccountInactiveError"}},"FailedAuthentication":{"description":"Couldn't update account transactions","summary":"Failed Authentication","value":{"detail":"SSN Verification has failed","status_code":401,"summary":"Couldn't update account transactions","type":"FailedAuthentication"}},"InvalidToken":{"description":"Token is invalid or expired","summary":"Invalid token","value":{"detail":"Token is invalid or expired","status_code":401,"summary":"Invalid token"}},"NoAccountsConnected":{"description":"Couldn't update account transactions","summary":"No Accounts Connected","value":{"detail":"No Accounts available after authorization.","status_code":401,"summary":"Couldn't update account transactions","type":"NoAccountsConnected"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Failed Authentication"},"403":{"content":{"application/json":{"examples":{"AccountAccessForbidden":{"description":"Couldn't update account transactions","summary":"Account Access Forbidden","value":{"detail":"Access to account is forbidden. The user might not have the necessary permissions.","status_code":403,"summary":"Couldn't update account transactions","type":"AccountAccessForbidden"}},"AccountEUAScopeError":{"description":"EUA doesn't allow access to account transactions.","summary":"Account EUA scope error","value":{"detail":"EUA doesn't allow access to account transactions. Check EUA access scope. Or create new EUA with correct access scope","status_code":403,"summary":"End User Agreement (EUA) access scope error"}},"AccountValidEUAError":{"description":"Account has no valid End User Agreement","summary":"Account valid EUA error","value":{"detail":"Account exists but there is no valid End User Agreement permitting you to access it","status_code":403,"summary":"No valid End User Agreement"}},"IPAccessDenied":{"description":"IP address not whitelisted","summary":"IP Access denied","value":{"detail":"Your IP $IP_ADDRESS isn't whitelisted to perform this action","status_code":403,"summary":"IP address access denied"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account Access Forbidden"},"404":{"content":{"application/json":{"examples":{"AccountNotFoundError":{"description":"Account not found","summary":"Account not found error","value":{"detail":"Please check whether you specified a valid Account ID","status_code":404,"summary":"Account ID $ACC_ID not found"}},"NotFoundError":{"description":"Not found error","summary":"Not found error","value":{"detail":"Not found.","status_code":404,"summary":"Not found."}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account not found error"},"409":{"content":{"application/json":{"examples":{"AccountStateError":{"description":"Account state does not support this operation","summary":"Account state error","value":{"aspsp_identifier":"string","created":"2025-06-15T13:47:56.490Z","iban":"string","id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","last_accessed":"2025-06-15T13:47:56.490Z","status":"ERROR"}},"AccountSuspendedError":{"description":"Account or its requisition suspended","summary":"Account suspended error","value":{"detail":"This account or its requisition was suspended due to numerous errors that occurred while accessing it.","status_code":409,"summary":"Account suspended"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account state error"},"429":{"content":{"application/json":{"examples":{"NordigenRateLimitExceeded":{"description":"Nordigen rate limit exceeded","summary":"Nordigen rate limit exceeded","value":{"detail":"The rate limit for this resource is <times>/<time_period>. Please try again in 9999 seconds","status_code":429,"summary":"Rate limit exceeded"}},"RateLimitError":{"description":"Couldn't update account transactions","summary":"Rate Limit Error","value":{"detail":"Daily request limit set by the Institution has been exceeded.","status_code":429,"summary":"Couldn't update account transactions","type":"RateLimitError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Rate Limit Error"},"500":{"content":{"application/json":{"examples":{"UnknownRequestError":{"description":"Couldn't update account transactions","summary":"Unknown Request Error","value":{"detail":"Request to Institution returned an error","status_code":500,"summary":"Couldn't update account transactions","type":"UnknownRequestError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Unknown Request Error"},"503":{"content":{"application/json":{"examples":{"ConnectionError":{"description":"Couldn't update account transactions","summary":"Connection Error","value":{"detail":"Couldn't connect to Institution","status_code":503,"summary":"Couldn't update account transactions","type":"ConnectionError"}},"ServiceError":{"description":"Couldn't update account transactions","summary":"Service Error","value":{"detail":"Institution service unavailable","status_code":503,"summary":"Couldn't update account transactions","type":"ServiceError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Connection Error"}},"tags":["premium"]}},"/api/v2/accounts/{id}/":{"get":{"description":"Access account metadata.\n\nInformation about the account record, such as the processing status and IBAN.\n\nAccount status is recalculated based on the error count in the latest req.","operationId":"retrieve account metadata","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"A UUID string identifying this account.","format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}},"description":"sample account metadata"},"401":{"content":{"application/json":{"examples":{"InvalidToken":{"description":"Token is invalid or expired","summary":"Invalid token","value":{"detail":"Token is invalid or expired","status_code":401,"summary":"Invalid token"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Invalid token"},"403":{"content":{"application/json":{"examples":{"IPAccessDenied":{"description":"IP address not whitelisted","summary":"IP Access denied","value":{"detail":"Your IP $IP_ADDRESS isn't whitelisted to perform this action","status_code":403,"summary":"IP address access denied"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"IP Access denied"},"404":{"content":{"application/json":{"examples":{"AccountNotFoundError":{"description":"Account not found","summary":"Account not found error","value":{"detail":"Please check whether you specified a valid Account ID","status_code":404,"summary":"Account ID $ACC_ID not found"}},"NotFoundError":{"description":"Not found error","summary":"Not found error","value":{"detail":"Not found.","status_code":404,"summary":"Not found."}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account not found error"},"429":{"content":{"application/json":{"examples":{"NordigenRateLimitExceeded":{"description":"Nordigen rate limit exceeded","summary":"Nordigen rate limit exceeded","value":{"detail":"The rate limit for this resource is <times>/<time_period>. Please try again in 9999 seconds","status_code":429,"summary":"Rate limit exceeded"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Nordigen rate limit exceeded"}},"tags":["accounts"]}},"/api/v2/accounts/{id}/balances/":{"get":{"description":"Access account balances.\n\nBalances will be returned in Berlin Group PSD2 format.","operationId":"retrieve account balances v2","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"A UUID string identifying this account.","format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"examples":{"RetrieveAccountBalances":{"description":"Sample account balances","summary":"Account balances","value":{"balances":[{"balanceAmount":{"amount":"657.49","currency":"string"},"balanceType":"string","referenceDate":"2025-06-15T13:47:56.490Z"},{"balanceAmount":{"amount":"185.67","currency":"string"},"balanceType":"string","referenceDate":"2025-06-15T13:47:56.490Z"}]}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Retrieve account balances"},"400":{"content":{"application/json":{"examples":{"DateRangeError":{"description":"Incorrect date range in query parameters","summary":"Date range error","value":{"detail":"Starting date '2023-05-01' is greater than end date '2023-04-21'. When specifying date range, starting date must precede the end date","status_code":400,"summary":"Incorrect date range"}},"InvalidID":{"description":"Invalid Account ID","summary":"Invalid ID","value":{"detail":"$ACCOUNT_ID is not a valid Account UUID. ","status_code":400,"summary":"Invalid Account ID"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Date range error"},"401":{"content":{"application/json":{"examples":{"AccessExpiredError":{"description":"Couldn't update account balances","summary":"Access Expired Error","value":{"detail":"Access has expired or it has been revoked. To restore access reconnect the account.","status_code":401,"summary":"Couldn't update account balances","type":"AccessExpiredError"}},"AccountInactiveError":{"description":"Couldn't update account balances","summary":"Account Inactive Error","value":{"detail":"Account has been deactivated or it no longer exists.","status_code":401,"summary":"Couldn't update account balances","type":"AccountInactiveError"}},"FailedAuthentication":{"description":"Couldn't update account balances","summary":"Failed Authentication","value":{"detail":"SSN Verification has failed","status_code":401,"summary":"Couldn't update account balances","type":"FailedAuthentication"}},"InvalidToken":{"description":"Token is invalid or expired","summary":"Invalid token","value":{"detail":"Token is invalid or expired","status_code":401,"summary":"Invalid token"}},"NoAccountsConnected":{"description":"Couldn't update account balances","summary":"No Accounts Connected","value":{"detail":"No Accounts available after authorization.","status_code":401,"summary":"Couldn't update account balances","type":"NoAccountsConnected"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Failed Authentication"},"403":{"content":{"application/json":{"examples":{"AccountAccessForbidden":{"description":"Couldn't update account balances","summary":"Account Access Forbidden","value":{"detail":"Access to account is forbidden. The user might not have the necessary permissions.","status_code":403,"summary":"Couldn't update account balances","type":"AccountAccessForbidden"}},"AccountEUAScopeError":{"description":"EUA doesn't allow access to account balances.","summary":"Account EUA scope error","value":{"detail":"EUA doesn't allow access to account balances. Check EUA access scope. Or create new EUA with correct access scope","status_code":403,"summary":"End User Agreement (EUA) access scope error"}},"AccountValidEUAError":{"description":"Account has no valid End User Agreement","summary":"Account valid EUA error","value":{"detail":"Account exists but there is no valid End User Agreement permitting you to access it","status_code":403,"summary":"No valid End User Agreement"}},"IPAccessDenied":{"description":"IP address not whitelisted","summary":"IP Access denied","value":{"detail":"Your IP $IP_ADDRESS isn't whitelisted to perform this action","status_code":403,"summary":"IP address access denied"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account Access Forbidden"},"404":{"content":{"application/json":{"examples":{"AccountNotFoundError":{"description":"Account not found","summary":"Account not found error","value":{"detail":"Please check whether you specified a valid Account ID","status_code":404,"summary":"Account ID $ACC_ID not found"}},"NotFoundError":{"description":"Not found error","summary":"Not found error","value":{"detail":"Not found.","status_code":404,"summary":"Not found."}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account not found error"},"409":{"content":{"application/json":{"examples":{"AccountStateError":{"description":"Account state does not support this operation","summary":"Account state error","value":{"aspsp_identifier":"string","created":"2025-06-15T13:47:56.490Z","iban":"string","id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","last_accessed":"2025-06-15T13:47:56.490Z","status":"ERROR"}},"AccountSuspendedError":{"description":"Account or its requisition suspended","summary":"Account suspended error","value":{"detail":"This account or its requisition was suspended due to numerous errors that occurred while accessing it.","status_code":409,"summary":"Account suspended"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account state error"},"429":{"content":{"application/json":{"examples":{"NordigenRateLimitExceeded":{"description":"Nordigen rate limit exceeded","summary":"Nordigen rate limit exceeded","value":{"detail":"The rate limit for this resource is <times>/<time_period>. Please try again in 9999 seconds","status_code":429,"summary":"Rate limit exceeded"}},"RateLimitError":{"description":"Couldn't update account balances","summary":"Rate Limit Error","value":{"detail":"Daily request limit set by the Institution has been exceeded.","status_code":429,"summary":"Couldn't update account balances","type":"RateLimitError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Rate Limit Error"},"500":{"content":{"application/json":{"examples":{"UnknownRequestError":{"description":"Couldn't update account balances","summary":"Unknown Request Error","value":{"detail":"Request to Institution returned an error","status_code":500,"summary":"Couldn't update account balances","type":"UnknownRequestError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Unknown Request Error"},"503":{"content":{"application/json":{"examples":{"ConnectionError":{"description":"Couldn't update account balances","summary":"Connection Error","value":{"detail":"Couldn't connect to Institution","status_code":503,"summary":"Couldn't update account balances","type":"ConnectionError"}},"ServiceError":{"description":"Couldn't update account balances","summary":"Service Error","value":{"detail":"Institution service unavailable","status_code":503,"summary":"Couldn't update account balances","type":"ServiceError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Connection Error"}},"tags":["accounts"]}},"/api/v2/accounts/{id}/details/":{"get":{"description":"Access account details.\n\nAccount details will be returned in Berlin Group PSD2 format.","operationId":"retrieve account details v2","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"A UUID string identifying this account.","format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"examples":{"RetrieveAccountDetails":{"description":"Sample account details","summary":"Sample account details","value":{"account":{"cashAccountType":"string","currency":"string","iban":"string","name":"string","ownerName":"string","product":"string","resourceId":"string"}}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Retrieve account details"},"400":{"content":{"application/json":{"examples":{"DateRangeError":{"description":"Incorrect date range in query parameters","summary":"Date range error","value":{"detail":"Starting date '2023-05-01' is greater than end date '2023-04-21'. When specifying date range, starting date must precede the end date","status_code":400,"summary":"Incorrect date range"}},"InvalidID":{"description":"Invalid Account ID","summary":"Invalid ID","value":{"detail":"$ACCOUNT_ID is not a valid Account UUID. ","status_code":400,"summary":"Invalid Account ID"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Date range error"},"401":{"content":{"application/json":{"examples":{"AccessExpiredError":{"description":"Couldn't update account details","summary":"Access Expired Error","value":{"detail":"Access has expired or it has been revoked. To restore access reconnect the account.","status_code":401,"summary":"Couldn't update account details","type":"AccessExpiredError"}},"AccountInactiveError":{"description":"Couldn't update account details","summary":"Account Inactive Error","value":{"detail":"Account has been deactivated or it no longer exists.","status_code":401,"summary":"Couldn't update account details","type":"AccountInactiveError"}},"FailedAuthentication":{"description":"Couldn't update account details","summary":"Failed Authentication","value":{"detail":"SSN Verification has failed","status_code":401,"summary":"Couldn't update account details","type":"FailedAuthentication"}},"InvalidToken":{"description":"Token is invalid or expired","summary":"Invalid token","value":{"detail":"Token is invalid or expired","status_code":401,"summary":"Invalid token"}},"NoAccountsConnected":{"description":"Couldn't update account details","summary":"No Accounts Connected","value":{"detail":"No Accounts available after authorization.","status_code":401,"summary":"Couldn't update account details","type":"NoAccountsConnected"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Failed Authentication"},"403":{"content":{"application/json":{"examples":{"AccountAccessForbidden":{"description":"Couldn't update account details","summary":"Account Access Forbidden","value":{"detail":"Access to account is forbidden. The user might not have the necessary permissions.","status_code":403,"summary":"Couldn't update account details","type":"AccountAccessForbidden"}},"AccountEUAScopeError":{"description":"EUA doesn't allow access to account details.","summary":"Account EUA scope error","value":{"detail":"EUA doesn't allow access to account details. Check EUA access scope. Or create new EUA with correct access scope","status_code":403,"summary":"End User Agreement (EUA) access scope error"}},"AccountValidEUAError":{"description":"Account has no valid End User Agreement","summary":"Account valid EUA error","value":{"detail":"Account exists but there is no valid End User Agreement permitting you to access it","status_code":403,"summary":"No valid End User Agreement"}},"IPAccessDenied":{"description":"IP address not whitelisted","summary":"IP Access denied","value":{"detail":"Your IP $IP_ADDRESS isn't whitelisted to perform this action","status_code":403,"summary":"IP address access denied"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account Access Forbidden"},"404":{"content":{"application/json":{"examples":{"AccountNotFoundError":{"description":"Account not found","summary":"Account not found error","value":{"detail":"Please check whether you specified a valid Account ID","status_code":404,"summary":"Account ID $ACC_ID not found"}},"NotFoundError":{"description":"Not found error","summary":"Not found error","value":{"detail":"Not found.","status_code":404,"summary":"Not found."}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account not found error"},"409":{"content":{"application/json":{"examples":{"AccountStateError":{"description":"Account state does not support this operation","summary":"Account state error","value":{"aspsp_identifier":"string","created":"2025-06-15T13:47:56.490Z","iban":"string","id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","last_accessed":"2025-06-15T13:47:56.490Z","status":"ERROR"}},"AccountSuspendedError":{"description":"Account or its requisition suspended","summary":"Account suspended error","value":{"detail":"This account or its requisition was suspended due to numerous errors that occurred while accessing it.","status_code":409,"summary":"Account suspended"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account state error"},"429":{"content":{"application/json":{"examples":{"NordigenRateLimitExceeded":{"description":"Nordigen rate limit exceeded","summary":"Nordigen rate limit exceeded","value":{"detail":"The rate limit for this resource is <times>/<time_period>. Please try again in 9999 seconds","status_code":429,"summary":"Rate limit exceeded"}},"RateLimitError":{"description":"Couldn't update account details","summary":"Rate Limit Error","value":{"detail":"Daily request limit set by the Institution has been exceeded.","status_code":429,"summary":"Couldn't update account details","type":"RateLimitError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Rate Limit Error"},"500":{"content":{"application/json":{"examples":{"UnknownRequestError":{"description":"Couldn't update account details","summary":"Unknown Request Error","value":{"detail":"Request to Institution returned an error","status_code":500,"summary":"Couldn't update account details","type":"UnknownRequestError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Unknown Request Error"},"503":{"content":{"application/json":{"examples":{"ConnectionError":{"description":"Couldn't update account details","summary":"Connection Error","value":{"detail":"Couldn't connect to Institution","status_code":503,"summary":"Couldn't update account details","type":"ConnectionError"}},"ServiceError":{"description":"Couldn't update account details","summary":"Service Error","value":{"detail":"Institution service unavailable","status_code":503,"summary":"Couldn't update account details","type":"ServiceError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Connection Error"}},"tags":["accounts"]}},"/api/v2/accounts/{id}/transactions/":{"get":{"description":"Access account transactions.\n\nTransactions will be returned in Berlin Group PSD2 format.","operationId":"retrieve account transactions v2_2","parameters":[{"examples":{"Sat Jan 21 2023 00:00:00 GMT+0000 (Coordinated Universal Time)":{"description":"ISO 8601 format date","summary":"2025-06-15T13:47:56.490Z","value":"2025-06-15T13:47:56.490Z"}},"in":"query","name":"date_from","schema":{"format":"date","type":"string"}},{"examples":{"Fri Apr 21 2023 00:00:00 GMT+0000 (Coordinated Universal Time)":{"description":"ISO 8601 format date","summary":"2025-06-15T13:47:56.490Z","value":"2025-06-15T13:47:56.490Z"}},"in":"query","name":"date_to","schema":{"format":"date","type":"string"}},{"in":"path","name":"id","required":true,"schema":{"description":"A UUID string identifying this account.","format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"examples":{"RetrieveAccountTransactions":{"description":"Sample account transactions","summary":"Account transactions","value":{"transactions":{"booked":[{"bankTransactionCode":"string","bookingDate":"date","debtorAccount":{"iban":"string"},"debtorName":"string","remittanceInformationUnstructured":"string","transactionAmount":{"amount":"328.18","currency":"string"},"transactionId":"string","valueDate":"date"},{"bankTransactionCode":"string","bookingDate":"date","remittanceInformationUnstructured":"string","transactionAmount":{"amount":"947.26","currency":"string"},"transactionId":"string","valueDate":"date"}],"pending":[{"remittanceInformationUnstructured":"string","transactionAmount":{"amount":"float","currency":"string"},"valueDate":"date"}]}}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Retrieve account transactions"},"400":{"content":{"application/json":{"examples":{"DateRangeError":{"description":"Incorrect date range in query parameters","summary":"Date range error","value":{"detail":"Starting date '2023-05-01' is greater than end date '2023-04-21'. When specifying date range, starting date must precede the end date","status_code":400,"summary":"Incorrect date range"}},"InvalidID":{"description":"Invalid Account ID","summary":"Invalid ID","value":{"detail":"$ACCOUNT_ID is not a valid Account UUID. ","status_code":400,"summary":"Invalid Account ID"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Date range error"},"401":{"content":{"application/json":{"examples":{"AccessExpiredError":{"description":"Couldn't update account transactions","summary":"Access Expired Error","value":{"detail":"Access has expired or it has been revoked. To restore access reconnect the account.","status_code":401,"summary":"Couldn't update account transactions","type":"AccessExpiredError"}},"AccountInactiveError":{"description":"Couldn't update account transactions","summary":"Account Inactive Error","value":{"detail":"Account has been deactivated or it no longer exists.","status_code":401,"summary":"Couldn't update account transactions","type":"AccountInactiveError"}},"FailedAuthentication":{"description":"Couldn't update account transactions","summary":"Failed Authentication","value":{"detail":"SSN Verification has failed","status_code":401,"summary":"Couldn't update account transactions","type":"FailedAuthentication"}},"InvalidToken":{"description":"Token is invalid or expired","summary":"Invalid token","value":{"detail":"Token is invalid or expired","status_code":401,"summary":"Invalid token"}},"NoAccountsConnected":{"description":"Couldn't update account transactions","summary":"No Accounts Connected","value":{"detail":"No Accounts available after authorization.","status_code":401,"summary":"Couldn't update account transactions","type":"NoAccountsConnected"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Failed Authentication"},"403":{"content":{"application/json":{"examples":{"AccountAccessForbidden":{"description":"Couldn't update account transactions","summary":"Account Access Forbidden","value":{"detail":"Access to account is forbidden. The user might not have the necessary permissions.","status_code":403,"summary":"Couldn't update account transactions","type":"AccountAccessForbidden"}},"AccountEUAScopeError":{"description":"EUA doesn't allow access to account transactions.","summary":"Account EUA scope error","value":{"detail":"EUA doesn't allow access to account transactions. Check EUA access scope. Or create new EUA with correct access scope","status_code":403,"summary":"End User Agreement (EUA) access scope error"}},"AccountValidEUAError":{"description":"Account has no valid End User Agreement","summary":"Account valid EUA error","value":{"detail":"Account exists but there is no valid End User Agreement permitting you to access it","status_code":403,"summary":"No valid End User Agreement"}},"IPAccessDenied":{"description":"IP address not whitelisted","summary":"IP Access denied","value":{"detail":"Your IP $IP_ADDRESS isn't whitelisted to perform this action","status_code":403,"summary":"IP address access denied"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account Access Forbidden"},"404":{"content":{"application/json":{"examples":{"AccountNotFoundError":{"description":"Account not found","summary":"Account not found error","value":{"detail":"Please check whether you specified a valid Account ID","status_code":404,"summary":"Account ID $ACC_ID not found"}},"NotFoundError":{"description":"Not found error","summary":"Not found error","value":{"detail":"Not found.","status_code":404,"summary":"Not found."}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account not found error"},"409":{"content":{"application/json":{"examples":{"AccountStateError":{"description":"Account state does not support this operation","summary":"Account state error","value":{"aspsp_identifier":"string","created":"2025-06-15T13:47:56.491Z","iban":"string","id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","last_accessed":"2025-06-15T13:47:56.491Z","status":"ERROR"}},"AccountSuspendedError":{"description":"Account or its requisition suspended","summary":"Account suspended error","value":{"detail":"This account or its requisition was suspended due to numerous errors that occurred while accessing it.","status_code":409,"summary":"Account suspended"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Account state error"},"429":{"content":{"application/json":{"examples":{"NordigenRateLimitExceeded":{"description":"Nordigen rate limit exceeded","summary":"Nordigen rate limit exceeded","value":{"detail":"The rate limit for this resource is <times>/<time_period>. Please try again in 9999 seconds","status_code":429,"summary":"Rate limit exceeded"}},"RateLimitError":{"description":"Couldn't update account transactions","summary":"Rate Limit Error","value":{"detail":"Daily request limit set by the Institution has been exceeded.","status_code":429,"summary":"Couldn't update account transactions","type":"RateLimitError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Rate Limit Error"},"500":{"content":{"application/json":{"examples":{"UnknownRequestError":{"description":"Couldn't update account transactions","summary":"Unknown Request Error","value":{"detail":"Request to Institution returned an error","status_code":500,"summary":"Couldn't update account transactions","type":"UnknownRequestError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Unknown Request Error"},"503":{"content":{"application/json":{"examples":{"ConnectionError":{"description":"Couldn't update account transactions","summary":"Connection Error","value":{"detail":"Couldn't connect to Institution","status_code":503,"summary":"Couldn't update account transactions","type":"ConnectionError"}},"ServiceError":{"description":"Couldn't update account transactions","summary":"Service Error","value":{"detail":"Institution service unavailable","status_code":503,"summary":"Couldn't update account transactions","type":"ServiceError"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Connection Error"}},"tags":["accounts"]}},"/api/v2/agreements/enduser/":{"get":{"description":"API endpoints related to end-user agreements.","operationId":"retrieve all EUAs for an end user v2","parameters":[{"description":"Number of results to return per page.","in":"query","name":"limit","required":false,"schema":{"default":100,"minimum":1,"type":"integer"}},{"description":"The initial index from which to return the results.","in":"query","name":"offset","required":false,"schema":{"default":1,"minimum":1,"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedEndUserAgreementList"}}},"description":"Retrieve all end user agreements"},"401":{"content":{"application/json":{"examples":{"InvalidToken":{"description":"Token is invalid or expired","summary":"Invalid token","value":{"detail":"Token is invalid or expired","status_code":401,"summary":"Invalid token"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Invalid token"},"403":{"content":{"application/json":{"examples":{"IPAccessDenied":{"description":"IP address not whitelisted","summary":"IP Access denied","value":{"detail":"Your IP $IP_ADDRESS isn't whitelisted to perform this action","status_code":403,"summary":"IP address access denied"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"IP Access denied"},"404":{"content":{"application/json":{"examples":{"NotFoundError":{"description":"Not found error","summary":"Not found error","value":{"detail":"Not found.","status_code":404,"summary":"Not found."}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Not found error"},"429":{"content":{"application/json":{"examples":{"NordigenRateLimitExceeded":{"description":"Nordigen rate limit exceeded","summary":"Nordigen rate limit exceeded","value":{"detail":"The rate limit for this resource is <times>/<time_period>. Please try again in 9999 seconds","status_code":429,"summary":"Rate limit exceeded"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Nordigen rate limit exceeded"}},"tags":["agreements"]},"post":{"description":"API endpoints related to end-user agreements.","operationId":"create EUA v2","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndUserAgreementRequest"}},"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/EndUserAgreementRequest"}},"multipart/form-data":{"schema":{"$ref":"#/components/schemas/EndUserAgreementRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndUserAgreement"}}},"description":"Create enduser agreement"},"400":{"content":{"application/json":{"examples":{"AccessScopeFieldErrors":{"description":"Errors related to 'access_scope' field.","summary":"Access scope field errors","value":{"access_scope":[{"detail":"Choose one or several from ['balances', 'details', 'transactions']","summary":"Unknown value '$SCOPE' in access_scope"},{"detail":"For this institution the following scopes are required together: ['balances', 'details']","summary":"Institution access scope dependencies error"},{"detail":"The following scopes are mandatory for this institution: ['transactions']","summary":"Institution access scope dependencies error"}],"status_code":400}},"AccessValidForDaysFieldErrors":{"description":"Errors related to 'access_valid_for_days' field.","summary":"Access valid for days field errors","value":{"access_valid_for_days":[{"detail":"access_valid_for_days must be > 0 and <= 90","summary":"Incorrect access_valid_for_days"}],"status_code":400}},"AgreementFieldErrors":{"description":"Errors related to 'agreement' field.","summary":"Agreement field errors","value":{"agreement":{"detail":"Provided Institution ID: '$INSTITUTION_ID' for requisition does not match EUA institution ID '$EUA_INSTITUTION_ID'. Please provide correct institution ID: '$EUA_INSTITUTION_ID'","summary":"Incorrect Institution ID $INSTITUTION_ID"},"status_code":400}},"InstitutionFieldErrors":{"description":"Errors related to 'institution' field.","summary":"Institution field errors","value":{"institution_id":{"detail":"Get Institution IDs from /institutions/?country={$COUNTRY_CODE}","summary":"Unknown Institution ID $INSTITUTION_ID"},"status_code":400}},"MaxHistoricalDaysFieldErrors":{"description":"Errors related to 'max_historical_days' field.","summary":"Max historical days field errors","value":{"max_historical_days":[{"detail":"max_historical_days must be > 0 and <= N26_NTSBDEB1 transaction_total_days (730)","summary":"Incorrect max_historical_days"}],"status_code":400}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Agreement field errors"},"401":{"content":{"application/json":{"examples":{"InvalidToken":{"description":"Token is invalid or expired","summary":"Invalid token","value":{"detail":"Token is invalid or expired","status_code":401,"summary":"Invalid token"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Invalid token"},"403":{"content":{"application/json":{"examples":{"IPAccessDenied":{"description":"IP address not whitelisted","summary":"IP Access denied","value":{"detail":"Your IP $IP_ADDRESS isn't whitelisted to perform this action","status_code":403,"summary":"IP address access denied"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"IP Access denied"},"429":{"content":{"application/json":{"examples":{"NordigenRateLimitExceeded":{"description":"Nordigen rate limit exceeded","summary":"Nordigen rate limit exceeded","value":{"detail":"The rate limit for this resource is <times>/<time_period>. Please try again in 9999 seconds","status_code":429,"summary":"Rate limit exceeded"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Nordigen rate limit exceeded"}},"tags":["agreements"]}},"/api/v2/agreements/enduser/{id}/":{"delete":{"description":"Delete an end user agreement","operationId":"delete EUA by id v2","parameters":[{"description":"A UUID string identifying this end user agreement.","in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"400":{"content":{"application/json":{"examples":{"CannotDeleteEUA":{"description":"Cannot delete End User Agreement","summary":"Cannot delete EUA","value":{"detail":"Cannot delete accepted End User Agreement: $EUA_ID. Only non accepted agreements can be deleted","status_code":400,"summary":"Cannot delete End User Agreement"}},"InvalidID":{"description":"Invalid ID","summary":"Invalid ID","value":{"detail":"272785d5-de45-4efb-aa1a-f8157ffa94 is not a valid UUID.","status_code":400,"summary":"Invalid ID"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Invalid ID"},"401":{"content":{"application/json":{"examples":{"InvalidToken":{"description":"Token is invalid or expired","summary":"Invalid token","value":{"detail":"Token is invalid or expired","status_code":401,"summary":"Invalid token"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Invalid token"},"403":{"content":{"application/json":{"examples":{"IPAccessDenied":{"description":"IP address not whitelisted","summary":"IP Access denied","value":{"detail":"Your IP $IP_ADDRESS isn't whitelisted to perform this action","status_code":403,"summary":"IP address access denied"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"IP Access denied"},"404":{"content":{"application/json":{"examples":{"NotFoundError":{"description":"Not found error","summary":"Not found error","value":{"detail":"Not found.","status_code":404,"summary":"Not found."}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Not found error"},"429":{"content":{"application/json":{"examples":{"NordigenRateLimitExceeded":{"description":"Nordigen rate limit exceeded","summary":"Nordigen rate limit exceeded","value":{"detail":"The rate limit for this resource is <times>/<time_period>. Please try again in 9999 seconds","status_code":429,"summary":"Rate limit exceeded"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Nordigen rate limit exceeded"}},"tags":["agreements"]},"get":{"description":"Retrieve end user agreement by ID","operationId":"retrieve EUA by id v2","parameters":[{"description":"A UUID string identifying this end user agreement.","in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndUserAgreement"}}},"description":"Retrieve end user agreement by ID"},"400":{"content":{"application/json":{"examples":{"InvalidID":{"description":"Invalid ID","summary":"Invalid ID","value":{"detail":"272785d5-de45-4efb-aa1a-f8157ffa94 is not a valid UUID.","status_code":400,"summary":"Invalid ID"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Invalid ID"},"401":{"content":{"application/json":{"examples":{"InvalidToken":{"description":"Token is invalid or expired","summary":"Invalid token","value":{"detail":"Token is invalid or expired","status_code":401,"summary":"Invalid token"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Invalid token"},"403":{"content":{"application/json":{"examples":{"IPAccessDenied":{"description":"IP address not whitelisted","summary":"IP Access denied","value":{"detail":"Your IP $IP_ADDRESS isn't whitelisted to perform this action","status_code":403,"summary":"IP address access denied"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"IP Access denied"},"404":{"content":{"application/json":{"examples":{"NotFoundError":{"description":"Not found error","summary":"Not found error","value":{"detail":"Not found.","status_code":404,"summary":"Not found."}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Not found error"},"429":{"content":{"application/json":{"examples":{"NordigenRateLimitExceeded":{"description":"Nordigen rate limit exceeded","summary":"Nordigen rate limit exceeded","value":{"detail":"The rate limit for this resource is <times>/<time_period>. Please try again in 9999 seconds","status_code":429,"summary":"Rate limit exceeded"}}},"schema":{"additionalProperties":{},"description":"Unspecified response body","type":"object"}}},"description":"Nordigen rate limit exceeded"}},"tags":["agreements"]}},"/api/v2/agreements/enduser/{id}/accept/":{"put":{"description":"Accept an end-user agreement via the API","operationId":"accept EUA","parameters":[{"description":"A UUID string identifying this end user agreement.","in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"requestBody":{"content":{"application/json"