-
API
-
The terms `API` (Application Programming Interface) and `Endpoint` are used somewhat interchangeablyMore...
- Create Bank Level Endpoint Tag
- Create System Level Endpoint Tag
- Delete Bank Level Endpoint Tag
- Delete System Level Endpoint Tag
- Get API Configuration
- Get API Info (root)
- Get Adapter Info
- Get Adapter Info for a bank
- Get Bank Level Endpoint Tags
- Get Connector Status (Loopback)
- Get JSON Web Key (JWK)
- Get JSON Web Key (JWK) URIs
- Get Mapper Database Info
- Get Rate Limiting Info
- Get System Level Endpoint Tags
- Get the Call Context of a current call
- Update Bank Level Endpoint Tag
- Update System Level Endpoint Tag
- Verify Request and Sign Response of a current call
-
-
Account
-
The thing that tokens of value (money) come in and out of. An account has one or more `owners` whichMore...
- Check Available Funds
- Create Account (POST)
- Create Account Attribute
- Create or Update Account Attribute Definition
- Delete Account Attribute Definition
- Delete Account Cascade
- Get Account Attribute Definition
- Get Account Balances
- Get Account by Account Routing
- Get Account by Id (Core)
- Get Account by Id (Full)
- Get Accounts Balances
- Get Accounts Held
- Get Accounts Minimal for a Customer
- Get Accounts at Bank
- Get Accounts at Bank (IDs only)
- Get Accounts at Bank (Minimal)
- Get Accounts at all Banks (private)
- Get Accounts by Account Routing Regex
- Get Checkbook orders
- Get Fast Firehose Accounts at Bank
- Get Firehose Accounts at Bank
- Update Account
- Update Account Attribute
- Update Account Label
- Validate and check IBAN
-
-
Account Access
-
Account Access governs access to Bank Accounts by end Users. It is an intersecting entity between tMore...
- Create (DAuth) User with Account Access
- Grant User access to View
- Revoke User access to View
- Revoke/Grant User access to View
-
-
Api Collection
- Create My Api Collection
- Create My Api Collection Endpoint
- Create My Api Collection Endpoint By Id
- Delete My Api Collection
- Delete My Api Collection Endpoint
- Delete My Api Collection Endpoint By Id
- Delete My Api Collection Endpoint By Id
- Get Api Collection Endpoints
- Get Api Collections for User
- Get Featured Api Collections
- Get My Api Collection By Id
- Get My Api Collection By Name
- Get My Api Collection Endpoint
- Get My Api Collection Endpoints
- Get My Api Collection Endpoints By Id
- Get My Api Collections
- Get Sharable Api Collection By Id
-
Bank
-
A Bank (aka Space) represents a financial institution, brand or organizational unit under which resMore...
- Create Bank
- Create Bank Attribute
- Create Settlement Account
- Create Transaction Type at bank
- Create or Update Bank Attribute Definition
- Delete Bank Attribute
- Delete Bank Cascade
- Get Bank
- Get Bank Attribute By BANK_ATTRIBUTE_ID
- Get Bank Attributes
- Get Banks
- Get Settlement accounts at Bank
- Get Transaction Types at Bank
- Update Bank Attribute
-
-
Connector Method
-
Developers can override all the existing Connector methods. This function needs to be used togethMore...
- Create Connector Method
- Get Connector Method by Id
- Get all Connector Methods
- Update Connector Method
-
-
Consent
-
Consents provide a mechanism by which a third party App or User can access resources on behalf of aMore...
- Add User to a Consent
- Answer Consent Challenge
- Create Consent (EMAIL)
- Create Consent (IMPLICIT)
- Create Consent (SMS)
- Get Consents
- Get Consents Info
- Revoke Consent
- Update Consent Status
-
-
Consumer
-
The "consumer" of the API, i.e. the web, mobile or serverside "App" that calls on the OBP API on beMore...
- Enable or Disable Consumers
- Get Call Limits for a Consumer
- Get Consumer
- Get Consumers
- Get Consumers (logged in User)
- Post a Consumer
- Set Rate Limits / Call Limits per Consumer
- Update Consumer RedirectUrl
-
-
Counterparty
- Create Counterparty (Explicit)
- Create Counterparty for any account (Explicit)
- Delete Counterparty (Explicit)
- Delete Counterparty for any account (Explicit)
- Get Counterparties (Explicit)
- Get Counterparties for any account (Explicit)
- Get Counterparty by Id (Explicit)
- Get Counterparty by Id for any account (Explicit)
- Get Counterparty by name for any account (Explicit)
- Get Other Account by Id
- Get Other Accounts of one Account
-
Counterparty Metadata
- Add Corporate Location to Counterparty
- Add Counterparty More Info
- Add Open Corporates URL to Counterparty
- Add image url to other bank account
- Add physical location to other bank account
- Add public alias to other bank account
- Add url to other bank account
- Create Other Account Private Alias
- Delete Counterparty Corporate Location
- Delete Counterparty Image URL
- Delete Counterparty Open Corporates URL
- Delete Counterparty Physical Location
- Delete Counterparty Private Alias
- Delete Counterparty Public Alias
- Delete more info of other bank account
- Delete url of other bank account
- Get Other Account Metadata
- Get Other Account Private Alias
- Get public alias of other bank account
- Update Counterparty Corporate Location
- Update Counterparty Image Url
- Update Counterparty More Info
- Update Counterparty Physical Location
- Update Counterparty Private Alias
- Update Open Corporates Url of Counterparty
- Update public alias of other bank account
- Update url of other bank account
-
Customer
-
The legal entity that has the relationship to the bank. Customers are linked to Users via `User CusMore...
- Create Address
- Create Customer
- Create Customer Attribute
- Create Customer Social Media Handle
- Create Tax Residence
- Create User Customer Link
- Create or Update Customer Attribute Definition
- Delete Customer Address
- Delete Customer Attribute
- Delete Customer Attribute Definition
- Delete Customer Cascade
- Delete Tax Residence
- Delete User Customer Link
- Get CRM Events
- Get Correlated Entities for the current User
- Get Correlated User Info by Customer
- Get Customer Addresses
- Get Customer Attribute By Id
- Get Customer Attribute Definition
- Get Customer Attributes
- Get Customer Social Media Handles
- Get Customer by CUSTOMER_ID
- Get Customer by CUSTOMER_NUMBER
- Get Customers Minimal at Any Bank
- Get Customers at Any Bank
- Get Customers by ATTRIBUTES
- Get Customers by MOBILE_PHONE_NUMBER
- Get Customers for Current User
- Get Firehose Customers
- Get Tax Residences of Customer
- Get User Customer Links by Customer
- Get User Customer Links by User
- Update Customer Attribute
- Update the Address of a Customer
- Update the Branch of a Customer
- Update the credit limit of a Customer
- Update the credit rating and source of a Customer
- Update the email of a Customer
- Update the identity data of a Customer
- Update the mobile number of a Customer
- Update the number of a Customer
- Update the other data of a Customer
-
-
Dynamic Endpoint Manage
-
If you want to create endpoints from Swagger / Open API specification files, use Dynamic EndpointsMore...
- Delete Bank Level Dynamic Endpoint
- Delete Dynamic Endpoint
- Get Bank Level Dynamic Endpoint
- Get Dynamic Endpoints
- Update Bank Level Dynamic Endpoint Host
- Update Dynamic Endpoint Host
- Create Bank Level Dynamic Endpoint
- Create Dynamic Endpoint
- Delete My Dynamic Endpoint
- Get Bank Level Dynamic Endpoints
- Get Dynamic Endpoint
- Get My Dynamic Endpoints
-
-
Dynamic Entity Manage
-
Dynamic Entities can be used to store and retrieve custom data objects (think your own tables andMore...
- Create Bank Level Dynamic Entity
- Create System Level Dynamic Entity
- Delete Bank Level Dynamic Entity
- Delete My Dynamic Entity
- Delete System Level Dynamic Entity
- Get Bank Level Dynamic Entities
- Get My Dynamic Entities
- Get System Dynamic Entities
- Update Bank Level Dynamic Entity
- Update My Dynamic Entity
- Update System Level Dynamic Entity
-
-
Dynamic Message Doc
-
In OBP we represent messages sent by a Connector method / function as MessageDocs. A MessageDoc dMore...
- Create Bank Level Dynamic Message Doc
- Create Dynamic Message Doc
- Delete Bank Level Dynamic Message Doc
- Delete Dynamic Message Doc
- Get Bank Level Dynamic Message Doc
- Get Dynamic Message Doc
- Get all Bank Level Dynamic Message Docs
- Get all Dynamic Message Docs
- Update Bank Level Dynamic Message Doc
- Update Dynamic Message Doc
-
-
Dynamic Resource Doc
- A test endpoint
- Create Bank Level Dynamic Resource Doc
- Create Dynamic Resource Doc
- Create Dynamic Resource Doc endpoint code
- Delete Bank Level Dynamic Resource Doc
- Delete Dynamic Resource Doc
- Get Bank Level Dynamic Resource Doc by Id
- Get Dynamic Resource Doc by Id
- Get all Bank Level Dynamic Resource Docs
- Get all Dynamic Resource Docs
- Update Bank Level Dynamic Resource Doc
- Update Dynamic Resource Doc
-
Endpoint Mapping
-
Endpoint Mapping can be used to map each JSON field in a Dynamic Endpoint to different Dynamic EntiMore...
- Create Bank Level Endpoint Mapping
- Create Endpoint Mapping
- Delete Bank Level Endpoint Mapping
- Delete Endpoint Mapping
- Get Bank Level Endpoint Mapping
- Get Endpoint Mapping by Id
- Get all Bank Level Endpoint Mappings
- Get all Endpoint Mappings
- Update Bank Level Endpoint Mapping
- Update Endpoint Mapping
-
-
JSON Schema Validation
-
JSON Schema is "a vocabulary that allows you to annotate and validate JSON documents". By applyinMore...
- Create a JSON Schema Validation
- Delete a JSON Schema Validation
- Get a JSON Schema Validation
- Get all JSON Schema Validations
- Get all JSON Schema Validations - public
- Update a JSON Schema Validation
-
-
Method Routing
-
Open Bank Project can have different connectors, to connect difference data sources. We supportMore...
- Create MethodRouting
- Delete MethodRouting
- Get MethodRoutings
- Update MethodRouting
-
-
Product
- Create Product
- Create Product Attribute
- Create Product Fee
- Create or Update Product Attribute Definition
- Delete Product Attribute
- Delete Product Attribute Definition
- Delete Product Cascade
- Delete Product Fee
- Get Bank Product
- Get Product Attribute
- Get Product Attribute Definition
- Get Product Fee
- Get Product Fees
- Get Product Tree
- Get Products
- Update Product Attribute
- Update Product Fee
-
Role
- Add Entitlement for a User
- Create (DAuth) User with Roles
- Create Entitlement Request for current User
- Delete Entitlement
- Delete Entitlement Request
- Get Entitlement Requests for a User
- Get Entitlement Requests for the current User
- Get Entitlements for One Bank
- Get Entitlements for User
- Get Entitlements for User at Bank
- Get Entitlements for the current User
- Get Roles
- Get all Entitlement Requests
- Get all Entitlements
-
Transaction
-
Transactions are records of successful movements of value into or out of an `Account`. OBP TransacMore...
- Create Transaction Attribute
- Create or Update Transaction Attribute Definition
- Delete Transaction Attribute Definition
- Delete Transaction Cascade
- Get Balancing Transaction
- Get Double Entry Transaction
- Get Firehose Transactions for Account
- Get Other Account of Transaction
- Get Transaction Attribute By Id
- Get Transaction Attribute Definition
- Get Transaction Attributes
- Get Transaction by Id
- Get Transactions for Account (Core)
- Get Transactions for Account (Full)
- Update Transaction Attribute
-
-
Transaction Metadata
- Add a Transaction Comment
- Add a Transaction Image
- Add a Transaction Narrative
- Add a Transaction Tag
- Add a Transaction where Tag
- Delete a Transaction Comment
- Delete a Transaction Image
- Delete a Transaction Narrative
- Delete a Transaction Tag
- Delete a Transaction Tag
- Get Transaction Comments
- Get Transaction Images
- Get Transaction Tags
- Get a Transaction Narrative
- Get a Transaction where Tag
- Update a Transaction Narrative
- Update a Transaction where Tag
-
Transaction Request
- Answer Transaction Request Challenge
- Create Historical Transactions
- Create Transaction Request (ACCOUNT)
- Create Transaction Request (ACCOUNT_OTP)
- Create Transaction Request (CARD)
- Create Transaction Request (COUNTERPARTY)
- Create Transaction Request (FREE_FORM)
- Create Transaction Request (REFUND)
- Create Transaction Request (SANDBOX_TAN)
- Create Transaction Request (SEPA)
- Create Transaction Request (SIMPLE)
- Create Transaction Request Attribute
- Create or Update Transaction Request Attribute Definition
- Delete Transaction Request Attribute Definition
- Get Transaction Request
- Get Transaction Request Attribute By Id
- Get Transaction Request Attribute Definition
- Get Transaction Request Attributes
- Get Transaction Request Types at Bank
- Get Transaction Request Types for Account
- Get Transaction Requests
- Save Historical Transactions
- Update Transaction Request Attribute
-
User
-
The entity that accesses the API with a login / authorisation token and has access to zero or moreMore...
- Answer Auth Context Update Challenge
- Create My Personal User Attribute
- Create User
- Create User Auth Context
- Create User Auth Context Update Request
- Create password reset url
- Delete User Auth Context
- Delete User's Auth Contexts
- Delete a User
- Get Logout Link
- Get My Personal User Attributes
- Get My Spaces
- Get User (Current)
- Get User Auth Contexts
- Get User Id (Current)
- Get User Lock Status
- Get User by USERNAME
- Get User by USER_ID
- Get User with Attributes by USER_ID
- Get Users by Email Address
- Get all Users
- Lock the user
- Refresh User
- Unlock the user
- Update My Personal User Attribute
-
-
API
- Create Bank Level Endpoint Tag
- Create System Level Endpoint Tag
- Delete Bank Level Endpoint Tag
- Delete System Level Endpoint Tag
- Get API Configuration
- Get API Info (root)
- Get Adapter Info
- Get Adapter Info for a bank
- Get Bank Level Endpoint Tags
- Get Connector Status (Loopback)
- Get JSON Web Key (JWK)
- Get JSON Web Key (JWK) URIs
- Get Mapper Database Info
- Get Rate Limiting Info
- Get System Level Endpoint Tags
- Get the Call Context of a current call
- Update Bank Level Endpoint Tag
- Update System Level Endpoint Tag
- Verify Request and Sign Response of a current call
-
ATM
- Create ATM
- Delete ATM
- Get Bank ATM
- Get Bank ATMS
- UPDATE ATM
- Update ATM Accessibility Features
- Update ATM Location Categories
- Update ATM Notes
- Update ATM Services
- Update ATM Supported Currencies
- Update ATM Supported Languages
-
Account
- Check Available Funds
- Create Account (POST)
- Create Account Attribute
- Create or Update Account Attribute Definition
- Delete Account Attribute Definition
- Delete Account Cascade
- Get Account Attribute Definition
- Get Account Balances
- Get Account by Account Routing
- Get Account by Id (Core)
- Get Account by Id (Full)
- Get Accounts Balances
- Get Accounts Held
- Get Accounts Minimal for a Customer
- Get Accounts at Bank
- Get Accounts at Bank (IDs only)
- Get Accounts at Bank (Minimal)
- Get Accounts at all Banks (private)
- Get Accounts by Account Routing Regex
- Get Checkbook orders
- Get Fast Firehose Accounts at Bank
- Get Firehose Accounts at Bank
- Update Account
- Update Account Attribute
- Update Account Label
- Validate and check IBAN
-
Account Access
- Create (DAuth) User with Account Access
- Grant User access to View
- Revoke User access to View
- Revoke/Grant User access to View
-
Account Application
- Create Account Application
- Get Account Application by Id
- Get Account Applications
- Update Account Application Status
-
Account Metadata
-
Account Public
-
Api Collection
- Create My Api Collection
- Create My Api Collection Endpoint
- Create My Api Collection Endpoint By Id
- Delete My Api Collection
- Delete My Api Collection Endpoint
- Delete My Api Collection Endpoint By Id
- Delete My Api Collection Endpoint By Id
- Get Api Collection Endpoints
- Get Api Collections for User
- Get Featured Api Collections
- Get My Api Collection By Id
- Get My Api Collection By Name
- Get My Api Collection Endpoint
- Get My Api Collection Endpoints
- Get My Api Collection Endpoints By Id
- Get My Api Collections
- Get Sharable Api Collection By Id
-
Authentication Type Validation
- Create an Authentication Type Validation
- Delete an Authentication Type Validation
- Get all Authentication Type Validations
- Get all Authentication Type Validations - public
- Get an Authentication Type Validation
- Update an Authentication Type Validation
-
Bank
- Create Bank
- Create Bank Attribute
- Create Settlement Account
- Create Transaction Type at bank
- Create or Update Bank Attribute Definition
- Delete Bank Attribute
- Delete Bank Cascade
- Get Bank
- Get Bank Attribute By BANK_ATTRIBUTE_ID
- Get Bank Attributes
- Get Banks
- Get Settlement accounts at Bank
- Get Transaction Types at Bank
- Update Bank Attribute
-
Branch
-
Card
- Create Card
- Create Card Attribute
- Create or Update Card Attribute Definition
- Delete Card
- Delete Card Attribute Definition
- Get Card Attribute Definition
- Get Card By Id
- Get Cards for the specified bank
- Get cards for the current user
- Get status of Credit Card order
- Update Card
- Update Card Attribute
-
Connector Method
- Create Connector Method
- Get Connector Method by Id
- Get all Connector Methods
- Update Connector Method
-
Consent
- Add User to a Consent
- Answer Consent Challenge
- Create Consent (EMAIL)
- Create Consent (IMPLICIT)
- Create Consent (SMS)
- Get Consents
- Get Consents Info
- Revoke Consent
- Update Consent Status
-
Consumer
- Enable or Disable Consumers
- Get Call Limits for a Consumer
- Get Consumer
- Get Consumers
- Get Consumers (logged in User)
- Post a Consumer
- Set Rate Limits / Call Limits per Consumer
- Update Consumer RedirectUrl
-
Counterparty
- Create Counterparty (Explicit)
- Create Counterparty for any account (Explicit)
- Delete Counterparty (Explicit)
- Delete Counterparty for any account (Explicit)
- Get Counterparties (Explicit)
- Get Counterparties for any account (Explicit)
- Get Counterparty by Id (Explicit)
- Get Counterparty by Id for any account (Explicit)
- Get Counterparty by name for any account (Explicit)
- Get Other Account by Id
- Get Other Accounts of one Account
-
Counterparty Metadata
- Add Corporate Location to Counterparty
- Add Counterparty More Info
- Add Open Corporates URL to Counterparty
- Add image url to other bank account
- Add physical location to other bank account
- Add public alias to other bank account
- Add url to other bank account
- Create Other Account Private Alias
- Delete Counterparty Corporate Location
- Delete Counterparty Image URL
- Delete Counterparty Open Corporates URL
- Delete Counterparty Physical Location
- Delete Counterparty Private Alias
- Delete Counterparty Public Alias
- Delete more info of other bank account
- Delete url of other bank account
- Get Other Account Metadata
- Get Other Account Private Alias
- Get public alias of other bank account
- Update Counterparty Corporate Location
- Update Counterparty Image Url
- Update Counterparty More Info
- Update Counterparty Physical Location
- Update Counterparty Private Alias
- Update Open Corporates Url of Counterparty
- Update public alias of other bank account
- Update url of other bank account
-
Customer
- Create Address
- Create Customer
- Create Customer Attribute
- Create Customer Social Media Handle
- Create Tax Residence
- Create User Customer Link
- Create or Update Customer Attribute Definition
- Delete Customer Address
- Delete Customer Attribute
- Delete Customer Attribute Definition
- Delete Customer Cascade
- Delete Tax Residence
- Delete User Customer Link
- Get CRM Events
- Get Correlated Entities for the current User
- Get Correlated User Info by Customer
- Get Customer Addresses
- Get Customer Attribute By Id
- Get Customer Attribute Definition
- Get Customer Attributes
- Get Customer Social Media Handles
- Get Customer by CUSTOMER_ID
- Get Customer by CUSTOMER_NUMBER
- Get Customers Minimal at Any Bank
- Get Customers at Any Bank
- Get Customers by ATTRIBUTES
- Get Customers by MOBILE_PHONE_NUMBER
- Get Customers for Current User
- Get Firehose Customers
- Get Tax Residences of Customer
- Get User Customer Links by Customer
- Get User Customer Links by User
- Update Customer Attribute
- Update the Address of a Customer
- Update the Branch of a Customer
- Update the credit limit of a Customer
- Update the credit rating and source of a Customer
- Update the email of a Customer
- Update the identity data of a Customer
- Update the mobile number of a Customer
- Update the number of a Customer
- Update the other data of a Customer
-
Customer Meeting
-
Customer Message
- Create Customer Message
- Create Customer Message
- Get Customer Messages for a Customer
- Get Customer Messages for all Customers
-
Data Warehouse
-
Direct Debit
-
Documentation
- Get Bank Level Dynamic Resource Docs
- Get Glossary of the API
- Get Message Docs
- Get Message Docs Swagger
- Get Resource Docs
- Get Resource Docs
- Get Swagger documentation
- Get scanned API Versions
-
Dynamic Endpoint Manage
- Delete Bank Level Dynamic Endpoint
- Delete Dynamic Endpoint
- Get Bank Level Dynamic Endpoint
- Get Dynamic Endpoints
- Update Bank Level Dynamic Endpoint Host
- Update Dynamic Endpoint Host
- Create Bank Level Dynamic Endpoint
- Create Dynamic Endpoint
- Delete My Dynamic Endpoint
- Get Bank Level Dynamic Endpoints
- Get Dynamic Endpoint
- Get My Dynamic Endpoints
-
Dynamic Entity Manage
- Create Bank Level Dynamic Entity
- Create System Level Dynamic Entity
- Delete Bank Level Dynamic Entity
- Delete My Dynamic Entity
- Delete System Level Dynamic Entity
- Get Bank Level Dynamic Entities
- Get My Dynamic Entities
- Get System Dynamic Entities
- Update Bank Level Dynamic Entity
- Update My Dynamic Entity
- Update System Level Dynamic Entity
-
Dynamic Message Doc
- Create Bank Level Dynamic Message Doc
- Create Dynamic Message Doc
- Delete Bank Level Dynamic Message Doc
- Delete Dynamic Message Doc
- Get Bank Level Dynamic Message Doc
- Get Dynamic Message Doc
- Get all Bank Level Dynamic Message Docs
- Get all Dynamic Message Docs
- Update Bank Level Dynamic Message Doc
- Update Dynamic Message Doc
-
Dynamic Resource Doc
- A test endpoint
- Create Bank Level Dynamic Resource Doc
- Create Dynamic Resource Doc
- Create Dynamic Resource Doc endpoint code
- Delete Bank Level Dynamic Resource Doc
- Delete Dynamic Resource Doc
- Get Bank Level Dynamic Resource Doc by Id
- Get Dynamic Resource Doc by Id
- Get all Bank Level Dynamic Resource Docs
- Get all Dynamic Resource Docs
- Update Bank Level Dynamic Resource Doc
- Update Dynamic Resource Doc
-
Endpoint Mapping
- Create Bank Level Endpoint Mapping
- Create Endpoint Mapping
- Delete Bank Level Endpoint Mapping
- Delete Endpoint Mapping
- Get Bank Level Endpoint Mapping
- Get Endpoint Mapping by Id
- Get all Bank Level Endpoint Mappings
- Get all Endpoint Mappings
- Update Bank Level Endpoint Mapping
- Update Endpoint Mapping
-
Example Title
-
FX
-
JSON Schema Validation
- Create a JSON Schema Validation
- Delete a JSON Schema Validation
- Get a JSON Schema Validation
- Get all JSON Schema Validations
- Get all JSON Schema Validations - public
- Update a JSON Schema Validation
-
KYC
- Add KYC Check
- Add KYC Document
- Add KYC Media
- Add KYC Status
- Get Customer KYC Checks
- Get Customer KYC Documents
- Get Customer KYC statuses
- Get KYC Media for a customer
-
Method Routing
-
Metric
- Get Aggregate Metrics
- Get Connector Metrics
- Get Metrics
- Get Top APIs
- Get Top Consumers
- Search API Metrics via Elasticsearch
-
Product
- Create Product
- Create Product Attribute
- Create Product Fee
- Create or Update Product Attribute Definition
- Delete Product Attribute
- Delete Product Attribute Definition
- Delete Product Cascade
- Delete Product Fee
- Get Bank Product
- Get Product Attribute
- Get Product Attribute Definition
- Get Product Fee
- Get Product Fees
- Get Product Tree
- Get Products
- Update Product Attribute
- Update Product Fee
-
Product Collection
-
Role
- Add Entitlement for a User
- Create (DAuth) User with Roles
- Create Entitlement Request for current User
- Delete Entitlement
- Delete Entitlement Request
- Get Entitlement Requests for a User
- Get Entitlement Requests for the current User
- Get Entitlements for One Bank
- Get Entitlements for User
- Get Entitlements for User at Bank
- Get Entitlements for the current User
- Get Roles
- Get all Entitlement Requests
- Get all Entitlements
-
Sandbox
-
Scope
-
Standing Order
-
Swagger Call getBanks
-
Transaction
- Create Transaction Attribute
- Create or Update Transaction Attribute Definition
- Delete Transaction Attribute Definition
- Delete Transaction Cascade
- Get Balancing Transaction
- Get Double Entry Transaction
- Get Firehose Transactions for Account
- Get Other Account of Transaction
- Get Transaction Attribute By Id
- Get Transaction Attribute Definition
- Get Transaction Attributes
- Get Transaction by Id
- Get Transactions for Account (Core)
- Get Transactions for Account (Full)
- Update Transaction Attribute
-
Transaction Metadata
- Add a Transaction Comment
- Add a Transaction Image
- Add a Transaction Narrative
- Add a Transaction Tag
- Add a Transaction where Tag
- Delete a Transaction Comment
- Delete a Transaction Image
- Delete a Transaction Narrative
- Delete a Transaction Tag
- Delete a Transaction Tag
- Get Transaction Comments
- Get Transaction Images
- Get Transaction Tags
- Get a Transaction Narrative
- Get a Transaction where Tag
- Update a Transaction Narrative
- Update a Transaction where Tag
-
Transaction Request
- Answer Transaction Request Challenge
- Create Historical Transactions
- Create Transaction Request (ACCOUNT)
- Create Transaction Request (ACCOUNT_OTP)
- Create Transaction Request (CARD)
- Create Transaction Request (COUNTERPARTY)
- Create Transaction Request (FREE_FORM)
- Create Transaction Request (REFUND)
- Create Transaction Request (SANDBOX_TAN)
- Create Transaction Request (SEPA)
- Create Transaction Request (SIMPLE)
- Create Transaction Request Attribute
- Create or Update Transaction Request Attribute Definition
- Delete Transaction Request Attribute Definition
- Get Transaction Request
- Get Transaction Request Attribute By Id
- Get Transaction Request Attribute Definition
- Get Transaction Request Attributes
- Get Transaction Request Types at Bank
- Get Transaction Request Types for Account
- Get Transaction Requests
- Save Historical Transactions
- Update Transaction Request Attribute
-
User
- Answer Auth Context Update Challenge
- Create My Personal User Attribute
- Create User
- Create User Auth Context
- Create User Auth Context Update Request
- Create password reset url
- Delete User Auth Context
- Delete User's Auth Contexts
- Delete a User
- Get Logout Link
- Get My Personal User Attributes
- Get My Spaces
- Get User (Current)
- Get User Auth Contexts
- Get User Id (Current)
- Get User Lock Status
- Get User by USERNAME
- Get User by USER_ID
- Get User with Attributes by USER_ID
- Get Users by Email Address
- Get all Users
- Lock the user
- Refresh User
- Unlock the user
- Update My Personal User Attribute
-
User Invitation
-
View Custom
- Create Custom View
- Delete Custom View
- Get Account access for User
- Get Views for Account
- Get access
- Update Custom View
-
View System
-
WebUi Props
-
Webhook
- Create an Account Webhook
- Create bank level Account Notification Webhook
- Create system level Account Notification Webhook
- Enable/Disable an Account Webhook
- Get Account Webhooks
-
_Credit Application Form
- Create new Credit Application Form
- Delete Credit Application Form by id
- Get Credit Application Form List
- Get Credit Application Form by id
- Update Credit Application Form
-
_TESTING
v4.0.0 (481 APIs)
Add Entitlement for a User
Create Entitlement. Grant Role to User.
Entitlements are used to grant System or Bank level roles to Users. (For Account level privileges, see Views)
For a System level Role (.e.g CanGetAnyUser), set bank_id to an empty string i.e. "bank_id":""
For a Bank level Role (e.g. CanCreateAccount), set bank_id to a valid value e.g. "bank_id":"my-bank-id"
Authentication is required and the user needs to be a Super Admin. Super Admins are listed in the Props file.
Authentication is Mandatory
URL Parameters:
USER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
JSON request body fields:
bank_id: gh.29.uk
JSON response body fields:
bank_id: gh.29.uk
{
"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk"
}
-
CanCreateEntitlementAtOneBank
- Please login to request this Role
-
CanCreateEntitlementAtAnyBank
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20005: User not found. Please specify a valid value for USER_ID.
- OBP-20050: Current User is not a Super Admin!
- OBP-10001: Incorrect json format.
- OBP-10007: Incorrect Role name:
- OBP-30205: This entitlement is a Bank Role. Please set bank_id to a valid bank id.
- OBP-30206: This entitlement is a System Role. Please set bank_id to empty string.
- OBP-30216: Entitlement already exists for the user.
- OBP-50000: Unknown Error.
- OBP-20006: User is missing one or more roles:
Create (DAuth) User with Roles
This endpoint is used as part of the DAuth solution to grant Entitlements for Roles to a smart contract on the blockchain.
Put the smart contract address in username
For provider use "dauth"
This endpoint will create the User with username and provider if the User does not already exist.
Then it will create Entitlements i.e. grant Roles to the User.
Entitlements are used to grant System or Bank level roles to Users. (For Account level privileges, see Views)
i.e. Entitlements are used to create / consume system or bank level resources where as views / account access are used to consume / create customer level resources.
For a System level Role (.e.g CanGetAnyUser), set bank_id to an empty string i.e. "bank_id":""
For a Bank level Role (e.g. CanCreateAccount), set bank_id to a valid value e.g. "bank_id":"my-bank-id"
Note: The Roles actually granted will depend on the Roles that the calling user has.
If you try to grant Entitlements to a user that already exist (duplicate entitilements) you will get an error.
For information about DAuth see below:
DAuth
DAuth Introduction, Setup and Usage
DAuth is an experimental authentication mechanism that aims to pin an ethereum or other blockchain Smart Contract to an OBP "User".
In the future, it might be possible to be more specific and pin specific actors (wallets) that are acting within the smart contract, but so far, one smart contract acts on behalf of one User.
Thus, if a smart contract "X" calls the OBP API using the DAuth header, OBP will get or create a user called X and the call will proceed in the context of that User "X".
DAuth is invoked by the REST client (caller) including a specific header (see step 3 below) in any OBP REST call.
When OBP receives the DAuth token, it creates or gets a User with a username based on the smart_contract_address and the provider based on the network_name. The combination of username and provider is unique in OBP.
If you are calling OBP-API via an API3 Airnode, the Airnode will take care of constructing the required header.
When OBP detects a DAuth header / token it first checks if the Consumer is allowed to make such a call. OBP will validate the Consumer ip address and signature etc.
Note: The DAuth flow does not require an explicit POST like Direct Login to create the token.
Permissions may be assigned to an OBP User at any time, via the UserAuthContext, Views, Entitlements to Roles or Consents.
Note: DAuth is NOT enabled on this instance!
Note: The DAuth client is responsible for creating a token which will be trusted by OBP absolutely!
To use DAuth:
1) Configure OBP API to accept DAuth.
Set up properties in your props file
# -- DAuth --------------------------------------
# Define secret used to validate JWT token
# jwt.public_key_rsa=path-to-the-pem-file
# Enable/Disable DAuth communication at all
# In case isn't defined default value is false
# allow_dauth=false
# Define comma separated list of allowed IP addresses
# dauth.host=127.0.0.1
# -------------------------------------- DAuth--
Please keep in mind that property jwt.public_key_rsa is used to validate JWT token to check it is not changed or corrupted during transport.
2) Create / have access to a JWT
The following videos are available:
* DAuth in local environment
HEADER:ALGORITHM & TOKEN TYPE
{
"alg": "RS256",
"typ": "JWT"
}
PAYLOAD:DATA
{
"smart_contract_address": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",
"network_name": "AIRNODE.TESTNET.ETHEREUM",
"msg_sender": "0xe12340927f1725E7734CE288F8367e1Bb143E90fhku767",
"consumer_key": "0x1234a4ec31e89cea54d1f125db7536e874ab4a96b4d4f6438668b6bb10a6adb",
"timestamp": "2021-11-04T14:13:40Z",
"request_id": "0Xe876987694328763492876348928736497869273649"
}
VERIFY SIGNATURE
RSASHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
) your-RSA-key-pair
Here is an example token:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k
3) Try a REST call using the header
Using your favorite http client:
GET https://api-explorer.ttk.com.mk/obp/v3.0.0/users/current
Body
Leave Empty!
Headers:
DAuth: your-jwt-from-step-above
Here is it all together:
GET https://api-explorer.ttk.com.mk/obp/v3.0.0/users/current HTTP/1.1
Host: localhost:8080
User-Agent: curl/7.47.0
Accept: /
DAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k
CURL example
curl -v -H 'DAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k' https://api-explorer.ttk.com.mk/obp/v3.0.0/users/current
You should receive a response like:
{
"user_id": "4c4d3175-1e5c-4cfd-9b08-dcdc209d8221",
"email": "",
"provider_id": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",
"provider": "ETHEREUM",
"username": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",
"entitlements": {
"list": []
}
}
Under the hood
The file, dauth.scala handles the DAuth,
We:
-> Check if Props allow_dauth is true
-> Check if DAuth header exists
-> Check if getRemoteIpAddress is OK
-> Look for "token"
-> parse the JWT token and getOrCreate the user
-> get the data of the user
More information
Parameter names and values are case sensitive.
Each parameter MUST NOT appear more than once per request.
Authentication is Mandatory
JSON request body fields:
bank_id: gh.29.uk
provider: ETHEREUM
roles: CanCreateMyUser
username: felixsmith
JSON response body fields:
bank_id: gh.29.uk
list:
user_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
{
"list":[{
"entitlement_id":"",
"role_name":"",
"bank_id":"gh.29.uk",
"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"
}]
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-10001: Incorrect json format.
- OBP-10007: Incorrect Role name:
- OBP-30205: This entitlement is a Bank Role. Please set bank_id to a valid bank id.
- OBP-30206: This entitlement is a System Role. Please set bank_id to empty string.
- OBP-30216: Entitlement already exists for the user.
- OBP-20103: Invalid DAuth User Provider.
- OBP-50000: Unknown Error.
Create Entitlement Request for current User
Create Entitlement Request.
Any logged in User can use this endpoint to request an Entitlement
Entitlements are used to grant System or Bank level roles to Users. (For Account level privileges, see Views)
For a System level Role (.e.g CanGetAnyUser), set bank_id to an empty string i.e. "bank_id":""
For a Bank level Role (e.g. CanCreateAccount), set bank_id to a valid value e.g. "bank_id":"my-bank-id"
Authentication is Mandatory
JSON request body fields:
bank_id: gh.29.uk
JSON response body fields:
bank_id: gh.29.uk
list:
provider: ETHEREUM
user:
user_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
username: felixsmith
{
"entitlement_request_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"user":{
"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"email":"felixsmith@example.com",
"provider_id":"Chris",
"provider":"http://127.0.0.1:8080",
"username":"felixsmith",
"entitlements":{
"list":[{
"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk"
}]
}
},
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk",
"created":"1100-01-01T00:00:00Z"
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20005: User not found. Please specify a valid value for USER_ID.
- OBP-10001: Incorrect json format.
- OBP-10007: Incorrect Role name:
- OBP-30205: This entitlement is a Bank Role. Please set bank_id to a valid bank id.
- OBP-30206: This entitlement is a System Role. Please set bank_id to empty string.
- OBP-30214: Entitlement Request already exists for the user.
- OBP-30217: Entitlement Request cannot be added.
- OBP-50000: Unknown Error.
Delete Entitlement
Delete Entitlement specified by ENTITLEMENT_ID for an user specified by USER_ID
Authentication is required and the user needs to be a Super Admin.
Super Admins are listed in the Props file.
Authentication is Mandatory
URL Parameters:
USER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
JSON response body fields:
{
"jsonString":"{}"
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-30212: EntitlementId not found
- OBP-50000: Unknown Error.
Delete Entitlement Request
Delete the Entitlement Request specified by ENTITLEMENT_REQUEST_ID for a user specified by USER_ID
Authentication is Mandatory
URL Parameters:
JSON response body fields:
-
CanDeleteEntitlementRequestsAtAnyBank
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-50200: Connector cannot return the data we requested.
- OBP-50000: Unknown Error.
- OBP-20006: User is missing one or more roles:
Get Entitlement Requests for a User
{
"entitlement_requests":[{
"entitlement_request_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"user":{
"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"email":"felixsmith@example.com",
"provider_id":"Chris",
"provider":"http://127.0.0.1:8080",
"username":"felixsmith",
"entitlements":{
"list":[{
"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk"
}]
}
},
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk",
"created":"1100-01-01T00:00:00Z"
}]
}
-
CanGetEntitlementRequestsAtAnyBank
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-50200: Connector cannot return the data we requested.
- OBP-50000: Unknown Error.
- OBP-20006: User is missing one or more roles:
Get Entitlement Requests for the current User
{
"entitlement_requests":[{
"entitlement_request_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"user":{
"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"email":"felixsmith@example.com",
"provider_id":"Chris",
"provider":"http://127.0.0.1:8080",
"username":"felixsmith",
"entitlements":{
"list":[{
"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk"
}]
}
},
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk",
"created":"1100-01-01T00:00:00Z"
}]
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-50200: Connector cannot return the data we requested.
- OBP-50000: Unknown Error.
Get Entitlements for One Bank
{
"list":[{
"entitlement_id":"",
"role_name":"",
"bank_id":"gh.29.uk",
"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"
}]
}
-
CanGetEntitlementsForOneBank
- Please login to request this Role
-
CanGetEntitlementsForAnyBank
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
- OBP-50000: Unknown Error.
Get Entitlements for User
{
"list":[{
"entitlement_id":"",
"role_name":"",
"bank_id":"gh.29.uk",
"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"
}]
}
-
CanGetEntitlementsForAnyUserAtAnyBank
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
- OBP-50000: Unknown Error.
Get Entitlements for User at Bank
{
"list":[{
"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk"
}]
}
-
CanGetEntitlementsForAnyUserAtOneBank
- Please login to request this Role
-
CanGetEntitlementsForAnyUserAtAnyBank
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
- OBP-50000: Unknown Error.
Get Entitlements for the current User
{
"list":[{
"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk"
}]
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-50200: Connector cannot return the data we requested.
- OBP-50000: Unknown Error.
Get Roles
{
"roles":[{
"role":"CanCreateBranch",
"requires_bank_id":true
}]
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-50000: Unknown Error.
Get all Entitlement Requests
{
"entitlement_requests":[{
"entitlement_request_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"user":{
"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"email":"felixsmith@example.com",
"provider_id":"Chris",
"provider":"http://127.0.0.1:8080",
"username":"felixsmith",
"entitlements":{
"list":[{
"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk"
}]
}
},
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk",
"created":"1100-01-01T00:00:00Z"
}]
}
-
CanGetEntitlementRequestsAtAnyBank
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-50200: Connector cannot return the data we requested.
- OBP-50000: Unknown Error.
- OBP-20006: User is missing one or more roles:
Get all Entitlements
{
"list":[{
"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723",
"role_name":"CanQueryOtherUser",
"bank_id":"gh.29.uk"
}]
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-50000: Unknown Error.